{"openapi":"3.1.0","info":{"title":"CRACI API","description":"Find your SBOMs, job network traces and more!","license":{"name":""},"version":"2026-08-12"},"paths":{"/v1experimental1/network-trace":{"get":{"summary":"Download a job network trace","description":"Download job network traces by github job identity.","operationId":"get_network_trace","parameters":[{"name":"provider","in":"query","required":true,"schema":{"type":"string"}},{"name":"repo","in":"query","required":true,"schema":{"type":"string"}},{"name":"run_id","in":"query","required":true,"schema":{"type":"string"}},{"name":"job_id","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Versioned CRACI network trace stream","content":{"application/x-ndjson":{}}},"400":{"description":"Malformed selectors","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"401":{"description":"Missing, invalid, expired, or revoked token","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"Unknown tuple","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"409":{"description":"Job is not terminal","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"503":{"description":"Internal dependency unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}},"security":[{"bearerAuth":[]}]}},"/v1preview1/artifacts":{"get":{"summary":"Get artifact provenance","description":"Find which jobs created a given artifact.","operationId":"get_artifact","parameters":[{"name":"kind","in":"query","required":true,"schema":{"type":"string"}},{"name":"digest_algorithm","in":"query","required":true,"schema":{"type":"string"}},{"name":"digest_value","in":"query","required":true,"schema":{"type":"string"}},{"name":"repository","in":"query","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Artifact identity and complete newest-first publication history","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Artifact"}}}},"400":{"description":"Malformed selector","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"401":{"description":"Missing, invalid, expired, or revoked token","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"Unknown artifact","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"503":{"description":"Internal dependency unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}},"security":[{"bearerAuth":[]}]}},"/v1preview1/sbom":{"get":{"summary":"Download a job SBOM","description":"Download a SBOM for a job by github job identity.","operationId":"get_sbom","parameters":[{"name":"provider","in":"query","required":true,"schema":{"type":"string"}},{"name":"repo","in":"query","required":true,"schema":{"type":"string"}},{"name":"run_id","in":"query","required":true,"schema":{"type":"string"}},{"name":"job_id","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"CycloneDX 1.7 SBOM","content":{"application/vnd.cyclonedx+json; version=1.7":{}}},"400":{"description":"Malformed selectors","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"401":{"description":"Missing, invalid, expired, or revoked token","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"Unknown tuple","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"409":{"description":"Job is not terminal","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"503":{"description":"Internal dependency unavailable","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}},"security":[{"bearerAuth":[]}]}}},"components":{"schemas":{"Artifact":{"type":"object","required":["artifact_id","kind","digest_algorithm","digest_value","publications","contents"],"properties":{"artifact_id":{"type":"integer","format":"int64"},"contents":{"type":"array","items":{"$ref":"#/components/schemas/ArtifactContent"}},"digest_algorithm":{"type":"string"},"digest_value":{"type":"string"},"kind":{"$ref":"#/components/schemas/ArtifactKind"},"publications":{"type":"array","items":{"$ref":"#/components/schemas/Publication"}},"purl":{"type":"string"}}},"ArtifactContent":{"allOf":[{"$ref":"#/components/schemas/Artifact"},{"type":"object","required":["position","media_type","size_bytes"],"properties":{"media_type":{"type":"string"},"position":{"type":"integer","format":"int32"},"size_bytes":{"type":"integer","format":"int64"}}}]},"ArtifactKind":{"type":"string","enum":["oci_index","oci_manifest","oci_layer","gha_cache"]},"Problem":{"type":"object","required":["type","title","status","detail"],"properties":{"detail":{"type":"string"},"status":{"type":"integer","format":"int32","minimum":0},"title":{"type":"string"},"type":{"type":"string"}}},"Publication":{"type":"object","required":["publication_key","project_id","job_id","run_id","accepted_at","metadata"],"properties":{"accepted_at":{"type":"string"},"job_id":{"type":"integer","format":"int64"},"metadata":{"$ref":"#/components/schemas/PublicationMetadata"},"project_id":{"type":"integer","format":"int64"},"publication_key":{"type":"string"},"run_id":{"type":"integer","format":"int64"}}},"PublicationMetadata":{"oneOf":[{"type":"object","required":["registry","repository","reference","media_type","kind"],"properties":{"kind":{"type":"string","enum":["oci"]},"media_type":{"type":"string"},"reference":{"type":"string"},"registry":{"type":"string"},"repository":{"type":"string"}}},{"type":"object","required":["cache_key","version","size_bytes","kind"],"properties":{"cache_key":{"type":"string"},"kind":{"type":"string","enum":["gha_cache"]},"size_bytes":{"type":"integer","format":"int64"},"version":{"type":"string"}}}]}},"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"opaque"}}}}