{"openapi":"3.1.0","info":{"title":"Claus Network","version":"0.14.0"},"servers":[{"url":"https://claus-network-api.vercel.app"}],"paths":{"/v1/public/capabilities":{"get":{"operationId":"capabilities","description":"Discover current admission, supported profiles and technical limits. Public read; no rights or credits are granted.","security":[],"parameters":[],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/capabilities":{"get":{"operationId":"project_capabilities","description":"Read own project rights and remaining local quotas. Requires project.read. Funding and chain checks remain separate.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/access/{kind}":{"get":{"operationId":"identity_list","description":"Recover project agents, mandates or credential metadata. Owner session required. No credential secrets are returned.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"kind","in":"path","required":true,"schema":{"type":"string","enum":["agents","mandates","credentials"]}},{"name":"after","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/resources/{kind}":{"get":{"operationId":"resource_list","description":"Recover own resource IDs after restart. Requires the corresponding resource read scope; follow nextCursor until null.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"kind","in":"path","required":true,"schema":{"type":"string","enum":["snapshots","builds","jobs","reviews","proposals","services","orders","releases","bindings","requests","signals","results"]}},{"name":"after","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/admin/access-policy":{"get":{"operationId":"access_policy_get","description":"Read the active nonfinancial access policy. Network owner session required.","security":[{"bearerAuth":[]}],"parameters":[],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/admin/access-policy/versions":{"post":{"operationId":"access_policy_publish","description":"Store an immutable nonfinancial policy version. Network owner only. Does not activate it; same version and content are idempotent.","security":[{"bearerAuth":[]}],"parameters":[],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"version":{"type":"string","minLength":1,"maxLength":64},"config":true},"required":["version","config"],"additionalProperties":false}}}}}},"/v1/admin/access-policy/active":{"put":{"operationId":"access_policy_activate","description":"Activate a published nonfinancial policy using expectedGeneration. Network owner only. Existing usage is never reset.","security":[{"bearerAuth":[]}],"parameters":[],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"version":{"type":"string","minLength":1,"maxLength":64},"expectedGeneration":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["version","expectedGeneration"],"additionalProperties":false}}}}}},"/v1/admin/projects/{projectId}/access":{"put":{"operationId":"project_access_set","description":"Suspend or resume new project effects using expectedRevision. Network owner only. Reads, revocation and exits remain available.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"suspended":{"type":"boolean"},"expectedRevision":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["suspended","expectedRevision"],"additionalProperties":false}}}}}},"/v1/auth/challenge":{"post":{"operationId":"auth_challenge","description":"Request a five-minute EOA login message. Sign it locally; this authorizes login, not an onchain transaction.","security":[],"parameters":[],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"address":{"type":"string","minLength":1,"maxLength":42}},"required":["address"],"additionalProperties":false}}}}}},"/v1/auth/session":{"post":{"operationId":"auth_session","description":"Exchange a one-use signed challenge for a private owner session. Store securely; never send the result into model context.","security":[],"parameters":[],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"challengeId":{"type":"string","minLength":1,"maxLength":256},"signature":{"type":"string","minLength":1,"maxLength":132}},"required":["challengeId","signature"],"additionalProperties":false}}}}}},"/v1/principals/me":{"get":{"operationId":"principal_me","description":"GET /v1/principals/me. Requires current object read permission.","security":[{"bearerAuth":[]}],"parameters":[],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects":{"get":{"operationId":"project_list","description":"GET /v1/projects. Requires current object read permission.","security":[{"bearerAuth":[]}],"parameters":[{"name":"after","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}},"post":{"operationId":"project_create","description":"Create a private project. Owner session required. Retry only with the same idempotencyKey and identical input.","security":[{"bearerAuth":[]}],"parameters":[],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"slug":{"type":"string","minLength":1,"maxLength":63},"name":{"type":"string","minLength":1,"maxLength":80},"idempotencyKey":{"type":"string","minLength":1,"maxLength":256}},"required":["slug","name","idempotencyKey"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}":{"get":{"operationId":"project_get","description":"GET /v1/projects/{projectId}. Requires current object read permission.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/agents":{"post":{"operationId":"agent_create","description":"Create an agent identity in own project. Owner only. Use idempotencyKey for lost-response recovery; identity_list recovers IDs.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":80},"idempotencyKey":{"type":"string","minLength":1,"maxLength":256}},"required":["name"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/mandates":{"post":{"operationId":"mandate_create","description":"Authorize explicit project scopes and expiry for an agent. Owner only. Reuse idempotencyKey; revocation never creates replacement rights.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"principalId":{"type":"string","minLength":1,"maxLength":256},"scopes":{"type":"array","items":{"type":"string","minLength":1,"maxLength":256},"minItems":1,"maxItems":64},"expiresAt":{"type":"integer","minimum":0,"maximum":9007199254740991},"idempotencyKey":{"type":"string","minLength":1,"maxLength":256}},"required":["principalId","scopes","expiresAt"],"additionalProperties":false}}}}}},"/v1/mandates/{mandateId}":{"delete":{"operationId":"mandate_revoke","description":"DELETE /v1/mandates/{mandateId}. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"mandateId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/credentials":{"post":{"operationId":"credential_create","description":"Issue a one-time secret for an active mandate. Owner only. Lost response: revoke mandate and issue a new grant; secret is not retrievable.","security":[{"bearerAuth":[]}],"parameters":[],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"mandateId":{"type":"string","minLength":1,"maxLength":256}},"required":["mandateId"],"additionalProperties":false}}}}}},"/v1/credentials/{credentialId}/rotate":{"post":{"operationId":"credential_rotate","description":"Rotate a credential, retiring the old token. Lost response: owner revokes the mandate and creates a fresh grant.","security":[{"bearerAuth":[]}],"parameters":[{"name":"credentialId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/credentials/{credentialId}":{"delete":{"operationId":"credential_revoke","description":"DELETE /v1/credentials/{credentialId}. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"credentialId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/snapshots":{"post":{"operationId":"snapshot_create","description":"Store a bounded private text snapshot. Requires snapshot.create and expectedProjectRevision. Does not run or publish any file.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"object","properties":{"path":{"type":"string","minLength":1,"maxLength":180},"content":{"type":"string","maxLength":48000}},"required":["path","content"],"additionalProperties":false},"minItems":1,"maxItems":64},"expectedProjectRevision":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["files","expectedProjectRevision"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/snapshots/{snapshotId}":{"get":{"operationId":"snapshot_get","description":"GET /v1/projects/{projectId}/snapshots/{snapshotId}. Requires current object read permission.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"snapshotId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/builds":{"post":{"operationId":"build_create","description":"POST /v1/projects/{projectId}/builds. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"snapshotId":{"type":"string","minLength":1,"maxLength":256},"entry":{"type":"string","minLength":1,"maxLength":180},"contract":{"type":"string","minLength":1,"maxLength":128},"idempotencyKey":{"type":"string","minLength":1,"maxLength":256},"compilerProfile":{"type":"string","enum":["solidity-static-compile-v1","solidity-0.8.26-static-v1","solidity-managed-compile-v1"]},"sourceRoot":{"type":"string","minLength":1,"maxLength":160}},"required":["snapshotId","entry","contract","idempotencyKey"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/builds/{buildId}":{"get":{"operationId":"build_get","description":"GET /v1/projects/{projectId}/builds/{buildId}. Requires current object read permission.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"buildId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/builds/{buildId}/artifact":{"get":{"operationId":"build_artifact","description":"GET /v1/projects/{projectId}/builds/{buildId}/artifact. Requires current object read permission.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"buildId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/jobs/{jobId}":{"get":{"operationId":"job_get","description":"GET /v1/projects/{projectId}/jobs/{jobId}. Requires current object read permission.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"jobId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}},"delete":{"operationId":"job_cancel","description":"DELETE /v1/projects/{projectId}/jobs/{jobId}. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"jobId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/admin/review-admission":{"get":{"operationId":"review_admission_get","description":"Read sponsored-review rules and lifetime committed maximum. Network owner session only.","security":[{"bearerAuth":[]}],"parameters":[],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/admin/review-admission/versions":{"post":{"operationId":"review_admission_publish","description":"Store immutable bounded sponsored-review rules. Network owner session only. Does not fund or activate spending.","security":[{"bearerAuth":[]}],"parameters":[],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"version":{"type":"string","minLength":1,"maxLength":64},"config":{"type":"object","properties":{"enabled":{"type":"boolean"},"expiresAt":{"type":["integer","null"],"minimum":0,"maximum":9007199254740991,"description":"Operator policy deadline in Unix milliseconds; explicit null keeps the policy active until disabled or its budget is exhausted."},"maximumPerReview":{"type":"string","minLength":1,"maxLength":18},"maximumLifetime":{"type":"string","minLength":1,"maxLength":30},"perOwnerDay":{"type":"integer","minimum":0,"maximum":9007199254740991},"perProjectDay":{"type":"integer","minimum":0,"maximum":9007199254740991},"globalDay":{"type":"integer","minimum":0,"maximum":9007199254740991},"activeGlobal":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["enabled","expiresAt","maximumPerReview","maximumLifetime","perOwnerDay","perProjectDay","globalDay","activeGlobal"],"additionalProperties":false}},"required":["version","config"],"additionalProperties":false}}}}}},"/v1/admin/review-admission/active":{"put":{"operationId":"review_admission_activate","description":"Activate review rules by expectedGeneration. Network owner only. Existing exposure and reservations are preserved; funding remains necessary.","security":[{"bearerAuth":[]}],"parameters":[],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"version":{"type":"string","minLength":1,"maxLength":64},"expectedGeneration":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["version","expectedGeneration"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/reviews":{"post":{"operationId":"review_create","description":"POST /v1/projects/{projectId}/reviews. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"buildId":{"type":"string","minLength":1,"maxLength":256},"repoUrl":{"type":"string","minLength":1,"maxLength":240},"baseCommit":{"type":"string","minLength":1,"maxLength":40},"idempotencyKey":{"type":"string","minLength":1,"maxLength":256},"chainId":{"type":"integer","enum":[1,11155111]},"profile":{"type":"string","enum":["claus-readonly-v1","claus-managed-v1"]}},"required":["buildId","repoUrl","baseCommit","idempotencyKey"],"additionalProperties":false}}}}}},"/v1/admin/review-pilots/{projectId}":{"get":{"operationId":"review_pilot_get","description":"GET /v1/admin/review-pilots/{projectId}. Requires current object read permission.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}},"put":{"operationId":"review_pilot_set","description":"PUT /v1/admin/review-pilots/{projectId}. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"enabled":{"type":"boolean"},"expiresAt":{"type":"integer","minimum":0,"maximum":9007199254740991},"maximumPerReview":{"type":"string","minLength":1,"maxLength":18},"expectedRevision":{"type":"integer","minimum":0,"maximum":9007199254740991},"perProjectDay":{"type":"integer","minimum":0,"maximum":9007199254740991},"globalDay":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["enabled","expiresAt","maximumPerReview","expectedRevision"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/reviews/{caseId}":{"get":{"operationId":"review_get","description":"GET /v1/projects/{projectId}/reviews/{caseId}. Requires current object read permission.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"caseId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/reviews/{caseId}/accept":{"post":{"operationId":"review_accept","description":"POST /v1/projects/{projectId}/reviews/{caseId}/accept. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"caseId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"quoteId":{"type":"string","minLength":1,"maxLength":256},"idempotencyKey":{"type":"string","minLength":1,"maxLength":256}},"required":["quoteId","idempotencyKey"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/reviews/{caseId}/artifact":{"get":{"operationId":"review_artifact","description":"GET /v1/projects/{projectId}/reviews/{caseId}/artifact. Requires current object read permission.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"caseId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/reviews/{caseId}/publication":{"put":{"operationId":"review_publish","description":"PUT /v1/projects/{projectId}/reviews/{caseId}/publication. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"caseId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"published":{"type":"boolean"},"expectedRevision":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["published","expectedRevision"],"additionalProperties":false}}}}}},"/v1/admin/chain-admission":{"get":{"operationId":"chain_admission_get","description":"GET /v1/admin/chain-admission. Requires current object read permission.","security":[{"bearerAuth":[]}],"parameters":[{"name":"chainId","in":"query","required":false,"schema":{"type":"integer","enum":[1,11155111]}},{"name":"profile","in":"query","required":false,"schema":{"type":"string","enum":["claus-readonly-v1","claus-managed-v1"]}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/admin/chain-admission/versions":{"post":{"operationId":"chain_admission_publish","description":"POST /v1/admin/chain-admission/versions. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"chainId":{"type":"integer","enum":[1,11155111]},"profile":{"type":"string","enum":["claus-readonly-v1","claus-managed-v1"]},"version":{"type":"string","minLength":1,"maxLength":64},"config":{"type":"object","properties":{"enabled":{"type":"boolean"},"expiresAt":{"type":["integer","null"],"minimum":0,"maximum":9007199254740991,"description":"Operator policy deadline in Unix milliseconds; explicit null keeps the policy active until disabled or its budget is exhausted."},"executor":{"type":"string","minLength":1,"maxLength":42},"executorCodeHash":{"type":"string","minLength":1,"maxLength":66},"targetArtifactHash":{"type":"string","minLength":1,"maxLength":71},"reviewProjectId":{"type":"string","minLength":1,"maxLength":256},"reviewCaseId":{"type":"string","minLength":1,"maxLength":256},"reviewArtifactHash":{"type":"string","minLength":1,"maxLength":71},"maximumProjects":{"type":"integer","minimum":0,"maximum":9007199254740991},"maximumTransactionGasWei":{"type":"string","minLength":1,"maxLength":30},"maximumProjectGasWei":{"type":"string","minLength":1,"maxLength":30},"maximumTotalGasWei":{"type":"string","minLength":1,"maxLength":30}},"required":["enabled","expiresAt","executor","executorCodeHash","targetArtifactHash","reviewProjectId","reviewCaseId","reviewArtifactHash","maximumProjects","maximumTransactionGasWei","maximumProjectGasWei","maximumTotalGasWei"],"additionalProperties":false}},"required":["version","config"],"additionalProperties":false}}}}}},"/v1/admin/chain-admission/active":{"put":{"operationId":"chain_admission_activate","description":"PUT /v1/admin/chain-admission/active. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"chainId":{"type":"integer","enum":[1,11155111]},"profile":{"type":"string","enum":["claus-readonly-v1","claus-managed-v1"]},"version":{"type":"string","minLength":1,"maxLength":64},"expectedGeneration":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["version","expectedGeneration"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/modules":{"post":{"operationId":"module_deploy","description":"POST /v1/projects/{projectId}/modules. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"caseId":{"type":"string","minLength":1,"maxLength":256},"chainId":{"type":"integer","enum":[1,11155111]},"profile":{"type":"string","enum":["claus-readonly-v1","claus-managed-v1"]}},"required":["caseId"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/modules/{moduleId}":{"get":{"operationId":"module_get","description":"GET /v1/projects/{projectId}/modules/{moduleId}. Requires current object read permission.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"moduleId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/chain/registrations/prepare":{"post":{"operationId":"registration_prepare","description":"POST /v1/projects/{projectId}/chain/registrations/prepare. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"moduleId":{"type":"string","minLength":1,"maxLength":256},"configuration":{"type":"string","minLength":1,"maxLength":16386},"mandateId":{"type":"string","minLength":1,"maxLength":256},"minDelaySeconds":{"type":"integer","minimum":0,"maximum":432000}},"required":["moduleId","configuration","mandateId","minDelaySeconds"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/chain/registrations/{registrationId}/submit":{"post":{"operationId":"registration_submit","description":"POST /v1/projects/{projectId}/chain/registrations/{registrationId}/submit. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"registrationId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"signature":{"type":"string","minLength":1,"maxLength":132}},"required":["signature"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/chain/registrations/{registrationId}":{"get":{"operationId":"registration_get","description":"GET /v1/projects/{projectId}/chain/registrations/{registrationId}. Requires current object read permission.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"registrationId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/chain":{"get":{"operationId":"chain_binding","description":"GET /v1/projects/{projectId}/chain. Requires current object read permission.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/proposals":{"post":{"operationId":"proposal_create","description":"POST /v1/projects/{projectId}/proposals. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"moduleId":{"type":"string","minLength":1,"maxLength":256},"configuration":{"type":"string","minLength":1,"maxLength":16386},"dependencies":{"type":"array","maxItems":8,"items":{"type":"object","properties":{"address":{"type":"string","minLength":1,"maxLength":42},"callData":{"type":"string","minLength":1,"maxLength":8194}},"required":["address","callData"],"additionalProperties":false}},"idempotencyKey":{"type":"string","minLength":1,"maxLength":256}},"required":["moduleId","configuration","idempotencyKey"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/proposals/{proposalId}":{"get":{"operationId":"proposal_get","description":"GET /v1/projects/{projectId}/proposals/{proposalId}. Requires current object read permission.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"proposalId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/proposals/{proposalId}/publication":{"put":{"operationId":"proposal_publish","description":"PUT /v1/projects/{projectId}/proposals/{proposalId}/publication. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"proposalId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"published":{"type":"boolean"},"expectedRevision":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["published","expectedRevision"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/services":{"post":{"operationId":"service_register","description":"Register an immutable service manifest. Requires service.manage. Host creates an unpaid transport probe before availability.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"manifest":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":80},"capability":{"type":"string","minLength":1,"maxLength":64},"version":{"type":"string","minLength":1,"maxLength":20},"inputSchema":true,"outputSchema":true,"priceWei":{"type":"string","minLength":1,"maxLength":30},"recipient":{"type":"string","minLength":1,"maxLength":42},"maxDurationSeconds":{"type":"integer","minimum":30,"maximum":3600},"validUntil":{"type":"integer","minimum":0,"maximum":9007199254740991},"dataPolicy":{"type":"string","minLength":1,"maxLength":32}},"required":["name","capability","version","inputSchema","outputSchema","priceWei","recipient","maxDurationSeconds","validUntil","dataPolicy"],"additionalProperties":false}},"required":["manifest"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/services/{serviceId}":{"get":{"operationId":"service_get","description":"GET /v1/projects/{projectId}/services/{serviceId}. Requires current object read permission.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"serviceId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/services/{serviceId}/publication":{"put":{"operationId":"service_publish","description":"PUT /v1/projects/{projectId}/services/{serviceId}/publication. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"serviceId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"published":{"type":"boolean"},"expectedRevision":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["published","expectedRevision"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/services/{serviceId}/suspend":{"post":{"operationId":"service_suspend","description":"POST /v1/projects/{projectId}/services/{serviceId}/suspend. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"serviceId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/public/services":{"get":{"operationId":"service_catalog","description":"GET /v1/public/services. Public read.","security":[],"parameters":[{"name":"after","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/service-quotes":{"post":{"operationId":"service_quote","description":"Quote one service with service.call. public-data-v1 inputs must be public. Optional sourceResults bind exact previously published revisions/hashes; no private output or provider subdelegation.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"serviceId":{"type":"string","minLength":1,"maxLength":256},"input":true,"idempotencyKey":{"type":"string","minLength":1,"maxLength":256},"sourceResults":{"type":"array","maxItems":3,"items":{"type":"object","properties":{"id":{"type":"string","minLength":1,"maxLength":256},"revision":{"type":"integer","minimum":0,"maximum":9007199254740991},"outputHash":{"type":"string","minLength":1,"maxLength":71}},"required":["id","revision","outputHash"],"additionalProperties":false}}},"required":["serviceId","input","idempotencyKey"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/service-orders":{"post":{"operationId":"service_accept","description":"Accept exact unexpired quote with service.call. Zero-price quotes need no payment; paid quotes await independent receipt verification. Same quoteId recovers order.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"quoteId":{"type":"string","minLength":1,"maxLength":256}},"required":["quoteId"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/service-orders/{orderId}":{"get":{"operationId":"service_order","description":"GET /v1/projects/{projectId}/service-orders/{orderId}. Requires current object read permission.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"orderId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}},"delete":{"operationId":"service_cancel","description":"DELETE /v1/projects/{projectId}/service-orders/{orderId}. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"orderId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/service-orders/{orderId}/authorization":{"post":{"operationId":"service_authorize","description":"POST /v1/projects/{projectId}/service-orders/{orderId}/authorization. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"orderId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"quoteHash":{"type":"string","minLength":1,"maxLength":256}},"required":["quoteHash"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/service-orders/{orderId}/result":{"get":{"operationId":"service_result","description":"GET /v1/projects/{projectId}/service-orders/{orderId}/result. Requires current object read permission.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"orderId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/service-orders/{orderId}/publication":{"get":{"operationId":"service_result_publication","description":"Read own order publication state and revision with service.read; output remains private unless explicitly published.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"orderId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}},"put":{"operationId":"service_result_publish","description":"Publish or withdraw an accepted public-data-v1 result with project.publish and exact outputHash/expectedRevision. Both projects and service must be public. Onchain copies cannot be erased by withdrawal.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"orderId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"outputHash":{"type":"string","minLength":1,"maxLength":71},"published":{"type":"boolean"},"expectedRevision":{"type":"integer","minimum":0,"maximum":9007199254740991},"expiresAt":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["outputHash","published","expectedRevision"],"additionalProperties":false}}}}}},"/v1/public/service-results/{orderId}":{"get":{"operationId":"public_service_result","description":"Read an explicitly published, unexpired result and its exact provenance. Withdrawn or unavailable ancestors make descendants unavailable for new reuse.","security":[],"parameters":[{"name":"orderId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/public/service-results":{"get":{"operationId":"public_service_results","description":"GET /v1/public/service-results. Public read.","security":[],"parameters":[{"name":"projectId","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"after","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/service-orders/{orderId}/acceptance":{"post":{"operationId":"service_accept_result","description":"POST /v1/projects/{projectId}/service-orders/{orderId}/acceptance. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"orderId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"outputHash":{"type":"string","minLength":1,"maxLength":256},"accepted":{"type":"boolean"}},"required":["outputHash","accepted"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/service-assignments":{"get":{"operationId":"provider_orders","description":"GET /v1/projects/{projectId}/service-assignments. Requires current object read permission.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"after","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/service-assignments/{orderId}/claim":{"post":{"operationId":"provider_claim","description":"POST /v1/projects/{projectId}/service-assignments/{orderId}/claim. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"orderId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/service-assignments/{orderId}/delivery":{"put":{"operationId":"provider_deliver","description":"PUT /v1/projects/{projectId}/service-assignments/{orderId}/delivery. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"orderId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"lease":{"type":"string","minLength":1,"maxLength":64},"output":true},"required":["lease","output"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/wallet":{"post":{"operationId":"wallet_create","description":"POST /v1/projects/{projectId}/wallet. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}},"get":{"operationId":"wallet_get","description":"GET /v1/projects/{projectId}/wallet. Requires current object read permission.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/wallet/actions/{actionId}":{"get":{"operationId":"wallet_action","description":"GET /v1/projects/{projectId}/wallet/actions/{actionId}. Requires current object read permission.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"actionId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/wallet/sessions/prepare":{"post":{"operationId":"wallet_session_prepare","description":"POST /v1/projects/{projectId}/wallet/sessions/prepare. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"session":{"type":"object","properties":{"sessionId":{"type":"string","minLength":1,"maxLength":66},"signer":{"type":"string","minLength":1,"maxLength":42},"recipient":{"type":"string","minLength":1,"maxLength":42},"perPayment":{"type":"string","minLength":1,"maxLength":30},"total":{"type":"string","minLength":1,"maxLength":30},"validUntil":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["sessionId","signer","recipient","perPayment","total","validUntil"],"additionalProperties":false}},"required":["session"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/wallet/sessions/{sessionId}/submit":{"post":{"operationId":"wallet_session_submit","description":"POST /v1/projects/{projectId}/wallet/sessions/{sessionId}/submit. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"sessionId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"signature":{"type":"string","minLength":1,"maxLength":132}},"required":["signature"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/wallet/sessions/{sessionId}/revoke-transaction":{"post":{"operationId":"wallet_session_revoke","description":"POST /v1/projects/{projectId}/wallet/sessions/{sessionId}/revoke-transaction. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"sessionId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":66}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/wallet/payments/prepare":{"post":{"operationId":"wallet_payment_prepare","description":"POST /v1/projects/{projectId}/wallet/payments/prepare. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"orderId":{"type":"string","minLength":1,"maxLength":256},"sessionId":{"type":"string","minLength":1,"maxLength":66}},"required":["orderId","sessionId"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/wallet/payments/{paymentId}/submit":{"post":{"operationId":"wallet_payment_submit","description":"POST /v1/projects/{projectId}/wallet/payments/{paymentId}/submit. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"paymentId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"signature":{"type":"string","minLength":1,"maxLength":132}},"required":["signature"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/vault":{"post":{"operationId":"vault_create","description":"POST /v1/projects/{projectId}/vault. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}},"get":{"operationId":"vault_get","description":"GET /v1/projects/{projectId}/vault. Requires current object read permission.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/vault/transaction":{"post":{"operationId":"vault_transaction","description":"POST /v1/projects/{projectId}/vault/transaction. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"kind":{"type":"string","minLength":1,"maxLength":12},"amountWei":{"type":"string","minLength":1,"maxLength":78},"recipient":{"type":"string","minLength":1,"maxLength":42}},"required":["kind","amountWei"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/vault/balance":{"get":{"operationId":"vault_balance","description":"GET /v1/projects/{projectId}/vault/balance. Requires current object read permission.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"account","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":42}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/signal/store":{"post":{"operationId":"signal_store_prepare","description":"Prepare one store from the admitted fixed factory for an existing reviewed readonly project. Requires signal.manage. Owner signs exact zero-value transaction locally; reuse idempotencyKey. An existing canonical finalized store can be recovered with block evidence; no transaction hash is invented.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"idempotencyKey":{"type":"string","minLength":1,"maxLength":256}},"required":["idempotencyKey"],"additionalProperties":false}}}}},"get":{"operationId":"signal_store","description":"Read the finalized store binding with signal.read. No publisher or upgrade authority is granted by this read.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/signal/grants":{"post":{"operationId":"signal_grant_prepare","description":"Prepare EIP712 owner signature for bounded publisher writes. Requires signal.manage. expiresAt is Unix seconds, from latest chain timestamp + 61 to + 30 days, rechecked at registration; owner/publisher must be EOAs. Quantity, interval, chain/store/project/schema/generation and nonce are bound.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"publisher":{"type":"string","minLength":1,"maxLength":42},"maximumWrites":{"type":"integer","minimum":1,"maximum":10000},"minimumInterval":{"type":"integer","minimum":1,"maximum":604800},"expiresAt":{"type":"integer","minimum":0,"maximum":9007199254740991},"nonce":{"type":"string","minLength":1,"maxLength":78},"idempotencyKey":{"type":"string","minLength":1,"maxLength":256}},"required":["publisher","maximumWrites","minimumInterval","expiresAt","nonce","idempotencyKey"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/signal/grants/register":{"post":{"operationId":"signal_grant_register","description":"Validate the current owner signature and prepare its exact registration transaction for the named publisher. No signature or transaction is generated by the API.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"operationId":{"type":"string","minLength":1,"maxLength":256},"signature":{"type":"string","minLength":1,"maxLength":132}},"required":["operationId","signature"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/signal/grants/{grantId}":{"get":{"operationId":"signal_grant","description":"Read current onchain grant plus API revocation status with signal.read. API revocation is separate from finalized onchain revocation.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"grantId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":66}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/signal/grants/{grantId}/revoke":{"post":{"operationId":"signal_grant_revoke","description":"Immediately block fresh API writes and prepare onchain revocation for the owner. Requires signal.grant.revoke; pending broadcasts must still be reconciled.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"grantId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":66}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"idempotencyKey":{"type":"string","minLength":1,"maxLength":256}},"required":["idempotencyKey"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/signal/records":{"post":{"operationId":"signal_record_prepare","description":"Prepare a bounded write with signal.publish using a current published source result, exact evaluator version and sequence. Times are Unix seconds. Sign with the granted publisher, never an API global key.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"grantId":{"type":"string","minLength":1,"maxLength":66},"sequence":{"type":"integer","minimum":0,"maximum":9007199254740991},"expectedVersion":{"type":"integer","minimum":0,"maximum":9007199254740991},"observedAt":{"type":"integer","minimum":0,"maximum":9007199254740991},"validUntil":{"type":"integer","minimum":0,"maximum":9007199254740991},"sourceResult":{"type":"object","properties":{"id":{"type":"string","minLength":1,"maxLength":256},"revision":{"type":"integer","minimum":0,"maximum":9007199254740991},"outputHash":{"type":"string","minLength":1,"maxLength":71}},"required":["id","revision","outputHash"],"additionalProperties":false},"data":{"type":"string","minLength":1,"maxLength":4098},"idempotencyKey":{"type":"string","minLength":1,"maxLength":256}},"required":["grantId","sequence","expectedVersion","observedAt","validUntil","sourceResult","data","idempotencyKey"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/signal/operations/{operationId}/transaction":{"post":{"operationId":"signal_submit","description":"Attach the original transaction hash to one prepared operation. Requires its original actor or project owner; hash cannot be replaced after an uncertain result.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"operationId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"transactionHash":{"type":"string","minLength":1,"maxLength":66}},"required":["transactionHash"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/signal/operations/{operationId}":{"get":{"operationId":"signal_operation","description":"Reconcile the original transaction using canonical finalized receipts with signal.read. Pending does not mean failure; never create a replacement operation to hide an unknown transaction.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"operationId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/signal/latest":{"get":{"operationId":"signal_latest","description":"Read the finalized store record, authority/version status and source digest with signal.read. Publisher attestation and hashes do not prove input truth.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/signal/publication":{"put":{"operationId":"signal_publish","description":"Explicitly publish or withdraw the signal feed with project.publish and expectedRevision. Existing onchain data remains readable onchain.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"published":{"type":"boolean"},"expectedRevision":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["published","expectedRevision"],"additionalProperties":false}}}}}},"/v1/public/signals/{projectId}":{"get":{"operationId":"public_signal","description":"Read the current finalized published feed. Reports current, stale, empty or unavailable; these states do not certify downstream financial use.","security":[],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/contract-bindings":{"post":{"operationId":"contract_binding_create","description":"POST /v1/projects/{projectId}/contract-bindings. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"requester":{"type":"string","minLength":1,"maxLength":42},"expiresAt":{"type":"integer","minimum":0,"maximum":9007199254740991},"maxRequests":{"type":"integer","minimum":1,"maximum":100},"idempotencyKey":{"type":"string","minLength":1,"maxLength":256}},"required":["requester","expiresAt","maxRequests","idempotencyKey"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/contract-bindings/{bindingId}":{"get":{"operationId":"contract_binding_get","description":"GET /v1/projects/{projectId}/contract-bindings/{bindingId}. Requires current object read permission.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"bindingId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}},"delete":{"operationId":"contract_binding_revoke","description":"DELETE /v1/projects/{projectId}/contract-bindings/{bindingId}. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"bindingId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/contract-requests/{requestId}":{"get":{"operationId":"contract_request_get","description":"GET /v1/projects/{projectId}/contract-requests/{requestId}. Requires current object read permission.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"requestId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/admin/inference/profiles":{"put":{"operationId":"inference_profile_set","description":"PUT /v1/admin/inference/profiles. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"profile":{"type":"object","properties":{"id":{"type":"string","minLength":1,"maxLength":256},"version":{"type":"string","minLength":1,"maxLength":256},"enabled":{"type":"boolean"},"providerId":{"type":"string","minLength":1,"maxLength":256},"accountId":{"type":"string","minLength":1,"maxLength":256},"model":{"type":"string","minLength":1,"maxLength":256},"providers":{"type":"array","items":{"type":"string","minLength":1,"maxLength":256},"minItems":1,"maxItems":32},"asset":{"type":"string","minLength":1,"maxLength":256},"fundingAccount":{"type":"string","minLength":1,"maxLength":256},"permissionHash":{"type":"string","minLength":1,"maxLength":71},"dataPolicyHash":{"type":"string","minLength":1,"maxLength":71},"expiresAt":{"type":"integer","minimum":0,"maximum":9007199254740991},"maximumPerRequest":{"type":"string","minLength":1,"maxLength":78},"maxInputBytes":{"type":"integer","minimum":1,"maximum":65536},"maxOutputTokens":{"type":"integer","minimum":1,"maximum":16384}},"required":["id","version","enabled","providerId","accountId","model","providers","asset","fundingAccount","permissionHash","dataPolicyHash","expiresAt","maximumPerRequest","maxInputBytes","maxOutputTokens"],"additionalProperties":false},"expectedRevision":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["profile","expectedRevision"],"additionalProperties":false}}}}}},"/v1/admin/inference/allowances/{projectId}":{"put":{"operationId":"inference_allowance_set","description":"PUT /v1/admin/inference/allowances/{projectId}. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"profileId":{"type":"string","minLength":1,"maxLength":256},"enabled":{"type":"boolean"},"expiresAt":{"type":"integer","minimum":0,"maximum":9007199254740991},"limit":{"type":"string","minLength":1,"maxLength":78},"expectedRevision":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["profileId","enabled","expiresAt","limit","expectedRevision"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/inference/profiles/{profileId}":{"get":{"operationId":"inference_profile","description":"GET /v1/projects/{projectId}/inference/profiles/{profileId}. Requires current object read permission.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"profileId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/inference/requests":{"post":{"operationId":"inference_submit","description":"POST /v1/projects/{projectId}/inference/requests. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"profileId":{"type":"string","minLength":1,"maxLength":256},"profileHash":{"type":"string","minLength":1,"maxLength":71},"model":{"type":"string","minLength":1,"maxLength":256},"input":{"type":"string","minLength":1,"maxLength":65536},"maxOutputTokens":{"type":"integer","minimum":1,"maximum":16384},"idempotencyKey":{"type":"string","minLength":1,"maxLength":256}},"required":["profileId","profileHash","model","input","maxOutputTokens","idempotencyKey"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/inference/requests/{requestId}":{"get":{"operationId":"inference_get","description":"GET /v1/projects/{projectId}/inference/requests/{requestId}. Requires current object read permission.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"requestId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}},"delete":{"operationId":"inference_cancel","description":"DELETE /v1/projects/{projectId}/inference/requests/{requestId}. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"requestId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/inference/requests/{requestId}/output":{"get":{"operationId":"inference_output","description":"GET /v1/projects/{projectId}/inference/requests/{requestId}/output. Requires current object read permission.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"requestId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/releases":{"post":{"operationId":"release_create","description":"Select static files from own snapshot with release.publish and artifact.read. Does not publish the UI or expose other snapshot files.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"snapshotId":{"type":"string","minLength":1,"maxLength":256},"paths":{"type":"array","items":{"type":"string","minLength":1,"maxLength":180},"minItems":1,"maxItems":32}},"required":["snapshotId","paths"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/releases/{releaseId}":{"get":{"operationId":"release_get","description":"GET /v1/projects/{projectId}/releases/{releaseId}. Requires current object read permission.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"releaseId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/releases/{releaseId}/publication":{"put":{"operationId":"release_publish","description":"Publish, renew or withdraw isolated static UI using expectedRevision. Requires release.publish. No backend or private API access is granted.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"releaseId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"published":{"type":"boolean"},"expiresAt":{"type":"integer","minimum":0,"maximum":9007199254740991},"expectedRevision":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["published","expiresAt","expectedRevision"],"additionalProperties":false}}}}}},"/v1/public/releases/{releaseId}":{"get":{"operationId":"public_release","description":"GET /v1/public/releases/{releaseId}. Public read.","security":[],"parameters":[{"name":"releaseId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/sources/{snapshotId}/publication":{"put":{"operationId":"source_publish","description":"PUT /v1/projects/{projectId}/sources/{snapshotId}/publication. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"snapshotId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"published":{"type":"boolean"},"expectedRevision":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["published","expectedRevision"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/agents/{agentId}/publication":{"put":{"operationId":"agent_publish","description":"Explicitly publish or withdraw one agent name. Requires project.publish and expectedRevision; other identities stay private.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"agentId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"published":{"type":"boolean"},"expectedRevision":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["published","expectedRevision"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/publication":{"put":{"operationId":"project_publish","description":"Explicitly publish or withdraw a project profile using expectedRevision. Requires project.publish; private files and agents stay private.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"published":{"type":"boolean"},"expectedRevision":{"type":"integer","minimum":0,"maximum":9007199254740991},"description":{"type":"string","maxLength":500}},"required":["published","expectedRevision"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/exports":{"post":{"operationId":"project_export","description":"Export own selected snapshot and files. Requires project.export and artifact.read. No side effects or destination operator needed.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"snapshotId":{"type":"string","minLength":1,"maxLength":256}},"required":["snapshotId"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/transfers":{"post":{"operationId":"project_transfer_prepare","description":"POST /v1/projects/{projectId}/transfers. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"destination":{"type":"string","minLength":1,"maxLength":256},"expectedProjectRevision":{"type":"integer","minimum":0,"maximum":9007199254740991},"idempotencyKey":{"type":"string","minLength":1,"maxLength":256}},"required":["destination","expectedProjectRevision","idempotencyKey"],"additionalProperties":false}}}}}},"/v1/projects/{projectId}/transfers/{archiveId}/pages/{page}":{"get":{"operationId":"project_transfer_page","description":"GET /v1/projects/{projectId}/transfers/{archiveId}/pages/{page}. Requires current object read permission.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"archiveId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"page","in":"path","required":true,"schema":{"type":"integer","minimum":0,"maximum":9007199254740991}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/imports":{"post":{"operationId":"project_import_begin","description":"POST /v1/imports. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"header":true},"required":["header"],"additionalProperties":false}}}}}},"/v1/imports/{archiveId}/pages/{page}":{"put":{"operationId":"project_import_page","description":"PUT /v1/imports/{archiveId}/pages/{page}. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"archiveId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"page","in":"path","required":true,"schema":{"type":"integer","minimum":0,"maximum":9007199254740991}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"records":{"type":"array","minItems":1,"maxItems":100,"items":true}},"required":["records"],"additionalProperties":false}}}}}},"/v1/imports/{archiveId}/commit":{"post":{"operationId":"project_import_commit","description":"POST /v1/imports/{archiveId}/commit. Requires current object mutation permission. Reconcile existing resource IDs before retrying an uncertain request.","security":[{"bearerAuth":[]}],"parameters":[{"name":"archiveId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/projects/{projectId}/import-history":{"get":{"operationId":"project_import_history","description":"GET /v1/projects/{projectId}/import-history. Requires current object read permission.","security":[{"bearerAuth":[]}],"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":0,"maximum":9007199254740991}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/public/projects/{slug}":{"get":{"operationId":"public_project","description":"GET /v1/public/projects/{slug}. Public read.","security":[],"parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":63}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/public/sources/{sourceId}":{"get":{"operationId":"public_source","description":"GET /v1/public/sources/{sourceId}. Public read.","security":[],"parameters":[{"name":"sourceId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/public/reviews/{caseId}":{"get":{"operationId":"public_review","description":"GET /v1/public/reviews/{caseId}. Public read.","security":[],"parameters":[{"name":"caseId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}},"/v1/public/graph":{"get":{"operationId":"network_graph","description":"GET /v1/public/graph. Public read.","security":[],"parameters":[{"name":"after","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":256}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100}}],"responses":{"200":{"description":"Operation result"},"400":{"description":"Invalid request"},"401":{"description":"Credential required"},"403":{"description":"Scope denied"},"409":{"description":"State, funding, revision or idempotency conflict"},"429":{"description":"Capacity exceeded; honor Retry-After"},"503":{"description":"Service unavailable; reconcile mutations before retrying"}}}}},"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","description":"Project-scoped credentials from an owner-authorized mandate."}}}}