{"openapi":"3.1.0","info":{"title":"Sine Powers API","version":"1.7.0","description":"Discover native endpoints, manage organization connections and run tools with an organization API key. Product scopes and current project access apply on every request. Configure product access and billing in the Console. Managed execution accepts endpointId, expectedEndpointRevision and input; native execution additionally selects an organization-owned connection and optionally an explicit binding. Native results and run status envelopes are preserved. A successful HTTP response can contain a failed, provider-error or uncertain run: inspect its status before deciding what to do next."},"tags":[{"name":"Powers","description":"Native catalog discovery, organization connections, execution and durable run recovery."}],"servers":[{"url":"https://sinecloud.dev"}],"components":{"schemas":{"ApiError":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}},"required":["code","message"]}},"required":["error"]},"HostDescription":{"type":"object","properties":{"schemaVersion":{"type":"number","enum":[1]},"service":{"type":"string","enum":["sine-powers"]},"protocol":{"type":"string","enum":["sinepowers.host.v1"]},"tenantId":{"type":"string"},"permissions":{"type":"array","items":{"type":"string"}},"catalogRevision":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$/u"},"capabilities":{"type":"object","properties":{"endpointBindings":{"type":"boolean","enum":[true]},"executionBindings":{"type":"boolean"},"connectionProviders":{"type":"boolean"}},"required":["endpointBindings","executionBindings"]},"execution":{"type":"object","properties":{"sync":{"type":"boolean","enum":[true]},"polling":{"type":"boolean","enum":[false]},"resources":{"type":"boolean","enum":[false]},"admission":{"type":"string","enum":["local","external"]}},"required":["sync","polling","resources","admission"]},"connections":{"type":"object","properties":{"management":{"type":"boolean","enum":[true]},"credentials":{"type":"string","enum":["references"]}},"required":["management","credentials"]},"usage":{"type":"object","properties":{"protocol":{"type":"string","enum":["sinepowers.execution.v1"]},"delivery":{"type":"string","enum":["local","outbox"]},"charging":{"type":"string","enum":["not_implemented","local"]}},"required":["protocol","delivery","charging"]},"readiness":{"type":"object","properties":{"status":{"type":"string","enum":["ready"]}},"required":["status"]}},"required":["schemaVersion","service","protocol","tenantId","permissions","catalogRevision","execution","connections","usage","readiness"],"description":"Versioned host contract for any local or cloud integration. Configured capabilities do not establish provider availability. Operation URLs are relative to the advertised service base URL."},"CatalogDescription":{"type":"object","properties":{"catalogRevision":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$/u"},"counts":{"$ref":"#/components/schemas/CatalogCounts"},"filters":{"type":"object","properties":{"providerId":{"type":"object","properties":{"type":{"type":"string","enum":["string"]},"operator":{"type":"string","enum":["eq"]}},"required":["type","operator"]},"category":{"type":"object","properties":{"type":{"type":"string","enum":["string"]},"operator":{"type":"string","enum":["contains"]},"valuesFrom":{"type":"string","enum":["/v1/categories"]}},"required":["type","operator","valuesFrom"]},"q":{"type":"object","properties":{"type":{"type":"string","enum":["string"]},"operator":{"type":"string","enum":["text"]},"fields":{"type":"array","items":{"type":"string"}}},"required":["type","operator","fields"]},"hostSupported":{"type":"object","properties":{"type":{"type":"string","enum":["boolean"]},"operator":{"type":"string","enum":["eq"]}},"required":["type","operator"]},"connectionId":{"type":"object","properties":{"type":{"type":"string","enum":["string"]},"operator":{"type":"string","enum":["compatible"]}},"required":["type","operator"]}},"required":["providerId","category","q","hostSupported","connectionId"]},"pagination":{"type":"object","properties":{"defaultLimit":{"type":"number","enum":[100]},"maxLimit":{"type":"number","enum":[200]},"cursor":{"type":"string","enum":["revision-and-query-bound"]}},"required":["defaultLimit","maxLimit","cursor"]},"operations":{"type":"object","properties":{"categories":{"type":"string","enum":["/v1/categories"]},"search":{"type":"string","enum":["/v1/endpoints"]},"describe":{"type":"string","enum":["/v1/endpoints/{endpointId}"]},"endpointBindings":{"type":"string","enum":["/v1/endpoint-bindings"]},"connections":{"type":"string","enum":["/v1/connections"]},"createRun":{"type":"string","enum":["/v1/runs"]},"listRuns":{"type":"string","enum":["/v1/runs"]},"getRun":{"type":"string","enum":["/v1/runs/{runId}"]}},"required":["categories","search","describe","connections","createRun","getRun"]}},"required":["catalogRevision","counts","filters","pagination","operations"],"description":"Discovery protocol, original catalog counts, supported filters, pagination rules, and operation paths. Fetch details only for selected Endpoints."},"CatalogCounts":{"type":"object","properties":{"providers":{"type":"integer","minimum":0},"endpoints":{"type":"integer","minimum":0},"resources":{"type":"integer","minimum":0},"categories":{"type":"integer","minimum":0}},"required":["providers","endpoints","resources","categories"]},"EndpointCategory":{"type":"object","properties":{"id":{"type":"string"},"displayName":{"type":"string"},"description":{"type":"string"},"endpointCount":{"type":"integer","minimum":0}},"required":["id","displayName","endpointCount"],"additionalProperties":{},"description":"Original Monid leaf category with membership count for the selected provider scope. Text filters category metadata; zero-count leaves remain original taxonomy members."},"Provider":{"type":"object","properties":{"providerId":{"type":"string"},"displayName":{"type":"string"},"homepageUrl":{"type":"string"},"authProfiles":{"type":"array","items":{"type":"object","additionalProperties":{}}},"connectionAvailable":{"type":"boolean"},"endpointCount":{"type":"integer","minimum":0}},"required":["providerId","displayName","authProfiles","connectionAvailable","endpointCount"]},"Pagination":{"type":"object","properties":{"total":{"type":"integer","minimum":0},"limit":{"type":"integer","minimum":1,"maximum":200},"nextCursor":{"type":["string","null"]}},"required":["total","limit","nextCursor"]},"Service":{"type":"object","properties":{"displayName":{"type":"string"},"homepageUrl":{"type":"string"},"authProfiles":{"type":"array","items":{"type":"object","additionalProperties":{}}},"connectionAvailable":{"type":"boolean"},"endpointCount":{"type":"integer","minimum":0},"serviceId":{"type":"string"}},"required":["displayName","authProfiles","connectionAvailable","endpointCount","serviceId"],"description":"A project catalog API namespace. Connection availability is a declaration, not verification of credentials or execution."},"Connection":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"providerId":{"type":"string"},"authProfileId":{"type":"string"},"authType":{"type":"string"},"scopes":{"type":"array","items":{"type":"string"}},"credentialStatus":{"type":"string","enum":["not_configured","not_required","configured"]},"verification":{"type":"string","enum":["not_verified"]},"revision":{"type":"string"},"version":{"type":"integer","exclusiveMinimum":0},"accountId":{"type":"string"},"status":{"type":"string","enum":["active","disabled","revoked"]},"missingCredentialFields":{"type":"array","items":{"type":"string"}},"publicConfig":{"type":"object","additionalProperties":{"type":"string"}},"management":{"type":"string","enum":["organization","platform"],"description":"Platform connections are read-only to customer keys."}},"required":["id","tenantId","providerId","authProfileId","authType","scopes","credentialStatus","verification"],"additionalProperties":{},"description":"Safe configured-connection metadata. Configured credentials do not establish live provider verification."},"ConnectionProviderPage":{"type":"object","properties":{"providers":{"type":"array","items":{"$ref":"#/components/schemas/ConnectionProviderSummary"}},"pagination":{"$ref":"#/components/schemas/Pagination"},"providerIndexRevision":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$/u"},"bindingsRevision":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$/u"}},"required":["providers","pagination","providerIndexRevision","bindingsRevision"],"additionalProperties":false},"ConnectionProviderSummary":{"type":"object","properties":{"providerId":{"type":"string"},"displayName":{"type":"string"},"homepageUrl":{"type":"string"},"description":{"type":"string"},"authProfiles":{"type":"array","items":{"$ref":"#/components/schemas/ConnectionProviderProfileSummary"}},"bindings":{"$ref":"#/components/schemas/ConnectionProviderBindingCounts"}},"required":["providerId","displayName","authProfiles","bindings"],"additionalProperties":false,"description":"A connection supplier declaration, independently of Catalog Services. Summary listing does not load transport modules or credentials."},"ConnectionProviderProfileSummary":{"type":"object","properties":{"authProfileId":{"type":"string"},"authType":{"type":"string","enum":["no_auth","api_key","custom_credential","oauth2"]},"authSupported":{"type":"boolean"},"reasonCodes":{"type":"array","items":{"type":"string"}},"transport":{"type":"object","properties":{"status":{"type":"string","enum":["not_inspected"]}},"required":["status"],"additionalProperties":false}},"required":["authProfileId","authType","authSupported","reasonCodes","transport"],"additionalProperties":false},"ConnectionProviderBindingCounts":{"type":"object","properties":{"total":{"type":"integer","minimum":0},"available":{"type":"integer","minimum":0}},"required":["total","available"],"additionalProperties":false,"description":"Only authorized project bindings. available means contract and host support; it does not inspect configured accounts or establish live provider verification."},"ConnectionProviderDescription":{"type":"object","properties":{"providerId":{"type":"string"},"displayName":{"type":"string"},"homepageUrl":{"type":"string"},"description":{"type":"string"},"bindings":{"$ref":"#/components/schemas/ConnectionProviderBindingCounts"},"authProfiles":{"type":"array","items":{"$ref":"#/components/schemas/ConnectionProviderProfile"}},"providerIndexRevision":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$/u"},"bindingsRevision":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$/u"}},"required":["providerId","displayName","bindings","authProfiles","providerIndexRevision","bindingsRevision"],"additionalProperties":false},"ConnectionProviderProfile":{"type":"object","properties":{"providerId":{"type":"string"},"authProfileId":{"type":"string"},"authType":{"type":"string","enum":["no_auth","api_key","custom_credential","oauth2"]},"scopes":{"type":"array","items":{"type":"string"}},"credentialFields":{"type":"array","items":{"$ref":"#/components/schemas/ConnectionProviderCredentialField"}},"authSupported":{"type":"boolean"},"reasonCodes":{"type":"array","items":{"type":"string"}},"transport":{"type":"object","properties":{"status":{"type":"string","enum":["supported","unsupported"]},"reasonCodes":{"type":"array","items":{"type":"string"}}},"required":["status","reasonCodes"],"additionalProperties":false},"bindings":{"$ref":"#/components/schemas/ConnectionProviderBindingCounts"}},"required":["providerId","authProfileId","authType","scopes","credentialFields","authSupported","reasonCodes","transport","bindings"],"additionalProperties":false,"description":"Lazily inspected provider authentication and transport support, kept separate from authorized bindings, configured credentials and account verification."},"ConnectionProviderCredentialField":{"type":"object","properties":{"key":{"type":"string"},"label":{"type":"string"},"inputType":{"type":"string","enum":["text","password","textarea","json"]},"required":{"type":"boolean"},"secret":{"type":"boolean"},"placeholder":{"type":"string"},"description":{"type":"string"}},"required":["key","label","inputType","required","secret"],"additionalProperties":false,"description":"Original provider field names and display metadata. Credential values, secret references and environment variable mappings are never returned."},"ConnectionProviderProfileDescription":{"type":"object","properties":{"providerId":{"type":"string"},"authProfileId":{"type":"string"},"authType":{"type":"string","enum":["no_auth","api_key","custom_credential","oauth2"]},"scopes":{"type":"array","items":{"type":"string"}},"credentialFields":{"type":"array","items":{"$ref":"#/components/schemas/ConnectionProviderCredentialField"}},"authSupported":{"type":"boolean"},"reasonCodes":{"type":"array","items":{"type":"string"}},"transport":{"type":"object","properties":{"status":{"type":"string","enum":["supported","unsupported"]},"reasonCodes":{"type":"array","items":{"type":"string"}}},"required":["status","reasonCodes"],"additionalProperties":false},"bindings":{"$ref":"#/components/schemas/ConnectionProviderBindingCounts"},"providerIndexRevision":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$/u"},"bindingsRevision":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$/u"}},"required":["providerId","authProfileId","authType","scopes","credentialFields","authSupported","reasonCodes","transport","bindings","providerIndexRevision","bindingsRevision"],"additionalProperties":false},"EndpointBindingSummary":{"type":"object","properties":{"id":{"type":"string"},"revision":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$/u"},"serviceId":{"type":"string"},"endpointId":{"type":"string"},"endpointRevision":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$/u"},"providerId":{"type":"string"},"authProfileId":{"type":"string"},"execution":{"type":"string","enum":["native-http","remote-operation"]},"protocol":{"type":"string"},"available":{"type":"boolean"},"reasonCodes":{"type":"array","items":{"type":"string"}},"verification":{"type":"string","enum":["not_verified"]},"connectionStatus":{"type":"string","enum":["configured","not_configured","unavailable"]}},"required":["id","revision","serviceId","endpointId","endpointRevision","providerId","authProfileId","execution","protocol","available","reasonCodes","verification"],"description":"Project-defined execution channel. providerId means the execution supplier; serviceId means the catalog namespace. Static compatibility is separate from a configured connection and live verification."},"EndpointBinding":{"allOf":[{"$ref":"#/components/schemas/EndpointBindingSummary"},{"type":"object","properties":{"request":{"type":"object","properties":{"method":{"type":"string"},"url":{"type":"string"}},"required":["method","url"]},"target":{"type":"object","additionalProperties":{}},"description":{"type":"string"},"inputConstraints":{"type":"object","additionalProperties":{}},"notes":{"type":"array","items":{"type":"string"}},"evidence":{"type":"object","properties":{"kind":{"type":"string","enum":["reviewed-protocol"]},"revision":{"type":"string"},"urls":{"type":"array","items":{"type":"string"}}},"required":["kind","revision","urls"]}},"required":["request","target"]}],"description":"The local Endpoint contract and binding input constraints both apply. Targets are read-only project configuration; run bodies cannot override them."},"ManagedConnection":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"providerId":{"type":"string"},"authProfileId":{"type":"string"},"authType":{"type":"string"},"scopes":{"type":"array","items":{"type":"string"}},"verification":{"type":"string","enum":["not_verified"]},"revision":{"type":"string"},"version":{"type":"integer","exclusiveMinimum":0},"accountId":{"type":"string"},"status":{"type":"string","enum":["active","disabled","revoked"]},"publicConfig":{"type":"object","additionalProperties":{"type":"string"}}},"required":["id","tenantId","providerId","authProfileId","authType","scopes","verification","revision","version","accountId","status"],"additionalProperties":{},"description":"Durable connection metadata after a successful compare-and-set. This response does not resolve secrets; use listConnections to inspect current credential configuration."},"PutConnectionRequest":{"type":"object","properties":{"providerId":{"type":"string","minLength":1,"maxLength":256,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u"},"authProfileId":{"type":"string","minLength":1,"maxLength":256,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u"},"authType":{"type":"string","enum":["no_auth","api_key","custom_credential"]},"accountId":{"type":"string","minLength":1,"maxLength":256,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u"},"credentialRefs":{"type":"object","additionalProperties":{"type":"string","minLength":1,"maxLength":256,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u"},"description":"Original credential field names mapped to host-allowed opaque secret references. This never accepts secret values or environment variable names."},"status":{"type":"string","enum":["active","disabled","revoked"]},"expectedRevision":{"type":"string","minLength":1,"maxLength":128,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u","description":"Opaque revision returned by connection metadata. Required to change an existing connection; creation without this field never replaces an existing ID."}},"required":["providerId","authProfileId","authType","accountId"],"additionalProperties":false,"description":"Create or replace a tenant-owned connection using secret references. An ID permanently identifies the same provider, profile, authentication type, and account. Provider account identity is an assertion by the host; local validation cannot verify it."},"PatchConnectionRequest":{"type":"object","properties":{"expectedRevision":{"type":"string","minLength":1,"maxLength":128,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u","description":"Opaque revision returned by connection metadata. Required to change an existing connection; creation without this field never replaces an existing ID."},"status":{"type":"string","enum":["active","disabled","revoked"]},"credentialRefs":{"type":"object","additionalProperties":{"type":"string","minLength":1,"maxLength":256,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u"},"description":"Original credential field names mapped to host-allowed opaque secret references. This never accepts secret values or environment variable names."}},"required":["expectedRevision"],"additionalProperties":false,"description":"Change status or rotate logical secret references with compare-and-set. Revocation is permanent for this connection ID."},"EndpointSummary":{"type":"object","properties":{"id":{"type":"string"},"providerId":{"type":"string"},"revision":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$/u"},"meta":{"type":"object","properties":{"displayName":{"type":"string"},"summary":{"type":"string"},"categories":{"type":"array","items":{"type":"string"}}},"required":["displayName","summary","categories"]},"availability":{"$ref":"#/components/schemas/EndpointAvailability"},"platformAvailability":{"type":"object","required":["available"],"properties":{"available":{"type":"boolean"}},"description":"Whether an active platform-managed route matches this exact endpoint revision."}},"required":["id","providerId","revision","meta","availability"],"description":"Compact discovery row. Load the selected Endpoint description before constructing provider-native input."},"EndpointAvailability":{"type":"object","properties":{"hostSupported":{"type":"boolean"},"requirements":{"type":"object","properties":{"polling":{"type":"boolean"},"resources":{"type":"boolean"}},"required":["polling","resources"]},"reasonCodes":{"type":"array","items":{"type":"string"}},"connectionStatus":{"type":"string","enum":["configured","not_configured","unavailable"]},"configuredConnectionIds":{"type":"array","items":{"type":"string"}},"verification":{"type":"string","enum":["not_verified"]}},"required":["hostSupported","requirements","reasonCodes","connectionStatus","configuredConnectionIds","verification"],"description":"Host support and connection configuration are independent observations. No field establishes successful live provider verification; execution rechecks authorization and configuration."},"Endpoint":{"allOf":[{"$ref":"#/components/schemas/EndpointSummary"},{"type":"object","properties":{"meta":{"$ref":"#/components/schemas/EndpointMeta"},"document":{"type":"object","additionalProperties":{},"description":"The original Monid Endpoint document, including authoritative provider-native input schemas, defaults, hooks, and output descriptions."},"connections":{"type":"array","items":{"$ref":"#/components/schemas/Connection"}},"connectionProfiles":{"type":"array","items":{"type":"object","properties":{"providerId":{"type":"string"},"authProfileId":{"type":"string"},"authType":{"type":"string"},"credentialFields":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string"},"label":{"type":"string"},"inputType":{"type":"string","enum":["text","password","textarea","json"]},"required":{"type":"boolean"},"secret":{"type":"boolean"},"placeholder":{"type":"string"},"description":{"type":"string"}},"required":["key","label","inputType","required","secret"]}},"scopes":{"type":"array","items":{"type":"string"}},"hostSupported":{"type":"boolean"},"authCompatible":{"type":"boolean"},"targetCompatible":{"type":"boolean"},"supported":{"type":"boolean"},"reasonCodes":{"type":"array","items":{"type":"string"}}},"required":["providerId","authProfileId","authType","credentialFields","scopes","hostSupported","authCompatible","targetCompatible","supported","reasonCodes"]}}},"required":["document","connections"]}],"description":"Compact discovery row. Load the selected Endpoint description before constructing provider-native input."},"EndpointMeta":{"type":"object","properties":{"displayName":{"type":"string"},"summary":{"type":"string"},"categories":{"type":"array","items":{"type":"string"}},"description":{"type":"string"},"notes":{"type":"array","items":{"type":"string"}},"docsUrl":{"type":"string"}},"required":["displayName","summary"],"additionalProperties":{}},"RunRecord":{"type":"object","properties":{"executionIdentity":{"$ref":"#/components/schemas/ExecutionIdentity"},"id":{"type":"string"},"endpointId":{"type":"string"},"endpointHash":{"type":"string"},"connectionId":{"type":"string"},"sourceEvidence":{"type":"object","additionalProperties":{}},"status":{"type":"string","enum":["ACCEPTED","RUNNING","SUCCEEDED","PROVIDER_ERROR","EXECUTOR_ERROR","FAILED","UNKNOWN"]},"input":{"anyOf":[{"$ref":"#/components/schemas/RunInput"},{"type":"object","additionalProperties":{}}],"description":"Stored input is returned unchanged. Historical OC records may contain additional input keys; new submissions still require the strict Monid RunInput envelope."},"result":{"anyOf":[{"$ref":"#/components/schemas/NativeRunResult"},{"$ref":"#/components/schemas/ExternalRunResult"},{"$ref":"#/components/schemas/StoredRunResult"}]},"usageSource":{"type":"string","enum":["monid","unreported"]},"providerCostReconciliation":{"type":"string","enum":["not_performed"]},"reconciliation":{"type":"string","enum":["pending"],"description":"Present when a successful run is waiting for a supplier cost receipt (待对账). The business status stays SUCCEEDED; no user charge or zero-cost ledger entry is written while pending."},"charging":{"type":"object","properties":{"status":{"type":"string","enum":["held","pending_reconciliation","settled","released"]},"holdMicroUsd":{"type":"string"},"costMicroUsd":{"type":"string"},"chargedMicroUsd":{"type":"string"},"priceSource":{"type":"string","enum":["configured","at_cost"]},"scenarioId":{"type":"string"}},"required":["status"],"additionalProperties":false},"error":{"type":"object","additionalProperties":{}},"executionMode":{"type":"string"},"createdAt":{"type":"string"},"startedAt":{"type":"string"},"finishedAt":{"type":"string"},"audit":{"type":"array","items":{"type":"object","properties":{"sequence":{"type":"integer"},"type":{"type":"string"},"at":{"type":"string"},"details":{"description":"Original JSON audit details, including historical non-object values."}},"required":["sequence","type","at"]}},"replayed":{"type":"boolean"}},"required":["id","endpointId","endpointHash","connectionId","status","input","executionMode","createdAt","audit"],"description":"A persisted run record. HTTP 201 confirms record creation, not provider success. UNKNOWN outcomes are not automatically retried. Historical external results and EXECUTOR_ERROR states remain readable. Provider output is not validated by this API."},"ExecutionIdentity":{"type":"object","properties":{"serviceId":{"type":"string"},"endpointId":{"type":"string"},"endpointRevision":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$/u"},"providerId":{"type":"string"},"bindingId":{"type":"string"},"bindingRevision":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$/u"},"connectionId":{"type":"string"},"connectionRevision":{"type":"string"},"protocol":{"type":"string"},"execution":{"type":"string","enum":["native-http","remote-operation"]}},"required":["serviceId","endpointId","endpointRevision","providerId","bindingId","bindingRevision","connectionId","connectionRevision","protocol","execution"],"additionalProperties":false,"description":"Immutable identity of the local Service/Endpoint and the selected Provider/Binding/Connection. Existing v1 providerId fields retain their Service meaning."},"RunInput":{"type":"object","properties":{"body":{"description":"Provider-native JSON input. Consult the selected Endpoint document for the required input sections and original schema."},"queryParams":{"type":"object","additionalProperties":{}},"pathParams":{"type":"object","additionalProperties":{"type":"string"}}},"additionalProperties":false},"NativeRunResult":{"type":"object","properties":{"kind":{"type":"string","enum":["COMPLETED"]},"httpStatus":{"type":"integer"},"isProviderError":{"type":"boolean"},"output":{},"usage":{"type":"object","additionalProperties":{}}},"required":["kind","httpStatus","isProviderError","usage"],"additionalProperties":{},"description":"The original Monid completion envelope. Provider-native output and usage retain their original semantics."},"ExternalRunResult":{"type":"object","properties":{"kind":{"type":"string","enum":["COMPLETED"]},"execution":{"type":"object","properties":{"kind":{"type":"string","enum":["external"]},"ok":{"type":"boolean"}},"required":["kind","ok"]},"output":{},"error":{},"usage":{"type":"object","properties":{"status":{"type":"string","enum":["unreported"]}},"required":["status"]},"timing":{"type":"object","properties":{"startedAt":{"type":"string"},"completedAt":{"type":"string"},"durationMs":{"type":"number"}},"required":["startedAt","completedAt","durationMs"]}},"required":["kind","execution","usage"],"description":"Historical executor result retained for audit reading only. It is not a supported new invocation mode. No HTTP status or provider cost is inferred; null output remains valid."},"StoredRunResult":{"type":"object","properties":{"kind":{"type":"string"},"httpStatus":{"type":"number"},"isProviderError":{"type":"boolean"},"output":{},"usage":{},"execution":{"type":"object","properties":{"kind":{"type":"string"}},"required":["kind"],"additionalProperties":{}}},"required":["kind"],"additionalProperties":{},"description":"Stored host envelope. Native HTTP runs retain Engine output and usage. Provider-operation results contain locally validated output, null native usage and separately attributed supplier evidence. Historical envelopes remain readable."},"CreateRunRequest":{"type":"object","properties":{"endpointId":{"type":"string","minLength":1,"maxLength":256,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u","example":"opoint#suggest"},"connectionId":{"type":"string","minLength":1,"maxLength":80,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u","example":"opoint-public"},"expectedEndpointRevision":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$/u","description":"Use the revision returned by Endpoint discovery or description. A changed Endpoint is rejected with 409 before provider execution."},"bindingId":{"type":"string","minLength":1,"maxLength":512,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u","description":"A project-defined execution binding. Required when the selected Endpoint and Connection match multiple bindings. No registration-order selection or failover occurs."},"expectedBindingRevision":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$/u","description":"Pin the selected binding revision independently of the Endpoint contract."},"input":{"$ref":"#/components/schemas/RunInput"}},"required":["endpointId","connectionId"],"additionalProperties":false,"description":"Credentials, tenants, transport settings, and provider targets are trusted server configuration. Omitted input becomes an empty RunInput; provider payloads are otherwise preserved. Only the project Endpoint catalog can create new runs.","example":{"endpointId":"opoint#suggest","connectionId":"opoint-public","input":{"queryParams":{"query":"Norway"}}}},"RunPage":{"type":"object","properties":{"runs":{"type":"array","items":{"$ref":"#/components/schemas/RunSummary"}},"pagination":{"type":"object","properties":{"limit":{"type":"integer","minimum":1,"maximum":200},"nextCursor":{"type":["string","null"]}},"required":["limit","nextCursor"]}},"required":["runs","pagination"],"description":"Authorization-filtered bounded keyset page. An empty page may have a next cursor. Cursors bind filters, principal policy and durable run revision; changed runs require restarting the query."},"RunSummary":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"providerId":{"type":"string"},"endpointId":{"type":"string"},"endpointRevision":{"type":"string"},"executionIdentity":{"$ref":"#/components/schemas/ExecutionIdentity"},"connectionId":{"type":"string"},"connectionRevision":{"type":"string"},"status":{"type":"string","enum":["ACCEPTED","RUNNING","SUCCEEDED","PROVIDER_ERROR","FAILED","UNKNOWN","EXECUTOR_ERROR"]},"context":{"type":"object","properties":{"principalId":{"type":"string"},"requestId":{"type":"string"},"policyVersion":{"type":"string"},"scopeRef":{"type":"string"}},"required":["principalId","requestId"]},"executionMode":{"type":"string"},"createdAt":{"type":"string"},"startedAt":{"type":"string"},"finishedAt":{"type":"string"},"error":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}},"required":["code"]},"reconciliation":{"type":"string","enum":["pending"]}},"required":["id","tenantId","providerId","endpointId","connectionId","connectionRevision","status","executionMode","createdAt"],"description":"Authorized run metadata without business input, output, credentials or audit bodies. Filter reconciliation=pending to list 待对账 runs."},"UsageEventPage":{"type":"object","properties":{"events":{"type":"array","items":{"type":"object","properties":{"event":{"anyOf":[{"$ref":"#/components/schemas/ExecutionUsageEvent"},{"$ref":"#/components/schemas/ExecutionUsageEventV2"},{"$ref":"#/components/schemas/CostCorrectionUsageEvent"}]},"delivery":{"type":"object","properties":{"status":{"type":"string","enum":["recorded","pending","acknowledged"]},"attempts":{"type":"integer","minimum":0},"lastAttemptAt":{"type":["string","null"]},"acknowledgedAt":{"type":["string","null"]}},"required":["status","attempts","lastAttemptAt","acknowledgedAt"]}},"required":["event","delivery"]}},"limit":{"type":"integer","minimum":1,"maximum":200}},"required":["events","limit"]},"ExecutionUsageEvent":{"type":"object","properties":{"schemaVersion":{"type":"number","enum":[1]},"type":{"type":"string","enum":["sinepowers.execution.v1"]},"eventId":{"type":"string"},"tenantId":{"type":"string"},"runId":{"type":"string"},"endpointId":{"type":"string"},"providerId":{"type":"string"},"endpointRevision":{"type":"string"},"endpointHash":{"type":"string"},"connectionId":{"type":"string"},"connectionRevision":{"type":"string"},"executionMode":{"type":"string"},"status":{"type":"string","enum":["SUCCEEDED","PROVIDER_ERROR","EXECUTOR_ERROR","FAILED","UNKNOWN"]},"context":{"type":["object","null"],"additionalProperties":{}},"estimate":{},"admissionMode":{"type":"string","enum":["local","external"]},"admission":{"type":["object","null"],"additionalProperties":{}},"nativeUsage":{},"usageSource":{"type":"string","enum":["monid","unknown","unreported"]},"providerCostReconciliation":{"type":"string","enum":["not_performed"]},"sourceEvidence":{"type":["object","null"],"additionalProperties":{}},"requestStartedCount":{"type":"integer","minimum":0},"createdAt":{"type":"string"},"startedAt":{"type":["string","null"]},"finishedAt":{"type":"string"},"occurredAt":{"type":"string"}},"required":["schemaVersion","type","eventId","tenantId","runId","endpointId","providerId","endpointRevision","endpointHash","connectionId","connectionRevision","executionMode","status","context","admissionMode","admission","usageSource","providerCostReconciliation","sourceEvidence","requestStartedCount","createdAt","startedAt","finishedAt","occurredAt"],"description":"Immutable execution facts with original Monid usage, never a price or charge. requestStartedCount counts audited egress, which can include authentication and customization requests; it is not a billable operation count."},"ExecutionUsageEventV2":{"allOf":[{"$ref":"#/components/schemas/ExecutionUsageEvent"},{"type":"object","properties":{"schemaVersion":{"type":"number","enum":[2]},"type":{"type":"string","enum":["sinepowers.execution.v2"]},"executionIdentity":{"$ref":"#/components/schemas/ExecutionIdentity"},"providerEvidence":{"type":"array","items":{"type":"object","additionalProperties":{}},"maxItems":20}},"required":["executionIdentity","providerEvidence"]}],"description":"Execution facts with independent Service, Provider, Binding and Connection identity. Supplier receipts are separate from native usage and do not implement platform billing."},"CostCorrectionUsageEvent":{"type":"object","properties":{"schemaVersion":{"type":"number","enum":[1]},"type":{"type":"string","enum":["sinepowers.cost-correction.v1"]},"eventId":{"type":"string"},"tenantId":{"type":"string"},"runId":{"type":"string"},"endpointId":{"type":"string"},"providerId":{"type":"string"},"endpointRevision":{"type":"string"},"endpointHash":{"type":"string"},"connectionId":{"type":"string"},"connectionRevision":{"type":"string"},"executionMode":{"type":"string"},"status":{"type":"string","enum":["SUCCEEDED","PROVIDER_ERROR","EXECUTOR_ERROR","FAILED","UNKNOWN"]},"context":{"type":["object","null"],"additionalProperties":{}},"estimate":{},"admissionMode":{"type":"string","enum":["local","external"]},"admission":{"type":["object","null"],"additionalProperties":{}},"nativeUsage":{"type":"null"},"usageSource":{"type":"string","enum":["monid","unknown","unreported"]},"providerCostReconciliation":{"type":"string","enum":["recorded"]},"costMicroUsd":{"type":"string"},"chargeMicroUsd":{"type":"string"},"priceSource":{"type":"string","enum":["configured","at_cost"]},"sourceEvidence":{"type":["object","null"],"additionalProperties":{}},"requestStartedCount":{"type":"integer","minimum":0},"createdAt":{"type":"string"},"startedAt":{"type":["string","null"]},"finishedAt":{"type":"string"},"occurredAt":{"type":"string"},"executionIdentity":{"$ref":"#/components/schemas/ExecutionIdentity"}},"required":["schemaVersion","type","eventId","tenantId","runId","endpointId","providerId","endpointRevision","endpointHash","connectionId","connectionRevision","executionMode","status","context","admissionMode","admission","nativeUsage","usageSource","providerCostReconciliation","costMicroUsd","chargeMicroUsd","priceSource","sourceEvidence","requestStartedCount","createdAt","startedAt","finishedAt","occurredAt"],"description":"Appended sinepowers.cost-correction.v1 event when a supplier cost receipt is settled. The original execution event stays immutable with not_performed. Downstream reconcilers read integer micro-USD cost and user charge from this event. FAILED runs do not produce this event; those costs stay on the ledger as failed_cost without charging the user."},"CloudPowersError":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["type","code","message","param"],"properties":{"type":{"type":"string","enum":["authentication_error","invalid_request_error","server_error"]},"code":{"type":"string"},"message":{"type":"string"},"param":{"type":"null"}}}}}},"securitySchemes":{"OrganizationApiKey":{"type":"http","scheme":"bearer","bearerFormat":"sc_…","description":"Organization API key with the required product scopes. Create and manage keys in the Sine Cloud Console. The key fixes the organization and may restrict the project."}}},"paths":{"/api/powers/v1/host":{"get":{"operationId":"powers_describeHost","tags":["Powers"],"summary":"Describe host protocols and configured capabilities","responses":{"200":{"description":"Authenticated host capability description; no secret references or credentials","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HostDescription"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"401":{"description":"Bearer authentication required","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"WWW-Authenticate":{"schema":{"type":"string","const":"Bearer"}}}},"402":{"description":"Insufficient wallet balance or execution budget.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"403":{"description":"Request is not authorized","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"405":{"description":"Method not allowed; inspect Allow","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"409":{"description":"Invocation pending, changed idempotency envelope, revision mismatch or scope conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"429":{"description":"Request rate or quota exceeded. Respect Retry-After when supplied.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}},"500":{"description":"Internal error; details are not disclosed","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"502":{"description":"Runtime response unavailable. Reuse the original Idempotency-Key and request envelope to recover the admitted invocation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"503":{"description":"Runtime unavailable","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}}},"x-sinecloud-scopes":["catalogRead"],"description":"Describe host protocols and configured capabilities\n\nAuthenticate with an organization API key. Native permission names describe runtime capabilities; x-sinecloud-scopes lists the customer key scopes required by Cloud.","parameters":[{"name":"X-Sinecloud-Project-Id","in":"header","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"description":"Select a currently accessible project. A project-restricted key cannot select another project. Omit to use the key restriction or organization scope as permitted."}],"security":[{"OrganizationApiKey":[]}]}},"/api/powers/v1/catalog":{"get":{"operationId":"powers_describeCatalog","tags":["Powers"],"summary":"Describe the Agent discovery protocol","responses":{"200":{"description":"Catalog revision, filters, and operation paths","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CatalogDescription"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"401":{"description":"Bearer authentication required","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"WWW-Authenticate":{"schema":{"type":"string","const":"Bearer"}}}},"402":{"description":"Insufficient wallet balance or execution budget.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"403":{"description":"Request is not authorized","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"405":{"description":"Method not allowed; inspect Allow","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"409":{"description":"Invocation pending, changed idempotency envelope, revision mismatch or scope conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"429":{"description":"Request rate or quota exceeded. Respect Retry-After when supplied.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}},"500":{"description":"Internal error; details are not disclosed","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"502":{"description":"Runtime response unavailable. Reuse the original Idempotency-Key and request envelope to recover the admitted invocation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"503":{"description":"Runtime unavailable","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}}},"x-sinecloud-scopes":["catalogRead"],"description":"Describe the Agent discovery protocol\n\nAuthenticate with an organization API key. Native permission names describe runtime capabilities; x-sinecloud-scopes lists the customer key scopes required by Cloud.","parameters":[{"name":"X-Sinecloud-Project-Id","in":"header","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"description":"Select a currently accessible project. A project-restricted key cannot select another project. Omit to use the key restriction or organization scope as permitted."}],"security":[{"OrganizationApiKey":[]}]}},"/api/powers/v1/categories":{"get":{"operationId":"powers_listCategories","tags":["Powers"],"summary":"List original Endpoint categories","parameters":[{"schema":{"type":"string","minLength":1,"maxLength":256,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u"},"required":false,"name":"providerId","in":"query"},{"schema":{"type":"string","minLength":1,"maxLength":512,"pattern":"^[^\\u0000-\\u001f\\u007f]+$/u"},"required":false,"name":"q","in":"query"},{"name":"X-Sinecloud-Project-Id","in":"header","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"description":"Select a currently accessible project. A project-restricted key cannot select another project. Omit to use the key restriction or organization scope as permitted."}],"responses":{"200":{"description":"Categories with Endpoint counts","content":{"application/json":{"schema":{"type":"object","properties":{"categories":{"type":"array","items":{"$ref":"#/components/schemas/EndpointCategory"}},"catalogRevision":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$/u"}},"required":["categories","catalogRevision"]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"401":{"description":"Bearer authentication required","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"WWW-Authenticate":{"schema":{"type":"string","const":"Bearer"}}}},"402":{"description":"Insufficient wallet balance or execution budget.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"403":{"description":"Request is not authorized","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"405":{"description":"Method not allowed; inspect Allow","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"409":{"description":"Invocation pending, changed idempotency envelope, revision mismatch or scope conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"429":{"description":"Request rate or quota exceeded. Respect Retry-After when supplied.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}},"500":{"description":"Internal error; details are not disclosed","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"502":{"description":"Runtime response unavailable. Reuse the original Idempotency-Key and request envelope to recover the admitted invocation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"503":{"description":"Runtime unavailable","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}}},"x-sinecloud-scopes":["catalogRead"],"description":"List original Endpoint categories\n\nAuthenticate with an organization API key. Native permission names describe runtime capabilities; x-sinecloud-scopes lists the customer key scopes required by Cloud.","security":[{"OrganizationApiKey":[]}]}},"/api/powers/v1/providers":{"get":{"operationId":"powers_listProviders","tags":["Powers"],"summary":"List catalog services using legacy provider names","description":"Compatibility route for the catalog Service list. providerId retains its existing catalog meaning; this route does not list execution suppliers.\n\nAuthenticate with an organization API key. Native permission names describe runtime capabilities; x-sinecloud-scopes lists the customer key scopes required by Cloud.","parameters":[{"schema":{"type":"string","minLength":1,"maxLength":256,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u"},"required":false,"name":"providerId","in":"query"},{"schema":{"type":"integer","minimum":1,"maximum":200,"default":100},"required":false,"name":"limit","in":"query"},{"schema":{"type":"string","minLength":1,"maxLength":2048,"pattern":"^(?![0-9]+$)[A-Za-z0-9_-]+$/u","description":"Opaque base64url cursor returned in pagination.nextCursor. It is bound to the catalog revision and query; do not interpret or synthesize it."},"required":false,"description":"Opaque base64url cursor returned in pagination.nextCursor. It is bound to the catalog revision and query; do not interpret or synthesize it.","name":"cursor","in":"query"},{"name":"X-Sinecloud-Project-Id","in":"header","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"description":"Select a currently accessible project. A project-restricted key cannot select another project. Omit to use the key restriction or organization scope as permitted."}],"responses":{"200":{"description":"Provider page","content":{"application/json":{"schema":{"type":"object","properties":{"providers":{"type":"array","items":{"$ref":"#/components/schemas/Provider"}},"pagination":{"$ref":"#/components/schemas/Pagination"},"catalogRevision":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$/u"}},"required":["providers","pagination","catalogRevision"]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"401":{"description":"Bearer authentication required","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"WWW-Authenticate":{"schema":{"type":"string","const":"Bearer"}}}},"402":{"description":"Insufficient wallet balance or execution budget.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"403":{"description":"Request is not authorized","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"405":{"description":"Method not allowed; inspect Allow","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"409":{"description":"Catalog cursor, Endpoint revision, idempotency, or run state conflict","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"429":{"description":"Request rate or quota exceeded. Respect Retry-After when supplied.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}},"500":{"description":"Internal error; details are not disclosed","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"502":{"description":"Runtime response unavailable. Reuse the original Idempotency-Key and request envelope to recover the admitted invocation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"503":{"description":"Runtime unavailable","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}}},"x-sinecloud-scopes":["catalogRead"],"security":[{"OrganizationApiKey":[]}]}},"/api/powers/v1/services":{"get":{"operationId":"powers_listServices","tags":["Powers"],"summary":"List catalog services","description":"The same authorized catalog list as /v1/providers, projected as services and serviceId. Both names share ordering, revision and cursors; use the corresponding serviceId or providerId filter with the same value.\n\nAuthenticate with an organization API key. Native permission names describe runtime capabilities; x-sinecloud-scopes lists the customer key scopes required by Cloud.","parameters":[{"schema":{"type":"string","minLength":1,"maxLength":256,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u"},"required":false,"name":"serviceId","in":"query"},{"schema":{"type":"integer","minimum":1,"maximum":200,"default":100},"required":false,"name":"limit","in":"query"},{"schema":{"type":"string","minLength":1,"maxLength":2048,"pattern":"^(?![0-9]+$)[A-Za-z0-9_-]+$/u","description":"Opaque base64url cursor returned in pagination.nextCursor. It is bound to the catalog revision and query; do not interpret or synthesize it."},"required":false,"description":"Opaque base64url cursor returned in pagination.nextCursor. It is bound to the catalog revision and query; do not interpret or synthesize it.","name":"cursor","in":"query"},{"name":"X-Sinecloud-Project-Id","in":"header","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"description":"Select a currently accessible project. A project-restricted key cannot select another project. Omit to use the key restriction or organization scope as permitted."}],"responses":{"200":{"description":"Service page","content":{"application/json":{"schema":{"type":"object","properties":{"services":{"type":"array","items":{"$ref":"#/components/schemas/Service"}},"pagination":{"$ref":"#/components/schemas/Pagination"},"catalogRevision":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$/u"}},"required":["services","pagination","catalogRevision"]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"401":{"description":"Bearer authentication required","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"WWW-Authenticate":{"schema":{"type":"string","const":"Bearer"}}}},"402":{"description":"Insufficient wallet balance or execution budget.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"403":{"description":"Request is not authorized","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"405":{"description":"Method not allowed; inspect Allow","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"409":{"description":"Catalog cursor, Endpoint revision, idempotency, or run state conflict","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"429":{"description":"Request rate or quota exceeded. Respect Retry-After when supplied.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}},"500":{"description":"Internal error; details are not disclosed","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"502":{"description":"Runtime response unavailable. Reuse the original Idempotency-Key and request envelope to recover the admitted invocation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"503":{"description":"Runtime unavailable","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}}},"x-sinecloud-scopes":["catalogRead"],"security":[{"OrganizationApiKey":[]}]}},"/api/powers/v1/connections":{"get":{"operationId":"powers_listConnections","tags":["Powers"],"summary":"List configured connections","parameters":[{"schema":{"type":"string","minLength":1,"maxLength":256,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u"},"required":false,"name":"endpointId","in":"query"},{"name":"X-Sinecloud-Project-Id","in":"header","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"description":"Select a currently accessible project. A project-restricted key cannot select another project. Omit to use the key restriction or organization scope as permitted."}],"responses":{"200":{"description":"Safe connection metadata, optionally compatible with one Endpoint","content":{"application/json":{"schema":{"type":"object","properties":{"connections":{"type":"array","items":{"$ref":"#/components/schemas/Connection"}}},"required":["connections"]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"401":{"description":"Bearer authentication required","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"WWW-Authenticate":{"schema":{"type":"string","const":"Bearer"}}}},"402":{"description":"Insufficient wallet balance or execution budget.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"403":{"description":"Request is not authorized","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"405":{"description":"Method not allowed; inspect Allow","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"409":{"description":"Invocation pending, changed idempotency envelope, revision mismatch or scope conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"429":{"description":"Request rate or quota exceeded. Respect Retry-After when supplied.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}},"500":{"description":"Internal error; details are not disclosed","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"502":{"description":"Runtime response unavailable. Reuse the original Idempotency-Key and request envelope to recover the admitted invocation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"503":{"description":"Runtime unavailable","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}}},"x-sinecloud-scopes":["connectionRead"],"description":"List configured connections\n\nAuthenticate with an organization API key. Native permission names describe runtime capabilities; x-sinecloud-scopes lists the customer key scopes required by Cloud.\n\nOrganization connections use immutable credential references already owned by that connection. Add BYOK credentials in the Console. Customer keys cannot mutate platform connections; connectionWrite requires an organization-wide key without a project restriction.","security":[{"OrganizationApiKey":[]}]}},"/api/powers/v1/connection-providers":{"get":{"operationId":"powers_listConnectionProviders","tags":["Powers"],"summary":"List declared connection suppliers","description":"Requires connections:read. Includes declarations without a Catalog Service or Binding for unrestricted principals. q matches supplier ID, name, homepage and description. authType selects providers and retains every authorized profile summary. Catalog/binding and connection restrictions narrow suppliers and profile visibility. Binding counts additionally require catalog:read. Never loads all transport modules, reads secrets or contacts providers.\n\nAuthenticate with an organization API key. Native permission names describe runtime capabilities; x-sinecloud-scopes lists the customer key scopes required by Cloud.\n\nAggregate providers are available only through managed execution and cannot be selected for customer BYOK setup.","parameters":[{"schema":{"type":"string","minLength":1,"maxLength":256,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u"},"required":false,"name":"providerId","in":"query"},{"schema":{"type":"string","minLength":1,"maxLength":512,"pattern":"^[^\\u0000-\\u001f\\u007f]+$/u"},"required":false,"name":"q","in":"query"},{"schema":{"type":"string","enum":["no_auth","api_key","custom_credential","oauth2"]},"required":false,"name":"authType","in":"query"},{"schema":{"type":"integer","minimum":1,"maximum":200,"default":100},"required":false,"name":"limit","in":"query"},{"schema":{"type":"string","minLength":1,"maxLength":2048,"pattern":"^[A-Za-z0-9_-]+\\.[A-Za-z0-9_-]+$/u","description":"Opaque authenticated provider cursor. Bound to provider definitions, bindings, filters, page size and current authorization; never synthesize or reuse for another query."},"required":false,"description":"Opaque authenticated provider cursor. Bound to provider definitions, bindings, filters, page size and current authorization; never synthesize or reuse for another query.","name":"cursor","in":"query"},{"name":"X-Sinecloud-Project-Id","in":"header","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"description":"Select a currently accessible project. A project-restricted key cannot select another project. Omit to use the key restriction or organization scope as permitted."}],"responses":{"200":{"description":"Provider declaration page with independent index and binding revisions","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionProviderPage"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"401":{"description":"Bearer authentication required","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"WWW-Authenticate":{"schema":{"type":"string","const":"Bearer"}}}},"402":{"description":"Insufficient wallet balance or execution budget.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"403":{"description":"Request is not authorized","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"405":{"description":"Method not allowed; inspect Allow","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"409":{"description":"Catalog cursor, Endpoint revision, idempotency, or run state conflict","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"429":{"description":"Request rate or quota exceeded. Respect Retry-After when supplied.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}},"500":{"description":"Internal error; details are not disclosed","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"501":{"description":"Required execution capability is not supported","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"502":{"description":"Runtime response unavailable. Reuse the original Idempotency-Key and request envelope to recover the admitted invocation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"503":{"description":"Runtime unavailable","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}}},"x-sinecloud-scopes":["connectionRead"],"security":[{"OrganizationApiKey":[]}]}},"/api/powers/v1/connection-providers/{providerId}":{"get":{"operationId":"powers_getConnectionProvider","tags":["Powers"],"summary":"Describe a connection supplier and its authentication profiles","description":"Requires connections:read and supplier authorization. Inspects only this provider's authorized profiles; no credential resolution or live verification.\n\nAuthenticate with an organization API key. Native permission names describe runtime capabilities; x-sinecloud-scopes lists the customer key scopes required by Cloud.\n\nAggregate providers are available only through managed execution and cannot be selected for customer BYOK setup.","parameters":[{"schema":{"type":"string","minLength":1,"maxLength":256,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u","description":"Actual connection supplier ID; encode the entire identifier once."},"required":true,"description":"Actual connection supplier ID; encode the entire identifier once.","name":"providerId","in":"path"},{"name":"X-Sinecloud-Project-Id","in":"header","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"description":"Select a currently accessible project. A project-restricted key cannot select another project. Omit to use the key restriction or organization scope as permitted."}],"responses":{"200":{"description":"Safe supplier metadata and lazily inspected profiles","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionProviderDescription"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"401":{"description":"Bearer authentication required","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"WWW-Authenticate":{"schema":{"type":"string","const":"Bearer"}}}},"402":{"description":"Insufficient wallet balance or execution budget.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"403":{"description":"Request is not authorized","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"405":{"description":"Method not allowed; inspect Allow","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"409":{"description":"Invocation pending, changed idempotency envelope, revision mismatch or scope conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"429":{"description":"Request rate or quota exceeded. Respect Retry-After when supplied.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}},"500":{"description":"Internal error; details are not disclosed","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"501":{"description":"Required execution capability is not supported","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"502":{"description":"Runtime response unavailable. Reuse the original Idempotency-Key and request envelope to recover the admitted invocation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"503":{"description":"Runtime unavailable","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}}},"x-sinecloud-scopes":["connectionRead"],"security":[{"OrganizationApiKey":[]}]}},"/api/powers/v1/connection-providers/{providerId}/profiles/{authProfileId}":{"get":{"operationId":"powers_getConnectionProfile","tags":["Powers"],"summary":"Describe one provider authentication profile","parameters":[{"schema":{"type":"string","minLength":1,"maxLength":256,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u","description":"Actual connection supplier ID; encode the entire identifier once."},"required":true,"description":"Actual connection supplier ID; encode the entire identifier once.","name":"providerId","in":"path"},{"schema":{"type":"string","minLength":1,"maxLength":256,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u","description":"The original stable provider-scoped authentication profile ID; encode once."},"required":true,"description":"The original stable provider-scoped authentication profile ID; encode once.","name":"authProfileId","in":"path"},{"name":"X-Sinecloud-Project-Id","in":"header","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"description":"Select a currently accessible project. A project-restricted key cannot select another project. Omit to use the key restriction or organization scope as permitted."}],"responses":{"200":{"description":"Original credential field definitions and independent authentication, transport and binding support","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionProviderProfileDescription"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"401":{"description":"Bearer authentication required","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"WWW-Authenticate":{"schema":{"type":"string","const":"Bearer"}}}},"402":{"description":"Insufficient wallet balance or execution budget.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"403":{"description":"Request is not authorized","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"405":{"description":"Method not allowed; inspect Allow","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"409":{"description":"Invocation pending, changed idempotency envelope, revision mismatch or scope conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"429":{"description":"Request rate or quota exceeded. Respect Retry-After when supplied.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}},"500":{"description":"Internal error; details are not disclosed","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"501":{"description":"Required execution capability is not supported","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"502":{"description":"Runtime response unavailable. Reuse the original Idempotency-Key and request envelope to recover the admitted invocation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"503":{"description":"Runtime unavailable","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}}},"x-sinecloud-scopes":["connectionRead"],"description":"Describe one provider authentication profile\n\nAuthenticate with an organization API key. Native permission names describe runtime capabilities; x-sinecloud-scopes lists the customer key scopes required by Cloud.\n\nAggregate providers are available only through managed execution and cannot be selected for customer BYOK setup.","security":[{"OrganizationApiKey":[]}]}},"/api/powers/v1/endpoint-bindings":{"get":{"operationId":"powers_listEndpointBindings","tags":["Powers"],"summary":"List project-defined execution bindings","parameters":[{"schema":{"type":"string","minLength":1,"maxLength":256,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u"},"required":false,"name":"serviceId","in":"query"},{"schema":{"type":"string","minLength":1,"maxLength":256,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u"},"required":false,"name":"providerId","in":"query"},{"schema":{"type":"string","minLength":1,"maxLength":256,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u"},"required":false,"name":"endpointId","in":"query"},{"schema":{"type":"string","minLength":1,"maxLength":80,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u"},"required":false,"name":"connectionId","in":"query"},{"schema":{"type":"integer","minimum":1,"maximum":200,"default":100},"required":false,"name":"limit","in":"query"},{"schema":{"type":"string","minLength":1,"maxLength":2048,"pattern":"^(?![0-9]+$)[A-Za-z0-9_-]+$/u","description":"Opaque base64url cursor returned in pagination.nextCursor. It is bound to the catalog revision and query; do not interpret or synthesize it."},"required":false,"description":"Opaque base64url cursor returned in pagination.nextCursor. It is bound to the catalog revision and query; do not interpret or synthesize it.","name":"cursor","in":"query"},{"name":"X-Sinecloud-Project-Id","in":"header","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"description":"Select a currently accessible project. A project-restricted key cannot select another project. Omit to use the key restriction or organization scope as permitted."}],"responses":{"200":{"description":"Revision-bound binding page","content":{"application/json":{"schema":{"type":"object","properties":{"bindings":{"type":"array","items":{"$ref":"#/components/schemas/EndpointBindingSummary"}},"pagination":{"$ref":"#/components/schemas/Pagination"},"bindingsRevision":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$/u"},"catalogRevision":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$/u"}},"required":["bindings","pagination","bindingsRevision","catalogRevision"]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"401":{"description":"Bearer authentication required","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"WWW-Authenticate":{"schema":{"type":"string","const":"Bearer"}}}},"402":{"description":"Insufficient wallet balance or execution budget.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"403":{"description":"Request is not authorized","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"405":{"description":"Method not allowed; inspect Allow","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"409":{"description":"Catalog cursor, Endpoint revision, idempotency, or run state conflict","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"429":{"description":"Request rate or quota exceeded. Respect Retry-After when supplied.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}},"500":{"description":"Internal error; details are not disclosed","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"501":{"description":"Required execution capability is not supported","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"502":{"description":"Runtime response unavailable. Reuse the original Idempotency-Key and request envelope to recover the admitted invocation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"503":{"description":"Runtime unavailable","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}}},"x-sinecloud-scopes":["catalogRead"],"description":"List project-defined execution bindings\n\nAuthenticate with an organization API key. Native permission names describe runtime capabilities; x-sinecloud-scopes lists the customer key scopes required by Cloud.","security":[{"OrganizationApiKey":[]}]}},"/api/powers/v1/endpoint-bindings/{bindingId}":{"get":{"operationId":"powers_getEndpointBinding","tags":["Powers"],"summary":"Describe a project-defined execution binding","parameters":[{"schema":{"type":"string","minLength":1,"maxLength":512,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u","description":"Encode the entire binding identifier once with encodeURIComponent."},"required":true,"description":"Encode the entire binding identifier once with encodeURIComponent.","name":"bindingId","in":"path"},{"name":"X-Sinecloud-Project-Id","in":"header","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"description":"Select a currently accessible project. A project-restricted key cannot select another project. Omit to use the key restriction or organization scope as permitted."}],"responses":{"200":{"description":"Binding target, input constraints and protocol evidence","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EndpointBinding"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"401":{"description":"Bearer authentication required","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"WWW-Authenticate":{"schema":{"type":"string","const":"Bearer"}}}},"402":{"description":"Insufficient wallet balance or execution budget.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"403":{"description":"Request is not authorized","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"405":{"description":"Method not allowed; inspect Allow","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"409":{"description":"Invocation pending, changed idempotency envelope, revision mismatch or scope conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"429":{"description":"Request rate or quota exceeded. Respect Retry-After when supplied.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}},"500":{"description":"Internal error; details are not disclosed","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"501":{"description":"Required execution capability is not supported","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"502":{"description":"Runtime response unavailable. Reuse the original Idempotency-Key and request envelope to recover the admitted invocation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"503":{"description":"Runtime unavailable","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}}},"x-sinecloud-scopes":["catalogRead"],"description":"Describe a project-defined execution binding\n\nAuthenticate with an organization API key. Native permission names describe runtime capabilities; x-sinecloud-scopes lists the customer key scopes required by Cloud.","security":[{"OrganizationApiKey":[]}]}},"/api/powers/v1/connections/{connectionId}":{"put":{"operationId":"powers_putConnection","tags":["Powers"],"summary":"Create or replace a connection using secret references","parameters":[{"schema":{"type":"string","minLength":1,"maxLength":80,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u","description":"Encode the entire identifier once with encodeURIComponent."},"required":true,"description":"Encode the entire identifier once with encodeURIComponent.","name":"connectionId","in":"path"},{"name":"X-Sinecloud-Project-Id","in":"header","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"description":"Select a currently accessible project. A project-restricted key cannot select another project. Omit to use the key restriction or organization scope as permitted."}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PutConnectionRequest"}}}},"responses":{"200":{"description":"Current durable connection metadata","content":{"application/json":{"schema":{"type":"object","properties":{"connection":{"$ref":"#/components/schemas/ManagedConnection"}},"required":["connection"]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"401":{"description":"Bearer authentication required","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"WWW-Authenticate":{"schema":{"type":"string","const":"Bearer"}}}},"402":{"description":"Insufficient wallet balance or execution budget.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"403":{"description":"Request is not authorized","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"405":{"description":"Method not allowed; inspect Allow","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"409":{"description":"Catalog cursor, Endpoint revision, idempotency, or run state conflict","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"413":{"description":"JSON request exceeds 64 KiB","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"415":{"description":"Use uncompressed UTF-8 application/json","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"429":{"description":"Request rate or quota exceeded. Respect Retry-After when supplied.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}},"500":{"description":"Internal error; details are not disclosed","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"502":{"description":"Runtime response unavailable. Reuse the original Idempotency-Key and request envelope to recover the admitted invocation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"503":{"description":"Runtime unavailable","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}}},"x-sinecloud-scopes":["connectionWrite"],"description":"Create or replace a connection using secret references\n\nAuthenticate with an organization API key. Native permission names describe runtime capabilities; x-sinecloud-scopes lists the customer key scopes required by Cloud.\n\nOrganization connections use immutable credential references already owned by that connection. Add BYOK credentials in the Console. Customer keys cannot mutate platform connections; connectionWrite requires an organization-wide key without a project restriction.","security":[{"OrganizationApiKey":[]}]},"patch":{"operationId":"powers_patchConnection","tags":["Powers"],"summary":"Disable, revoke, or rotate connection references","parameters":[{"schema":{"type":"string","minLength":1,"maxLength":80,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u","description":"Encode the entire identifier once with encodeURIComponent."},"required":true,"description":"Encode the entire identifier once with encodeURIComponent.","name":"connectionId","in":"path"},{"name":"X-Sinecloud-Project-Id","in":"header","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"description":"Select a currently accessible project. A project-restricted key cannot select another project. Omit to use the key restriction or organization scope as permitted."}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchConnectionRequest"}}}},"responses":{"200":{"description":"Current durable connection metadata","content":{"application/json":{"schema":{"type":"object","properties":{"connection":{"$ref":"#/components/schemas/ManagedConnection"}},"required":["connection"]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"401":{"description":"Bearer authentication required","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"WWW-Authenticate":{"schema":{"type":"string","const":"Bearer"}}}},"402":{"description":"Insufficient wallet balance or execution budget.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"403":{"description":"Request is not authorized","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"405":{"description":"Method not allowed; inspect Allow","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"409":{"description":"Catalog cursor, Endpoint revision, idempotency, or run state conflict","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"413":{"description":"JSON request exceeds 64 KiB","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"415":{"description":"Use uncompressed UTF-8 application/json","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"429":{"description":"Request rate or quota exceeded. Respect Retry-After when supplied.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}},"500":{"description":"Internal error; details are not disclosed","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"502":{"description":"Runtime response unavailable. Reuse the original Idempotency-Key and request envelope to recover the admitted invocation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"503":{"description":"Runtime unavailable","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}}},"x-sinecloud-scopes":["connectionWrite"],"description":"Disable, revoke, or rotate connection references\n\nAuthenticate with an organization API key. Native permission names describe runtime capabilities; x-sinecloud-scopes lists the customer key scopes required by Cloud.\n\nOrganization connections use immutable credential references already owned by that connection. Add BYOK credentials in the Console. Customer keys cannot mutate platform connections; connectionWrite requires an organization-wide key without a project restriction.","security":[{"OrganizationApiKey":[]}]}},"/api/powers/v1/endpoints":{"get":{"operationId":"powers_listEndpoints","tags":["Powers"],"summary":"Search compact Endpoint summaries","parameters":[{"schema":{"type":"string","minLength":1,"maxLength":256,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u"},"required":false,"name":"providerId","in":"query"},{"schema":{"type":"string","minLength":1,"maxLength":256,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u"},"required":false,"name":"category","in":"query"},{"schema":{"type":"string","minLength":1,"maxLength":512,"pattern":"^[^\\u0000-\\u001f\\u007f]+$/u"},"required":false,"name":"q","in":"query"},{"schema":{"type":"boolean"},"required":false,"name":"hostSupported","in":"query"},{"schema":{"type":"string","minLength":1,"maxLength":80,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u"},"required":false,"name":"connectionId","in":"query"},{"schema":{"type":"integer","minimum":1,"maximum":200,"default":100},"required":false,"name":"limit","in":"query"},{"schema":{"type":"string","minLength":1,"maxLength":2048,"pattern":"^(?![0-9]+$)[A-Za-z0-9_-]+$/u","description":"Opaque base64url cursor returned in pagination.nextCursor. It is bound to the catalog revision and query; do not interpret or synthesize it."},"required":false,"description":"Opaque base64url cursor returned in pagination.nextCursor. It is bound to the catalog revision and query; do not interpret or synthesize it.","name":"cursor","in":"query"},{"name":"X-Sinecloud-Project-Id","in":"header","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"description":"Select a currently accessible project. A project-restricted key cannot select another project. Omit to use the key restriction or organization scope as permitted."}],"responses":{"200":{"description":"Endpoint summary page without full schemas","content":{"application/json":{"schema":{"type":"object","properties":{"endpoints":{"type":"array","items":{"$ref":"#/components/schemas/EndpointSummary"}},"pagination":{"$ref":"#/components/schemas/Pagination"},"inventory":{"$ref":"#/components/schemas/CatalogCounts"},"catalogRevision":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$/u"}},"required":["endpoints","pagination","inventory","catalogRevision"]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"401":{"description":"Bearer authentication required","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"WWW-Authenticate":{"schema":{"type":"string","const":"Bearer"}}}},"402":{"description":"Insufficient wallet balance or execution budget.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"403":{"description":"Request is not authorized","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"405":{"description":"Method not allowed; inspect Allow","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"409":{"description":"Catalog cursor, Endpoint revision, idempotency, or run state conflict","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"429":{"description":"Request rate or quota exceeded. Respect Retry-After when supplied.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}},"500":{"description":"Internal error; details are not disclosed","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"502":{"description":"Runtime response unavailable. Reuse the original Idempotency-Key and request envelope to recover the admitted invocation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"503":{"description":"Runtime unavailable","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}}},"x-sinecloud-scopes":["catalogRead"],"description":"Search compact Endpoint summaries\n\nAuthenticate with an organization API key. Native permission names describe runtime capabilities; x-sinecloud-scopes lists the customer key scopes required by Cloud.","security":[{"OrganizationApiKey":[]}]}},"/api/powers/v1/endpoints/{endpointId}":{"get":{"operationId":"powers_getEndpoint","tags":["Powers"],"summary":"Describe an Endpoint and its native input","parameters":[{"schema":{"type":"string","minLength":1,"maxLength":256,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u","description":"Encode the entire identifier once with encodeURIComponent, including # and /."},"required":true,"description":"Encode the entire identifier once with encodeURIComponent, including # and /.","name":"endpointId","in":"path"},{"name":"X-Sinecloud-Project-Id","in":"header","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"description":"Select a currently accessible project. A project-restricted key cannot select another project. Omit to use the key restriction or organization scope as permitted."}],"responses":{"200":{"description":"Original Endpoint document, revision, availability, and compatible connections","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Endpoint"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"401":{"description":"Bearer authentication required","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"WWW-Authenticate":{"schema":{"type":"string","const":"Bearer"}}}},"402":{"description":"Insufficient wallet balance or execution budget.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"403":{"description":"Request is not authorized","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"405":{"description":"Method not allowed; inspect Allow","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"409":{"description":"Invocation pending, changed idempotency envelope, revision mismatch or scope conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"429":{"description":"Request rate or quota exceeded. Respect Retry-After when supplied.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}},"500":{"description":"Internal error; details are not disclosed","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"502":{"description":"Runtime response unavailable. Reuse the original Idempotency-Key and request envelope to recover the admitted invocation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"503":{"description":"Runtime unavailable","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}}},"x-sinecloud-scopes":["catalogRead"],"description":"Describe an Endpoint and its native input\n\nAuthenticate with an organization API key. Native permission names describe runtime capabilities; x-sinecloud-scopes lists the customer key scopes required by Cloud.","security":[{"OrganizationApiKey":[]}]}},"/api/powers/v1/runs":{"post":{"operationId":"powers_createRun","tags":["Powers"],"summary":"Create or replay a persisted run","description":"This host waits for execution to settle. A new record returns 201 even when its status reports a provider error or UNKNOWN. Repeating an identical Idempotency-Key returns the saved record with 200. An expectedEndpointRevision mismatch returns 409 before execution; describe again before deciding whether to submit.\n\nAuthenticate with an organization API key. Native permission names describe runtime capabilities; x-sinecloud-scopes lists the customer key scopes required by Cloud.\n\nFor a managed request, retain expectedEndpointRevision from endpoint discovery. An explicit binding requires a connection. Save and reuse the original Idempotency-Key and complete request envelope to recover; do not switch between managed and native envelopes. Without a key, a retry can start a new invocation. Read saved runs after uncertain responses; UNKNOWN and reconciliation states do not establish that execution failed.","parameters":[{"schema":{"type":"string","minLength":1,"maxLength":128,"pattern":"^[\\x21-\\x7e]{1,128}$"},"required":false,"description":"Strongly recommended for execution. Reuse the original key and full request body for recovery. Cloud binds it to the current actor and project scope.","name":"idempotency-key","in":"header"},{"name":"X-Sinecloud-Project-Id","in":"header","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"description":"Select a currently accessible project. A project-restricted key cannot select another project. Omit to use the key restriction or organization scope as permitted."}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"anyOf":[{"type":"object","additionalProperties":false,"required":["endpointId"],"description":"Choose platform-powers for hosted execution, or an organization-owned BYOK connection. Omitted connectionId defaults to Platform Powers for new requests. Reuse the original envelope and Idempotency-Key for recovery. Omitted expectedPriceVersion accepts the current price at first admission; replays retain their original admitted price.","properties":{"endpointId":{"type":"string","description":"Exact native endpoint identifier."},"expectedEndpointRevision":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$","description":"Revision shown by the endpoint catalog."},"input":{"type":"object","additionalProperties":true,"description":"Native endpoint input."},"connectionId":{"type":"string","description":"The built-in platform-powers logical connection, or an organization-owned BYOK connection."},"bindingId":{"type":"string","maxLength":512,"description":"Optional public execution binding from discovery. Internal platform routing is not selectable."},"expectedBindingRevision":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$"},"expectedPriceVersion":{"type":"integer","minimum":1,"description":"Platform Powers quote version. A changed price returns 409 priceChanged before execution; BYOK does not accept platform price expectations."}}},{"$ref":"#/components/schemas/CreateRunRequest"}]}}}},"responses":{"200":{"description":"Existing run replayed without another execution","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RunRecord"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"201":{"description":"Run record created; inspect its status","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RunRecord"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"401":{"description":"Bearer authentication required","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"WWW-Authenticate":{"schema":{"type":"string","const":"Bearer"}}}},"402":{"description":"Insufficient credits to reserve this capability call","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"403":{"description":"Request is not authorized","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"405":{"description":"Method not allowed; inspect Allow","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"409":{"description":"Catalog cursor, Endpoint revision, idempotency, or run state conflict","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"412":{"description":"Connection credentials are not configured","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"413":{"description":"JSON request exceeds 64 KiB","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"415":{"description":"Use uncompressed UTF-8 application/json","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"422":{"description":"Execution admission rejected","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"429":{"description":"Request rate or quota exceeded. Respect Retry-After when supplied.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}},"500":{"description":"Internal error; details are not disclosed","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"501":{"description":"Required execution capability is not supported","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"502":{"description":"Runtime response unavailable. Reuse the original Idempotency-Key and request envelope to recover the admitted invocation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"503":{"description":"Runtime unavailable","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}}},"x-sinecloud-scopes":["toolRun"],"security":[{"OrganizationApiKey":[]}]},"get":{"operationId":"powers_listRuns","tags":["Powers"],"summary":"List authorized run metadata","parameters":[{"schema":{"type":"string","minLength":1,"maxLength":256,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u"},"required":false,"name":"providerId","in":"query"},{"schema":{"type":"string","minLength":1,"maxLength":256,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u"},"required":false,"name":"endpointId","in":"query"},{"schema":{"type":"string","minLength":1,"maxLength":80,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u"},"required":false,"name":"connectionId","in":"query"},{"schema":{"type":"string","enum":["ACCEPTED","RUNNING","SUCCEEDED","PROVIDER_ERROR","FAILED","UNKNOWN","EXECUTOR_ERROR"]},"required":false,"name":"status","in":"query"},{"schema":{"type":"string","enum":["pending"]},"required":false,"name":"reconciliation","in":"query"},{"schema":{"type":"integer","minimum":1,"maximum":200,"default":100},"required":false,"name":"limit","in":"query"},{"schema":{"type":"string","minLength":1,"maxLength":2048,"pattern":"^[A-Za-z0-9_-]+\\.[A-Za-z0-9_-]+$/u"},"required":false,"name":"cursor","in":"query"},{"name":"X-Sinecloud-Project-Id","in":"header","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"description":"Select a currently accessible project. A project-restricted key cannot select another project. Omit to use the key restriction or organization scope as permitted."}],"responses":{"200":{"description":"Authorized run metadata page","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RunPage"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"401":{"description":"Bearer authentication required","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"WWW-Authenticate":{"schema":{"type":"string","const":"Bearer"}}}},"402":{"description":"Insufficient wallet balance or execution budget.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"403":{"description":"Request is not authorized","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"405":{"description":"Method not allowed; inspect Allow","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"409":{"description":"Catalog cursor, Endpoint revision, idempotency, or run state conflict","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"429":{"description":"Request rate or quota exceeded. Respect Retry-After when supplied.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}},"500":{"description":"Internal error; details are not disclosed","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"501":{"description":"Required execution capability is not supported","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"502":{"description":"Runtime response unavailable. Reuse the original Idempotency-Key and request envelope to recover the admitted invocation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"503":{"description":"Runtime unavailable","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}}},"x-sinecloud-scopes":["runRead"],"description":"List authorized run metadata\n\nAuthenticate with an organization API key. Native permission names describe runtime capabilities; x-sinecloud-scopes lists the customer key scopes required by Cloud.","security":[{"OrganizationApiKey":[]}]}},"/api/powers/v1/runs/{runId}":{"get":{"operationId":"powers_getRun","tags":["Powers"],"summary":"Read a persisted run including historical records","parameters":[{"schema":{"type":"string","minLength":1,"maxLength":2048,"pattern":"^(?!\\s*$)[^\\u0000-\\u001f\\u007f]+$/u","description":"Encode the entire identifier once with encodeURIComponent."},"required":true,"description":"Encode the entire identifier once with encodeURIComponent.","name":"runId","in":"path"},{"name":"X-Sinecloud-Project-Id","in":"header","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"description":"Select a currently accessible project. A project-restricted key cannot select another project. Omit to use the key restriction or organization scope as permitted."}],"responses":{"200":{"description":"Saved run and audit events","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RunRecord"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"401":{"description":"Bearer authentication required","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"WWW-Authenticate":{"schema":{"type":"string","const":"Bearer"}}}},"402":{"description":"Insufficient wallet balance or execution budget.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"403":{"description":"Request is not authorized","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"405":{"description":"Method not allowed; inspect Allow","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"409":{"description":"Invocation pending, changed idempotency envelope, revision mismatch or scope conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"429":{"description":"Request rate or quota exceeded. Respect Retry-After when supplied.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}},"500":{"description":"Internal error; details are not disclosed","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"502":{"description":"Runtime response unavailable. Reuse the original Idempotency-Key and request envelope to recover the admitted invocation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"503":{"description":"Runtime unavailable","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}}},"x-sinecloud-scopes":["runRead"],"description":"Read a persisted run including historical records\n\nAuthenticate with an organization API key. Native permission names describe runtime capabilities; x-sinecloud-scopes lists the customer key scopes required by Cloud.","security":[{"OrganizationApiKey":[]}]}},"/api/powers/v1/usage-events":{"get":{"operationId":"powers_listUsageEvents","tags":["Powers"],"summary":"Inspect persisted execution usage events","parameters":[{"schema":{"type":"integer","minimum":1,"maximum":200,"default":100},"required":false,"name":"limit","in":"query"},{"name":"X-Sinecloud-Project-Id","in":"header","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"description":"Select a currently accessible project. A project-restricted key cannot select another project. Omit to use the key restriction or organization scope as permitted."}],"responses":{"200":{"description":"Tenant usage facts and delivery state, without provider inputs or outputs","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UsageEventPage"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"401":{"description":"Bearer authentication required","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"WWW-Authenticate":{"schema":{"type":"string","const":"Bearer"}}}},"402":{"description":"Insufficient wallet balance or execution budget.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"403":{"description":"Request is not authorized","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"405":{"description":"Method not allowed; inspect Allow","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"409":{"description":"Invocation pending, changed idempotency envelope, revision mismatch or scope conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"429":{"description":"Request rate or quota exceeded. Respect Retry-After when supplied.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}},"500":{"description":"Internal error; details are not disclosed","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"502":{"description":"Runtime response unavailable. Reuse the original Idempotency-Key and request envelope to recover the admitted invocation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"503":{"description":"Runtime unavailable","content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ApiError"},{"$ref":"#/components/schemas/CloudPowersError"}]}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}}},"x-sinecloud-scopes":["usageRead"],"description":"Inspect persisted execution usage events\n\nAuthenticate with an organization API key. Native permission names describe runtime capabilities; x-sinecloud-scopes lists the customer key scopes required by Cloud.","security":[{"OrganizationApiKey":[]}]}},"/api/powers/v1/endpoints/{endpointId}/quote":{"get":{"operationId":"powers_getPlatformPowersQuote","summary":"Read the current Platform Powers quote without reserving credits","parameters":[{"name":"endpointId","in":"path","required":true,"schema":{"type":"string"}},{"name":"expectedEndpointRevision","in":"query","required":false,"schema":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$"}},{"name":"X-Sinecloud-Project-Id","in":"header","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"description":"Select a currently accessible project. A project-restricted key cannot select another project. Omit to use the key restriction or organization scope as permitted."}],"responses":{"200":{"description":"Current public quote; unavailable and missing-price states never imply a free execution.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["endpointId","endpointRevision","providerId","policy","priceVersion","amount","available","reason"],"properties":{"endpointId":{"type":"string"},"endpointRevision":{"type":"string"},"providerId":{"type":"string","enum":["platform-powers"]},"policy":{"type":"string","enum":["succeeded-run-v1","succeeded-result-v1"]},"priceVersion":{"type":"integer","minimum":1,"nullable":true},"amount":{"type":"string","nullable":true,"description":"Decimal credits: fixed successful-call charge for succeeded-run-v1; maximum customer reservation for succeeded-result-v1. Zero is an explicitly published amount."},"resultPricing":{"type":"object","additionalProperties":false,"required":["unitAmount","flatAmount","minimumAmount","reservationAmount"],"description":"Required for succeeded-result-v1 and absent for fixed quotes. Charge is max(minimumAmount, flatAmount + unitAmount × verified resultCount), rounded upward once to six decimal places. The admission-only reservation is not a supplier-enforced cost cap; missing or over-reservation receipts require reconciliation.","properties":{"unitAmount":{"type":"string","maxLength":83,"pattern":"^(0|[1-9]\\d{0,9})(\\.\\d{1,72})?$","description":"Exact credits per verified result."},"flatAmount":{"type":"string","maxLength":83,"pattern":"^(0|[1-9]\\d{0,9})(\\.\\d{1,72})?$","description":"Exact base credits, charged once on success."},"minimumAmount":{"type":"string","pattern":"^(0|[1-9]\\d{0,9})(\\.\\d{1,6})?$"},"reservationAmount":{"type":"string","pattern":"^(0|[1-9]\\d{0,9})(\\.\\d{1,6})?$","description":"Same value as amount; unused held credits are released after settlement."}}},"available":{"type":"boolean"},"reason":{"type":"string","nullable":true,"enum":["toolUnavailable","priceUnavailable",null]}}}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"401":{"description":"Missing, invalid or revoked organization API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"WWW-Authenticate":{"schema":{"type":"string","const":"Bearer"}}}},"402":{"description":"Insufficient wallet balance or execution budget.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"403":{"description":"Product scope, current project access, connection ownership or entitlement denied.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"409":{"description":"The tool contract changed; refresh the endpoint before quoting.","headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"429":{"description":"Request rate or quota exceeded. Respect Retry-After when supplied.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}},"502":{"description":"Runtime response unavailable. Reuse the original Idempotency-Key and request envelope to recover the admitted invocation.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."}}},"503":{"description":"Runtime, platform route, product configuration or billing admission unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudPowersError"}}},"headers":{"X-Request-Id":{"schema":{"type":"string"},"description":"HTTP trace identifier, distinct from the persisted invocation identity."},"Retry-After":{"schema":{"type":"string"},"description":"Retry delay when supplied. Recover execution with the original idempotency key."}}}},"tags":["Powers"],"x-sinecloud-scopes":["catalogRead"],"description":"Read the current Platform Powers quote without reserving credits\n\nAuthenticate with an organization API key. Native permission names describe runtime capabilities; x-sinecloud-scopes lists the customer key scopes required by Cloud.","security":[{"OrganizationApiKey":[]}]}}},"x-sinecloud-source":{"repository":"https://github.com/fei-bai-inc/sine-powers","revision":"ef3de5b750937c10dbc92c3ead910a9f43ea7895","sha256":"f9a613e1df8cfa4c47233eccefee553f98029cd132bb50bf479771060bca00a3"},"security":[{"OrganizationApiKey":[]}]}