{"components":{"parameters":{"IdempotencyKey":{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}},"IfMatch":{"in":"header","name":"If-Match","required":true,"schema":{"minLength":1,"type":"string"}}},"responses":{"Problem":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}},"description":"Stable redacted Core error. 401 includes WWW-Authenticate; 503 includes Retry-After."}},"schemas":{"Timestamp":{"format":"date-time","type":"string"},"AdmissionEntries":{"additionalProperties":false,"properties":{"items":{"items":{"$ref":"#/components/schemas/AdmissionEntry"},"type":"array"}},"required":["items"],"type":"object"},"DirectDependencyInput":{"additionalProperties":false,"properties":{"catalog_sha256":{"pattern":"^[a-f0-9]{64}(?![\\s\\S])","type":"string"},"consumer_route_id":{"format":"uuid","type":"string"},"kind":{"enum":["uses_api","uses_mcp"],"type":"string"},"paths":{"items":{"maxLength":256,"pattern":"^/api/v1/[a-zA-Z0-9_-]+(?:/[a-zA-Z0-9_-]+)*(?![\\s\\S])","type":"string"},"maxItems":32,"minItems":1,"type":"array","uniqueItems":true},"provider_component_id":{"format":"uuid","type":"string"},"provider_route_id":{"format":"uuid","type":"string"},"query_variants":{"$ref":"#/components/schemas/ApiQueryVariants"},"tools":{"items":{"maxLength":128,"minLength":1,"pattern":"^[a-zA-Z0-9_-]+(?![\\s\\S])","type":"string"},"maxItems":32,"minItems":1,"type":"array","uniqueItems":true}},"required":["provider_component_id","consumer_route_id","provider_route_id","kind"],"type":"object"},"AppRelationshipResult":{"additionalProperties":false,"properties":{"object":{"maxLength":161,"pattern":"^[a-z][a-z0-9_]{0,31}:[A-Za-z0-9_-]{1,128}$","type":"string"},"present":{"type":"boolean"},"relation":{"enum":["reader","writer"],"type":"string"},"subject":{"maxLength":255,"minLength":1,"type":"string"}},"required":["object","relation","subject","present"],"type":"object"},"ServiceCapability":{"oneOf":[{"additionalProperties":false,"properties":{"availability":{"$ref":"#/components/schemas/ServiceAvailability"},"capability":{"maxLength":128,"minLength":1,"not":{"pattern":"[\\r\\n]"},"pattern":"^[a-z][a-z0-9]*(?:[._-][a-z0-9]+)*$","type":"string"},"capability_version":{"maxLength":64,"not":{"pattern":"[\\r\\n]"},"pattern":"^(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)$","type":"string"},"contract":{"$ref":"#/components/schemas/ServiceApiContract"},"contract_sha256":{"not":{"pattern":"[\\r\\n]"},"pattern":"^[a-f0-9]{64}$","type":"string"},"id":{"format":"uuid","type":"string"},"protocol":{"const":"http-get"},"provider_component_id":{"format":"uuid","type":"string"},"route_id":{"format":"uuid","type":"string"},"space_id":{"format":"uuid","type":"string"},"state":{"enum":["published","withdrawn"]},"version":{"minimum":1,"type":"integer"},"visibility":{"const":"owner_space"}},"required":["id","version","provider_component_id","space_id","route_id","capability","capability_version","visibility","state","contract_sha256","availability","protocol","contract"],"type":"object"},{"additionalProperties":false,"properties":{"availability":{"$ref":"#/components/schemas/ServiceAvailability"},"capability":{"maxLength":128,"minLength":1,"not":{"pattern":"[\\r\\n]"},"pattern":"^[a-z][a-z0-9]*(?:[._-][a-z0-9]+)*$","type":"string"},"capability_version":{"maxLength":64,"not":{"pattern":"[\\r\\n]"},"pattern":"^(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)$","type":"string"},"contract":{"$ref":"#/components/schemas/ServiceMcpContract"},"contract_sha256":{"not":{"pattern":"[\\r\\n]"},"pattern":"^[a-f0-9]{64}$","type":"string"},"id":{"format":"uuid","type":"string"},"protocol":{"const":"stateless-json-mcp"},"provider_component_id":{"format":"uuid","type":"string"},"route_id":{"format":"uuid","type":"string"},"space_id":{"format":"uuid","type":"string"},"state":{"enum":["published","withdrawn"]},"version":{"minimum":1,"type":"integer"},"visibility":{"const":"owner_space"}},"required":["id","version","provider_component_id","space_id","route_id","capability","capability_version","visibility","state","contract_sha256","availability","protocol","contract"],"type":"object"}],"type":"object"},"BatteryCredential":{"additionalProperties":false,"properties":{"battery_id":{"format":"uuid","type":"string"},"battery_version":{"type":"integer"},"delegated_user":{"type":["object","null"]},"delegation_id":{"type":["string","null"]},"expires_at":{"type":"string"},"id":{"format":"uuid","type":"string"},"identity":{"additionalProperties":true,"type":"object"},"oauth_client_id":{"type":"string"},"object_id":{"format":"uuid","type":"string"},"purpose":{"type":"string"},"secret":{"type":["string","null"]},"url":{"type":["string","null"]},"user":{"additionalProperties":false,"properties":{"issuer":{"type":"string"},"subject":{"type":"string"}},"required":["issuer","subject"],"type":"object"}},"required":["id","battery_id","purpose","user","expires_at","secret"],"type":"object"},"Routes":{"additionalProperties":false,"properties":{"items":{"items":{"$ref":"#/components/schemas/Route"},"type":"array"},"next_cursor":{"type":["string","null"]}},"required":["items","next_cursor"],"type":"object"},"Secret":{"additionalProperties":false,"properties":{"component_id":{"format":"uuid","type":"string"},"created_at":{"type":"string"},"id":{"format":"uuid","type":"string"},"name":{"type":"string"},"version":{"minimum":1,"type":"integer"}},"required":["id","component_id","name","version","created_at"],"type":"object"},"BlobObjectPage":{"additionalProperties":false,"properties":{"items":{"items":{"$ref":"#/components/schemas/BlobObject"},"maxItems":100,"type":"array"},"next_cursor":{"type":["string","null"]}},"required":["items","next_cursor"],"type":"object"},"ConnectionGrantPage":{"additionalProperties":false,"properties":{"items":{"items":{"$ref":"#/components/schemas/ConnectionGrant"},"maxItems":100,"type":"array"},"next_cursor":{"type":["string","null"]}},"required":["items","next_cursor"],"type":"object"},"BatteryProviderPage":{"additionalProperties":false,"properties":{"items":{"items":{"$ref":"#/components/schemas/BatteryProvider"},"maxItems":100,"type":"array"},"next_cursor":{"type":["string","null"]}},"required":["items","next_cursor"],"type":"object"},"SyncCredential":{"additionalProperties":false,"properties":{"battery_id":{"format":"uuid","type":"string"},"battery_version":{"type":"integer"},"expires_at":{"type":"string"},"id":{"format":"uuid","type":"string"},"identity":{"type":"object"},"mode":{"enum":["reader","writer"],"type":"string"},"oauth_client_id":{"type":"string"},"room":{"maxLength":128,"minLength":1,"pattern":"^[A-Za-z0-9_-]+$","type":"string"},"secret":{"type":["string","null"]},"user":{"additionalProperties":false,"properties":{"issuer":{"type":"string"},"subject":{"maxLength":255,"minLength":1,"type":"string"}},"required":["issuer","subject"],"type":"object"}},"required":["id","battery_id","identity","battery_version","user","room","mode","expires_at","secret","oauth_client_id"],"type":"object"},"Database":{"additionalProperties":false,"properties":{"component_id":{"format":"uuid","type":"string"},"database":{"type":"string"},"host":{"type":"string"},"id":{"format":"uuid","type":"string"},"identity_setting":{"const":"auth.user_id","type":"string"},"migration_role":{"type":"string"},"port":{"type":"integer"},"rls":{"const":"explicit_table_enrollment","type":"string"},"runtime_role":{"type":"string"},"state":{"enum":["pending","ready","failed","retiring","retirement_failed","deleted"],"type":"string"},"tls":{"const":"verify-full","type":"string"}},"required":["id","component_id","state","database","host","port","tls","runtime_role","migration_role","rls","identity_setting"],"type":"object"},"Repository":{"additionalProperties":false,"properties":{"clone_url":{"type":"string"},"component_id":{"format":"uuid","type":"string"},"id":{"format":"uuid","type":"string"},"image":{"type":"string"},"mirror":{"additionalProperties":true,"type":["object","null"]},"state":{"enum":["pending","ready","failed","cancelled","retiring","retirement_failed","deleted"],"type":"string"},"version":{"minimum":1,"type":"integer"}},"required":["id","component_id","state","version","clone_url","image","mirror"],"type":"object"},"ProtectedResourceMetadata":{"additionalProperties":false,"properties":{"authorization_servers":{"items":{"type":"string"},"type":"array"},"bearer_methods_supported":{"items":{"const":"header"},"type":"array"},"resource":{"type":"string"},"resource_documentation":{"type":"string"},"scopes_supported":{"items":{"type":"string"},"type":"array"}},"required":["resource","authorization_servers","bearer_methods_supported","scopes_supported","resource_documentation"],"type":"object"},"ComputeSpec":{"additionalProperties":false,"properties":{"artifact_binding":{"additionalProperties":false,"description":"Exact same-Component repository for the digest-pinned image. Requires core:repositories:read and core:repositories:credential; each execution receives an internal OCI read credential.","properties":{"repository_id":{"format":"uuid","type":"string"}},"required":["repository_id"],"type":"object"},"command":{"items":{"maxLength":1024,"minLength":1,"pattern":"^[^\\x00]+(?![\\s\\S])","type":"string"},"maxItems":32,"minItems":1,"type":"array"},"cpu_millis":{"maximum":2000,"minimum":100,"type":"integer"},"database_binding":{"additionalProperties":false,"properties":{"credential_id":{"format":"uuid","type":"string"},"database_id":{"format":"uuid","type":"string"}},"required":["database_id"],"type":"object"},"egress_binding":{"additionalProperties":false,"description":"Operator-authorized OpenRouter CONNECT transport for this exact Component. Requires core:runtime:bind. Private bootstrap at /var/run/core-egress; no ambient internet or DNS. Revocation closes tunnels within five seconds when the authority service is reachable, and fails closed on authority loss.","properties":{"component_id":{"format":"uuid","type":"string"},"profile":{"enum":["openrouter"],"type":"string"}},"required":["profile","component_id"],"type":"object"},"image":{"maxLength":512,"pattern":"^[a-z0-9]+(?:[.-][a-z0-9]+)*(?::[0-9]{1,5})?/(?:[a-z0-9]+(?:[._-][a-z0-9]+)*/)*[a-z0-9]+(?:[._-][a-z0-9]+)*@sha256:[a-f0-9]{64}(?![\\s\\S])","type":"string"},"memory_mib":{"maximum":2048,"minimum":64,"type":"integer"},"network":{"enum":["none","database"],"type":"string"},"private_access":{"additionalProperties":false,"properties":{"protocol":{"enum":["ssh"],"type":"string"},"transport":{"enum":["headscale"],"type":"string"}},"required":["transport","protocol"],"type":"object"},"scratch_mib":{"maximum":1024,"minimum":16,"type":"integer"},"secret_bindings":{"description":"Exact active same-Component Secret versions; core:secrets:use required on creation and each start. Read-only files at /var/run/core-secrets/{name}. Secret-bound output is withheld.","items":{"additionalProperties":false,"properties":{"name":{"maxLength":64,"minLength":1,"pattern":"^[a-z][a-z0-9_-]*(?![\\s\\S])","type":"string"},"version_id":{"format":"uuid","type":"string"}},"required":["version_id","name"],"type":"object"},"maxItems":8,"minItems":1,"type":"array"},"timeout_seconds":{"maximum":900,"minimum":1,"type":"integer"}},"required":["image","command","cpu_millis","memory_mib","scratch_mib","timeout_seconds","network"],"type":"object"},"BlobObjectCreate":{"additionalProperties":false,"properties":{"content_type":{"maxLength":128,"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"size":{"maximum":1048576,"minimum":1,"type":"integer"}},"required":["size","content_type","sha256"],"type":"object"},"AppCreate":{"additionalProperties":false,"properties":{"development_of":{"description":"Immutable association to a release App in the same owned Space. The new App has separate Components, database, Secrets, authz, sync and configured battery state. This association grants no access to release resources.","format":"uuid","type":"string"},"name":{"maxLength":120,"minLength":1,"pattern":"\\S","type":"string"},"slug":{"maxLength":63,"minLength":1,"pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$","type":"string"}},"required":["name","slug"],"type":"object"},"RuntimeRevocation":{"additionalProperties":false,"properties":{"id":{"format":"uuid","type":"string"},"revoked":{"type":"boolean"}},"required":["id","revoked"],"type":"object"},"DatabaseBackupStatus":{"additionalProperties":false,"properties":{"checksum":{"type":"null"},"database_id":{"format":"uuid","type":"string"},"last_success_at":{"type":"null"},"reason":{"const":"backup_provider_not_configured","type":"string"},"restore_verified":{"const":false,"type":"boolean"},"state":{"const":"unknown","type":"string"}},"required":["database_id","state","reason","last_success_at","checksum","restore_verified"],"type":"object"},"RouteAccessCheck":{"additionalProperties":false,"properties":{"allowed":{"const":true},"id":{"format":"uuid","type":"string"},"origin":{"type":"string"}},"required":["id","origin","allowed"],"type":"object"},"RuntimeDelegation":{"properties":{"consumer":{"type":"object"},"delegated_user":{"properties":{"issuer":{"type":"string"},"subject":{"type":"string"}},"required":["issuer","subject"],"type":"object"},"dependency_id":{"format":"uuid","type":"string"},"dependency_version":{"type":"integer"},"expires_at":{"type":"string"},"id":{"format":"uuid","type":"string"},"secret":{"type":["string","null"]}},"required":["id","dependency_id","consumer","delegated_user","expires_at","secret"],"type":"object"},"WebSpec":{"additionalProperties":false,"properties":{"artifact_binding":{"additionalProperties":false,"description":"Exact same-Component repository for the digest-pinned image. Requires core:repositories:read and core:repositories:credential; each execution receives an internal OCI read credential.","properties":{"repository_id":{"format":"uuid","type":"string"}},"required":["repository_id"],"type":"object"},"broker_binding":{"description":"Execution-only bootstrap at /var/run/core-runtime. Requires core:runtime:bind and an explicitly configured runtime-only TLS broker. No provider or control-plane authority; runtime output withheld.","enum":["core"],"type":"string"},"command":{"items":{"maxLength":1024,"minLength":1,"pattern":"^[^\\x00]+(?![\\s\\S])","type":"string"},"maxItems":32,"minItems":1,"type":"array"},"cpu_millis":{"maximum":2000,"minimum":100,"type":"integer"},"database_binding":{"additionalProperties":false,"properties":{"credential_id":{"format":"uuid","type":"string"},"database_id":{"format":"uuid","type":"string"}},"required":["database_id"],"type":"object"},"egress_binding":{"additionalProperties":false,"description":"Operator-authorized OpenRouter CONNECT transport for this exact Component. Requires core:runtime:bind. Private bootstrap at /var/run/core-egress; no ambient internet or DNS. Revocation closes tunnels within five seconds when the authority service is reachable, and fails closed on authority loss.","properties":{"component_id":{"format":"uuid","type":"string"},"profile":{"enum":["openrouter"],"type":"string"}},"required":["profile","component_id"],"type":"object"},"image":{"maxLength":512,"pattern":"^[a-z0-9]+(?:[.-][a-z0-9]+)*(?::[0-9]{1,5})?/(?:[a-z0-9]+(?:[._-][a-z0-9]+)*/)*[a-z0-9]+(?:[._-][a-z0-9]+)*@sha256:[a-f0-9]{64}(?![\\s\\S])","type":"string"},"memory_mib":{"maximum":2048,"minimum":64,"type":"integer"},"network":{"enum":["none","database","broker","database_broker"],"type":"string"},"port":{"maximum":65535,"minimum":1024,"type":"integer"},"readiness_path":{"maxLength":256,"minLength":1,"pattern":"^/(?:[A-Za-z0-9_~-][A-Za-z0-9_./~-]*)?(?![\\s\\S])","type":"string"},"scratch_mib":{"maximum":1024,"minimum":16,"type":"integer"},"secret_bindings":{"description":"Exact active same-Component Secret versions; core:secrets:use required on creation and each start. Read-only files at /var/run/core-secrets/{name}. Secret-bound output is withheld.","items":{"additionalProperties":false,"properties":{"name":{"maxLength":64,"minLength":1,"pattern":"^[a-z][a-z0-9_-]*(?![\\s\\S])","type":"string"},"version_id":{"format":"uuid","type":"string"}},"required":["version_id","name"],"type":"object"},"maxItems":8,"minItems":1,"type":"array"},"startup_timeout_seconds":{"maximum":900,"minimum":1,"type":"integer"}},"required":["image","command","cpu_millis","memory_mib","scratch_mib","network","artifact_binding","port","readiness_path","startup_timeout_seconds"],"type":"object"},"AccessGroups":{"additionalProperties":false,"properties":{"items":{"items":{"$ref":"#/components/schemas/AccessGroup"},"type":"array"},"next_cursor":{"type":["string","null"]}},"required":["items","next_cursor"],"type":"object"},"ConfiguredBatteryPage":{"additionalProperties":false,"properties":{"items":{"items":{"$ref":"#/components/schemas/ConfiguredBattery"},"maxItems":100,"type":"array"},"next_cursor":{"type":["string","null"]}},"required":["items","next_cursor"],"type":"object"},"Databases":{"additionalProperties":false,"properties":{"items":{"items":{"$ref":"#/components/schemas/Database"},"maxItems":1,"type":"array"},"next_cursor":{"type":"null"}},"required":["items","next_cursor"],"type":"object"},"ResourceCoordinate":{"additionalProperties":false,"properties":{"id":{"type":"string"},"kind":{"type":"string"}},"required":["kind","id"],"type":"object"},"BatteryCredentialRevocation":{"additionalProperties":false,"properties":{"id":{"format":"uuid","type":"string"},"revoked":{"type":"boolean"}},"required":["id","revoked"],"type":"object"},"ServiceMcpContract":{"additionalProperties":false,"properties":{"catalog_sha256":{"not":{"pattern":"[\\r\\n]"},"pattern":"^[a-f0-9]{64}$","type":"string"},"tools":{"items":{"maxLength":128,"not":{"pattern":"[\\r\\n]"},"pattern":"^[a-zA-Z0-9_-]+$","type":"string"},"maxItems":32,"minItems":1,"type":"array","uniqueItems":true}},"required":["tools","catalog_sha256"],"type":"object"},"AppBatteryUpdate":{"additionalProperties":false,"properties":{"audience":{"items":{"maxLength":255,"minLength":1,"type":"string"},"maxItems":100,"type":"array","uniqueItems":true}},"required":["audience"],"type":"object"},"Dependency":{"additionalProperties":false,"properties":{"catalog_sha256":{"pattern":"^[a-f0-9]{64}(?![\\s\\S])","type":"string"},"consumer_component_id":{"format":"uuid","type":"string"},"consumer_route_id":{"format":"uuid","type":"string"},"id":{"format":"uuid","type":"string"},"issuer":{"type":"string"},"kind":{"enum":["uses_api","uses_mcp"],"type":"string"},"owner":{"type":"string"},"owner_authorizer":{"type":"string"},"paths":{"items":{"maxLength":256,"pattern":"^/api/v1/[a-zA-Z0-9_-]+(?:/[a-zA-Z0-9_-]+)*(?![\\s\\S])","type":"string"},"maxItems":32,"minItems":1,"type":"array","uniqueItems":true},"protocol":{"enum":["http-get","stateless-json-mcp"],"type":"string"},"provider_component_id":{"format":"uuid","type":"string"},"provider_route_id":{"format":"uuid","type":"string"},"query_variants":{"$ref":"#/components/schemas/ApiQueryVariants"},"readiness":{"enum":["unverified","ready"],"type":"string"},"service_capability":{"$ref":"#/components/schemas/ServiceCapabilitySnapshot"},"state":{"enum":["active","revoked"],"type":"string"},"tools":{"items":{"maxLength":128,"minLength":1,"pattern":"^[a-zA-Z0-9_-]+(?![\\s\\S])","type":"string"},"maxItems":32,"minItems":1,"type":"array","uniqueItems":true},"verification":{"description":"Metadata from successful runtime protocol checks, bound to both exact selected identities. MCP ready requires initialize, catalog verification, and allowed tool call.","type":"object"},"version":{"type":"integer"}},"required":["id","consumer_component_id","provider_component_id","state","version","readiness","protocol"],"type":"object"},"NativeReleaseCreate":{"additionalProperties":false,"properties":{"archive_bytes":{"maximum":104857600,"minimum":1,"type":"integer"},"archive_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"bundle_version":{"minimum":1,"type":"integer"},"target_udids":{"items":{"pattern":"^[A-Za-z0-9-]{8,80}$","type":"string"},"maxItems":1,"minItems":1,"type":"array","uniqueItems":true}},"required":["archive_sha256","archive_bytes","bundle_version","target_udids"],"type":"object"},"MirrorIntent":{"additionalProperties":false,"properties":{"destination":{"maxLength":250,"pattern":"^https://github\\.com/[A-Za-z0-9_.-]+/[A-Za-z0-9_.-]+\\.git$","type":"string"},"direction":{"enum":["push"],"type":"string"}},"required":["destination","direction"],"type":"object"},"Deployment":{"additionalProperties":false,"properties":{"component_id":{"format":"uuid","type":"string"},"created_at":{"type":"string"},"execution":{"type":["object","null"]},"id":{"format":"uuid","type":"string"},"kind":{"const":"deployment"},"spec":{"$ref":"#/components/schemas/WebSpec"},"state":{"type":"string"},"version":{"type":"integer"}},"required":["id","component_id","kind","spec","state","version","execution","created_at"],"type":"object"},"EnvironmentAccessPeer":{"additionalProperties":false,"properties":{"expires_at":{"format":"date-time","type":"string"},"id":{"format":"uuid","type":"string"},"label":{"maxLength":80,"minLength":1,"type":"string"},"version":{"minimum":1,"type":"integer"}},"required":["id","label","expires_at","version"],"type":"object"},"DatabaseCredentialClaim":{"additionalProperties":false,"properties":{"claimed":{"type":"boolean"},"database":{"type":"string"},"database_id":{"format":"uuid","type":"string"},"expires_at":{"$ref":"#/components/schemas/Timestamp"},"expiry_semantics":{"const":"password_login","type":"string"},"host":{"type":"string"},"id":{"format":"uuid","type":"string"},"port":{"type":"integer"},"role":{"enum":["runtime","migration"],"type":"string"},"secret":{"type":"string"},"session_role":{"type":"string"},"state":{"enum":["pending","ready","revoking","revoked","expired","failed"],"type":"string"},"tls":{"const":"verify-full","type":"string"},"username":{"type":"string"}},"required":["id","database_id","role","username","state","claimed","expires_at","expiry_semantics","host","port","database","tls","session_role","secret"],"type":"object"},"SecretVersion":{"additionalProperties":false,"properties":{"created_at":{"type":"string"},"id":{"format":"uuid","type":"string"},"secret_id":{"format":"uuid","type":"string"},"state":{"enum":["active","revoked"],"type":"string"},"version":{"minimum":1,"type":"integer"}},"required":["id","secret_id","state","version","created_at"],"type":"object"},"ResolvedManifest":{"additionalProperties":false,"properties":{"digest":{"pattern":"^sha256:[0-9a-f]{64}$","type":"string"},"image":{"type":"string"},"repository_id":{"format":"uuid","type":"string"},"size":{"minimum":0,"type":"integer"}},"required":["repository_id","digest","image","size"],"type":"object"},"RouteCredential":{"additionalProperties":false,"properties":{"expires_at":{"type":"string"},"id":{"format":"uuid","type":"string"},"origin":{"type":"string"},"route_id":{"format":"uuid","type":"string"},"secret":{"type":["string","null"]}},"required":["id","route_id","origin","secret","expires_at"],"type":"object"},"AdmissionCreate":{"additionalProperties":false,"properties":{"kind":{"enum":["email","domain"],"type":"string"},"value":{"maxLength":320,"minLength":1,"type":"string"}},"required":["kind","value"],"type":"object"},"CatalogUpdate":{"additionalProperties":false,"properties":{"name":{"maxLength":120,"minLength":1,"pattern":"\\S","type":"string"}},"required":["name"],"type":"object"},"OpenApiDocument":{"required":["openapi","info","paths","components"],"type":"object"},"CredentialRevoked":{"additionalProperties":false,"properties":{"id":{"format":"uuid","type":"string"},"revoked":{"type":"boolean"}},"required":["id","revoked"],"type":"object"},"Capabilities":{"additionalProperties":false,"properties":{"api_version":{"const":"v1"},"capabilities":{"items":{"$ref":"#/components/schemas/Capability"},"type":"array"}},"required":["api_version","capabilities"],"type":"object"},"EnvironmentAccessPeerPage":{"additionalProperties":false,"properties":{"items":{"items":{"$ref":"#/components/schemas/EnvironmentAccessPeer"},"maxItems":100,"type":"array"},"next_cursor":{"format":"uuid","type":["string","null"]}},"required":["items","next_cursor"],"type":"object"},"Spaces":{"additionalProperties":false,"properties":{"items":{"items":{"$ref":"#/components/schemas/Space"},"maxItems":100,"type":"array"},"next_cursor":{"format":"uuid","type":["string","null"]}},"required":["items","next_cursor"],"type":"object"},"DatabaseCredential":{"additionalProperties":false,"properties":{"claimed":{"type":"boolean"},"database":{"type":"string"},"database_id":{"format":"uuid","type":"string"},"expires_at":{"$ref":"#/components/schemas/Timestamp"},"expiry_semantics":{"const":"password_login","type":"string"},"host":{"type":"string"},"id":{"format":"uuid","type":"string"},"port":{"type":"integer"},"role":{"enum":["runtime","migration"],"type":"string"},"session_role":{"type":"string"},"state":{"enum":["pending","ready","revoking","revoked","expired","failed"],"type":"string"},"tls":{"const":"verify-full","type":"string"},"username":{"type":"string"}},"required":["id","database_id","role","username","state","claimed","expires_at","expiry_semantics","host","port","database","tls","session_role"],"type":"object"},"ApiQueryVariants":{"description":"Complete variants on declared paths, at most eight per path. All parameters are required; an empty parameters array explicitly permits a query-free request. A path with no variant accepts only an empty query. Bounds must be ordered. Bindings inherit the accepted publication variants on their selected paths unless they select an exact subset covering the same query-declared paths.","items":{"additionalProperties":false,"properties":{"parameters":{"items":{"$ref":"#/components/schemas/ApiQueryParameter"},"maxItems":8,"type":"array","uniqueItems":true},"path":{"maxLength":256,"not":{"pattern":"[\\r\\n]"},"pattern":"^/api/v1/[a-zA-Z0-9_-]+(?:/[a-zA-Z0-9_-]+)*$","type":"string"}},"required":["path","parameters"],"type":"object"},"maxItems":64,"minItems":1,"type":"array","uniqueItems":true},"ServiceCapabilityInput":{"oneOf":[{"additionalProperties":false,"properties":{"capability":{"maxLength":128,"minLength":1,"not":{"pattern":"[\\r\\n]"},"pattern":"^[a-z][a-z0-9]*(?:[._-][a-z0-9]+)*$","type":"string"},"capability_version":{"maxLength":64,"not":{"pattern":"[\\r\\n]"},"pattern":"^(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)$","type":"string"},"contract":{"$ref":"#/components/schemas/ServiceApiContract"},"protocol":{"const":"http-get"},"route_id":{"format":"uuid","type":"string"},"visibility":{"const":"owner_space"}},"required":["route_id","capability","capability_version","visibility","protocol","contract"],"type":"object"},{"additionalProperties":false,"properties":{"capability":{"maxLength":128,"minLength":1,"not":{"pattern":"[\\r\\n]"},"pattern":"^[a-z][a-z0-9]*(?:[._-][a-z0-9]+)*$","type":"string"},"capability_version":{"maxLength":64,"not":{"pattern":"[\\r\\n]"},"pattern":"^(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)$","type":"string"},"contract":{"$ref":"#/components/schemas/ServiceMcpContract"},"protocol":{"const":"stateless-json-mcp"},"route_id":{"format":"uuid","type":"string"},"visibility":{"const":"owner_space"}},"required":["route_id","capability","capability_version","visibility","protocol","contract"],"type":"object"}]},"Problem":{"additionalProperties":false,"properties":{"code":{"type":"string"},"detail":{"type":"string"},"errors":{"items":{"additionalProperties":false,"properties":{"detail":{"type":"string"},"field":{"type":"string"}},"required":["field","detail"],"type":"object"},"type":"array"},"instance":{"type":"string"},"request_id":{"type":"string"},"status":{"type":"integer"},"title":{"type":"string"},"type":{"type":"string"}},"required":["type","title","status","code","detail","instance","request_id"],"type":"object"},"RuntimeBinding":{"additionalProperties":false,"properties":{"app_id":{"format":"uuid","type":"string"},"closed":{"type":"boolean"},"component_id":{"format":"uuid","type":"string"},"configuration_generation":{"type":"integer"},"deployment_id":{"format":"uuid","type":"string"},"environment_id":{"format":"uuid","type":"string"},"execution_id":{"format":"uuid","type":"string"},"expires_at":{"type":"string"},"id":{"format":"uuid","type":"string"},"issuer":{"type":"string"},"oauth_client_id":{"type":"string"},"owner":{"type":"string"},"owner_authorizer":{"type":"string"},"space_id":{"format":"uuid","type":"string"}},"required":["id","execution_id","component_id","app_id","space_id","issuer","owner","owner_authorizer","oauth_client_id","expires_at","closed"],"type":"object"},"CatalogDeleted":{"additionalProperties":false,"properties":{"deleted":{"const":true,"type":"boolean"},"id":{"format":"uuid","type":"string"}},"required":["id","deleted"],"type":"object"},"BatteryProvider":{"additionalProperties":false,"properties":{"component_id":{"description":"Only api-key-json: the sole Component allowed to create this broker-key binding.","format":"uuid","type":"string"},"content_types":{"items":{"type":"string"},"type":"array"},"id":{"type":"string"},"inference_route":{"type":"string"},"kind":{"enum":["connections","inference","memory","blobs"],"type":"string"},"max_bytes":{"type":"integer"},"max_response_bytes":{"description":"Only api-key-json: upstream byte ceiling, further narrowed by the configured result-envelope budget.","maximum":262144,"minimum":1,"type":"integer"},"max_tokens":{"type":"integer"},"models":{"items":{"type":"string"},"type":"array"},"paths":{"additionalProperties":{"additionalProperties":false,"properties":{"queries":{"items":{"additionalProperties":{"oneOf":[{"additionalProperties":false,"properties":{"type":{"const":"symbol"}},"required":["type"],"type":"object"},{"additionalProperties":false,"properties":{"type":{"const":"enum"},"values":{"items":{"type":"string"},"type":"array"}},"required":["type","values"],"type":"object"},{"additionalProperties":false,"properties":{"maximum":{"type":"integer"},"minimum":{"type":"integer"},"type":{"const":"integer"}},"required":["type","minimum","maximum"],"type":"object"}]},"maxProperties":8,"type":"object"},"maxItems":8,"minItems":1,"type":"array"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["scopes","queries"],"type":"object"},"description":"Only api-key-json. Exact GET paths with required scopes and finite complete query variants. Every parameter in a variant is required; extras are rejected.","maxProperties":16,"type":"object"},"profile":{"type":"string"},"readiness":{"enum":["configured"],"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["id","kind","profile","models","scopes","content_types","max_bytes","max_tokens","readiness"],"type":"object"},"AppDirectoryPage":{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"issuer":{"type":"string"},"subject":{"maxLength":255,"minLength":1,"type":"string"}},"required":["issuer","subject"],"type":"object"},"maxItems":100,"type":"array"},"next_cursor":{"type":["string","null"]}},"required":["items","next_cursor"],"type":"object"},"SyncEndpoint":{"additionalProperties":false,"properties":{"id":{"format":"uuid","type":"string"},"protocol":{"type":"string"},"revalidate":{"type":"string"},"selection":{"type":"object"},"url":{"type":"string"}},"required":["id","url","protocol","selection","revalidate"],"type":"object"},"Capability":{"additionalProperties":false,"properties":{"cli_command":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}]},"mcp_tool":{"type":["string","null"]},"method":{"type":"string"},"operation_id":{"type":"string"},"path":{"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["operation_id","method","path","scopes","mcp_tool","cli_command"],"type":"object"},"AuditEvents":{"additionalProperties":false,"properties":{"items":{"items":{"$ref":"#/components/schemas/AuditEvent"},"maxItems":100,"type":"array"},"next_cursor":{"format":"uuid","type":["string","null"]}},"required":["items","next_cursor"],"type":"object"},"AppBatteryPage":{"additionalProperties":false,"properties":{"items":{"items":{"$ref":"#/components/schemas/AppBattery"},"maxItems":100,"type":"array"},"next_cursor":{"type":["string","null"]}},"required":["items","next_cursor"],"type":"object"},"App":{"additionalProperties":false,"properties":{"development_of":{"format":"uuid","type":["string","null"]},"id":{"format":"uuid","type":"string"},"name":{"maxLength":120,"minLength":1,"pattern":"\\S","type":"string"},"slug":{"maxLength":63,"minLength":1,"pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$","type":"string"},"space_id":{"format":"uuid","type":"string"},"version":{"minimum":1,"type":"integer"}},"required":["id","name","slug","version","space_id"],"type":"object"},"Component":{"additionalProperties":false,"properties":{"app_id":{"format":"uuid","type":"string"},"id":{"format":"uuid","type":"string"},"name":{"maxLength":120,"minLength":1,"pattern":"\\S","type":"string"},"slug":{"maxLength":63,"minLength":1,"pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$","type":"string"},"version":{"minimum":1,"type":"integer"}},"required":["id","name","slug","version","app_id"],"type":"object"},"Grant":{"additionalProperties":false,"properties":{"principal":{"$ref":"#/components/schemas/Principal"},"resource":{"$ref":"#/components/schemas/ResourceCoordinate"},"scopes":{"items":{"type":"string"},"type":"array"}},"required":["principal","resource","scopes"],"type":"object"},"Operation":{"additionalProperties":false,"properties":{"cancellation_supported":{"type":"boolean"},"created_at":{"$ref":"#/components/schemas/Timestamp"},"error":{"description":"Redacted worker failure details with a stable code; transport errors use Problem.","type":["object","null"]},"id":{"format":"uuid","type":"string"},"last_progress_at":{"$ref":"#/components/schemas/Timestamp"},"links":{"additionalProperties":false,"properties":{"self":{"type":"string"}},"required":["self"],"type":"object"},"phase":{"type":"string"},"progress":{"minimum":0,"type":"integer"},"result":{"type":["object","null"]},"state":{"enum":["pending","running","succeeded","failed","cancelled"]},"target":{"$ref":"#/components/schemas/ResourceCoordinate"},"updated_at":{"$ref":"#/components/schemas/Timestamp"}},"required":["id","state","phase","progress","created_at","updated_at","last_progress_at","target","result","error","cancellation_supported","links"],"type":"object"},"ComputeResources":{"properties":{"items":{"items":{"$ref":"#/components/schemas/ComputeResource"},"type":"array"},"next_cursor":{"type":["string","null"]}},"required":["items","next_cursor"],"type":"object"},"AuditEvent":{"additionalProperties":false,"properties":{"actor_kind":{"type":["string","null"]},"code":{"type":"string"},"delegated_user":{"properties":{"issuer":{"type":"string"},"subject":{"type":"string"}},"type":["object","null"]},"id":{"format":"uuid","type":"string"},"inserted_at":{"format":"date-time","type":"string"},"issuer":{"type":"string"},"oauth_client_id":{"type":["string","null"]},"operation_id":{"type":"string"},"owner":{"type":["string","null"]},"owner_authorizer":{"type":["string","null"]},"request_id":{"type":"string"},"runtime_principal":{"type":["string","null"]},"status":{"type":"integer"},"subject":{"type":["string","null"]},"target":{"additionalProperties":true,"type":"object"},"transport":{"type":"string"}},"required":["id","request_id","issuer","operation_id","transport","code","inserted_at","subject","oauth_client_id","actor_kind","owner","owner_authorizer","runtime_principal","status","target"],"type":"object"},"ServiceCapabilityBindingInput":{"oneOf":[{"additionalProperties":false,"properties":{"consumer_route_id":{"format":"uuid","type":"string"},"contract_sha256":{"not":{"pattern":"[\\r\\n]"},"pattern":"^[a-f0-9]{64}$","type":"string"},"kind":{"const":"uses_api"},"paths":{"items":{"maxLength":256,"not":{"pattern":"[\\r\\n]"},"pattern":"^/api/v1/[a-zA-Z0-9_-]+(?:/[a-zA-Z0-9_-]+)*$","type":"string"},"maxItems":32,"minItems":1,"type":"array","uniqueItems":true},"query_variants":{"$ref":"#/components/schemas/ApiQueryVariants"},"service_capability_id":{"format":"uuid","type":"string"},"service_capability_version":{"minimum":1,"type":"integer"}},"required":["consumer_route_id","service_capability_id","service_capability_version","contract_sha256","kind","paths"],"type":"object"},{"additionalProperties":false,"properties":{"consumer_route_id":{"format":"uuid","type":"string"},"contract_sha256":{"not":{"pattern":"[\\r\\n]"},"pattern":"^[a-f0-9]{64}$","type":"string"},"kind":{"const":"uses_mcp"},"service_capability_id":{"format":"uuid","type":"string"},"service_capability_version":{"minimum":1,"type":"integer"},"tools":{"items":{"maxLength":128,"not":{"pattern":"[\\r\\n]"},"pattern":"^[a-zA-Z0-9_-]+$","type":"string"},"maxItems":32,"minItems":1,"type":"array","uniqueItems":true}},"required":["consumer_route_id","service_capability_id","service_capability_version","contract_sha256","kind","tools"],"type":"object"}]},"SecretVersionList":{"additionalProperties":false,"properties":{"items":{"items":{"$ref":"#/components/schemas/SecretVersion"},"type":"array"},"next_cursor":{"type":["string","null"]}},"required":["items","next_cursor"],"type":"object"},"Components":{"additionalProperties":false,"properties":{"items":{"items":{"$ref":"#/components/schemas/Component"},"maxItems":100,"type":"array"},"next_cursor":{"format":"uuid","type":["string","null"]}},"required":["items","next_cursor"],"type":"object"},"ImmutableDigest":{"pattern":"^[^@\\s]+@sha256:[a-f0-9]{64}$","type":"string"},"RuntimeDelegationInput":{"additionalProperties":false,"properties":{"execution_id":{"format":"uuid","type":"string"},"ttl_seconds":{"maximum":900,"minimum":1,"type":"integer"}},"required":["execution_id","ttl_seconds"],"type":"object"},"SyncCredentialCreate":{"additionalProperties":false,"properties":{"mode":{"enum":["reader","writer"],"type":"string"},"room":{"maxLength":128,"minLength":1,"pattern":"^[A-Za-z0-9_-]+$","type":"string"}},"required":["room","mode"],"type":"object"},"Discovery":{"additionalProperties":false,"properties":{"api_version":{"const":"v1"},"authorization_server":{"type":"string"},"mcp":{"type":"string"},"oauth_metadata":{"type":"string"},"oauth_resource":{"type":"string"},"openapi":{"type":"string"},"status":{"const":"ready"}},"required":["api_version","openapi","mcp","oauth_resource","oauth_metadata","authorization_server","status"],"type":"object"},"ServiceDiscoveryQuery":{"additionalProperties":false,"properties":{"capability":{"maxLength":128,"minLength":1,"not":{"pattern":"[\\r\\n]"},"pattern":"^[a-z][a-z0-9]*(?:[._-][a-z0-9]+)*$","type":"string"},"capability_version":{"maxLength":64,"not":{"pattern":"[\\r\\n]"},"pattern":"^(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)$","type":"string"},"cursor":{"format":"uuid","type":"string"},"protocol":{"enum":["http-get","stateless-json-mcp"]},"state":{"enum":["published","withdrawn"]}},"required":[],"type":"object"},"ServiceCapabilityPage":{"additionalProperties":false,"properties":{"items":{"items":{"$ref":"#/components/schemas/ServiceCapability"},"maxItems":100,"type":"array"},"next_cursor":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}]}},"required":["items","next_cursor"],"type":"object"},"EnvironmentAccessPage":{"additionalProperties":false,"properties":{"items":{"items":{"$ref":"#/components/schemas/EnvironmentAccess"},"maxItems":100,"type":"array"},"next_cursor":{"format":"uuid","type":["string","null"]}},"required":["items","next_cursor"],"type":"object"},"AppAllowed":{"additionalProperties":false,"properties":{"allowed":{"type":"boolean"}},"required":["allowed"],"type":"object"},"NativeReleaseBindingPage":{"additionalProperties":false,"properties":{"items":{"items":{"$ref":"#/components/schemas/NativeReleaseBinding"},"type":"array"},"next_cursor":{"type":["string","null"]}},"required":["items","next_cursor"],"type":"object"},"NativeReleaseBinding":{"additionalProperties":false,"properties":{"bundle_id":{"pattern":"^[A-Za-z0-9][A-Za-z0-9.-]{2,199}$","type":"string"},"component_id":{"format":"uuid","type":"string"},"id":{"format":"uuid","type":"string"},"product":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,79}$","type":"string"},"profile_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"publisher_id":{"minimum":1,"type":"integer"},"signing_certificate_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"state":{"enum":["active","revoked"],"type":"string"},"target_udids":{"items":{"pattern":"^[A-Za-z0-9-]{8,80}$","type":"string"},"maxItems":1,"minItems":1,"type":"array","uniqueItems":true},"version":{"minimum":1,"type":"integer"},"version_floor":{"minimum":0,"type":"integer"}},"required":["component_id","publisher_id","bundle_id","product","target_udids","version_floor","signing_certificate_sha256","profile_sha256","id","version","state"],"type":"object"},"ServiceCapabilitySnapshot":{"additionalProperties":false,"properties":{"capability":{"maxLength":128,"minLength":1,"not":{"pattern":"[\\r\\n]"},"pattern":"^[a-z][a-z0-9]*(?:[._-][a-z0-9]+)*$","type":"string"},"capability_version":{"maxLength":64,"not":{"pattern":"[\\r\\n]"},"pattern":"^(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)$","type":"string"},"contract_sha256":{"not":{"pattern":"[\\r\\n]"},"pattern":"^[a-f0-9]{64}$","type":"string"},"id":{"format":"uuid","type":"string"},"protocol":{"enum":["http-get","stateless-json-mcp"]},"version":{"minimum":1,"type":"integer"}},"required":["id","version","capability","capability_version","protocol","contract_sha256"],"type":"object"},"Apps":{"additionalProperties":false,"properties":{"items":{"items":{"$ref":"#/components/schemas/App"},"maxItems":100,"type":"array"},"next_cursor":{"format":"uuid","type":["string","null"]}},"required":["items","next_cursor"],"type":"object"},"AccessGroup":{"additionalProperties":false,"properties":{"id":{"format":"uuid","type":"string"},"members":{"items":{"maxLength":255,"minLength":1,"pattern":"^[^\\s]+$","type":"string"},"maxItems":50,"type":"array","uniqueItems":true},"name":{"maxLength":80,"minLength":1,"type":"string"},"state":{"enum":["active","deleted"]},"version":{"type":"integer"}},"required":["name","members","id","version","state"],"type":"object"},"ComputeResource":{"additionalProperties":false,"properties":{"component_id":{"format":"uuid","type":"string"},"created_at":{"type":"string"},"execution":{"type":["object","null"]},"id":{"format":"uuid","type":"string"},"kind":{"enum":["job","environment"],"type":"string"},"spec":{"$ref":"#/components/schemas/ComputeSpec"},"state":{"type":"string"},"version":{"type":"integer"},"workspace":{"properties":{"id":{"format":"uuid","type":"string"},"namespace":{"type":"string"},"pvc_uid":{"type":"string"},"recovery":{"type":"string"},"retention":{"type":"string"},"size_mib":{"type":"integer"},"state":{"type":"string"}},"type":"object"}},"required":["id","component_id","kind","spec","state","version","execution","created_at"],"type":"object"},"DevelopmentSpec":{"additionalProperties":false,"properties":{"artifact_binding":{"additionalProperties":false,"description":"Exact same-Component repository for the digest-pinned image. Requires core:repositories:read and core:repositories:credential; each execution receives an internal OCI read credential.","properties":{"repository_id":{"format":"uuid","type":"string"}},"required":["repository_id"],"type":"object"},"broker_binding":{"description":"Execution-only bootstrap at /var/run/core-runtime. Requires core:runtime:bind and an explicitly configured runtime-only TLS broker. No provider or control-plane authority; runtime output withheld.","enum":["core"],"type":"string"},"command":{"items":{"maxLength":1024,"minLength":1,"pattern":"^[^\\x00]+(?![\\s\\S])","type":"string"},"maxItems":32,"minItems":1,"type":"array"},"cpu_millis":{"maximum":2000,"minimum":100,"type":"integer"},"database_binding":{"additionalProperties":false,"properties":{"credential_id":{"format":"uuid","type":"string"},"database_id":{"format":"uuid","type":"string"}},"required":["database_id"],"type":"object"},"development":{"additionalProperties":false,"properties":{"idle_timeout_seconds":{"maximum":3600,"minimum":60,"type":"integer"},"workspace_mib":{"maximum":1024,"minimum":1024,"type":"integer"}},"required":["workspace_mib","idle_timeout_seconds"],"type":"object"},"egress_binding":{"additionalProperties":false,"description":"Operator-authorized OpenRouter CONNECT transport for this exact Component. Requires core:runtime:bind. Private bootstrap at /var/run/core-egress; no ambient internet or DNS. Revocation closes tunnels within five seconds when the authority service is reachable, and fails closed on authority loss.","properties":{"component_id":{"format":"uuid","type":"string"},"profile":{"enum":["openrouter"],"type":"string"}},"required":["profile","component_id"],"type":"object"},"image":{"maxLength":512,"pattern":"^[a-z0-9]+(?:[.-][a-z0-9]+)*(?::[0-9]{1,5})?/(?:[a-z0-9]+(?:[._-][a-z0-9]+)*/)*[a-z0-9]+(?:[._-][a-z0-9]+)*@sha256:[a-f0-9]{64}(?![\\s\\S])","type":"string"},"memory_mib":{"maximum":2048,"minimum":64,"type":"integer"},"network":{"enum":["none","database","broker","database_broker"],"type":"string"},"port":{"maximum":65535,"minimum":1024,"type":"integer"},"private_access":{"additionalProperties":false,"properties":{"protocol":{"enum":["ssh"],"type":"string"},"transport":{"enum":["headscale"],"type":"string"}},"required":["transport","protocol"],"type":"object"},"readiness_path":{"maxLength":256,"minLength":1,"pattern":"^/(?:[A-Za-z0-9_~-][A-Za-z0-9_./~-]*)?(?![\\s\\S])","type":"string"},"scratch_mib":{"maximum":1024,"minimum":16,"type":"integer"},"secret_bindings":{"description":"Exact active same-Component Secret versions; core:secrets:use required on creation and each start. Read-only files at /var/run/core-secrets/{name}. Secret-bound output is withheld.","items":{"additionalProperties":false,"properties":{"name":{"maxLength":64,"minLength":1,"pattern":"^[a-z][a-z0-9_-]*(?![\\s\\S])","type":"string"},"version_id":{"format":"uuid","type":"string"}},"required":["version_id","name"],"type":"object"},"maxItems":8,"minItems":1,"type":"array"},"startup_timeout_seconds":{"maximum":900,"minimum":1,"type":"integer"},"timeout_seconds":{"maximum":28800,"minimum":60,"type":"integer"}},"required":["image","command","cpu_millis","memory_mib","scratch_mib","network","artifact_binding","port","readiness_path","startup_timeout_seconds","private_access","timeout_seconds","development"],"type":"object"},"Dependencies":{"additionalProperties":false,"properties":{"items":{"items":{"$ref":"#/components/schemas/Dependency"},"type":"array"},"next_cursor":{"format":"uuid","type":["string","null"]}},"required":["items","next_cursor"],"type":"object"},"ConnectionGrant":{"additionalProperties":false,"properties":{"battery_id":{"format":"uuid","type":"string"},"error":{"type":"string"},"expires_at":{"type":"string"},"id":{"format":"uuid","type":"string"},"oauth_client_id":{"type":"string"},"scopes":{"items":{"type":"string"},"type":"array"},"state":{"type":"string"},"upstream_uncertain":{"type":"boolean"},"user":{"additionalProperties":false,"properties":{"issuer":{"type":"string"},"subject":{"type":"string"}},"required":["issuer","subject"],"type":"object"}},"required":["id","battery_id","user","state","scopes"],"type":"object"},"AppObjectPage":{"additionalProperties":false,"properties":{"items":{"items":{"maxLength":161,"pattern":"^[a-z][a-z0-9_]{0,31}:[A-Za-z0-9_-]{1,128}$","type":"string"},"maxItems":100,"type":"array"},"next_cursor":{"type":["string","null"]}},"required":["items","next_cursor"],"type":"object"},"DependencyInput":{"oneOf":[{"$ref":"#/components/schemas/DirectDependencyInput"},{"$ref":"#/components/schemas/ServiceCapabilityBindingInput"}]},"NativeRelease":{"additionalProperties":false,"description":"state records the last external phase; operation_state and error give the immutable terminal outcome. Installed-version observation does not imply launch.","properties":{"archive_bytes":{"maximum":104857600,"minimum":1,"type":"integer"},"archive_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"artifact_custody":{"enum":["absent","encrypted","erased"],"type":"string"},"binding_id":{"format":"uuid","type":"string"},"binding_version":{"type":"integer"},"bundle_id":{"type":"string"},"bundle_version":{"minimum":1,"type":"integer"},"component_id":{"format":"uuid","type":"string"},"created_at":{"format":"date-time","type":"string"},"device_status":{"additionalProperties":false,"properties":{"installed_version":{"type":"integer"},"launch_observed":{"type":"boolean"},"observed_at":{"format":"date-time","type":"string"},"udid":{"type":"string"}},"type":"object"},"error":{"type":["object","null"]},"id":{"format":"uuid","type":"string"},"install_command_uuid":{"format":"uuid","type":"string"},"inventory_command_uuid":{"format":"uuid","type":"string"},"inventory_commands":{"items":{"format":"uuid","type":"string"},"maxItems":12,"type":"array"},"ipa_sha256":{"type":["string","null"]},"manifest_url":{"type":["string","null"]},"next_inventory_at":{"format":"date-time","type":"string"},"operation_id":{"format":"uuid","type":"string"},"operation_state":{"enum":["pending","running","succeeded","failed","cancelled"],"type":"string"},"state":{"enum":["awaiting_upload","queued","submitted","signing","publishing","published","install_submitted","install_acknowledged","inventory_submitted","installed"],"type":"string"},"target_udids":{"items":{"pattern":"^[A-Za-z0-9-]{8,80}$","type":"string"},"maxItems":1,"minItems":1,"type":"array","uniqueItems":true}},"required":["archive_sha256","archive_bytes","bundle_version","target_udids","id","binding_id","component_id","operation_id","binding_version","bundle_id","state","created_at","artifact_custody","ipa_sha256","manifest_url","operation_state","error","device_status"],"type":"object"},"RuntimeBindings":{"additionalProperties":false,"properties":{"items":{"items":{"$ref":"#/components/schemas/RuntimeBinding"},"type":"array"},"next_cursor":{"format":"uuid","type":["string","null"]}},"required":["items","next_cursor"],"type":"object"},"NativeReleaseBindingConfiguration":{"additionalProperties":false,"properties":{"api_credential_id":{"minimum":1,"type":"integer"},"app_slug":{"pattern":"^[a-z0-9][a-z0-9-]{0,63}$","type":"string"},"apple_team_id":{"pattern":"^[A-Z0-9]{1,30}$","type":"string"},"bundle_id":{"pattern":"^[A-Za-z0-9][A-Za-z0-9.-]{2,199}$","type":"string"},"component_id":{"format":"uuid","type":"string"},"product":{"pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,79}$","type":"string"},"profile_name":{"pattern":"^[A-Za-z0-9][A-Za-z0-9._-]{0,99}\\.mobileprovision$","type":"string"},"profile_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"profile_uuid":{"maxLength":100,"minLength":1,"type":"string"},"publisher_id":{"minimum":1,"type":"integer"},"signing_certificate_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"signing_credential_id":{"minimum":1,"type":"integer"},"target_udids":{"items":{"pattern":"^[A-Za-z0-9-]{8,80}$","type":"string"},"maxItems":1,"minItems":1,"type":"array","uniqueItems":true},"team_slug":{"pattern":"^[a-z0-9][a-z0-9-]{0,63}$","type":"string"},"version_floor":{"minimum":0,"type":"integer"}},"required":["component_id","publisher_id","api_credential_id","signing_credential_id","bundle_id","product","target_udids","version_floor","apple_team_id","signing_certificate_sha256","profile_sha256","profile_uuid","profile_name","team_slug","app_slug"],"type":"object"},"NativeCredential":{"additionalProperties":false,"properties":{"actions":{"items":{"type":"string"},"type":"array"},"audience":{"type":"string"},"expires_at":{"type":"string"},"id":{"format":"uuid","type":"string"},"repository_id":{"format":"uuid","type":"string"},"secret":{"description":"Returned once; replay returns null. Never recorded in audit or plaintext replay storage.","type":["string","null"]},"username":{"type":"string"}},"required":["id","repository_id","username","secret","expires_at","actions","audience"],"type":"object"},"BlobCredentialCreate":{"additionalProperties":false,"properties":{"mode":{"enum":["upload","download"],"type":"string"}},"required":["mode"],"type":"object"},"SyncRevoked":{"additionalProperties":false,"properties":{"id":{"format":"uuid","type":"string"},"revoked":{"type":"boolean"}},"required":["id","revoked"],"type":"object"},"ApiQueryParameter":{"description":"Every parameter is required within its complete variant. Names are unique and sorted. Credential parameter names are forbidden. Strings are valid UTF-8 without ASCII control characters, at most 256 encoded bytes. Integers use canonical decimal notation.","oneOf":[{"additionalProperties":false,"properties":{"maxLength":{"maximum":256,"minimum":1,"type":"integer"},"minLength":{"maximum":256,"minimum":0,"type":"integer"},"name":{"maxLength":32,"minLength":1,"pattern":"^[a-zA-Z][a-zA-Z0-9_]{0,31}(?![\\s\\S])","type":"string"},"type":{"const":"string"}},"required":["name","type","minLength","maxLength"],"type":"object"},{"additionalProperties":false,"properties":{"name":{"maxLength":32,"minLength":1,"pattern":"^[a-zA-Z][a-zA-Z0-9_]{0,31}(?![\\s\\S])","type":"string"},"type":{"const":"enum"},"values":{"items":{"maxLength":256,"type":"string"},"maxItems":16,"minItems":1,"type":"array","uniqueItems":true}},"required":["name","type","values"],"type":"object"},{"additionalProperties":false,"properties":{"maximum":{"maximum":1000000000,"minimum":-1000000000,"type":"integer"},"minimum":{"maximum":1000000000,"minimum":-1000000000,"type":"integer"},"name":{"maxLength":32,"minLength":1,"pattern":"^[a-zA-Z][a-zA-Z0-9_]{0,31}(?![\\s\\S])","type":"string"},"type":{"const":"integer"}},"required":["name","type","minimum","maximum"],"type":"object"}]},"ConfiguredBatteryCreate":{"additionalProperties":false,"properties":{"audience":{"items":{"maxLength":255,"minLength":1,"type":"string"},"maxItems":100,"type":"array","uniqueItems":true},"content_types":{"items":{"maxLength":255,"minLength":1,"type":"string"},"maxItems":100,"type":"array","uniqueItems":true},"max_bytes":{"maximum":1048576,"minimum":1,"type":"integer"},"max_tokens":{"maximum":8192,"minimum":1,"type":"integer"},"models":{"items":{"maxLength":255,"minLength":1,"type":"string"},"maxItems":100,"type":"array","uniqueItems":true},"provider_id":{"maxLength":63,"minLength":1,"type":"string"},"route_id":{"format":"uuid","type":"string"},"runtime":{"description":"OAuth-code Connections require false and per-user consent. api-key-json requires true, empty audience and exact operator-pinned Component; the key stays broker-owned.","type":"boolean"},"scopes":{"items":{"maxLength":255,"minLength":1,"type":"string"},"maxItems":100,"type":"array","uniqueItems":true}},"required":["provider_id","route_id","audience","runtime","models","scopes","content_types","max_bytes","max_tokens"],"type":"object"},"RouteAccess":{"additionalProperties":false,"properties":{"group_ids":{"items":{"format":"uuid","type":"string"},"maxItems":16,"type":"array","uniqueItems":true},"id":{"format":"uuid","type":"string"},"users":{"items":{"maxLength":255,"minLength":1,"pattern":"^[^\\s]+$","type":"string"},"maxItems":32,"type":"array","uniqueItems":true},"version":{"type":"integer"}},"required":["users","group_ids","id","version"],"type":"object"},"ServiceAvailability":{"additionalProperties":false,"allOf":[{"else":{"properties":{"reason":{"not":{"const":"ready"}}}},"if":{"properties":{"state":{"const":"available"}}},"then":{"properties":{"reason":{"const":"ready"}},"required":["selection"]}}],"properties":{"observed_at":{"format":"date-time","type":"string"},"reason":{"enum":["not_observed","no_selection","not_ready","service_pending","endpoint_mismatch","custody_revoked","selection_changed","withdrawn","ready"]},"selection":{"$ref":"#/components/schemas/ServiceSelection"},"state":{"enum":["unknown","unavailable","available"]}},"required":["state","observed_at","reason"],"type":"object"},"Space":{"additionalProperties":false,"properties":{"id":{"format":"uuid","type":"string"},"name":{"maxLength":120,"minLength":1,"pattern":"\\S","type":"string"},"owner":{"additionalProperties":false,"properties":{"issuer":{"type":"string"},"subject":{"type":"string"}},"required":["issuer","subject"],"type":"object"},"slug":{"maxLength":63,"minLength":1,"pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$","type":"string"},"version":{"minimum":1,"type":"integer"}},"required":["id","name","slug","version","owner"],"type":"object"},"AdmissionCheck":{"additionalProperties":false,"properties":{"allowed":{"type":"boolean"}},"required":["allowed"],"type":"object"},"BlobObject":{"additionalProperties":false,"properties":{"battery_id":{"format":"uuid","type":"string"},"content_type":{"maxLength":128,"minLength":1,"type":"string"},"expires_at":{"type":"string"},"id":{"format":"uuid","type":"string"},"operation_action":{"type":"string"},"operation_id":{"format":"uuid","type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"size":{"maximum":1048576,"minimum":1,"type":"integer"},"state":{"enum":["staging","accepting","accepted","deleting","deleted","uncertain"],"type":"string"},"upload_observed":{"type":"boolean"},"version":{"type":"integer"}},"required":["id","battery_id","size","sha256","content_type","state","version","expires_at"],"type":"object"},"SecretList":{"additionalProperties":false,"properties":{"items":{"items":{"$ref":"#/components/schemas/Secret"},"type":"array"},"next_cursor":{"type":["string","null"]}},"required":["items","next_cursor"],"type":"object"},"EnvironmentAccess":{"additionalProperties":false,"properties":{"actor_issuer":{"maxLength":512,"minLength":1,"type":"string"},"actor_subject":{"maxLength":255,"minLength":1,"type":"string"},"audit_incomplete":{"description":"True when gateway loss prevented complete session metadata recovery; resource cleanup is reported independently.","type":"boolean"},"cleanup_pending":{"type":"boolean"},"created_at":{"format":"date-time","type":"string"},"endpoint":{"additionalProperties":false,"properties":{"host":{"maxLength":255,"minLength":1,"type":"string"},"host_key_fingerprint":{"maxLength":100,"minLength":1,"type":"string"},"host_public_key":{"maxLength":512,"minLength":1,"type":"string"},"known_hosts":{"maxLength":1024,"minLength":1,"type":"string"},"port":{"enum":[22],"type":"integer"},"username":{"enum":["dev"],"type":"string"}},"required":["host","port","username","host_public_key","host_key_fingerprint","known_hosts"],"type":["object","null"]},"environment_id":{"format":"uuid","type":"string"},"error":{"additionalProperties":false,"properties":{"code":{"maxLength":100,"minLength":1,"type":"string"}},"type":["object","null"]},"execution_id":{"format":"uuid","type":"string"},"expires_at":{"format":"date-time","type":"string"},"grant_id":{"maxLength":64,"minLength":1,"type":"string"},"id":{"format":"uuid","type":"string"},"oauth_client_id":{"maxLength":255,"minLength":1,"type":"string"},"operation_id":{"format":"uuid","type":"string"},"owner_authorizer":{"maxLength":255,"minLength":1,"type":"string"},"peer_id":{"format":"uuid","type":"string"},"revoke_operation_id":{"format":"uuid","type":"string"},"ssh_key_fingerprint":{"maxLength":100,"minLength":1,"type":"string"},"state":{"enum":["pending","ready","revoking","revoked","expired","failed"],"type":"string"},"version":{"minimum":1,"type":"integer"}},"required":["id","environment_id","execution_id","peer_id","actor_issuer","actor_subject","owner_authorizer","oauth_client_id","grant_id","ssh_key_fingerprint","created_at","expires_at","version","state","operation_id","cleanup_pending","error","endpoint"],"type":"object"},"CatalogCreate":{"additionalProperties":false,"properties":{"name":{"maxLength":120,"minLength":1,"pattern":"\\S","type":"string"},"slug":{"maxLength":63,"minLength":1,"pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$","type":"string"}},"required":["name","slug"],"type":"object"},"AppBatteryCreate":{"additionalProperties":false,"properties":{"audience":{"items":{"maxLength":255,"minLength":1,"type":"string"},"maxItems":100,"type":"array","uniqueItems":true},"protocol":{"enum":["yjs-update-v1"],"type":"string"},"route_id":{"format":"uuid","type":"string"},"sync_path":{"maxLength":38,"pattern":"^/sync/[a-z][a-z0-9_-]{0,31}$","type":"string"},"writable_relations":{"items":{"enum":["reader","writer"],"type":"string"},"maxItems":2,"type":"array","uniqueItems":true}},"required":["route_id","audience","writable_relations","sync_path","protocol"],"type":"object"},"ServiceSelection":{"additionalProperties":false,"properties":{"deployment_id":{"format":"uuid","type":"string"},"execution_id":{"format":"uuid","type":"string"},"generation":{"format":"uuid","type":"string"},"workload_uid":{"format":"uuid","type":"string"}},"required":["deployment_id","execution_id","workload_uid","generation"],"type":"object"},"Route":{"additionalProperties":false,"properties":{"access":{"enum":["owner","grants"]},"access_policy":{"additionalProperties":false,"properties":{"group_ids":{"items":{"format":"uuid","type":"string"},"maxItems":16,"type":"array","uniqueItems":true},"users":{"items":{"maxLength":255,"minLength":1,"pattern":"^[^\\s]+$","type":"string"},"maxItems":32,"type":"array","uniqueItems":true},"version":{"type":"integer"}},"required":["users","group_ids","version"],"type":"object"},"component_id":{"format":"uuid","type":"string"},"id":{"format":"uuid","type":"string"},"origin":{"type":"string"},"purpose":{"enum":["release","development"],"type":"string"},"selection":{"type":["object","null"]},"state":{"enum":["active","deleted"]},"version":{"type":"integer"}},"required":["id","component_id","origin","access","state","selection","version"],"type":"object"},"AppBattery":{"additionalProperties":false,"properties":{"app_id":{"format":"uuid","type":"string"},"audience":{"items":{"maxLength":255,"minLength":1,"type":"string"},"maxItems":100,"type":"array","uniqueItems":true},"component_id":{"format":"uuid","type":"string"},"id":{"format":"uuid","type":"string"},"issuer":{"type":"string"},"owner":{"maxLength":255,"minLength":1,"type":"string"},"protocol":{"enum":["yjs-update-v1"],"type":"string"},"readiness":{"enum":["unverified","authorization_verified"],"type":"string"},"route_id":{"format":"uuid","type":"string"},"state":{"enum":["active","revoked"],"type":"string"},"sync_path":{"maxLength":38,"pattern":"^/sync/[a-z][a-z0-9_-]{0,31}$","type":"string"},"version":{"type":"integer"},"writable_relations":{"items":{"enum":["reader","writer"],"type":"string"},"maxItems":2,"type":"array","uniqueItems":true}},"required":["id","component_id","app_id","version","state","readiness"],"type":"object"},"Pagination":{"additionalProperties":false,"properties":{"next_cursor":{"type":["string","null"]}},"required":["next_cursor"],"type":"object"},"Repositories":{"additionalProperties":false,"properties":{"items":{"items":{"$ref":"#/components/schemas/Repository"},"type":"array"},"next_cursor":{"type":["string","null"]}},"required":["items","next_cursor"],"type":"object"},"ServiceApiContract":{"additionalProperties":false,"properties":{"paths":{"items":{"maxLength":256,"not":{"pattern":"[\\r\\n]"},"pattern":"^/api/v1/[a-zA-Z0-9_-]+(?:/[a-zA-Z0-9_-]+)*$","type":"string"},"maxItems":32,"minItems":1,"type":"array","uniqueItems":true},"query_variants":{"$ref":"#/components/schemas/ApiQueryVariants"}},"required":["paths"],"type":"object"},"DatabaseCredentialRequest":{"additionalProperties":false,"properties":{"role":{"enum":["runtime","migration"],"type":"string"},"ttl_seconds":{"maximum":900,"minimum":30,"type":"integer"}},"required":["role","ttl_seconds"],"type":"object"},"NativeCredentialRequest":{"additionalProperties":false,"properties":{"actions":{"items":{"enum":["git:read","git:write","oci:read","oci:write"],"type":"string"},"maxItems":4,"minItems":1,"type":"array","uniqueItems":true},"ttl_seconds":{"maximum":900,"minimum":30,"type":"integer"}},"required":["ttl_seconds","actions"],"type":"object"},"AppRelationshipCheck":{"additionalProperties":false,"properties":{"object":{"maxLength":161,"pattern":"^[a-z][a-z0-9_]{0,31}:[A-Za-z0-9_-]{1,128}$","type":"string"},"relation":{"enum":["reader","writer"],"type":"string"},"subject":{"maxLength":255,"minLength":1,"type":"string"}},"required":["object","relation","subject"],"type":"object"},"ConfiguredBattery":{"additionalProperties":false,"properties":{"audience":{"items":{"maxLength":255,"minLength":1,"type":"string"},"maxItems":100,"type":"array","uniqueItems":true},"component_id":{"format":"uuid","type":"string"},"content_types":{"items":{"maxLength":255,"minLength":1,"type":"string"},"maxItems":100,"type":"array","uniqueItems":true},"created_at":{"type":"string"},"id":{"format":"uuid","type":"string"},"issuer":{"type":"string"},"kind":{"type":"string"},"max_bytes":{"maximum":1048576,"minimum":1,"type":"integer"},"max_tokens":{"maximum":8192,"minimum":1,"type":"integer"},"models":{"items":{"maxLength":255,"minLength":1,"type":"string"},"maxItems":100,"type":"array","uniqueItems":true},"oauth_client_id":{"type":"string"},"operation_id":{"format":"uuid","type":"string"},"owner":{"type":"string"},"profile":{"type":"string"},"provider_id":{"maxLength":63,"minLength":1,"type":"string"},"readiness":{"enum":["configured","unavailable"],"type":"string"},"route_id":{"format":"uuid","type":"string"},"runtime":{"type":"boolean"},"scopes":{"items":{"maxLength":255,"minLength":1,"type":"string"},"maxItems":100,"type":"array","uniqueItems":true},"state":{"enum":["provisioning","uncertain","active","revoking","revoked"],"type":"string"},"uncertain_effects":{"type":"integer"},"version":{"type":"integer"}},"required":["id","component_id","route_id","provider_id","kind","state","version","readiness","uncertain_effects","operation_id"],"type":"object"},"Principal":{"additionalProperties":false,"properties":{"actor":{"additionalProperties":false,"properties":{"id":{"type":"string"},"kind":{"const":"oauth_subject"}},"required":["kind","id"],"type":"object"},"delegated_user":{"properties":{"issuer":{"type":"string"},"subject":{"type":"string"}},"type":["object","null"]},"issuer":{"type":"string"},"oauth_client_id":{"type":"string"},"owner":{"type":["string","null"]},"owner_authorizer":{"type":["string","null"]},"platform_admin":{"description":"Operator-configured administrator identity. Admission management also requires core:admission:admin scope.","type":"boolean"},"runtime_principal":{"type":["string","null"]},"scopes":{"items":{"type":"string"},"type":"array"},"subject":{"type":"string"}},"required":["issuer","subject","oauth_client_id","actor","owner","owner_authorizer","runtime_principal","scopes"],"type":"object"},"Deployments":{"properties":{"items":{"items":{"$ref":"#/components/schemas/Deployment"},"type":"array"},"next_cursor":{"type":["string","null"]}},"required":["items","next_cursor"],"type":"object"},"AppRelationshipWrite":{"additionalProperties":false,"properties":{"object":{"maxLength":161,"pattern":"^[a-z][a-z0-9_]{0,31}:[A-Za-z0-9_-]{1,128}$","type":"string"},"present":{"type":"boolean"},"relation":{"enum":["reader","writer"],"type":"string"},"subject":{"maxLength":255,"minLength":1,"type":"string"}},"required":["object","relation","subject","present"],"type":"object"},"AdmissionEntry":{"additionalProperties":false,"properties":{"id":{"format":"uuid","type":["string","null"]},"kind":{"enum":["email","domain"],"type":"string"},"source":{"enum":["base","managed"],"type":"string"},"value":{"type":"string"},"version":{"minimum":1,"type":["integer","null"]}},"required":["id","kind","value","source","version"],"type":"object"}},"securitySchemes":{"coreOAuth":{"description":"Use the authorization server discovered through protected-resource metadata. This placeholder URL is resolved relative to Core discovery; deployments publish the configured issuer in discovery.","flows":{"authorizationCode":{"authorizationUrl":"https://auth.botfolio.com/realms/newday/protocol/openid-connect/auth","scopes":{"core:batteries:write":"Explicit configured battery write","core:batteries:read":"Explicit configured battery read","core:catalog:write":"Create and rename owned personal catalog.","core:databases:write":"Core database write within exact resource ownership.","core:runtime:delegate":"Explicitly delegate only the authenticated OAuth subject to an exact runtime dependency.","core:secrets:write":"Owned Secret write","core:app-batteries:sync":"App business-object batteries sync","core:routes:write":"Owner Route write","core:runtime:read":"read scoped Core runtime/dependency authority","core:repositories:read":"Read owned repositories.","core:access:read":"Read owned Route grants and groups","core:native:read":"Read explicitly bound native release metadata.","core:routes:read":"Owner Route read","core:app-batteries:read":"App business-object batteries read","core:compute:read":"Owned generic Kata workload read.","core:environments:access:write":"Explicit private Environment SSH access write; exact actor/resource/peer authorization is also required.","core:admission:admin":"Manage developer email/domain admission; restricted to operator-configured administrators.","core:runtime:revoke":"revoke scoped Core runtime/dependency authority","core:catalog:read":"Read owned personal catalog.","core:runtime:bind":"bind scoped Core runtime/dependency authority","core:operations:cancel":"Request cancellation of owned operations before external work starts.","core:native:release":"Authorize exact artifact signing, publication and selected-device delivery under current Publisher authority.","core:read":"Read identity and discover capabilities","core:routes:credential":"Owner Route credential","core:operations:read":"Read operations owned by this subject and client","core:batteries:use":"Explicit configured battery use","core:repositories:credential":"Issue or revoke short-lived native Git/OCI credentials.","core:databases:read":"Core database read within exact resource ownership.","core:databases:credential":"Core database credential within exact resource ownership.","core:audit:read":"Read own actor and owned-resource audit metadata.","core:dependencies:read":"read scoped Core runtime/dependency authority","core:secrets:use":"Owned Secret use","core:secrets:revoke":"Owned Secret revoke","core:secrets:read":"Owned Secret read","core:dependencies:authorize":"authorize scoped Core runtime/dependency authority","core:app-batteries:write":"App business-object batteries write","core:catalog:delete":"Delete empty owned catalog resources.","core:environments:access:read":"Explicit private Environment SSH access read; exact actor/resource/peer authorization is also required.","core:compute:write":"Owned generic Kata workload write.","core:databases:migrate":"Core database migrate within exact resource ownership.","core:access:write":"Manage owned Route grants and groups","core:dependencies:write":"write scoped Core runtime/dependency authority","core:repositories:write":"Provision repository and record inactive one-way mirror intent."},"tokenUrl":"https://auth.botfolio.com/realms/newday/protocol/openid-connect/token"},"clientCredentials":{"scopes":{"core:batteries:write":"Explicit configured battery write","core:batteries:read":"Explicit configured battery read","core:catalog:write":"Create and rename owned personal catalog.","core:databases:write":"Core database write within exact resource ownership.","core:runtime:delegate":"Explicitly delegate only the authenticated OAuth subject to an exact runtime dependency.","core:secrets:write":"Owned Secret write","core:app-batteries:sync":"App business-object batteries sync","core:routes:write":"Owner Route write","core:runtime:read":"read scoped Core runtime/dependency authority","core:repositories:read":"Read owned repositories.","core:access:read":"Read owned Route grants and groups","core:native:read":"Read explicitly bound native release metadata.","core:routes:read":"Owner Route read","core:app-batteries:read":"App business-object batteries read","core:compute:read":"Owned generic Kata workload read.","core:environments:access:write":"Explicit private Environment SSH access write; exact actor/resource/peer authorization is also required.","core:admission:admin":"Manage developer email/domain admission; restricted to operator-configured administrators.","core:runtime:revoke":"revoke scoped Core runtime/dependency authority","core:catalog:read":"Read owned personal catalog.","core:runtime:bind":"bind scoped Core runtime/dependency authority","core:operations:cancel":"Request cancellation of owned operations before external work starts.","core:native:release":"Authorize exact artifact signing, publication and selected-device delivery under current Publisher authority.","core:read":"Read identity and discover capabilities","core:routes:credential":"Owner Route credential","core:operations:read":"Read operations owned by this subject and client","core:batteries:use":"Explicit configured battery use","core:repositories:credential":"Issue or revoke short-lived native Git/OCI credentials.","core:databases:read":"Core database read within exact resource ownership.","core:databases:credential":"Core database credential within exact resource ownership.","core:audit:read":"Read own actor and owned-resource audit metadata.","core:dependencies:read":"read scoped Core runtime/dependency authority","core:secrets:use":"Owned Secret use","core:secrets:revoke":"Owned Secret revoke","core:secrets:read":"Owned Secret read","core:dependencies:authorize":"authorize scoped Core runtime/dependency authority","core:app-batteries:write":"App business-object batteries write","core:catalog:delete":"Delete empty owned catalog resources.","core:environments:access:read":"Explicit private Environment SSH access read; exact actor/resource/peer authorization is also required.","core:compute:write":"Owned generic Kata workload write.","core:databases:migrate":"Core database migrate within exact resource ownership.","core:access:write":"Manage owned Route grants and groups","core:dependencies:write":"write scoped Core runtime/dependency authority","core:repositories:write":"Provision repository and record inactive one-way mirror intent."},"tokenUrl":"https://auth.botfolio.com/realms/newday/protocol/openid-connect/token"}},"type":"oauth2"}}},"info":{"description":"Core OAuth resource server, personal Space/App/Component catalog, durable repository provisioning, inactive mirror intent, one-time scoped Git/OCI credentials and immutable manifest verification. Creates require Idempotency-Key; mutable catalog and mirror records require If-Match. Native protocols use repository/action/audience/expiry checks at the Core gateway. Production enablement is a separate operator gate. Core database provisioning, explicit RLS enrollment, one-time scoped SQL credentials and unknown backup status require a dedicated configured battery cluster. Generic Kata Jobs and Environments require explicit operator configuration. Jobs support scoped database migration bindings. Jobs and Environments support exact owned artifact references and execution-scoped private image pull credentials. Environments support fresh runtime database bindings on every start. Owned write-only Secret versions support exact scoped execution references, rotation and revocation; metadata is redacted and value upload is REST/CLI only. Immutable web Deployments use owned artifact bindings, durable ready selection and automatic same-revision lease replacement. Owner-only Routes use a distinct HTTPS guest origin and short-lived route-only credentials; named-user/group sharing remains deferred.","title":"Newday Core API","version":"1.2.0"},"openapi":"3.1.0","paths":{"/v1/app-batteries/{id}/objects":{"get":{"operationId":"listAppObjects","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"query","name":"cursor","required":false,"schema":{"maxLength":255,"minLength":1,"type":"string"}},{"in":"query","name":"relation","required":true,"schema":{"enum":["reader","writer"],"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AppObjectPage"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:app-batteries:read"]}],"summary":"list App Objects","x-newday-cli":{"command":["app-battery","objects"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"list_app_objects"}}},"/v1/components/{id}":{"delete":{"description":"Requires all child resources retired and execution cleanup complete. Secret versions must all be revoked with erased ciphertext; execution Secret bindings must be closed with erased ciphertext. Secret metadata, original Component coordinates, version history and audit records are retained internally after deletion. Active or unerased custody returns resource_in_use. Retired Secrets are no longer available through catalog or runtime interfaces.","operationId":"deleteComponent","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"maxLength":24,"pattern":"^\"[1-9][0-9]*\"$","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CatalogDeleted"}}},"description":"Successful response. Creates replay the same result. Versioned resources expose ETag."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:catalog:delete"]}],"summary":"Delete personal Component and retire fully revoked Secret metadata.","x-newday-cli":{"command":["component","delete"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"delete_component"}},"get":{"operationId":"getComponent","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Component"}}},"description":"Successful response. Creates replay the same result. Versioned resources expose ETag."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:catalog:read"]}],"summary":"Get personal Component.","x-newday-cli":{"command":["component","get"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"get_component"}},"patch":{"operationId":"updateComponent","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"maxLength":24,"pattern":"^\"[1-9][0-9]*\"$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CatalogUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Component"}}},"description":"Successful response. Creates replay the same result. Versioned resources expose ETag."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:catalog:write"]}],"summary":"Update personal Component.","x-newday-cli":{"command":["component","update"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"update_component"}}},"/v1/databases/{id}":{"delete":{"operationId":"deleteDatabase","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"pattern":"^[ -~]+$","type":"string"}}],"responses":{"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Operation"}}},"description":"Core database response. No secret appears in an Operation."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:databases:write","core:catalog:delete"]}],"summary":"Permanently retire database storage after dependent runtimes are deleted; preserve Operation history.","x-newday-cli":{"command":["db","delete"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"database_delete"}},"get":{"operationId":"getDatabase","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Database"}}},"description":"Core database response. No secret appears in an Operation."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:databases:read"]}],"summary":"Read database provisioning state and the RLS identity contract.","x-newday-cli":{"command":["db","get"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"get_database"}}},"/v1/access-groups/{id}":{"delete":{"operationId":"deleteAccessGroup","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessGroup"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:access:write"]}],"summary":"Revoke an owned group and its Route access.","x-newday-cli":{"command":["access-group","delete"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"access_group_delete"}},"get":{"operationId":"getAccessGroup","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessGroup"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:access:read"]}],"summary":"Read an owned access group.","x-newday-cli":{"command":["access-group","get"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"access_group_get"}},"put":{"operationId":"updateAccessGroup","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"members":{"items":{"maxLength":255,"minLength":1,"pattern":"^[^\\s]+$","type":"string"},"maxItems":50,"type":"array","uniqueItems":true},"name":{"maxLength":80,"minLength":1,"type":"string"}},"required":["name","members"],"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessGroup"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:access:write"]}],"summary":"Replace owned group members with expected version; invalidates prior shared credentials.","x-newday-cli":{"command":["access-group","update"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"access_group_update"}}},"/v1/configured-batteries/{id}/revoke":{"post":{"operationId":"revokeConfiguredBattery","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}}],"responses":{"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Operation"}}},"description":"Accepted durable Operation. Poll its Location; cleanup uncertainty is separate from immutable terminal outcome.","headers":{"Location":{"description":"Operation URL","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:batteries:write"]}],"summary":"Revoke explicitly configured Core battery resources.","x-newday-cli":{"command":["battery","revoke"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"revoke_configured_battery"}}},"/v1/app-batteries/{id}":{"get":{"operationId":"getAppBattery","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AppBattery"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:app-batteries:read"]}],"summary":"get App Battery","x-newday-cli":{"command":["app-battery","get"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"get_app_battery"}},"put":{"operationId":"updateAppBattery","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AppBatteryUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AppBattery"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:app-batteries:write"]}],"summary":"update App Battery","x-newday-cli":{"command":["app-battery","update"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"update_app_battery"}}},"/v1/runtime-bindings/{id}/revoke":{"post":{"operationId":"revokeRuntimeBinding","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RuntimeRevocation"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:runtime:revoke"]}],"summary":"Revoke an exact execution bootstrap and both-sided capabilities.","x-newday-cli":{"command":["runtime","revoke"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"runtime_revoke"}}},"/v1/native-release-bindings/{id}":{"get":{"operationId":"getNativeReleaseBinding","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NativeReleaseBinding"}}},"description":"Metadata"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:native:read"]}],"summary":"binding native release resources.","x-newday-cli":{"command":["native-release","binding"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"get_native_release_binding"}}},"/v1/components/{parent_id}/deployments":{"get":{"operationId":"listDeployments","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"query","name":"cursor","required":false,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Deployments"}}},"description":"Owned compute state or durable operation."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:compute:read"]}],"summary":"List owned immutable web revisions and current execution health.","x-newday-cli":{"command":["deployment","list"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"list_deployments"}},"post":{"operationId":"createDeployment","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"pattern":"^[ -~]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebSpec"}}},"required":true},"responses":{"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Operation"}}},"description":"Owned compute state or durable operation."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:compute:write"]}],"summary":"Create an immutable owned Kata web revision and durable readiness Operation. Owned artifact binding is required. Optional same-Component database binding takes database_id only and issues fresh runtime credentials; core:databases:credential is required. Exact Secret versions require core:secrets:use. Startup has a bounded deadline and inactivity guard. Healthy executions automatically replace their 24-hour credential lease before expiry; readiness and cleanup remain observable separately.","x-newday-cli":{"command":["deployment","create"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"create_deployment"}}},"/.well-known/oauth-protected-resource/v1/mcp":{"get":{"operationId":"getCoreMcpOAuthMetadata","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProtectedResourceMetadata"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[],"summary":"Discover the Core resource from the MCP endpoint."}},"/v1/databases/{id}/credentials/{credential_id}/claim":{"post":{"operationId":"claimDatabaseCredential","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"path","name":"credential_id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DatabaseCredentialClaim"}}},"description":"Core database response. No secret appears in an Operation."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:databases:credential"]}],"summary":"Retrieve the issued SQL password once. A lost reply cannot be replayed; issue a replacement and revoke the old credential.","x-newday-cli":{"command":["db","credential","claim"],"enabled":true},"x-newday-mcp":{"enabled":false,"name":"claim_database_credential"}}},"/v1/routes/{id}/credentials":{"post":{"operationId":"createRouteCredential","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"ttl_seconds":{"maximum":900,"minimum":1,"type":"integer"}},"required":["ttl_seconds"],"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RouteCredential"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:routes:credential"]}],"summary":"Issue a Route credential for the authenticated owner or currently granted subject; secret returned once.","x-newday-cli":{"command":["route","credential"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"route_credential"}}},"/v1/native-release-bindings/{id}/releases":{"post":{"operationId":"createNativeRelease","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NativeReleaseCreate"}}},"required":true},"responses":{"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Operation"}}},"description":"Durable Operation","headers":{"Location":{"schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:native:release"]}],"summary":"create native release resources.","x-newday-cli":{"command":["native-release","create"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"create_native_release"}}},"/v1/routes/{id}/credentials/{credential_id}":{"delete":{"operationId":"revokeRouteCredential","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"path","name":"credential_id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"id":{"format":"uuid","type":"string"},"revoked":{"type":"boolean"}},"required":["id","revoked"],"type":"object"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:routes:credential"]}],"summary":"Immediately revoke an exact Route credential and its browser session.","x-newday-cli":{"command":["route","revoke"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"route_revoke"}}},"/v1/routes/{id}/access":{"get":{"operationId":"getRouteAccess","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RouteAccess"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:access:read"]}],"summary":"Read the owned Route grant policy.","x-newday-cli":{"command":["route","access-get"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"route_access_get"}},"put":{"operationId":"setRouteAccess","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"group_ids":{"items":{"format":"uuid","type":"string"},"maxItems":16,"type":"array","uniqueItems":true},"users":{"items":{"maxLength":255,"minLength":1,"pattern":"^[^\\s]+$","type":"string"},"maxItems":32,"type":"array","uniqueItems":true}},"required":["users","group_ids"],"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RouteAccess"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:access:write"]}],"summary":"Replace owned Route grants with expected policy version; invalidates prior shared credentials.","x-newday-cli":{"command":["route","access-set"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"route_access_set"}}},"/v1/apps/{id}":{"delete":{"operationId":"deleteApp","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"maxLength":24,"pattern":"^\"[1-9][0-9]*\"$","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CatalogDeleted"}}},"description":"Successful response. Creates replay the same result. Versioned resources expose ETag."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:catalog:delete"]}],"summary":"Delete personal App.","x-newday-cli":{"command":["app","delete"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"delete_app"}},"get":{"operationId":"getApp","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/App"}}},"description":"Successful response. Creates replay the same result. Versioned resources expose ETag."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:catalog:read"]}],"summary":"Get personal App.","x-newday-cli":{"command":["app","get"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"get_app"}},"patch":{"operationId":"updateApp","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"maxLength":24,"pattern":"^\"[1-9][0-9]*\"$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CatalogUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/App"}}},"description":"Successful response. Creates replay the same result. Versioned resources expose ETag."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:catalog:write"]}],"summary":"Update personal App.","x-newday-cli":{"command":["app","update"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"update_app"}}},"/v1/configured-batteries/{id}/objects":{"get":{"operationId":"listBlobObjects","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"query","name":"cursor","required":false,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlobObjectPage"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:batteries:read"]}],"summary":"Objects explicitly configured Core battery resources.","x-newday-cli":{"command":["battery","objects"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"list_blob_objects"}},"post":{"operationId":"createBlobObject","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlobObjectCreate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlobObject"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:batteries:write"]}],"summary":"Create object explicitly configured Core battery resources.","x-newday-cli":{"command":["battery","create-object"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"create_blob_object"}}},"/v1/components/{parent_id}/dependencies":{"get":{"operationId":"listDependencies","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"query","name":"cursor","required":false,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Dependencies"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:dependencies:read"]}],"summary":"List owned dependency contracts.","x-newday-cli":{"command":["dependency","list"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"dependency_list"}},"post":{"operationId":"createDependency","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DependencyInput"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Dependency"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:dependencies:write","core:dependencies:authorize"]}],"summary":"Authorize an explicit same-Space selected-runtime API or MCP dependency.","x-newday-cli":{"command":["dependency","create"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"dependency_create"}}},"/v1/databases/{id}/credentials":{"post":{"operationId":"issueDatabaseCredential","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"pattern":"^[ -~]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DatabaseCredentialRequest"}}},"required":true},"responses":{"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Operation"}}},"description":"Core database response. No secret appears in an Operation."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:databases:credential"]}],"summary":"Issue a short-lived SQL login asynchronously. Migration role additionally requires core:databases:migrate. Expiry applies to password login; existing sessions require cleanup or explicit revocation.","x-newday-cli":{"command":["db","credential","issue"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"issue_database_credential"}}},"/v1/repositories/{id}":{"delete":{"operationId":"deleteRepository","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"pattern":"^[ -~]+$","type":"string"}}],"responses":{"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Operation"}}},"description":"Core database response. No secret appears in an Operation."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:repositories:write","core:catalog:delete"]}],"summary":"Permanently retire repository storage after dependent runtimes are deleted; preserve Operation history.","x-newday-cli":{"command":["repo","delete"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"repository_delete"}},"get":{"operationId":"getRepository","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Repository"}}},"description":"Successful resource response. Repository creation returns 202; credentials return secret only once."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:repositories:read"]}],"summary":"Get repository.","x-newday-cli":{"command":["repo","get"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"get_repository"}}},"/v1/components/{parent_id}/service-capabilities":{"post":{"operationId":"publishServiceCapability","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServiceCapabilityInput"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServiceCapability"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:catalog:write"]}],"summary":"Publish an immutable same-owner same-Space service capability.","x-newday-cli":{"command":["service-capability","publish"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"service_capability_publish"}}},"/v1/configured-batteries/{id}/consents":{"post":{"operationId":"createConnectionConsent","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BatteryCredential"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:batteries:use"]}],"summary":"Consent explicitly configured Core battery resources.","x-newday-cli":{"command":["battery","consent"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"create_connection_consent"}}},"/v1/dependencies/{id}/capabilities/{credential_id}":{"delete":{"operationId":"revokeRuntimeCapability","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"path","name":"credential_id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RuntimeRevocation"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:runtime:revoke"]}],"summary":"Revoke an exact issued dependency capability.","x-newday-cli":{"command":["dependency","revoke-capability"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"dependency_revoke_capability"}}},"/v1/components/{parent_id}/databases":{"get":{"operationId":"listDatabases","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Databases"}}},"description":"Core database response. No secret appears in an Operation."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:databases:read"]}],"summary":"List the authorized Component database.","x-newday-cli":{"command":["db","list"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"list_databases"}},"post":{"operationId":"createDatabase","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"pattern":"^[ -~]+$","type":"string"}}],"responses":{"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Operation"}}},"description":"Core database response. No secret appears in an Operation."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:databases:write"]}],"summary":"Provision an isolated database asynchronously; one database per Component.","x-newday-cli":{"command":["db","create"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"create_database"}}},"/v1/components/{parent_id}/secrets":{"get":{"operationId":"listSecrets","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"query","name":"cursor","required":false,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SecretList"}}},"description":"Redacted owned metadata. Revoked means new use is denied; execution cleanup is observed on the bound Job or Environment."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:secrets:read"]}],"summary":"List owned Component Secret metadata.","x-newday-cli":{"command":["secret","list"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"list_secrets"}},"post":{"operationId":"createSecret","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"pattern":"^[ -~]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"name":{"maxLength":100,"minLength":1,"type":"string"}},"required":["name"],"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Secret"}}},"description":"Redacted owned metadata. Revoked means new use is denied; execution cleanup is observed on the bound Job or Environment."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:secrets:write"]}],"summary":"Create an owned Secret metadata record; upload immutable values separately.","x-newday-cli":{"command":["secret","create"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"create_secret"}}},"/v1/app-batteries/{id}/sync":{"get":{"operationId":"getAppSyncEndpoint","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SyncEndpoint"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:app-batteries:read"]}],"summary":"get App Sync Endpoint","x-newday-cli":{"command":["app-battery","sync"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"get_app_sync_endpoint"}}},"/v1/routes/{id}":{"delete":{"operationId":"deleteRoute","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Route"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:routes:write"]}],"summary":"Disable a Route and immediately deny every credential.","x-newday-cli":{"command":["route","delete"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"route_delete"}},"get":{"operationId":"getRoute","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Route"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:routes:read"]}],"summary":"Observe Route and exact selection.","x-newday-cli":{"command":["route","get"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"route_get"}}},"/v1/environments/{id}/accesses":{"get":{"operationId":"listEnvironmentAccesses","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"query","name":"cursor","required":false,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EnvironmentAccessPage"}}},"description":"Durable operation or authorized private access record."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:environments:access:read"]}],"summary":"List authorized Environment access leases and cleanup tombstones.","x-newday-cli":{"command":["environment-access","list"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"environment_access_list"}},"post":{"operationId":"createEnvironmentAccess","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"pattern":"^[ -~]+$","type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"pattern":"^\"[1-9][0-9]*\"$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"execution_id":{"format":"uuid","type":"string"},"peer_id":{"format":"uuid","type":"string"},"ssh_public_key":{"maxLength":512,"minLength":1,"type":"string"},"ttl_seconds":{"maximum":900,"minimum":1,"type":"integer"}},"required":["execution_id","peer_id","ssh_public_key","ttl_seconds"],"type":"object"}}},"required":true},"responses":{"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Operation"}}},"description":"Durable operation or authorized private access record."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:environments:access:write"]}],"summary":"Create an execution, actor, OAuth token, peer and SSH-key bound private access lease. Requires an explicitly declared running Environment and exact ETag. The trusted gateway authenticates SSH; no enrollment or provider keys are returned.","x-newday-cli":{"command":["environment-access","create"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"environment_access_create"}}},"/v1/configured-batteries/{id}/objects/{object_id}":{"delete":{"operationId":"deleteBlobObject","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"path","name":"object_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}}],"responses":{"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Operation"}}},"description":"Accepted durable Operation. Poll its Location; cleanup uncertainty is separate from immutable terminal outcome.","headers":{"Location":{"description":"Operation URL","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:batteries:write"]}],"summary":"Delete object explicitly configured Core battery resources.","x-newday-cli":{"command":["battery","delete-object"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"delete_blob_object"}},"get":{"operationId":"getBlobObject","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"path","name":"object_id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlobObject"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:batteries:read"]}],"summary":"Get object explicitly configured Core battery resources.","x-newday-cli":{"command":["battery","get-object"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"get_blob_object"}}},"/v1/databases/{id}/credentials/{credential_id}":{"delete":{"operationId":"revokeDatabaseCredential","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"path","name":"credential_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"pattern":"^[ -~]+$","type":"string"}}],"responses":{"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Operation"}}},"description":"Core database response. No secret appears in an Operation."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:databases:credential"]}],"summary":"Revoke SQL login and observe termination of active sessions asynchronously.","x-newday-cli":{"command":["db","credential","revoke"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"revoke_database_credential"}},"get":{"operationId":"getDatabaseCredential","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"path","name":"credential_id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DatabaseCredential"}}},"description":"Core database response. No secret appears in an Operation."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:databases:credential"]}],"summary":"Read the issuing OAuth client credential metadata; never returns a secret.","x-newday-cli":{"command":["db","credential","get"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"get_database_credential"}}},"/v1/components/{parent_id}/native-release-bindings":{"get":{"operationId":"listNativeReleaseBindings","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NativeReleaseBindingPage"}}},"description":"Metadata"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:native:read"]}],"summary":"bindings native release resources.","x-newday-cli":{"command":["native-release","bindings"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"list_native_release_bindings"}}},"/v1/environment-access-peers":{"get":{"operationId":"listEnvironmentAccessPeers","parameters":[{"in":"query","name":"cursor","required":false,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EnvironmentAccessPeerPage"}}},"description":"Durable operation or authorized private access record."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:environments:access:read"]}],"summary":"List only eligible operator-mapped peers for the actual actor.","x-newday-cli":{"command":["environment-access-peer","list"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"environment_access_peer_list"}}},"/v1/components/{parent_id}/environments":{"get":{"operationId":"listEnvironments","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"query","name":"cursor","required":false,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ComputeResources"}}},"description":"Owned compute state or durable operation."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:compute:read"]}],"summary":"List owned Kata environment. Network follows the admitted none or database policy; execution deadlines and 30-second inactivity bounds apply. Cleanup is observed separately from terminal outcome.","x-newday-cli":{"command":["environment","list"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"list_environments"}},"post":{"operationId":"createEnvironment","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"pattern":"^[ -~]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ComputeSpec"},{"$ref":"#/components/schemas/DevelopmentSpec"}]}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ComputeResource"}}},"description":"Owned compute state or durable operation."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:compute:write"]}],"summary":"Create owned Kata environment. Network follows the admitted none or database policy; execution deadlines and 30-second inactivity bounds apply. Cleanup is observed separately from terminal outcome. Database networking accepts database_binding with only an exact same-Component database_id and requires core:databases:credential. Each start reauthorizes and creates a fresh runtime-only SQL credential in encrypted execution custody; no public password claim. Cleanup revokes login and active sessions before restart. SQL-only networking, RLS, runtime DDL denial and existing deadlines apply.","x-newday-cli":{"command":["environment","create"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"create_environment"}}},"/v1/routes/{id}/selection":{"put":{"operationId":"selectRoute","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"oneOf":[{"additionalProperties":false,"properties":{"deployment_id":{"format":"uuid","type":"string"},"execution_id":{"format":"uuid","type":"string"}},"required":["deployment_id","execution_id"],"type":"object"},{"additionalProperties":false,"properties":{"environment_id":{"format":"uuid","type":"string"},"execution_id":{"format":"uuid","type":"string"}},"required":["environment_id","execution_id"],"type":"object"}]}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Route"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:routes:write"]}],"summary":"Select or roll back to an exact currently HTTP-ready Deployment execution.","x-newday-cli":{"command":["route","select"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"route_select"}}},"/v1/spaces/{id}":{"delete":{"operationId":"deleteSpace","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"maxLength":24,"pattern":"^\"[1-9][0-9]*\"$","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CatalogDeleted"}}},"description":"Successful response. Creates replay the same result. Versioned resources expose ETag."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:catalog:delete"]}],"summary":"Delete personal Space.","x-newday-cli":{"command":["space","delete"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"delete_space"}},"get":{"operationId":"getSpace","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Space"}}},"description":"Successful response. Creates replay the same result. Versioned resources expose ETag."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:catalog:read"]}],"summary":"Get personal Space.","x-newday-cli":{"command":["space","get"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"get_space"}},"patch":{"operationId":"updateSpace","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"maxLength":24,"pattern":"^\"[1-9][0-9]*\"$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CatalogUpdate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Space"}}},"description":"Successful response. Creates replay the same result. Versioned resources expose ETag."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:catalog:write"]}],"summary":"Update personal Space.","x-newday-cli":{"command":["space","update"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"update_space"}}},"/v1/secret-versions/{id}":{"get":{"operationId":"getSecretVersion","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SecretVersion"}}},"description":"Redacted owned metadata. Revoked means new use is denied; execution cleanup is observed on the bound Job or Environment."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:secrets:read"]}],"summary":"Read redacted Secret version metadata.","x-newday-cli":{"command":["secret","version","get"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"get_secret_version"}}},"/v1/battery-providers":{"get":{"operationId":"listBatteryProviders","parameters":[],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BatteryProviderPage"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:batteries:read"]}],"summary":"Providers explicitly configured Core battery resources.","x-newday-cli":{"command":["battery","providers"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"list_battery_providers"}}},"/v1/capabilities":{"get":{"operationId":"listCapabilities","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Capabilities"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:read"]}],"summary":"List operations allowed by the current token scopes. Resource authorization is still required.","x-newday-cli":{"command":["capabilities"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"list_capabilities"}}},"/v1/app-batteries/{id}/relationships":{"put":{"operationId":"writeAppRelationship","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AppRelationshipWrite"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AppRelationshipResult"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:app-batteries:write"]}],"summary":"write App Relationship","x-newday-cli":{"command":["app-battery","write"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"write_app_relationship"}}},"/v1/environment-accesses/{id}":{"delete":{"operationId":"revokeEnvironmentAccess","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"pattern":"^[ -~]+$","type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"pattern":"^\"[1-9][0-9]*\"$","type":"string"}}],"responses":{"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Operation"}}},"description":"Durable operation or authorized private access record."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:environments:access:write"]}],"summary":"Request closure of new and established SSH sessions and exact provider cleanup. Completion requires observed cleanup; a request alone does not claim denial.","x-newday-cli":{"command":["environment-access","revoke"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"environment_access_revoke"}},"get":{"operationId":"getEnvironmentAccess","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EnvironmentAccess"}}},"description":"Durable operation or authorized private access record."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:environments:access:read"]}],"summary":"Observe the access state and verified SSH coordinates only when ready.","x-newday-cli":{"command":["environment-access","get"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"environment_access_get"}}},"/v1/spaces/{parent_id}/apps":{"get":{"operationId":"listApps","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"query","name":"cursor","required":false,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Apps"}}},"description":"Successful response. Creates replay the same result. Versioned resources expose ETag."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:catalog:read"]}],"summary":"List personal Apps.","x-newday-cli":{"command":["app","list"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"list_apps"}},"post":{"operationId":"createApp","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"pattern":"^[ -~]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AppCreate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/App"}}},"description":"Successful response. Creates replay the same result. Versioned resources expose ETag."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:catalog:write"]}],"summary":"Create personal App.","x-newday-cli":{"command":["app","create"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"create_app"}}},"/v1/configured-batteries/{id}":{"get":{"operationId":"getConfiguredBattery","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConfiguredBattery"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:batteries:read"]}],"summary":"Get explicitly configured Core battery resources.","x-newday-cli":{"command":["battery","get"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"get_configured_battery"}}},"/v1/mcp":{"delete":{"operationId":"deleteCoreMcpTransport","responses":{"405":{"$ref":"#/components/responses/Problem"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":[]}],"summary":"No standalone SSE session is provided; use POST for stateless MCP."},"get":{"operationId":"getCoreMcpTransport","responses":{"405":{"$ref":"#/components/responses/Problem"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":[]}],"summary":"No standalone SSE session is provided; use POST for stateless MCP."},"post":{"operationId":"callCoreMcp","requestBody":{"content":{"application/json":{"schema":{"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":"JSON-RPC response"},"202":{"description":"Notification accepted"},"400":{"content":{"application/json":{"schema":{"required":["jsonrpc","id","error"],"type":"object"}},"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}},"description":"Invalid JSON-RPC envelope or invalid Core input. Protocol errors retain JSON-RPC; Core errors use Problem."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":[]}],"summary":"Stateless MCP Streamable HTTP transport (2025-11-25).","x-newday-cli":{"enabled":false},"x-newday-mcp":{"enabled":false}}},"/v1/configured-batteries/{id}/objects/{object_id}/credentials":{"post":{"operationId":"createBlobCredential","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"path","name":"object_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlobCredentialCreate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BatteryCredential"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:batteries:write"]}],"summary":"Object credential explicitly configured Core battery resources.","x-newday-cli":{"command":["battery","object-credential"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"create_blob_credential"}}},"/v1/repositories/{id}/credentials/{credential_id}":{"delete":{"operationId":"revokeRepositoryCredential","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"path","name":"credential_id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CredentialRevoked"}}},"description":"Successful resource response. Repository creation returns 202; credentials return secret only once."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:repositories:credential"]}],"summary":"Revoke repository credential.","x-newday-cli":{"command":["repo","revoke"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"revoke_repository_credential"}}},"/v1/components/{parent_id}/jobs":{"get":{"operationId":"listJobs","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"query","name":"cursor","required":false,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ComputeResources"}}},"description":"Owned compute state or durable operation."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:compute:read"]}],"summary":"List owned Kata job. Network follows the admitted none or database policy; execution deadlines and 30-second inactivity bounds apply. Cleanup is observed separately from terminal outcome.","x-newday-cli":{"command":["job","list"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"list_jobs"}},"post":{"operationId":"createJob","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"pattern":"^[ -~]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ComputeSpec"}}},"required":true},"responses":{"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Operation"}}},"description":"Owned compute state or durable operation."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:compute:write"]}],"summary":"Create owned Kata job. Network follows the admitted none or database policy; execution deadlines and 30-second inactivity bounds apply. Cleanup is observed separately from terminal outcome. Database networking requires database_binding with exact same-Component database_id and unclaimed migration credential_id, owned by this OAuth client, plus core:databases:credential and core:databases:migrate scopes. The credential must outlive the Job deadline. Core injects PGHOST/PGHOSTADDR/PGPORT/PGDATABASE/PGUSER/PGPASSWORD and verified-TLS CA settings, consumes the credential claim, and revokes it during cleanup. Job bindings require credential_id and operator configuration.","x-newday-cli":{"command":["job","create"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"create_job"}}},"/v1/jobs/{id}":{"delete":{"operationId":"deleteJob","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"pattern":"^[ -~]+$","type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"pattern":"^\"[1-9][0-9]*\"$","type":"string"}}],"responses":{"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Operation"}}},"description":"Owned compute state or durable operation."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:compute:write"]}],"summary":"Delete owned Kata job. Network follows the admitted none or database policy; execution deadlines and 30-second inactivity bounds apply. Cleanup is observed separately from terminal outcome.","x-newday-cli":{"command":["job","delete"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"delete_job"}},"get":{"operationId":"getJob","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ComputeResource"}}},"description":"Owned compute state or durable operation."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:compute:read"]}],"summary":"Get owned Kata job. Network follows the admitted none or database policy; execution deadlines and 30-second inactivity bounds apply. Cleanup is observed separately from terminal outcome.","x-newday-cli":{"command":["job","get"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"get_job"}}},"/v1/native-releases/{id}":{"get":{"operationId":"getNativeRelease","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NativeRelease"}}},"description":"Metadata"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:native:read"]}],"summary":"get native release resources.","x-newday-cli":{"command":["native-release","get"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"get_native_release"}}},"/v1/spaces/{parent_id}/service-capabilities":{"get":{"operationId":"listServiceCapabilities","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"query","name":"capability","required":false,"schema":{"maxLength":128,"minLength":1,"not":{"pattern":"[\\r\\n]"},"pattern":"^[a-z][a-z0-9]*(?:[._-][a-z0-9]+)*$","type":"string"}},{"in":"query","name":"capability_version","required":false,"schema":{"maxLength":64,"not":{"pattern":"[\\r\\n]"},"pattern":"^(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)$","type":"string"}},{"in":"query","name":"protocol","required":false,"schema":{"enum":["http-get","stateless-json-mcp"]}},{"in":"query","name":"state","required":false,"schema":{"enum":["published","withdrawn"]}},{"in":"query","name":"cursor","required":false,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServiceCapabilityPage"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:catalog:read"]}],"summary":"List an immutable same-owner same-Space service capability.","x-newday-cli":{"command":["service-capability","list"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"service_capability_list"}}},"/v1/operations/{id}":{"delete":{"operationId":"cancelOperation","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Operation"}}},"description":"Operation status"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:operations:cancel"]}],"summary":"Cancel repository provisioning before external work starts; running work returns 412 and terminal work returns its unchanged result.","x-newday-cli":{"command":["operation","cancel"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"cancel_operation"}},"get":{"operationId":"getOperation","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Operation"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:operations:read"]}],"summary":"Read an operation belonging to this exact issuer, subject and OAuth client.","x-newday-cli":{"command":["operation","get"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"get_operation"}}},"/v1/deployments/{id}/restart":{"post":{"operationId":"restartDeployment","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"pattern":"^[ -~]+$","type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"pattern":"^\"[1-9][0-9]*\"$","type":"string"}}],"responses":{"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Operation"}}},"description":"Owned compute state or durable operation."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:compute:write"]}],"summary":"Restart an immutable Deployment after observed cleanup with fresh execution credentials.","x-newday-cli":{"command":["deployment","restart"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"deployment_restart"}}},"/v1/repositories/{id}/manifests/{digest}":{"get":{"operationId":"resolveRepositoryManifest","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"path","name":"digest","required":true,"schema":{"pattern":"^sha256:[0-9a-f]{64}$","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResolvedManifest"}}},"description":"Successful resource response. Repository creation returns 202; credentials return secret only once."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:repositories:read"]}],"summary":"Verify an exact immutable OCI manifest by hashing its native Forgejo bytes.","x-newday-cli":{"command":["repo","resolve"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"resolve_repository_manifest"}}},"/v1/configured-batteries/{id}/grants":{"get":{"operationId":"listConnectionGrants","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"query","name":"cursor","required":false,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionGrantPage"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:batteries:use"]}],"summary":"Grants explicitly configured Core battery resources.","x-newday-cli":{"command":["battery","grants"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"list_connection_grants"}}},"/v1/admission/entries":{"get":{"operationId":"listAdmissionEntries","parameters":[],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AdmissionEntries"}}},"description":"Successful response. Creates replay the same result. Versioned resources expose ETag."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:admission:admin"]}],"summary":"List immutable base and managed developer admission entries. Administrator only.","x-newday-cli":{"command":["admission","list"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"list_admission_entries"}},"post":{"operationId":"createAdmissionEntry","parameters":[{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"pattern":"^[ -~]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AdmissionCreate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AdmissionEntry"}}},"description":"Successful response. Creates replay the same result. Versioned resources expose ETag."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:admission:admin"]}],"summary":"Add a developer email or exact domain rule. Administrator only.","x-newday-cli":{"command":["admission","add"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"create_admission_entry"}}},"/v1/apps/{parent_id}/components":{"get":{"operationId":"listComponents","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"query","name":"cursor","required":false,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Components"}}},"description":"Successful response. Creates replay the same result. Versioned resources expose ETag."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:catalog:read"]}],"summary":"List personal Components.","x-newday-cli":{"command":["component","list"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"list_components"}},"post":{"operationId":"createComponent","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"pattern":"^[ -~]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CatalogCreate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Component"}}},"description":"Successful response. Creates replay the same result. Versioned resources expose ETag."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:catalog:write"]}],"summary":"Create personal Component.","x-newday-cli":{"command":["component","create"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"create_component"}}},"/v1/admission/check":{"get":{"operationId":"checkAdmission","parameters":[{"in":"query","name":"email","required":true,"schema":{"maxLength":320,"minLength":1,"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AdmissionCheck"}}},"description":"Successful response. Creates replay the same result. Versioned resources expose ETag."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:admission:admin"]}],"summary":"Check whether an email matches developer admission. Administrator only.","x-newday-cli":{"command":["admission","check"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"check_admission"}}},"/v1/app-batteries/{id}/directory":{"get":{"operationId":"listAppUsers","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"query","name":"cursor","required":false,"schema":{"maxLength":255,"minLength":1,"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AppDirectoryPage"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:app-batteries:read"]}],"summary":"list App Users","x-newday-cli":{"command":["app-battery","users"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"list_app_users"}}},"/v1/jobs/{id}/cancel":{"post":{"operationId":"cancelJob","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"pattern":"^[ -~]+$","type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"pattern":"^\"[1-9][0-9]*\"$","type":"string"}}],"responses":{"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Operation"}}},"description":"Owned compute state or durable operation."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:compute:write"]}],"summary":"Cancel owned Kata job. Network follows the admitted none or database policy; execution deadlines and 30-second inactivity bounds apply. Cleanup is observed separately from terminal outcome.","x-newday-cli":{"command":["job","cancel"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"cancel_job"}}},"/v1/me":{"get":{"operationId":"getMe","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Principal"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:read"]}],"summary":"Read the authenticated OAuth subject and client; this grants no owner authority.","x-newday-cli":{"command":["me"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"get_me"}}},"/v1/repositories/{id}/mirror":{"put":{"operationId":"setRepositoryMirror","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"pattern":"^\"[1-9][0-9]*\"$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MirrorIntent"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Repository"}}},"description":"Successful resource response. Repository creation returns 202; credentials return secret only once."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:repositories:write"]}],"summary":"Set repository mirror.","x-newday-cli":{"command":["repo","mirror"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"set_repository_mirror"}}},"/.well-known/oauth-protected-resource/v1":{"get":{"operationId":"getCoreOAuthMetadata","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProtectedResourceMetadata"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[],"summary":"Discover the shared OAuth resource for Core REST and MCP."}},"/v1":{"get":{"operationId":"discoverCore","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Discovery"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[],"summary":"Discover the versioned Core API and OAuth resource."}},"/v1/app-batteries/{id}/check":{"post":{"operationId":"checkAppRelationship","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AppRelationshipCheck"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AppAllowed"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:app-batteries:read"]}],"summary":"check App Relationship","x-newday-cli":{"command":["app-battery","check"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"check_app_relationship"}}},"/v1/spaces":{"get":{"operationId":"listSpaces","parameters":[{"in":"query","name":"cursor","required":false,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Spaces"}}},"description":"Successful response. Creates replay the same result. Versioned resources expose ETag."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:catalog:read"]}],"summary":"List personal Spaces.","x-newday-cli":{"command":["space","list"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"list_spaces"}},"post":{"operationId":"createSpace","parameters":[{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"pattern":"^[ -~]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CatalogCreate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Space"}}},"description":"Successful response. Creates replay the same result. Versioned resources expose ETag."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:catalog:write"]}],"summary":"Create personal Space.","x-newday-cli":{"command":["space","create"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"create_space"}}},"/v1/components/{parent_id}/configured-batteries":{"get":{"operationId":"listConfiguredBatteries","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"query","name":"cursor","required":false,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConfiguredBatteryPage"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:batteries:read"]}],"summary":"List explicitly configured Core battery resources.","x-newday-cli":{"command":["battery","list"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"list_configured_batteries"}},"post":{"operationId":"createConfiguredBattery","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConfiguredBatteryCreate"}}},"required":true},"responses":{"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Operation"}}},"description":"Accepted durable Operation. Poll its Location; cleanup uncertainty is separate from immutable terminal outcome.","headers":{"Location":{"description":"Operation URL","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:batteries:write"]}],"summary":"Create explicitly configured Core battery resources.","x-newday-cli":{"command":["battery","create"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"create_configured_battery"}}},"/v1/environments/{id}":{"delete":{"operationId":"deleteEnvironment","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"pattern":"^[ -~]+$","type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"pattern":"^\"[1-9][0-9]*\"$","type":"string"}}],"responses":{"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Operation"}}},"description":"Owned compute state or durable operation."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:compute:write"]}],"summary":"Delete owned Kata environment. Network follows the admitted none or database policy; execution deadlines and 30-second inactivity bounds apply. Cleanup is observed separately from terminal outcome.","x-newday-cli":{"command":["environment","delete"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"delete_environment"}},"get":{"operationId":"getEnvironment","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ComputeResource"}}},"description":"Owned compute state or durable operation."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:compute:read"]}],"summary":"Get owned Kata environment. Network follows the admitted none or database policy; execution deadlines and 30-second inactivity bounds apply. Cleanup is observed separately from terminal outcome.","x-newday-cli":{"command":["environment","get"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"get_environment"}}},"/v1/app-batteries/{id}/sync/credentials":{"post":{"operationId":"createSyncCredential","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SyncCredentialCreate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SyncCredential"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:app-batteries:sync"]}],"summary":"create Sync Credential","x-newday-cli":{"command":["app-battery","credential"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"create_sync_credential"}}},"/v1/deployments/{id}/cancel":{"post":{"operationId":"cancelDeployment","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"pattern":"^[ -~]+$","type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"pattern":"^\"[1-9][0-9]*\"$","type":"string"}}],"responses":{"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Operation"}}},"description":"Owned compute state or durable operation."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:compute:write"]}],"summary":"Cancel all executions of an immutable revision with durable observed cleanup.","x-newday-cli":{"command":["deployment","cancel"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"cancel_deployment"}}},"/v1/admission/entries/{id}":{"delete":{"operationId":"deleteAdmissionEntry","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"maxLength":24,"pattern":"^\"[1-9][0-9]*\"$","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AdmissionEntry"}}},"description":"Successful response. Creates replay the same result. Versioned resources expose ETag."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:admission:admin"]}],"summary":"Remove a managed admission rule. Does not retire Apps or revoke App guest grants or previously issued native/runtime credentials.","x-newday-cli":{"command":["admission","remove"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"delete_admission_entry"}}},"/v1/configured-batteries/{id}/delegations":{"post":{"operationId":"createBatteryDelegation","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BatteryCredential"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:batteries:use"]}],"summary":"Delegate explicitly configured Core battery resources.","x-newday-cli":{"command":["battery","delegate"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"create_battery_delegation"}}},"/v1/configured-batteries/{id}/objects/{object_id}/accept":{"post":{"operationId":"acceptBlobObject","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"path","name":"object_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}}],"responses":{"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Operation"}}},"description":"Accepted durable Operation. Poll its Location; cleanup uncertainty is separate from immutable terminal outcome.","headers":{"Location":{"description":"Operation URL","schema":{"type":"string"}}}},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:batteries:write"]}],"summary":"Accept object explicitly configured Core battery resources.","x-newday-cli":{"command":["battery","accept-object"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"accept_blob_object"}}},"/v1/secrets/{parent_id}/versions":{"get":{"operationId":"listSecretVersions","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"query","name":"cursor","required":false,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SecretVersionList"}}},"description":"Redacted owned metadata. Revoked means new use is denied; execution cleanup is observed on the bound Job or Environment."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:secrets:read"]}],"summary":"List redacted immutable version metadata.","x-newday-cli":{"command":["secret","version","list"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"list_secret_versions"}},"post":{"operationId":"createSecretVersion","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"pattern":"^[ -~]+$","type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"value":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["value"],"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SecretVersion"}}},"description":"Redacted owned metadata. Revoked means new use is denied; execution cleanup is observed on the bound Job or Environment."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:secrets:write"]}],"summary":"Upload an immutable Secret version. Value is write-only; REST/CLI only. Rotation never retargets existing references.","x-newday-cli":{"command":["secret","version","create"],"enabled":true},"x-newday-mcp":{"enabled":false}}},"/v1/configured-batteries/{id}/grants/{grant_id}":{"delete":{"operationId":"revokeConnectionGrant","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"path","name":"grant_id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectionGrant"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:batteries:use"]}],"summary":"Revoke grant explicitly configured Core battery resources.","x-newday-cli":{"command":["battery","revoke-grant"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"revoke_connection_grant"}}},"/v1/dependencies/{id}/revoke":{"post":{"operationId":"revokeDependency","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Dependency"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:dependencies:write"]}],"summary":"Revoke a dependency and all issued capabilities.","x-newday-cli":{"command":["dependency","revoke"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"dependency_revoke"}}},"/v1/secrets/{id}":{"get":{"operationId":"getSecret","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Secret"}}},"description":"Redacted owned metadata. Revoked means new use is denied; execution cleanup is observed on the bound Job or Environment."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:secrets:read"]}],"summary":"Read redacted Secret metadata and its concurrency version.","x-newday-cli":{"command":["secret","get"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"get_secret"}}},"/v1/components/{parent_id}/routes":{"get":{"operationId":"listRoutes","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"query","name":"cursor","required":false,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Routes"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:routes:read"]}],"summary":"List owned Routes.","x-newday-cli":{"command":["route","list"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"route_list"}},"post":{"operationId":"createRoute","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Route"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:routes:write"]}],"summary":"Create an owner-only Route on the operator guest domain.","x-newday-cli":{"command":["route","create"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"route_create"}}},"/v1/service-capabilities/{id}":{"get":{"operationId":"getServiceCapability","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServiceCapability"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:catalog:read"]}],"summary":"Get an immutable same-owner same-Space service capability.","x-newday-cli":{"command":["service-capability","get"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"service_capability_get"}}},"/v1/ibkr/accounts":{"get":{"operationId":"listIbkrAccounts","parameters":[],"responses":{"200":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"accounts":{"items":{"additionalProperties":false,"properties":{"alias":{"type":"string"},"status":{"type":"string"},"trading_mode":{"type":"string"}},"required":["alias","trading_mode","status"],"type":"object"},"type":"array"}},"required":["accounts"],"type":"object"}}},"description":"Reader-authorized response. Registry status does not prove a live brokerage session."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:read"]}],"summary":"List retained IBKR aliases permitted for the authenticated reader","x-newday-cli":{"command":["ibkr","list"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"ibkr_accounts_list"}}},"/v1/routes/{id}/access/check":{"get":{"operationId":"checkRouteAccess","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RouteAccessCheck"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:routes:credential"]}],"summary":"Check only the caller Route access through current Core grants and OpenFGA.","x-newday-cli":{"command":["route","access-check"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"route_access_check"}}},"/v1/components/{parent_id}/runtime-bindings":{"get":{"operationId":"listRuntimeBindings","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"query","name":"cursor","required":false,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RuntimeBindings"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:runtime:read"]}],"summary":"List execution credential metadata; never returns credential material.","x-newday-cli":{"command":["runtime","list"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"runtime_list"}}},"/v1/environments/{id}/stop":{"post":{"operationId":"stopEnvironment","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"pattern":"^[ -~]+$","type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"pattern":"^\"[1-9][0-9]*\"$","type":"string"}}],"responses":{"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Operation"}}},"description":"Owned compute state or durable operation."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:compute:write"]}],"summary":"Stop owned Kata environment. Network follows the admitted none or database policy; execution deadlines and 30-second inactivity bounds apply. Cleanup is observed separately from terminal outcome.","x-newday-cli":{"command":["environment","stop"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"stop_environment"}}},"/v1/components/{parent_id}/app-batteries":{"get":{"operationId":"listAppBatteries","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"query","name":"cursor","required":false,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AppBatteryPage"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:app-batteries:read"]}],"summary":"list App Batteries","x-newday-cli":{"command":["app-battery","list"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"list_app_batteries"}},"post":{"operationId":"createAppBattery","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AppBatteryCreate"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AppBattery"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:app-batteries:write"]}],"summary":"create App Battery","x-newday-cli":{"command":["app-battery","create"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"create_app_battery"}}},"/v1/service-capabilities/{id}/withdraw":{"post":{"operationId":"withdrawServiceCapability","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServiceCapability"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:catalog:write"]}],"summary":"Withdraw an immutable same-owner same-Space service capability.","x-newday-cli":{"command":["service-capability","withdraw"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"service_capability_withdraw"}}},"/v1/access-groups":{"get":{"operationId":"listAccessGroups","parameters":[{"in":"query","name":"cursor","required":false,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessGroups"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:access:read"]}],"summary":"List only owned access groups.","x-newday-cli":{"command":["access-group","list"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"access_group_list"}},"post":{"operationId":"createAccessGroup","parameters":[{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"members":{"items":{"maxLength":255,"minLength":1,"pattern":"^[^\\s]+$","type":"string"},"maxItems":50,"type":"array","uniqueItems":true},"name":{"maxLength":80,"minLength":1,"type":"string"}},"required":["name","members"],"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessGroup"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:access:write"]}],"summary":"Create an owned group of exact subjects in the configured issuer.","x-newday-cli":{"command":["access-group","create"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"access_group_create"}}},"/v1/app-batteries/{id}/revoke":{"post":{"operationId":"revokeAppBattery","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AppBattery"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:app-batteries:write"]}],"summary":"revoke App Battery","x-newday-cli":{"command":["app-battery","revoke"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"revoke_app_battery"}}},"/v1/components/{parent_id}/repositories":{"get":{"operationId":"listRepositories","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Repositories"}}},"description":"Successful resource response. Repository creation returns 202; credentials return secret only once."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:repositories:read"]}],"summary":"List repositories.","x-newday-cli":{"command":["repo","list"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"list_repositories"}},"post":{"operationId":"createRepository","parameters":[{"in":"path","name":"parent_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"pattern":"^[ -~]+$","type":"string"}}],"responses":{"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Operation"}}},"description":"Successful resource response. Repository creation returns 202; credentials return secret only once."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:repositories:write"]}],"summary":"Create repository.","x-newday-cli":{"command":["repo","create"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"create_repository"}}},"/v1/operations/{id}/events":{"get":{"operationId":"getOperationEvents","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Last-Event-ID","required":false,"schema":{"maxLength":18,"pattern":"^[0-9]+$","type":"string"}}],"responses":{"200":{"content":{"text/event-stream":{"schema":{"type":"string"}}},"description":"At most 100 events. Connection closes after each batch; reconnect after one second with the last ID. Events are retained for the Operation lifetime. Heartbeats do not advance progress."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:operations:read"]}],"summary":"Bounded SSE batches with ordered durable IDs; reconnect using Last-Event-ID. Polling is also supported."}},"/v1/repositories/{id}/credentials":{"post":{"operationId":"issueRepositoryCredential","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"pattern":"^[ -~]+$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NativeCredentialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NativeCredential"}}},"description":"Successful resource response. Repository creation returns 202; credentials return secret only once."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:repositories:credential"]}],"summary":"Issue repository credential.","x-newday-cli":{"command":["repo","credential"],"enabled":true},"x-newday-mcp":{"enabled":false,"name":"issue_repository_credential"}}},"/v1/databases/{id}/backup-status":{"get":{"operationId":"getDatabaseBackupStatus","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DatabaseBackupStatus"}}},"description":"Core database response. No secret appears in an Operation."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:databases:read"]}],"summary":"Read backup uncertainty. No backup provider or successful backup is claimed.","x-newday-cli":{"command":["db","backup-status"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"get_database_backup_status"}}},"/v1/environments/{id}/start":{"post":{"operationId":"startEnvironment","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"pattern":"^[ -~]+$","type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"pattern":"^\"[1-9][0-9]*\"$","type":"string"}}],"responses":{"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Operation"}}},"description":"Owned compute state or durable operation."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:compute:write"]}],"summary":"Start owned Kata environment. Network follows the admitted none or database policy; execution deadlines and 30-second inactivity bounds apply. Cleanup is observed separately from terminal outcome. Database networking accepts database_binding with only an exact same-Component database_id and requires core:databases:credential. Each start reauthorizes and creates a fresh runtime-only SQL credential in encrypted execution custody; no public password claim. Cleanup revokes login and active sessions before restart. SQL-only networking, RLS, runtime DDL denial and existing deadlines apply.","x-newday-cli":{"command":["environment","start"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"start_environment"}}},"/v1/configured-batteries/{id}/credentials/{credential_id}":{"delete":{"operationId":"revokeBatteryCredential","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"path","name":"credential_id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BatteryCredentialRevocation"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:batteries:use"]}],"summary":"Revoke credential explicitly configured Core battery resources.","x-newday-cli":{"command":["battery","revoke-credential"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"revoke_battery_credential"}}},"/v1/deployments/{id}":{"delete":{"operationId":"deleteDeployment","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"pattern":"^[ -~]+$","type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"pattern":"^\"[1-9][0-9]*\"$","type":"string"}}],"responses":{"202":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Operation"}}},"description":"Owned compute state or durable operation."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:compute:write"]}],"summary":"Request cancellation of all revision executions and complete only after observed cleanup.","x-newday-cli":{"command":["deployment","delete"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"delete_deployment"}},"get":{"operationId":"getDeployment","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Deployment"}}},"description":"Owned compute state or durable operation."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:compute:read"]}],"summary":"Observe an immutable web revision, exact execution custody, readiness, lease, failure and cleanup.","x-newday-cli":{"command":["deployment","get"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"get_deployment"}}},"/v1/dependencies/{id}/delegations/{credential_id}":{"delete":{"operationId":"revokeRuntimeDelegation","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"path","name":"credential_id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RuntimeRevocation"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:runtime:delegate"]}],"summary":"Revoke one explicit user delegation.","x-newday-cli":{"command":["dependency","revoke-delegation"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"dependency_revoke_delegation"}}},"/v1/audit-events":{"get":{"operationId":"listAuditEvents","parameters":[{"in":"query","name":"cursor","required":false,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuditEvents"}}},"description":"Successful response. Creates replay the same result. Versioned resources expose ETag."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:audit:read"]}],"summary":"Read own actor or owned-resource audit metadata, ordered by timestamp and ID, in pages of at most 100. Cursor must name a visible event.","x-newday-cli":{"command":["audit","list"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"list_audit_events"}}},"/v1/openapi":{"get":{"operationId":"getCoreOpenApi","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OpenApiDocument"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[],"summary":"Read the canonical OpenAPI 3.1 contract."}},"/v1/app-batteries/{id}/sync/credentials/{credential_id}":{"delete":{"operationId":"revokeSyncCredential","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"path","name":"credential_id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SyncRevoked"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:app-batteries:sync"]}],"summary":"revoke Sync Credential","x-newday-cli":{"command":["app-battery","revoke-credential"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"revoke_sync_credential"}}},"/v1/ibkr/accounts/{alias}/{resource}":{"get":{"operationId":"readIbkrAccount","parameters":[{"in":"path","name":"alias","required":true,"schema":{"maxLength":40,"pattern":"^[a-z0-9]([a-z0-9-]*[a-z0-9])?$","type":"string"}},{"in":"path","name":"resource","required":true,"schema":{"enum":["portfolio","summary","pnl","positions","orders"],"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"alias":{"type":"string"},"data":{"additionalProperties":true,"type":"object"},"resource":{"type":"string"}},"required":["alias","resource","data"],"type":"object"}}},"description":"Reader-authorized response. Registry status does not prove a live brokerage session."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:read"]}],"summary":"Read one retained IBKR resource with fresh subject reader authorization","x-newday-cli":{"command":["ibkr","read"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"ibkr_account_read"}}},"/v1/dependencies/{id}/delegations":{"post":{"operationId":"createRuntimeDelegation","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RuntimeDelegationInput"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RuntimeDelegation"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:runtime:delegate"]}],"summary":"Explicit self-delegation of the calling OAuth subject to one selected consumer and dependency; no named-user impersonation.","x-newday-cli":{"command":["dependency","delegate"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"dependency_delegate"}}},"/v1/dependencies/{id}":{"get":{"operationId":"getDependency","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Dependency"}}},"description":"Successful response"},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:dependencies:read"]}],"summary":"Observe a scoped dependency; protocol readiness remains unverified until runtime use.","x-newday-cli":{"command":["dependency","get"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"dependency_get"}}},"/v1/secret-versions/{id}/revoke":{"post":{"operationId":"revokeSecretVersion","parameters":[{"in":"path","name":"id","required":true,"schema":{"format":"uuid","type":"string"}},{"in":"header","name":"Idempotency-Key","required":true,"schema":{"maxLength":128,"minLength":1,"pattern":"^[ -~]+$","type":"string"}},{"in":"header","name":"If-Match","required":true,"schema":{"maxLength":128,"minLength":1,"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SecretVersion"}}},"description":"Redacted owned metadata. Revoked means new use is denied; execution cleanup is observed on the bound Job or Environment."},"default":{"$ref":"#/components/responses/Problem"}},"security":[{"coreOAuth":["core:secrets:revoke"]}],"summary":"Revoke an exact version and erase catalog custody. Bound executions independently fail and clean; observe their cleanup before treating mounted copies as removed.","x-newday-cli":{"command":["secret","version","revoke"],"enabled":true},"x-newday-mcp":{"enabled":true,"name":"revoke_secret_version"}}}},"servers":[{"url":"/"}]}