Resolve an id or URL to a target
Polymorphic ID resolution: given a parsed descriptor (run/job/attempt id, a runner id, a bare id, or a GitHub Actions URL), resolve it against the CI facts store to the most specific target, or return a candidate list on ambiguity. A runner id resolves to the job/attempt target(s) that ran on that runner — or, with target=run, to the distinct run(s) it touched; several candidates when a runner is reused. Authenticated; scoped to the caller's orgs by membership.
/api/resolveAuthorization
bearerAuth Session token from sling login.
In: header
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/api/resolve" \ -H "Content-Type: application/json" \ -d '{ "input": { "kind": "run", "github_run_id": "28961231706" } }'{ "resolved": { "id": "att_9876543210.2", "kind": "attempt", "run_id": "1234567890", "org": "acme", "repo": "acme/api", "job_id": "9876543210", "attempt": 2, "job_name": "typecheck", "runner_id": "611593", "runner_name": "starsling-n-4f2a1c" }}List prior invoices GET
Read-only list of the caller's prior finalized invoices (newest first), same per-item shape as /api/bill, paginated by count. Scoped to the caller's orgs.
List runner labels GET
The catalog of available runner labels with their specs (cpu, memory, arch, price/min) so runs-on mapping and cost-savings hints reference concrete options. Static and identical for every caller — authenticated, but requires no resource scope.