{"openapi":"3.0.0","paths":{"/users":{"post":{"operationId":"users.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthSessionEnvelopeSwaggerDto"}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INITIAL_PASSWORD_REQUIRED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["CURRENT_SESSION_NOT_REVOCABLE","EMAIL_ALREADY_REGISTERED","IDEMPOTENCY_CONFLICT","LAST_OWNER_PROTECTION","USER_ALREADY_MEMBER"]}}}]}}}}},"summary":"Public self-registration when body has email+password only.\nAdmin tenant user provisioning when body includes mode+role (tenant:manage).","tags":["users","public-docs:users","users"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/EmailRegistrationBodyDto"},{"$ref":"#/components/schemas/AdminCreateUserBodyDto"}]}}}}}},"/users/me":{"get":{"operationId":"users.me.get","parameters":[],"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AuthMeResponseDto","nullable":true}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INITIAL_PASSWORD_REQUIRED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Get the current authenticated user","tags":["users","public-docs:users","users"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[{"pat":[]}]},"patch":{"operationId":"users.me.update","parameters":[{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCurrentUserBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/UpdateCurrentUserResponseDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INITIAL_PASSWORD_REQUIRED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["CURRENT_SESSION_NOT_REVOCABLE","EMAIL_ALREADY_REGISTERED","IDEMPOTENCY_CONFLICT","LAST_OWNER_PROTECTION","USER_ALREADY_MEMBER"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["users","public-docs:users","users"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"Update a me"}},"/users/me/password":{"patch":{"operationId":"users.me.password.update","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChangePasswordBodyDto"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChangePasswordResponseEnvelopeDto"}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INITIAL_PASSWORD_REQUIRED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["CURRENT_SESSION_NOT_REVOCABLE","EMAIL_ALREADY_REGISTERED","IDEMPOTENCY_CONFLICT","LAST_OWNER_PROTECTION","USER_ALREADY_MEMBER"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["users","public-docs:users","users"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"Update a password"}},"/users/me/sessions":{"get":{"operationId":"users.me.sessions.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/CurrentUserSessionDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INITIAL_PASSWORD_REQUIRED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["users","public-docs:users","users"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List sessions for a me"}},"/users/me/other-session-invalidation-requests":{"post":{"operationId":"users.me.otherSessionInvalidationRequests.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/InvalidateOtherSessionsResponseDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INITIAL_PASSWORD_REQUIRED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["CURRENT_SESSION_NOT_REVOCABLE","EMAIL_ALREADY_REGISTERED","IDEMPOTENCY_CONFLICT","LAST_OWNER_PROTECTION","USER_ALREADY_MEMBER"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["users","public-docs:users","users"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a other session invalidation request"}},"/users/{userId}/password-reset-requests":{"post":{"operationId":"users.passwordResetRequests.create","parameters":[{"name":"userId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"202":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AdminPasswordResetRequestedDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INITIAL_PASSWORD_REQUIRED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","RESOURCE_NOT_FOUND","SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["CURRENT_SESSION_NOT_REVOCABLE","EMAIL_ALREADY_REGISTERED","IDEMPOTENCY_CONFLICT","LAST_OWNER_PROTECTION","USER_ALREADY_MEMBER"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["users","public-docs:users","users"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a password reset request"}},"/sessions":{"post":{"operationId":"sessions.create","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateSessionBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthSessionEnvelopeSwaggerDto"}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["CURRENT_SESSION_NOT_REVOCABLE","EMAIL_ALREADY_REGISTERED","IDEMPOTENCY_CONFLICT"]}}}]}}}}},"summary":"Create a browser session","tags":["sessions","public-docs:sessions","sessions"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[]}},"/sessions/current":{"delete":{"operationId":"sessions.current.delete","parameters":[],"responses":{"204":{"description":"Session destroyed"},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["CURRENT_SESSION_NOT_REVOCABLE","EMAIL_ALREADY_REGISTERED","IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["sessions","public-docs:sessions","sessions"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"Delete a current"}},"/sessions/{sessionId}":{"delete":{"operationId":"sessions.delete","parameters":[{"name":"sessionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"204":{"description":"Session revoked"},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["CURRENT_SESSION_NOT_REVOCABLE","EMAIL_ALREADY_REGISTERED","IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Sign out one of the caller's other devices. The current one is `/current`.","tags":["sessions","public-docs:sessions","sessions"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}]}},"/sessions/bulk-invalidation-requests":{"post":{"operationId":"sessions.bulkInvalidationRequests.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/SessionInvalidateAllResponseDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["CURRENT_SESSION_NOT_REVOCABLE","EMAIL_ALREADY_REGISTERED","IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["sessions","public-docs:sessions","sessions"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a bulk invalidation request"}},"/auth/login-options":{"get":{"operationId":"auth.loginOptions.get","parameters":[],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AuthLoginOptionsDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}}},"tags":["auth","public-docs:auth","auth"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[],"summary":"List login options for a auth"}},"/registration-invitations":{"post":{"operationId":"registrationInvitations.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegistrationInvitationBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/RegistrationInvitationCreatedDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVITATION_EXPIRED","INVITATION_INVALID","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["CURRENT_SESSION_NOT_REVOCABLE","EMAIL_ALREADY_REGISTERED","IDEMPOTENCY_CONFLICT","INVITATION_ALREADY_ACCEPTED","INVITATION_EMAIL_MISMATCH","INVITATION_REVOKED"]}}}]}}}}},"tags":["registration","public-docs:registration","registration"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[],"summary":"Create a registration invitation"}},"/registration-invitations/validation":{"get":{"operationId":"registrationInvitations.validation.get","parameters":[{"name":"token","required":false,"in":"query","description":"Documented optional so W1 stays additive under frozen v1 compat; runtime still validates.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"email":{"type":"string"}},"required":["email"],"nullable":true}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVITATION_EXPIRED","INVITATION_INVALID","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}}},"tags":["registration","public-docs:registration","registration"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[],"summary":"List validation for a registration invitation"}},"/registration-invitations/completions":{"post":{"operationId":"registrationInvitations.completions.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegistrationCompleteBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AuthMeResponseDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVITATION_EXPIRED","INVITATION_INVALID","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["CURRENT_SESSION_NOT_REVOCABLE","EMAIL_ALREADY_REGISTERED","IDEMPOTENCY_CONFLICT","INVITATION_ALREADY_ACCEPTED","INVITATION_EMAIL_MISMATCH","INVITATION_REVOKED"]}}}]}}}}},"tags":["registration","public-docs:registration","registration"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[],"summary":"Create a completion"}},"/api-keys":{"get":{"operationId":"apiKeys.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"scope","required":false,"in":"query","schema":{"type":"string","enum":["self","tenant"]}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ApiKeySummaryDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","required":["pageSize"],"properties":{"requestId":{"type":"string"},"pageSize":{"type":"number"}}}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Previously `@RequirePermission('apikey:read')` while `listApiKeys(..., 'tenant')`\nstill asserted `apikey:manage`. Any-of makes that dual admission explicit.\nBoth permissions are tenant-scoped. The tenant-scope manage check stays.","tags":["api-keys","public-docs:api-keys","api-keys"],"x-embodiflow-permission":{"point":["apikey:read","apikey:manage"],"projectScoped":false},"security":[{"pat":[]}]},"post":{"operationId":"apiKeys.create","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateApiKeyBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CreateApiKeyResponseDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["CURRENT_SESSION_NOT_REVOCABLE","EMAIL_ALREADY_REGISTERED","IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["api-keys","public-docs:api-keys","api-keys"],"x-embodiflow-permission":{"point":"apikey:write","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a api key"}},"/api-keys/memberships/{membershipId}/revocations":{"post":{"operationId":"apiKeys.memberships.revocations.create","parameters":[{"name":"membershipId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/RevokeMembershipApiKeysResponseDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["CURRENT_SESSION_NOT_REVOCABLE","EMAIL_ALREADY_REGISTERED","IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["api-keys","public-docs:api-keys","api-keys"],"x-embodiflow-permission":{"point":"apikey:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a revocation"}},"/api-keys/{apiKeyId}":{"delete":{"operationId":"apiKeys.delete","parameters":[{"name":"apiKeyId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ApiKeySummaryDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["CURRENT_SESSION_NOT_REVOCABLE","EMAIL_ALREADY_REGISTERED","IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["api-keys","public-docs:api-keys","api-keys"],"x-embodiflow-permission":{"point":"apikey:write","projectScoped":false},"security":[{"pat":[]}],"summary":"Delete a api key"}},"/tokens/self":{"get":{"description":"Returns tenant, user, credential class, grant ceiling, tenant-wide effective permissions, project scope, expiry, and lastUsedAt for the presenting credential only. A session grant ceiling is null. Rate-limit budget is omitted (W6 shipped before W5; this field is not invented here). lastUsedAt may be up to one flush interval stale.","operationId":"tokens.self.get","parameters":[],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TokenSelfDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Describe the presenting credential","tags":["tokens","public-docs:tokens"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[{"pat":[]}]}},"/password-resets":{"post":{"operationId":"passwordResets.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PasswordResetRequestBodyDto"}}}},"responses":{"202":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PasswordResetRequestedDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["CURRENT_SESSION_NOT_REVOCABLE","EMAIL_ALREADY_REGISTERED","IDEMPOTENCY_CONFLICT"]}}}]}}}}},"tags":["password-resets","public-docs:password-resets","password-resets"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[],"summary":"Create a password reset"}},"/password-resets/confirmations":{"post":{"operationId":"passwordResets.confirmations.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PasswordResetConfirmationBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PasswordResetConfirmationResponseDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["CURRENT_SESSION_NOT_REVOCABLE","EMAIL_ALREADY_REGISTERED","IDEMPOTENCY_CONFLICT"]}}}]}}}}},"tags":["password-resets","public-docs:password-resets","password-resets"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[],"summary":"Create a confirmation"}},"/tenants/current/auth-policy":{"get":{"operationId":"tenants.current.authPolicy.get","parameters":[],"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TenantAuthPolicyDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["tenant-auth-policy","public-docs:tenant-auth-policy","tenant-auth-policy"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"List auth policy for a current"},"patch":{"operationId":"tenants.current.authPolicy.update","parameters":[{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TenantAuthPolicyDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["BILLING_STATE_TRANSITION_INVALID","DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","INVOICE_SNAPSHOT_ALREADY_EXISTS","LAST_OWNER_PROTECTION","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","RECONCILIATION_ALREADY_RUNNING","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","TENANT_SLUG_CONFLICT","TENANT_STORAGE_KEY_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["tenant-auth-policy","public-docs:tenant-auth-policy","tenant-auth-policy"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateTenantAuthPolicyRequestDto"}}}},"summary":"Update a auth policy"}},"/users/me/mfa":{"get":{"operationId":"users.me.mfa.get","parameters":[],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/UserMfaStatusDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INITIAL_PASSWORD_REQUIRED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["mfa","public-docs:mfa","mfa"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[{"cookie":[]}],"summary":"List mfa for a me"}},"/users/me/mfa/totp":{"post":{"operationId":"users.me.mfa.totp.create","parameters":[],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TotpEnrollmentStartDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INITIAL_PASSWORD_REQUIRED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["CURRENT_SESSION_NOT_REVOCABLE","EMAIL_ALREADY_REGISTERED","IDEMPOTENCY_CONFLICT","LAST_OWNER_PROTECTION","USER_ALREADY_MEMBER"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["mfa","public-docs:mfa","mfa"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[{"cookie":[]}],"summary":"Create a totp"},"delete":{"operationId":"users.me.mfa.totp.delete","parameters":[],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"removed":{"type":"boolean","enum":[true]}},"required":["removed"]},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INITIAL_PASSWORD_REQUIRED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["CURRENT_SESSION_NOT_REVOCABLE","EMAIL_ALREADY_REGISTERED","IDEMPOTENCY_CONFLICT","LAST_OWNER_PROTECTION","USER_ALREADY_MEMBER"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["mfa","public-docs:mfa","mfa"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[{"cookie":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"reauthenticationCode":{"type":"string"}}}}}},"summary":"Delete a totp"}},"/users/me/mfa/totp/verifications":{"post":{"operationId":"users.me.mfa.totp.verifications.create","parameters":[],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TotpEnrollmentVerifyResponseDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INITIAL_PASSWORD_REQUIRED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["CURRENT_SESSION_NOT_REVOCABLE","EMAIL_ALREADY_REGISTERED","IDEMPOTENCY_CONFLICT","LAST_OWNER_PROTECTION","USER_ALREADY_MEMBER"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["mfa","public-docs:mfa","mfa"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[{"cookie":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TotpEnrollmentVerifyRequestDto"}}}},"summary":"Create a verification"}},"/sessions/mfa-challenges/confirmations":{"post":{"operationId":"sessions.mfaChallenges.confirmations.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AuthMeResponseDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["CURRENT_SESSION_NOT_REVOCABLE","EMAIL_ALREADY_REGISTERED","IDEMPOTENCY_CONFLICT"]}}}]}}}}},"tags":["mfa","public-docs:mfa","mfa"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MfaChallengeConfirmRequestDto"}}}},"summary":"Create a confirmation"}},"/users/me/webauthn/credentials":{"get":{"operationId":"users.me.webauthn.credentials.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size. Default 25, maximum 100. Values above the maximum are refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response's `nextPageToken`.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/WebAuthnCredentialDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","properties":{"requestId":{"type":"string"},"pageSize":{"type":"number"}},"required":["requestId","pageSize"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INITIAL_PASSWORD_REQUIRED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["webauthn","public-docs:webauthn","webauthn"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[{"cookie":[]}],"summary":"List credentials for a webauthn"}},"/users/me/webauthn/registration-options":{"post":{"operationId":"users.me.webauthn.registrationOptions.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/WebAuthnRegistrationOptionsDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INITIAL_PASSWORD_REQUIRED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["CURRENT_SESSION_NOT_REVOCABLE","EMAIL_ALREADY_REGISTERED","IDEMPOTENCY_CONFLICT","LAST_OWNER_PROTECTION","USER_ALREADY_MEMBER"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["webauthn","public-docs:webauthn","webauthn"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[{"cookie":[]}],"summary":"Create a registration option"}},"/users/me/webauthn/registrations":{"post":{"operationId":"users.me.webauthn.registrations.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/WebAuthnCredentialDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INITIAL_PASSWORD_REQUIRED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["CURRENT_SESSION_NOT_REVOCABLE","EMAIL_ALREADY_REGISTERED","IDEMPOTENCY_CONFLICT","LAST_OWNER_PROTECTION","USER_ALREADY_MEMBER"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["webauthn","public-docs:webauthn","webauthn"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[{"cookie":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebAuthnRegistrationRequestDto"}}}},"summary":"Create a registration"}},"/users/me/webauthn/credentials/{credentialId}":{"delete":{"operationId":"users.me.webauthn.credentials.delete","parameters":[{"name":"credentialId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"removed":{"type":"boolean","enum":[true]}},"required":["removed"]},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INITIAL_PASSWORD_REQUIRED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","RESOURCE_NOT_FOUND","SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["CURRENT_SESSION_NOT_REVOCABLE","EMAIL_ALREADY_REGISTERED","IDEMPOTENCY_CONFLICT","LAST_OWNER_PROTECTION","USER_ALREADY_MEMBER"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["webauthn","public-docs:webauthn","webauthn"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[{"cookie":[]}],"summary":"Delete a credential"}},"/tenants/current/sso-connections":{"get":{"operationId":"tenants.current.ssoConnections.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size. Default 25, maximum 100. Values above the maximum are refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response's `nextPageToken`.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSsoConnectionDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","properties":{"requestId":{"type":"string"},"pageSize":{"type":"number"}},"required":["requestId","pageSize"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["tenant-sso","public-docs:tenant-sso","tenant-sso"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"List sso connections for a current"},"post":{"operationId":"tenants.current.ssoConnections.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TenantSsoConnectionDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["BILLING_STATE_TRANSITION_INVALID","DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","INVOICE_SNAPSHOT_ALREADY_EXISTS","LAST_OWNER_PROTECTION","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","RECONCILIATION_ALREADY_RUNNING","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","TENANT_SLUG_CONFLICT","TENANT_STORAGE_KEY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["tenant-sso","public-docs:tenant-sso","tenant-sso"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTenantSsoConnectionRequestDto"}}}},"summary":"Create a sso connection"}},"/tenants/current/sso-connections/{connectionId}":{"patch":{"operationId":"tenants.current.ssoConnections.update","parameters":[{"name":"connectionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TenantSsoConnectionDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","RESOURCE_NOT_FOUND","STORAGE_RECONCILIATION_JOB_NOT_FOUND","SUBJECT_NOT_IN_TENANT","SUBSCRIPTION_NOT_FOUND","TENANT_DELETION_JOB_NOT_FOUND","TENANT_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["BILLING_STATE_TRANSITION_INVALID","DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","INVOICE_SNAPSHOT_ALREADY_EXISTS","LAST_OWNER_PROTECTION","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","RECONCILIATION_ALREADY_RUNNING","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","TENANT_SLUG_CONFLICT","TENANT_STORAGE_KEY_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["tenant-sso","public-docs:tenant-sso","tenant-sso"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateTenantSsoConnectionRequestDto"}}}},"summary":"Update a sso connection"}},"/storage-regions":{"get":{"operationId":"storageRegions.get","parameters":[],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/StorageRegionsResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","STORAGE_NOT_READY","STORAGE_PROVIDER_NOT_CONFIGURED","STORAGE_PROVISIONING_FAILED","STORAGE_RECONCILIATION_PROVIDER_UNAVAILABLE","STORAGE_REGION_NOT_AVAILABLE","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}}},"tags":["storage","public-docs:storage","storage"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[],"summary":"List storage regions"}},"/tenants/current/storage-bucket":{"get":{"operationId":"tenants.current.storageBucket.get","parameters":[],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"bucket":{"$ref":"#/components/schemas/StorageBucketSummaryDto","nullable":true},"datasetBucket":{"$ref":"#/components/schemas/StorageBucketSummaryDto","nullable":true},"exportBucket":{"$ref":"#/components/schemas/StorageBucketSummaryDto","nullable":true}},"required":["bucket","datasetBucket","exportBucket"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["tenants","public-docs:tenants","tenants"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List storage bucket for a current"},"put":{"operationId":"tenants.current.storageBucket.replace","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProvisionStorageBucketBodyDto"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"bucket":{"$ref":"#/components/schemas/StorageBucketSummaryDto","nullable":true},"datasetBucket":{"$ref":"#/components/schemas/StorageBucketSummaryDto","nullable":true},"exportBucket":{"$ref":"#/components/schemas/StorageBucketSummaryDto","nullable":true}},"required":["bucket","datasetBucket","exportBucket"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["BILLING_STATE_TRANSITION_INVALID","DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","INVOICE_SNAPSHOT_ALREADY_EXISTS","LAST_OWNER_PROTECTION","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","RECONCILIATION_ALREADY_RUNNING","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","TENANT_SLUG_CONFLICT","TENANT_STORAGE_KEY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["tenants","public-docs:tenants","tenants"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Update a storage bucket"}},"/tenants/current/storage-summary":{"get":{"operationId":"tenants.current.storageSummary.get","parameters":[{"name":"refresh","required":false,"in":"query","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TenantStorageSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["tenants","public-docs:tenants","tenants"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List storage summary for a current"}},"/tenants/current/storage-reconciliation-jobs":{"post":{"operationId":"tenants.current.storageReconciliationJobs.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateStorageReconciliationJobBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"job":{"$ref":"#/components/schemas/StorageReconciliationJobSummaryDto"},"created":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["job","created"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["BILLING_STATE_TRANSITION_INVALID","DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","INVOICE_SNAPSHOT_ALREADY_EXISTS","LAST_OWNER_PROTECTION","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","RECONCILIATION_ALREADY_RUNNING","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","TENANT_SLUG_CONFLICT","TENANT_STORAGE_KEY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["tenants-current-storage-reconciliation-jobs","public-docs:tenants-current-storage-reconciliation-jobs","tenants"],"x-embodiflow-permission":{"point":"billing:write","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a storage reconciliation job"},"get":{"operationId":"tenants.current.storageReconciliationJobs.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","schema":{"type":"string","enum":["queued","running","succeeded","failed"]}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/StorageReconciliationJobSummaryDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["tenants-current-storage-reconciliation-jobs","public-docs:tenants-current-storage-reconciliation-jobs","tenants"],"x-embodiflow-permission":{"point":"billing:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List storage reconciliation jobs for a current"}},"/tenants/current/storage-reconciliation-jobs/{jobId}":{"get":{"operationId":"tenants.current.storageReconciliationJobs.get","parameters":[{"name":"jobId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/StorageReconciliationJobDetailsDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","RESOURCE_NOT_FOUND","STORAGE_RECONCILIATION_JOB_NOT_FOUND","SUBJECT_NOT_IN_TENANT","SUBSCRIPTION_NOT_FOUND","TENANT_DELETION_JOB_NOT_FOUND","TENANT_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["tenants-current-storage-reconciliation-jobs","public-docs:tenants-current-storage-reconciliation-jobs","tenants"],"x-embodiflow-permission":{"point":"billing:read","projectScoped":false},"security":[{"pat":[]}],"summary":"Get a storage reconciliation job"}},"/tenants":{"post":{"operationId":"tenants.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTenantBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTenantResponseEnvelopeSwaggerDto"}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["BILLING_STATE_TRANSITION_INVALID","DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","INVOICE_SNAPSHOT_ALREADY_EXISTS","LAST_OWNER_PROTECTION","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","RECONCILIATION_ALREADY_RUNNING","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","TENANT_SLUG_CONFLICT","TENANT_STORAGE_KEY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["tenants","public-docs:tenants","tenants"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a tenant"}},"/sessions/current-membership-switches":{"post":{"operationId":"sessions.currentMembershipSwitches.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SwitchCurrentMembershipBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AuthMeResponseDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["CURRENT_SESSION_NOT_REVOCABLE","EMAIL_ALREADY_REGISTERED","IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["sessions","public-docs:sessions","sessions"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a current membership switche"}},"/tenants/current/memberships":{"get":{"description":"Requires tenant:manage. Returns paginated tenant roster for administration (invite/manage flows).","operationId":"tenants.current.memberships.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"sortBy","required":false,"in":"query","schema":{"type":"string"}},{"name":"sortOrder","required":false,"in":"query","schema":{"type":"string","enum":["asc","desc"]}},{"name":"q","required":false,"in":"query","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","schema":{"type":"string","enum":["active","disabled","expired","removed"]}},{"name":"role","required":false,"in":"query","schema":{"type":"string","enum":["owner","admin","researcher","billing_admin","viewer"]}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/CurrentTenantMembershipDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","properties":{"requestId":{"type":"string"},"pageSize":{"type":"number"},"totalCount":{"type":"number"}},"required":["requestId","pageSize","totalCount"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"List current tenant memberships","tags":["tenants","public-docs:tenants","tenants"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}]}},"/tenants/current/memberships/{membershipId}":{"patch":{"operationId":"tenants.current.memberships.update","parameters":[{"name":"membershipId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCurrentTenantMembershipBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CurrentTenantMembershipDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","RESOURCE_NOT_FOUND","STORAGE_RECONCILIATION_JOB_NOT_FOUND","SUBJECT_NOT_IN_TENANT","SUBSCRIPTION_NOT_FOUND","TENANT_DELETION_JOB_NOT_FOUND","TENANT_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["BILLING_STATE_TRANSITION_INVALID","DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","INVOICE_SNAPSHOT_ALREADY_EXISTS","LAST_OWNER_PROTECTION","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","RECONCILIATION_ALREADY_RUNNING","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","TENANT_SLUG_CONFLICT","TENANT_STORAGE_KEY_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["tenants","public-docs:tenants","tenants"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Update a membership"},"delete":{"operationId":"tenants.current.memberships.delete","parameters":[{"name":"membershipId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"removed":{"type":"boolean","enum":[true]}},"required":["removed"]},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","RESOURCE_NOT_FOUND","STORAGE_RECONCILIATION_JOB_NOT_FOUND","SUBJECT_NOT_IN_TENANT","SUBSCRIPTION_NOT_FOUND","TENANT_DELETION_JOB_NOT_FOUND","TENANT_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["BILLING_STATE_TRANSITION_INVALID","DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","INVOICE_SNAPSHOT_ALREADY_EXISTS","LAST_OWNER_PROTECTION","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","RECONCILIATION_ALREADY_RUNNING","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","TENANT_SLUG_CONFLICT","TENANT_STORAGE_KEY_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["tenants","public-docs:tenants","tenants"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Delete a membership"}},"/tenant-invitations":{"post":{"operationId":"tenantInvitations.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTenantInvitationBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TenantInvitationSummaryDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVITATION_EXPIRED","INVITATION_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","INVITATION_ALREADY_ACCEPTED","INVITATION_EMAIL_MISMATCH","INVITATION_REVOKED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["tenant-invitations","public-docs:tenant-invitations","tenant-invitations"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a tenant invitation"},"get":{"operationId":"tenantInvitations.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"sortBy","required":false,"in":"query","schema":{"type":"string"}},{"name":"sortOrder","required":false,"in":"query","schema":{"type":"string","enum":["asc","desc"]}},{"name":"status","required":false,"in":"query","schema":{"type":"string","enum":["pending","accepted","expired","revoked"]}},{"name":"email","required":false,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantInvitationSummaryDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVITATION_EXPIRED","INVITATION_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["tenant-invitations","public-docs:tenant-invitations","tenant-invitations"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"List tenant invitations"}},"/tenant-invitations/{invitationId}/resend-requests":{"post":{"operationId":"tenantInvitations.resendRequests.create","parameters":[{"name":"invitationId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TenantInvitationSummaryDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVITATION_EXPIRED","INVITATION_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["INVITATION_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","INVITATION_ALREADY_ACCEPTED","INVITATION_EMAIL_MISMATCH","INVITATION_REVOKED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["tenant-invitations","public-docs:tenant-invitations","tenant-invitations"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a resend request"}},"/tenant-invitations/{invitationId}/revocation-requests":{"post":{"operationId":"tenantInvitations.revocationRequests.create","parameters":[{"name":"invitationId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TenantInvitationSummaryDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVITATION_EXPIRED","INVITATION_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["INVITATION_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","INVITATION_ALREADY_ACCEPTED","INVITATION_EMAIL_MISMATCH","INVITATION_REVOKED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["tenant-invitations","public-docs:tenant-invitations","tenant-invitations"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a revocation request"}},"/tenant-invitations/validation":{"get":{"operationId":"tenantInvitations.validation.get","parameters":[{"name":"token","required":false,"in":"query","description":"Documented optional so W1 stays additive under frozen v1 compat; runtime still validates.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TenantInvitationValidateResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVITATION_EXPIRED","INVITATION_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}}},"tags":["tenant-invitations","public-docs:tenant-invitations","tenant-invitations"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[],"summary":"List validation for a tenant invitation"}},"/tenant-invitations/acceptance-records":{"post":{"operationId":"tenantInvitations.acceptanceRecords.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AcceptTenantInvitationBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AuthMeResponseDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVITATION_EXPIRED","INVITATION_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","INVITATION_ALREADY_ACCEPTED","INVITATION_EMAIL_MISMATCH","INVITATION_REVOKED"]}}}]}}}}},"tags":["tenant-invitations","public-docs:tenant-invitations","tenant-invitations"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[],"summary":"Create a acceptance record"}},"/user-imports":{"post":{"operationId":"userImports.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateUserImportBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/UserImportResultDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["user-imports","public-docs:user-imports","user-imports"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a user import"}},"/tenants/current/access-review":{"get":{"operationId":"tenants.current.accessReview.get","parameters":[{"name":"expiringWithinDays","required":false,"in":"query","schema":{"minimum":1,"type":"number"}},{"name":"permissionChangeLimit","required":false,"in":"query","schema":{"minimum":1,"type":"number"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TenantAccessReviewSummaryDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["tenants-current-access-review","public-docs:tenants-current-access-review","tenants"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"List access review for a current"}},"/deployment-capabilities":{"get":{"description":"Public, unauthenticated product-shape descriptor. Contains no credentials, hostnames, or bucket names.","operationId":"deploymentCapabilities.get","parameters":[],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeploymentCapabilitiesEnvelopeSwaggerDto"}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}}},"summary":"Get deployment capability descriptor","tags":["deployment-capabilities","public-docs:deployment-capabilities"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[]}},"/tenant-memberships":{"get":{"operationId":"tenantMemberships.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/MembershipSummaryDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","required":["pageSize"],"properties":{"requestId":{"type":"string"},"pageSize":{"type":"number"}}}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["tenant-memberships","public-docs:tenant-memberships","tenant-memberships"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List tenant memberships"}},"/users/{userId}":{"patch":{"operationId":"users.update","parameters":[{"name":"userId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUserAccountBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/UpdateUserAccountResponseDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INITIAL_PASSWORD_REQUIRED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","RESOURCE_NOT_FOUND","SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["CURRENT_SESSION_NOT_REVOCABLE","EMAIL_ALREADY_REGISTERED","IDEMPOTENCY_CONFLICT","LAST_OWNER_PROTECTION","USER_ALREADY_MEMBER"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["users","public-docs:users","users"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Update a user"}},"/team":{"get":{"operationId":"team.get","parameters":[],"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TeamDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Get the current team","tags":["team","public-docs:team","team"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}]},"patch":{"operationId":"team.update","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}},{"name":"If-Match","in":"header","description":"Required precondition. Absent returns 428 PRECONDITION_REQUIRED. A stale tag returns 412 PRECONDITION_FAILED with no write. If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":true,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchTeamBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TeamDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"428":{"description":"PRECONDITION_REQUIRED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Update the current team handle or name","tags":["team","public-docs:team","team"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}]}},"/me":{"get":{"operationId":"me.get","parameters":[],"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/MeDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Get the current user handle profile","tags":["me","public-docs:me","me"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[{"pat":[]}]},"patch":{"operationId":"me.update","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}},{"name":"If-Match","in":"header","description":"Required precondition. Absent returns 428 PRECONDITION_REQUIRED. A stale tag returns 412 PRECONDITION_FAILED with no write. If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":true,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchMeBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/MeDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"428":{"description":"PRECONDITION_REQUIRED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Update the current user handle","tags":["me","public-docs:me","me"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[{"pat":[]}]}},"/resolve":{"get":{"operationId":"resolve.get","parameters":[{"name":"ref","required":true,"in":"query","schema":{"maxLength":256,"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ResolveResponseDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Resolve a dataset reference or console path to ids","tags":["resolve","public-docs:resolve","resolve"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[{"pat":[]}]}},"/cli-login-requests":{"post":{"operationId":"cliLoginRequests.create","parameters":[],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CreateCliLoginRequestResponseDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CLI_LOGIN_ALREADY_CONSUMED","CLI_LOGIN_EXPIRED","CLI_LOGIN_MEMBERSHIP_INVALID","CLI_LOGIN_NOT_APPROVED","CLI_LOGIN_NOT_PENDING","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["CURRENT_SESSION_NOT_REVOCABLE","EMAIL_ALREADY_REGISTERED","IDEMPOTENCY_CONFLICT"]}}}]}}}}},"tags":["cli-login-requests","public-docs:cli-login-requests","cli-login-requests"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[],"summary":"Create a cli login request"}},"/cli-login-requests/{id}":{"get":{"operationId":"cliLoginRequests.get","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CliLoginRequestStatusResponseDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CLI_LOGIN_ALREADY_CONSUMED","CLI_LOGIN_EXPIRED","CLI_LOGIN_MEMBERSHIP_INVALID","CLI_LOGIN_NOT_APPROVED","CLI_LOGIN_NOT_PENDING","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["CLI_LOGIN_NOT_FOUND","NOT_FOUND","SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}}},"tags":["cli-login-requests","public-docs:cli-login-requests","cli-login-requests"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[],"summary":"Get a cli login request"}},"/cli-login-requests/{id}/approval-requests":{"post":{"operationId":"cliLoginRequests.approve","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApproveCliLoginBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CliLoginRequestStatusResponseDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CLI_LOGIN_ALREADY_CONSUMED","CLI_LOGIN_EXPIRED","CLI_LOGIN_MEMBERSHIP_INVALID","CLI_LOGIN_NOT_APPROVED","CLI_LOGIN_NOT_PENDING","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["CLI_LOGIN_NOT_FOUND","NOT_FOUND","SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["CURRENT_SESSION_NOT_REVOCABLE","EMAIL_ALREADY_REGISTERED","IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["cli-login-requests","public-docs:cli-login-requests","cli-login-requests"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a approval request"}},"/cli-login-requests/{id}/denial-requests":{"post":{"operationId":"cliLoginRequests.denialRequests.create","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DenyCliLoginBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CliLoginRequestStatusResponseDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CLI_LOGIN_ALREADY_CONSUMED","CLI_LOGIN_EXPIRED","CLI_LOGIN_MEMBERSHIP_INVALID","CLI_LOGIN_NOT_APPROVED","CLI_LOGIN_NOT_PENDING","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["CLI_LOGIN_NOT_FOUND","NOT_FOUND","SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["CURRENT_SESSION_NOT_REVOCABLE","EMAIL_ALREADY_REGISTERED","IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["cli-login-requests","public-docs:cli-login-requests","cli-login-requests"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a denial request"}},"/cli-login-requests/{id}/consumption-requests":{"post":{"operationId":"cliLoginRequests.consumptionRequests.create","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConsumeCliLoginBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ConsumeCliLoginResponseDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CLI_LOGIN_ALREADY_CONSUMED","CLI_LOGIN_EXPIRED","CLI_LOGIN_MEMBERSHIP_INVALID","CLI_LOGIN_NOT_APPROVED","CLI_LOGIN_NOT_PENDING","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["CLI_LOGIN_NOT_FOUND","NOT_FOUND","SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["CURRENT_SESSION_NOT_REVOCABLE","EMAIL_ALREADY_REGISTERED","IDEMPOTENCY_CONFLICT"]}}}]}}}}},"tags":["cli-login-requests","public-docs:cli-login-requests","cli-login-requests"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[],"summary":"Create a consumption request"}},"/tenants/current/scim-connections":{"get":{"operationId":"tenants.current.scimConnections.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ScimConnectionAdminDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","properties":{"requestId":{"type":"string"},"pageSize":{"type":"number"}},"required":["requestId","pageSize"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["scim-admin","public-docs:scim-admin","scim-admin"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"List scim connections for a current"},"post":{"operationId":"tenants.current.scimConnections.create","parameters":[],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CreateScimConnectionResponseDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["BILLING_STATE_TRANSITION_INVALID","DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","INVOICE_SNAPSHOT_ALREADY_EXISTS","LAST_OWNER_PROTECTION","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","RECONCILIATION_ALREADY_RUNNING","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","TENANT_SLUG_CONFLICT","TENANT_STORAGE_KEY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["scim-admin","public-docs:scim-admin","scim-admin"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateScimConnectionRequestDto"}}}},"summary":"Create a scim connection"}},"/tenants/current/scim-connections/{connectionId}/token-rotations":{"post":{"operationId":"tenants.current.scimConnections.tokenRotations.create","parameters":[{"name":"connectionId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/RotateScimConnectionTokenResponseDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","RESOURCE_NOT_FOUND","STORAGE_RECONCILIATION_JOB_NOT_FOUND","SUBJECT_NOT_IN_TENANT","SUBSCRIPTION_NOT_FOUND","TENANT_DELETION_JOB_NOT_FOUND","TENANT_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["BILLING_STATE_TRANSITION_INVALID","DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","INVOICE_SNAPSHOT_ALREADY_EXISTS","LAST_OWNER_PROTECTION","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","RECONCILIATION_ALREADY_RUNNING","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","TENANT_SLUG_CONFLICT","TENANT_STORAGE_KEY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["scim-admin","public-docs:scim-admin","scim-admin"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a token rotation"}},"/tenants/current/scim-connections/{connectionId}/revocations":{"post":{"operationId":"tenants.current.scimConnections.revocations.create","parameters":[{"name":"connectionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ScimConnectionAdminDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","RESOURCE_NOT_FOUND","STORAGE_RECONCILIATION_JOB_NOT_FOUND","SUBJECT_NOT_IN_TENANT","SUBSCRIPTION_NOT_FOUND","TENANT_DELETION_JOB_NOT_FOUND","TENANT_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["BILLING_STATE_TRANSITION_INVALID","DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","INVOICE_SNAPSHOT_ALREADY_EXISTS","LAST_OWNER_PROTECTION","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","RECONCILIATION_ALREADY_RUNNING","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","TENANT_SLUG_CONFLICT","TENANT_STORAGE_KEY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["scim-admin","public-docs:scim-admin","scim-admin"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a revocation"}},"/tenants/current/audit-log":{"get":{"operationId":"tenants.current.auditLog.list","parameters":[{"name":"from","required":false,"in":"query","schema":{"type":"string"}},{"name":"to","required":false,"in":"query","schema":{"type":"string"}},{"name":"actor","required":false,"in":"query","schema":{"maxLength":256,"type":"string"}},{"name":"actorType","required":false,"in":"query","schema":{"maxLength":64,"type":"string"}},{"name":"action","required":false,"in":"query","schema":{"maxLength":128,"type":"string"}},{"name":"resourceType","required":false,"in":"query","schema":{"maxLength":64,"type":"string"}},{"name":"resourceId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"requestId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantAuditLogEntryDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["tenants-current-audit-log","public-docs:tenants-current-audit-log","tenants"],"x-embodiflow-permission":{"point":"audit:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List audit log for a current"}},"/tenants/current/audit-log/exports":{"get":{"operationId":"tenants.current.auditLog.exports.get","parameters":[{"name":"from","required":false,"in":"query","schema":{"type":"string"}},{"name":"to","required":false,"in":"query","schema":{"type":"string"}},{"name":"actor","required":false,"in":"query","schema":{"maxLength":256,"type":"string"}},{"name":"actorType","required":false,"in":"query","schema":{"maxLength":64,"type":"string"}},{"name":"action","required":false,"in":"query","schema":{"maxLength":128,"type":"string"}},{"name":"resourceType","required":false,"in":"query","schema":{"maxLength":64,"type":"string"}},{"name":"resourceId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"requestId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"pageSize","required":false,"in":"query","schema":{"minimum":1,"type":"number"}},{"name":"pageToken","required":false,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"CSV of the current audit-log query (max 5,000 rows).","content":{"text/csv":{"schema":{"type":"string"}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["tenants-current-audit-log","public-docs:tenants-current-audit-log","tenants"],"x-embodiflow-permission":{"point":"audit:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List exports for a audit log"}},"/secrets":{"get":{"operationId":"secrets.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"List team secrets","tags":["secrets","public-docs:secrets"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}]},"post":{"operationId":"secrets.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTenantSecretBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TenantSecretDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["secrets","public-docs:secrets"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a secret"}},"/secrets/{secretId}":{"put":{"operationId":"secrets.replace","parameters":[{"name":"secretId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateTenantSecretBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TenantSecretDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["secrets","public-docs:secrets"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Update a secret"},"delete":{"operationId":"secrets.delete","parameters":[{"name":"secretId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TenantSecretDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["secrets","public-docs:secrets"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Delete a secret"}},"/projects/{projectId}/secrets":{"get":{"operationId":"projects.secrets.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"List project secrets","tags":["secrets","public-docs:secrets"],"x-embodiflow-permission":{"point":"workflow:read","projectScoped":true},"security":[{"pat":[]}]},"post":{"operationId":"projects.secrets.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTenantSecretBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TenantSecretDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["secrets","public-docs:secrets"],"x-embodiflow-permission":{"point":"project:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a secret"}},"/projects/{projectId}/secrets/{secretId}":{"put":{"operationId":"projects.secrets.replace","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"secretId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateTenantSecretBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TenantSecretDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["secrets","public-docs:secrets"],"x-embodiflow-permission":{"point":"project:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Update a secret"},"delete":{"operationId":"projects.secrets.delete","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"secretId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TenantSecretDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["secrets","public-docs:secrets"],"x-embodiflow-permission":{"point":"project:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Delete a secret"}},"/plans":{"get":{"operationId":"plans.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size. Default 25, maximum 100. Values above the maximum are refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response's `nextPageToken`.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/PlanSummaryDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","required":["pageSize"],"properties":{"requestId":{"type":"string"},"pageSize":{"type":"number"}}}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["billing-plans","public-docs:billing-plans"],"x-embodiflow-permission":{"point":"billing:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List plans"}},"/usage-meters":{"get":{"operationId":"usageMeters.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size. Default 25, maximum 100. Values above the maximum are refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response's `nextPageToken`.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/UsageMeterSummaryDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","required":["pageSize"],"properties":{"requestId":{"type":"string"},"pageSize":{"type":"number"}}}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["billing-meters","public-docs:billing-meters"],"x-embodiflow-permission":{"point":"billing:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List usage meters"}},"/subscriptions/current":{"get":{"operationId":"subscriptions.current.get","parameters":[],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/SubscriptionSummaryDto","nullable":true}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["billing-subscriptions","public-docs:billing-subscriptions"],"x-embodiflow-permission":{"point":"billing:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List current for a subscription"}},"/feature-entitlements":{"get":{"operationId":"featureEntitlements.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size. Default 25, maximum 100. Values above the maximum are refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response's `nextPageToken`.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/FeatureEntitlementSummaryDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","required":["pageSize"],"properties":{"requestId":{"type":"string"},"pageSize":{"type":"number"}}}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["billing-entitlements","public-docs:billing-entitlements"],"x-embodiflow-permission":{"point":"billing:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List feature entitlements"}},"/usage-ledger":{"get":{"operationId":"usageLedger.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size. Default 25, maximum 100. Values above the maximum are refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response's `nextPageToken`.","schema":{"type":"string"}},{"name":"meterCode","required":false,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/UsageLedgerEntryDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["billing-usage-ledger","public-docs:billing-usage-ledger"],"x-embodiflow-permission":{"point":"billing:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List usage ledger"}},"/usage-summary":{"get":{"operationId":"usageSummary.get","parameters":[],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/UsageSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["billing-usage-summary","public-docs:billing-usage-summary"],"x-embodiflow-permission":{"point":"billing:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List usage summary"}},"/tenants/current/usage-summary":{"get":{"operationId":"tenants.current.usageSummary.get","parameters":[{"name":"category","required":false,"in":"query","schema":{"type":"string"}},{"name":"projectId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"userId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TenantUsageSummaryResponse"}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["billing-tenants-current-usage-summary","public-docs:billing-tenants-current-usage-summary","tenants"],"x-embodiflow-permission":{"point":"billing:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List usage summary for a current"}},"/usage":{"get":{"operationId":"usage.get","parameters":[{"name":"period","required":false,"in":"query","schema":{"enum":["current","previous"],"type":"string"}},{"name":"groupBy","required":false,"in":"query","schema":{"enum":["project","category"],"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/UsageAggregationDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","BILLING_BLOCKED","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Usage for the current or previous UTC calendar month","tags":["billing-usage","public-docs:billing-usage"],"x-embodiflow-permission":{"point":"billing:read","projectScoped":false},"security":[{"pat":[]}]}},"/usage/budget":{"get":{"operationId":"usage.budget.get","parameters":[{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/UsageBudgetDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","BILLING_BLOCKED","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"412":{"description":"PRECONDITION_FAILED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Team storage cap and optional money budget","tags":["billing-usage","public-docs:billing-usage"],"x-embodiflow-permission":{"point":"billing:read","projectScoped":false},"security":[{"pat":[]}]},"put":{"operationId":"usage.budget.replace","parameters":[{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUsageBudgetBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/UsageBudgetDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","BILLING_BLOCKED","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["ALGORITHM_VERSION_DISABLED","ALGORITHM_VERSION_EXISTS","BILLING_STATE_TRANSITION_INVALID","IDEMPOTENCY_CONFLICT","INVOICE_SNAPSHOT_ALREADY_EXISTS","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"422":{"description":"Unprocessable entity. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[422]},"code":{"type":"string","enum":["USAGE_LIMIT_ABOVE_CEILING"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Set the team storage cap and optional money budget","tags":["billing-usage","public-docs:billing-usage"],"x-embodiflow-permission":{"point":"billing:write","projectScoped":false},"security":[{"pat":[]}]}},"/usage/estimates":{"post":{"operationId":"usage.estimates.create","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateUsageEstimateBodyDto"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/UsageEstimateDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","BILLING_BLOCKED","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["ALGORITHM_VERSION_DISABLED","ALGORITHM_VERSION_EXISTS","BILLING_STATE_TRANSITION_INVALID","IDEMPOTENCY_CONFLICT","INVOICE_SNAPSHOT_ALREADY_EXISTS","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Estimate time, meter units, and list price for a planned action","tags":["billing-usage","public-docs:billing-usage"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}]}},"/tenants/current/usage-attestation":{"get":{"operationId":"tenants.current.usageAttestation.get","parameters":[{"name":"periodStart","required":false,"in":"query","schema":{"type":"string"}},{"name":"periodEnd","required":false,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/UsageAttestationExportDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["billing-tenants-current-usage-summary","public-docs:billing-tenants-current-usage-summary","tenants"],"x-embodiflow-permission":{"point":"billing:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List usage attestation for a current"}},"/tenants/current/invoice-snapshots":{"post":{"operationId":"tenants.current.invoiceSnapshots.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateInvoiceSnapshotBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/InvoiceSnapshotDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"},"created":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["requestId","created"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["BILLING_STATE_TRANSITION_INVALID","DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","INVOICE_SNAPSHOT_ALREADY_EXISTS","LAST_OWNER_PROTECTION","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","RECONCILIATION_ALREADY_RUNNING","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","TENANT_SLUG_CONFLICT","TENANT_STORAGE_KEY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["billing-tenants-current-invoice-snapshots","public-docs:billing-tenants-current-invoice-snapshots","tenants"],"x-embodiflow-permission":{"point":"billing:write","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a invoice snapshot"},"get":{"operationId":"tenants.current.invoiceSnapshots.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/InvoiceSnapshotDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["billing-tenants-current-invoice-snapshots","public-docs:billing-tenants-current-invoice-snapshots","tenants"],"x-embodiflow-permission":{"point":"billing:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List invoice snapshots for a current"}},"/tenants/current/billing-state":{"patch":{"operationId":"tenants.current.billingState.update","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateTenantBillingStateBodyDto"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"status":{"type":"string"},"freezeReason":{"type":"string","nullable":true}},"required":["status","freezeReason"]},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["BILLING_STATE_TRANSITION_INVALID","DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","INVOICE_SNAPSHOT_ALREADY_EXISTS","LAST_OWNER_PROTECTION","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","RECONCILIATION_ALREADY_RUNNING","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","TENANT_SLUG_CONFLICT","TENANT_STORAGE_KEY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["billing-tenants-current-billing-state","public-docs:billing-tenants-current-billing-state","tenants"],"x-embodiflow-permission":{"point":"billing:write","projectScoped":false},"security":[{"pat":[]}],"summary":"Update a billing state"}},"/workflow-definitions":{"get":{"operationId":"workflowDefinitions.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size. Default 25, maximum 100. Values above the maximum are refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response's `nextPageToken`.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["workflow-definitions","public-docs:workflow-definitions"],"x-embodiflow-permission":{"point":"workflow:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List workflow definitions"},"post":{"operationId":"workflowDefinitions.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateWorkflowDefinitionBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"allOf":[{"$ref":"#/components/schemas/WorkflowDefinitionView"},{"type":"object","properties":{"revision":{"$ref":"#/components/schemas/WorkflowRevisionView"}},"required":["revision"]}]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["workflow-definitions","public-docs:workflow-definitions"],"x-embodiflow-permission":{"point":"workflow:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a workflow definition"}},"/workflow-definitions/{id}":{"get":{"operationId":"workflowDefinitions.get","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/WorkflowDefinitionView"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["workflow-definitions","public-docs:workflow-definitions"],"x-embodiflow-permission":{"point":"workflow:read","projectScoped":false},"security":[{"pat":[]}],"summary":"Get a workflow definition"},"patch":{"operationId":"workflowDefinitions.update","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}},{"name":"if-match","required":true,"in":"header","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchWorkflowDefinitionBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/WorkflowDefinitionView"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["workflow-definitions","public-docs:workflow-definitions"],"x-embodiflow-permission":{"point":"workflow:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Update a workflow definition"}},"/workflow-definitions/{id}/revisions":{"post":{"operationId":"workflowDefinitions.revisions.create","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateWorkflowRevisionBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/WorkflowRevisionView"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["workflow-definitions","public-docs:workflow-definitions"],"x-embodiflow-permission":{"point":"workflow:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a revision"}},"/workflow-definitions/{id}/revisions/{revision}":{"get":{"operationId":"workflowDefinitions.revisions.get","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}},{"name":"revision","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/WorkflowRevisionView"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["workflow-definitions","public-docs:workflow-definitions"],"x-embodiflow-permission":{"point":"workflow:read","projectScoped":false},"security":[{"pat":[]}],"summary":"Get a revision"},"put":{"operationId":"workflowDefinitions.revisions.replace","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}},{"name":"revision","required":true,"in":"path","schema":{"type":"string"}},{"name":"if-match","required":true,"in":"header","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Required precondition. Absent returns 428 PRECONDITION_REQUIRED. A stale tag returns 412 PRECONDITION_FAILED with no write. If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":true,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReplaceWorkflowRevisionBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/WorkflowRevisionView"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"428":{"description":"PRECONDITION_REQUIRED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["workflow-definitions","public-docs:workflow-definitions"],"x-embodiflow-permission":{"point":"workflow:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Update a revision"}},"/workflow-definitions/{id}/revisions/{revision}/layout":{"put":{"operationId":"workflowDefinitions.revisions.layout.replace","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}},{"name":"revision","required":true,"in":"path","schema":{"type":"string"}},{"name":"if-match","required":true,"in":"header","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReplaceWorkflowLayoutBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/WorkflowRevisionView"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["workflow-definitions","public-docs:workflow-definitions"],"x-embodiflow-permission":{"point":"workflow:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Update a layout"}},"/workflow-definitions/{id}/revisions/{revision}/publication":{"post":{"operationId":"workflowDefinitions.revisions.publication.create","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}},{"name":"revision","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/WorkflowRevisionView"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["workflow-definitions","public-docs:workflow-definitions"],"x-embodiflow-permission":{"point":"workflow:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a publication"}},"/workflow-validations":{"post":{"operationId":"workflowValidations.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WorkflowValidationResponse"}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["workflow-validations","public-docs:workflow-validations"],"x-embodiflow-permission":{"point":"workflow:read","projectScoped":false},"security":[{"pat":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"spec":{"type":"object","additionalProperties":true},"projectId":{"type":"string"}},"required":["spec"]}}}},"summary":"Create a workflow validation"}},"/projects/{projectId}/workflow-bindings":{"get":{"operationId":"projects.workflowBindings.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","in":"query","required":false,"description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"pageToken","in":"query","required":false,"description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["workflow-bindings","public-docs:workflow-bindings"],"x-embodiflow-permission":{"point":"workflow:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List workflow bindings for a project"}},"/projects/{projectId}/workflow-bindings/{purpose}":{"put":{"operationId":"projects.workflowBindings.replace","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"purpose","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/WorkflowBindingView"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["workflow-bindings","public-docs:workflow-bindings"],"x-embodiflow-permission":{"point":"workflow:manage","projectScoped":true},"security":[{"pat":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"revisionRef":{"type":"object","additionalProperties":true},"triggers":{"type":"object","additionalProperties":true}},"required":["revisionRef","triggers"]}}}},"summary":"Update a workflow binding"}},"/projects/{projectId}/workflow-run-plans":{"post":{"operationId":"projects.workflowRunPlans.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"data":{"type":"object","properties":{"steps":{"type":"array","items":{"type":"object","properties":{"runIndex":{"type":"number"},"stepId":{"type":"string"},"scopeKey":{"type":"string"},"kind":{"type":"string","enum":["system","algorithm","gather","review"]},"recordingId":{"type":"string","nullable":true},"dataVersion":{"type":"string","nullable":true},"algorithmRevisionId":{"type":"string","nullable":true},"algorithmVersion":{"type":"string","nullable":true},"cached":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"dependsOn":{"type":"array","items":{"type":"string"}}},"required":["runIndex","stepId","scopeKey","kind","recordingId","dataVersion","algorithmRevisionId","algorithmVersion","cached","dependsOn"]}},"recordings":{"type":"object","properties":{"included":{"type":"array","items":{"type":"object","properties":{"recordingId":{"type":"string"},"captureSessionId":{"type":"string","nullable":true},"sessionRole":{"type":"string","enum":["other","calibration","mapping","gripper_calibration","demo"],"nullable":true}},"required":["recordingId","captureSessionId","sessionRole"]}},"skipped":{"type":"array","items":{"type":"object","properties":{"recordingId":{"type":"string"},"reason":{"type":"string"}},"required":["recordingId","reason"]}}},"required":["included","skipped"]},"estimate":{"$ref":"#/components/schemas/FlowEstimate"},"cachedSteps":{"type":"number"},"workflowRevisionId":{"type":"string"},"planToken":{"type":"string"},"runGroupId":{"type":"object","additionalProperties":true},"runs":{"type":"object","additionalProperties":true}},"required":["steps","recordings","estimate","cachedSteps","workflowRevisionId","planToken"]}},"required":["data"]},{"type":"object","properties":{"data":{"type":"object","properties":{"runGroupId":{"type":"string"},"runs":{"type":"array","items":{"$ref":"#/components/schemas/FlowRunSummary"}},"steps":{"type":"object","additionalProperties":true},"recordings":{"type":"object","additionalProperties":true},"estimate":{"type":"object","additionalProperties":true},"cachedSteps":{"type":"object","additionalProperties":true},"workflowRevisionId":{"type":"object","additionalProperties":true},"planToken":{"type":"object","additionalProperties":true}},"required":["runGroupId","runs"]}},"required":["data"]}]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["workflow-run-plans","public-docs:workflow-run-plans"],"x-embodiflow-permission":{"point":"workflow:run","projectScoped":true},"security":[{"pat":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"revisionRef":{"type":"string"},"mode":{"type":"string","enum":["normal","test"]},"input":{"$ref":"#/components/schemas/Record"},"params":{"$ref":"#/components/schemas/Record"}}}}}},"summary":"Create a workflow run plan"}},"/projects/{projectId}/workflow-runs":{"post":{"operationId":"projects.workflowRuns.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"data":{"type":"object","properties":{"steps":{"type":"array","items":{"type":"object","properties":{"runIndex":{"type":"number"},"stepId":{"type":"string"},"scopeKey":{"type":"string"},"kind":{"type":"string","enum":["system","algorithm","gather","review"]},"recordingId":{"type":"string","nullable":true},"dataVersion":{"type":"string","nullable":true},"algorithmRevisionId":{"type":"string","nullable":true},"algorithmVersion":{"type":"string","nullable":true},"cached":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"dependsOn":{"type":"array","items":{"type":"string"}}},"required":["runIndex","stepId","scopeKey","kind","recordingId","dataVersion","algorithmRevisionId","algorithmVersion","cached","dependsOn"]}},"recordings":{"type":"object","properties":{"included":{"type":"array","items":{"type":"object","properties":{"recordingId":{"type":"string"},"captureSessionId":{"type":"string","nullable":true},"sessionRole":{"type":"string","enum":["other","calibration","mapping","gripper_calibration","demo"],"nullable":true}},"required":["recordingId","captureSessionId","sessionRole"]}},"skipped":{"type":"array","items":{"type":"object","properties":{"recordingId":{"type":"string"},"reason":{"type":"string"}},"required":["recordingId","reason"]}}},"required":["included","skipped"]},"estimate":{"$ref":"#/components/schemas/FlowEstimate"},"cachedSteps":{"type":"number"},"workflowRevisionId":{"type":"string"},"planToken":{"type":"string"},"runGroupId":{"type":"object","additionalProperties":true},"runs":{"type":"object","additionalProperties":true}},"required":["steps","recordings","estimate","cachedSteps","workflowRevisionId","planToken"]}},"required":["data"]},{"type":"object","properties":{"data":{"type":"object","properties":{"runGroupId":{"type":"string"},"runs":{"type":"array","items":{"$ref":"#/components/schemas/FlowRunSummary"}},"steps":{"type":"object","additionalProperties":true},"recordings":{"type":"object","additionalProperties":true},"estimate":{"type":"object","additionalProperties":true},"cachedSteps":{"type":"object","additionalProperties":true},"workflowRevisionId":{"type":"object","additionalProperties":true},"planToken":{"type":"object","additionalProperties":true}},"required":["runGroupId","runs"]}},"required":["data"]}]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["workflow-runs","public-docs:workflow-runs"],"x-embodiflow-permission":{"point":"workflow:run","projectScoped":true},"security":[{"pat":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"revisionRef":{"type":"string"},"mode":{"type":"string","enum":["normal","test"]},"input":{"$ref":"#/components/schemas/Record"},"params":{"$ref":"#/components/schemas/Record"}}}}}},"summary":"Create a workflow run"},"get":{"operationId":"projects.workflowRuns.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size. Default 25, maximum 100. Values above the maximum are refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response's `nextPageToken`.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["workflow-runs","public-docs:workflow-runs"],"x-embodiflow-permission":{"point":"workflow:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List workflow runs for a project"}},"/me/workflow-runs":{"get":{"operationId":"me.workflowRuns.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","schema":{"type":"string"}},{"name":"projectId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"definitionId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"trigger","required":false,"in":"query","schema":{"type":"string"}},{"name":"createdAfter","required":false,"in":"query","schema":{"type":"string"}},{"name":"createdBefore","required":false,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["me-workflow-runs","public-docs:me-workflow-runs"],"x-embodiflow-permission":{"point":"workflow:read","projectScoped":false,"own":true},"security":[{"pat":[]}],"summary":"List workflow runs for a me"}},"/workflow-runs/{runId}":{"get":{"operationId":"workflowRuns.get","parameters":[{"name":"runId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"summary":{"type":"object","properties":{"session":{"$ref":"#/components/schemas/Record"},"recording":{"$ref":"#/components/schemas/Record"},"batch":{"$ref":"#/components/schemas/Record"},"version":{"$ref":"#/components/schemas/Record"}},"required":["session","recording","batch","version"]},"counts":{"type":"object","properties":{"stepRuns":{"type":"number"},"recordings":{"type":"number"},"cached":{"type":"number"}},"required":["stepRuns","recordings","cached"]},"status":{"type":"string"},"recordingCount":{"type":"number"},"workflowName":{"type":"string","nullable":true},"failure":{"$ref":"#/components/schemas/FailureReasonDto","nullable":true},"id":{"type":"string"},"projectId":{"type":"string","nullable":true},"mode":{"type":"string"},"trigger":{"type":"string","nullable":true},"runGroupId":{"type":"string","nullable":true},"estimate":{"type":"object","additionalProperties":true},"specHash":{"type":"string","nullable":true},"errorCode":{"type":"string","nullable":true},"createdAt":{"type":"string","nullable":true},"startedAt":{"type":"string","nullable":true},"finishedAt":{"type":"string","nullable":true}},"required":["summary","counts"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND","WORKFLOW_RUN_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["workflow-runs","public-docs:workflow-runs"],"x-embodiflow-permission":{"point":"workflow:read","projectScoped":true},"security":[{"pat":[]}],"summary":"Get a workflow run"}},"/workflow-runs/{runId}/steps":{"get":{"operationId":"workflowRuns.steps.list","parameters":[{"name":"runId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size. Default 25, maximum 100. Values above the maximum are refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response's `nextPageToken`.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND","WORKFLOW_RUN_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["workflow-runs","public-docs:workflow-runs"],"x-embodiflow-permission":{"point":"workflow:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List steps for a workflow run"}},"/workflow-runs/{runId}/rerun-requests":{"post":{"operationId":"workflowRuns.rerunRequests.create","parameters":[{"name":"runId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RerunRequestDto"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"data":{"type":"object","properties":{"steps":{"type":"array","items":{"type":"object","properties":{"stepId":{"type":"string"},"scopeKey":{"type":"string"},"recordingId":{"type":"string","nullable":true},"cached":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["stepId","scopeKey","recordingId","cached"]}},"recordings":{"type":"array","items":{"type":"string"}},"estimate":{"type":"object","properties":{"cpuSeconds":{"type":"number"},"gpuSeconds":{"type":"number"},"storageBytes":{"type":"number"},"durationSeconds":{"type":"number"},"costMinor":{"type":"number"},"currency":{"type":"string","enum":["usd"]}},"required":["cpuSeconds","gpuSeconds","storageBytes","durationSeconds","costMinor","currency"]},"workflowRunId":{"type":"object","additionalProperties":true},"status":{"type":"object","additionalProperties":true}},"required":["steps","recordings","estimate"]}},"required":["data"]},{"type":"object","properties":{"data":{"type":"object","properties":{"workflowRunId":{"type":"string"},"status":{"type":"string"},"steps":{"type":"array","items":{"type":"object","properties":{"stepId":{"type":"string"},"scopeKey":{"type":"string"},"recordingId":{"type":"string","nullable":true},"cached":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["stepId","scopeKey","recordingId","cached"]}},"recordings":{"type":"array","items":{"type":"string"}},"estimate":{"type":"object","properties":{"cpuSeconds":{"type":"number"},"gpuSeconds":{"type":"number"},"storageBytes":{"type":"number"},"durationSeconds":{"type":"number"},"costMinor":{"type":"number"},"currency":{"type":"string","enum":["usd"]}},"required":["cpuSeconds","gpuSeconds","storageBytes","durationSeconds","costMinor","currency"]}},"required":["workflowRunId","status","steps","recordings","estimate"]}},"required":["data"]}]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND","WORKFLOW_RUN_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT","WORKFLOW_RERUN_NOT_ALLOWED","WORKFLOW_RUN_STATE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["workflow-runs","public-docs:workflow-runs"],"x-embodiflow-permission":{"point":"workflow:run","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a rerun request"}},"/workflow-runs/{runId}/cancellation-requests":{"post":{"operationId":"workflowRuns.cancellationRequests.create","parameters":[{"name":"runId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"workflowRunId":{"type":"string"},"status":{"type":"string"},"idempotentReuse":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"requestedAt":{"type":"string"}},"required":["workflowRunId","status","idempotentReuse","requestedAt"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND","WORKFLOW_RUN_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT","WORKFLOW_RERUN_NOT_ALLOWED","WORKFLOW_RUN_STATE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["workflow-runs","public-docs:workflow-runs"],"x-embodiflow-permission":{"point":"workflow:run","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a cancellation request"}},"/workflow-runs/{runId}/recordings":{"get":{"operationId":"workflowRuns.recordings.list","parameters":[{"name":"runId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size. Default 25, maximum 100. Values above the maximum are refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response's `nextPageToken`.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND","WORKFLOW_RUN_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["workflow-runs","public-docs:workflow-runs"],"x-embodiflow-permission":{"point":"workflow:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List recordings for a workflow run"}},"/workflow-step-runs/{stepRunId}":{"get":{"operationId":"workflowStepRuns.get","parameters":[{"name":"stepRunId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"eta":{"type":"object","properties":{"secondsPerInputMinute":{"type":"number"},"recordingSeconds":{"type":"number"}},"required":["secondsPerInputMinute","recordingSeconds"],"nullable":true},"usage":{"type":"object","properties":{"cpuSeconds":{"type":"string"},"gpuSeconds":{"type":"string"},"wallSeconds":{"type":"string"}},"required":["cpuSeconds","gpuSeconds","wallSeconds"]},"namespace":{"type":"string","nullable":true},"jobName":{"type":"string","nullable":true},"findings":{"type":"array","items":{"type":"object","properties":{"checkId":{"type":"string"},"status":{"type":"string"},"messageParams":{"$ref":"#/components/schemas/Record","nullable":true}},"required":["checkId","status","messageParams"]}},"verdict":{"type":"string"},"blockingCheckIds":{"type":"array","items":{"type":"string"}},"id":{"type":"string"},"workflowRunId":{"type":"string"},"recordingId":{"type":"string","nullable":true},"stepId":{"type":"string"},"kind":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string","nullable":true},"failureClass":{"type":"string","nullable":true},"exitCode":{"type":"number","nullable":true},"message":{"type":"string","nullable":true},"queuedAt":{"type":"string","nullable":true},"startedAt":{"type":"string","nullable":true},"finishedAt":{"type":"string","nullable":true},"dataVersion":{"type":"string","nullable":true},"cacheSourceStepRunId":{"type":"string","nullable":true},"imageDigest":{"type":"string","nullable":true},"resources":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]},{"$ref":"#/components/schemas/JsonObject"},{"$ref":"#/components/schemas/JsonArray"}],"nullable":true},"progress":{"type":"object","properties":{"done":{"type":"number"},"total":{"type":"number","nullable":true},"message":{"type":"string","nullable":true},"reportedAt":{"type":"string","nullable":true}},"required":["done","total","message","reportedAt"],"nullable":true},"blockedBy":{"type":"array","items":{"type":"object","properties":{"stepId":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string","nullable":true}},"required":["stepId","status","reason"]}}},"required":["eta","usage","namespace","jobName","id","workflowRunId","recordingId","stepId","kind","status","reason","failureClass","exitCode","message","queuedAt","startedAt","finishedAt","dataVersion","cacheSourceStepRunId","imageDigest","resources","progress","blockedBy"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["workflow-step-runs","public-docs:workflow-step-runs"],"x-embodiflow-permission":{"point":"workflow:read","projectScoped":true},"security":[{"pat":[]}],"summary":"Get a workflow step run"}},"/workflow-step-runs/{stepRunId}/outputs":{"get":{"operationId":"workflowStepRuns.outputs.list","parameters":[{"name":"stepRunId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","in":"query","required":false,"description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"pageToken","in":"query","required":false,"description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["workflow-step-runs","public-docs:workflow-step-runs"],"x-embodiflow-permission":{"point":"workflow:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List outputs for a workflow step run"}},"/workflow-step-runs/{stepRunId}/log-tail":{"get":{"operationId":"workflowStepRuns.logTail.get","parameters":[{"name":"stepRunId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"text":{"type":"string"}},"required":["text"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["workflow-step-runs","public-docs:workflow-step-runs"],"x-embodiflow-permission":{"point":"workflow:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List log tail for a workflow step run"}},"/workflow-step-runs/{stepRunId}/download-sessions":{"post":{"operationId":"workflowStepRuns.downloadSessions.create","parameters":[{"name":"stepRunId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"data":{"type":"object","properties":{"absent":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"missing":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"target":{"type":"string","enum":["logs"]},"urls":{"type":"array","items":{"type":"object","properties":{"container":{"type":"string"},"objectKey":{"type":"string"},"url":{"type":"string"}},"required":["container","objectKey","url"]}}},"required":["target","urls"]}},"required":["data"]},{"type":"object","properties":{"data":{"type":"object","properties":{"target":{"type":"string"},"urls":{"type":"array","items":{"type":"object","properties":{"logicalPath":{"type":"string"},"objectKey":{"type":"string"},"url":{"type":"string"},"bytes":{"type":"string"},"sha256":{"type":"string"}},"required":["logicalPath","objectKey","url","bytes","sha256"]}}},"required":["target","urls"]}},"required":["data"]}]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["workflow-step-runs","public-docs:workflow-step-runs"],"x-embodiflow-permission":{"point":"workflow:read","projectScoped":true},"security":[{"pat":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"target":{"type":"string"},"container":{"type":"string"},"itemIndex":{"type":"number"},"paths":{"type":"array","items":{"type":"string"}}}}}}},"summary":"Create a download session"}},"/projects/{projectId}/outdated-outputs":{"get":{"operationId":"projects.outdatedOutputs.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"steps":{"type":"array","items":{"type":"object","properties":{"stepId":{"type":"string"},"outdatedCount":{"type":"number"},"recordings":{"type":"array","items":{"$ref":"#/components/schemas/OutdatedRecording"}}},"required":["stepId","outdatedCount","recordings"]}}},"required":["steps"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["outdated-outputs","public-docs:outdated-outputs"],"x-embodiflow-permission":{"point":"workflow:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List outdated outputs for a project"}},"/projects/{projectId}/workflow-backfills":{"post":{"operationId":"projects.workflowBackfills.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BackfillRequestDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"data":{"type":"object","properties":{"steps":{"type":"array","items":{"type":"object","properties":{"runIndex":{"type":"number"},"stepId":{"type":"string"},"scopeKey":{"type":"string"},"kind":{"type":"string","enum":["system","algorithm","gather","review"]},"recordingId":{"type":"string","nullable":true},"dataVersion":{"type":"string","nullable":true},"algorithmRevisionId":{"type":"string","nullable":true},"algorithmVersion":{"type":"string","nullable":true},"cached":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"dependsOn":{"type":"array","items":{"type":"string"}}},"required":["runIndex","stepId","scopeKey","kind","recordingId","dataVersion","algorithmRevisionId","algorithmVersion","cached","dependsOn"]}},"recordings":{"type":"object","properties":{"included":{"type":"array","items":{"type":"object","properties":{"recordingId":{"type":"string"},"captureSessionId":{"type":"string","nullable":true},"sessionRole":{"type":"string","enum":["other","calibration","mapping","gripper_calibration","demo"],"nullable":true}},"required":["recordingId","captureSessionId","sessionRole"]}},"skipped":{"type":"array","items":{"type":"object","properties":{"recordingId":{"type":"string"},"reason":{"type":"string"}},"required":["recordingId","reason"]}}},"required":["included","skipped"]},"estimate":{"$ref":"#/components/schemas/FlowEstimate"},"cachedSteps":{"type":"number"},"workflowRevisionId":{"type":"string"},"planToken":{"type":"string"},"runGroupId":{"type":"object","additionalProperties":true},"runs":{"type":"object","additionalProperties":true}},"required":["steps","recordings","estimate","cachedSteps","workflowRevisionId","planToken"]}},"required":["data"]},{"type":"object","properties":{"data":{"type":"object","properties":{"runGroupId":{"type":"string"},"runs":{"type":"array","items":{"$ref":"#/components/schemas/FlowRunSummary"}},"steps":{"type":"object","additionalProperties":true},"recordings":{"type":"object","additionalProperties":true},"estimate":{"type":"object","additionalProperties":true},"cachedSteps":{"type":"object","additionalProperties":true},"workflowRevisionId":{"type":"object","additionalProperties":true},"planToken":{"type":"object","additionalProperties":true}},"required":["runGroupId","runs"]}},"required":["data"]}]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["workflow-backfills","public-docs:workflow-backfills"],"x-embodiflow-permission":{"point":"workflow:run","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a workflow backfill"}},"/workflow-runs/{runId}/review-gates":{"get":{"operationId":"workflowRuns.reviewGates.list","parameters":[{"name":"runId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size. Default 25, maximum 100. Values above the maximum are refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response's `nextPageToken`.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND","WORKFLOW_RUN_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["workflow-runs","public-docs:workflow-runs"],"x-embodiflow-permission":{"point":"workflow:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List review gates for a workflow run"}},"/workflow-review-gates/{gateId}/decisions":{"post":{"operationId":"workflowReviewGates.decisions.create","parameters":[{"name":"gateId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReviewDecisionDto"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ReviewGateView"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["workflow-review-gates","public-docs:workflow-review-gates"],"x-embodiflow-permission":{"point":"approval:decide","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a decision"}},"/projects/{projectId}/saved-views":{"get":{"operationId":"projects.savedViews.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"List saved views in a project","tags":["saved-views","public-docs:saved-views"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}]},"post":{"operationId":"projects.savedViews.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateSavedViewBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/SavedViewDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Create a saved episode filter view","tags":["saved-views","public-docs:saved-views"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}]}},"/projects/{projectId}/saved-views/{savedViewId}":{"get":{"operationId":"projects.savedViews.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"savedViewId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/SavedViewDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Get a saved view","tags":["saved-views","public-docs:saved-views"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}]},"patch":{"operationId":"projects.savedViews.update","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"savedViewId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchSavedViewBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/SavedViewDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Patch a saved view","tags":["saved-views","public-docs:saved-views"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}]},"delete":{"operationId":"projects.savedViews.delete","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"savedViewId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"deleted":{"type":"boolean","enum":[true]}},"required":["deleted"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Delete a saved view","tags":["saved-views","public-docs:saved-views"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}]}},"/projects/{projectId}/episodes":{"get":{"operationId":"projects.episodes.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"verdict","required":false,"in":"query","schema":{"type":"string","enum":["fail","warning","incomplete","pass","not_checked"]}},{"name":"failingCheck","required":false,"in":"query","schema":{"type":"string"}},{"name":"recordingId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"collectionOrderId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"collectionTaskId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"collectorId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"uploadedAfter","required":false,"in":"query","schema":{"pattern":"([Zz]|[+-]\\d{2}:?\\d{2})$","type":"string"}},{"name":"uploadedBefore","required":false,"in":"query","schema":{"pattern":"([Zz]|[+-]\\d{2}:?\\d{2})$","type":"string"}},{"name":"task","required":false,"in":"query","schema":{"type":"string"}},{"name":"taskExact","required":false,"in":"query","schema":{"minLength":1,"type":"string"}},{"name":"taskMissing","required":false,"in":"query","schema":{"type":"boolean"}},{"name":"outcome","required":false,"in":"query","schema":{"type":"string","enum":["success","failure","partial"]}},{"name":"tag","required":false,"in":"query","schema":{"type":"string"}},{"name":"attribute","required":false,"in":"query","schema":{"additionalProperties":{"type":"string"},"type":"object"}},{"name":"splitTag","required":false,"in":"query","schema":{"type":"string","enum":["train","val","test"]}},{"name":"versionSplit","required":false,"in":"query","schema":{"type":"string","enum":["train","val","test"]}},{"name":"durationMin","required":false,"in":"query","schema":{"type":"number"}},{"name":"durationMax","required":false,"in":"query","schema":{"type":"number"}},{"name":"durationMaxExclusive","required":false,"in":"query","schema":{"type":"number"}},{"name":"subtaskCountMin","required":false,"in":"query","schema":{"type":"number"}},{"name":"subtaskCountMax","required":false,"in":"query","schema":{"type":"number"}},{"name":"subtaskCountMaxExclusive","required":false,"in":"query","schema":{"type":"number"}},{"name":"cameraCountMin","required":false,"in":"query","schema":{"type":"number"}},{"name":"cameraCountMax","required":false,"in":"query","schema":{"type":"number"}},{"name":"cameraCountMaxExclusive","required":false,"in":"query","schema":{"type":"number"}},{"name":"fpsMin","required":false,"in":"query","schema":{"type":"number"}},{"name":"fpsMax","required":false,"in":"query","schema":{"type":"number"}},{"name":"fpsMaxExclusive","required":false,"in":"query","schema":{"type":"number"}},{"name":"idleFractionMin","required":false,"in":"query","schema":{"type":"number"}},{"name":"idleFractionMax","required":false,"in":"query","schema":{"type":"number"}},{"name":"idleFractionMaxExclusive","required":false,"in":"query","schema":{"type":"number"}},{"name":"sceneId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"labelState","required":false,"in":"query","schema":{"type":"string","enum":["suggested","labeled","approved","rejected"]}},{"name":"hasSubtasks","required":false,"in":"query","schema":{"type":"boolean"}},{"name":"annotationJobId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"selectionRunId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"q","required":false,"in":"query","description":"Natural-language rank within the project. Ignores sort.","schema":{"maxLength":8000,"type":"string"}},{"name":"sort","required":false,"in":"query","schema":{"type":"string","enum":["upload_date","duration","verdict","recording_name"]}},{"name":"order","required":false,"in":"query","schema":{"type":"string","enum":["asc","desc"]}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"List episodes in a project","tags":["episodes","public-docs:episodes"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}]}},"/projects/{projectId}/episodes/{episodeId}/similar":{"get":{"operationId":"projects.episodes.similar.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"episodeId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","in":"query","required":false,"description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},{"name":"pageToken","in":"query","required":false,"description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/EpisodeListRowDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","required":["pageSize"],"properties":{"requestId":{"type":"string"},"pageSize":{"type":"number"}}}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"EPISODE_NOT_INDEXED"},"429":{"$ref":"#/components/responses/AuthRateLimited"},"503":{"description":"SEMANTIC_SEARCH_UNAVAILABLE"}},"summary":"Find similar episodes in the same project","tags":["episodes","public-docs:episodes"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}]}},"/projects/{projectId}/episodes/{episodeId}/revisions":{"get":{"operationId":"projects.episodes.revisions.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"episodeId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/EpisodeRevisionDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"List revisions of an episode","tags":["episodes","public-docs:episodes"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}]},"post":{"operationId":"projects.episodes.revisions.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"episodeId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateEpisodeRevisionBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/EpisodeRevisionDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Append one episode revision (never If-Match)","tags":["episodes","public-docs:episodes"],"x-embodiflow-permission":{"point":"annotation:write","projectScoped":true},"security":[{"pat":[]}]}},"/projects/{projectId}/episodes/{episodeId}":{"get":{"operationId":"projects.episodes.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"episodeId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/EpisodeDetailDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Get an episode","tags":["episodes","public-docs:episodes"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}]}},"/projects/{projectId}/episode-count":{"get":{"operationId":"projects.episodeCount.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size. Default 25, maximum 100. Values above the maximum are refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response's `nextPageToken`.","schema":{"type":"string"}},{"name":"verdict","required":false,"in":"query","schema":{"type":"string","enum":["fail","warning","incomplete","pass","not_checked"]}},{"name":"failingCheck","required":false,"in":"query","schema":{"type":"string"}},{"name":"recordingId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"collectionOrderId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"collectionTaskId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"collectorId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"uploadedAfter","required":false,"in":"query","schema":{"pattern":"([Zz]|[+-]\\d{2}:?\\d{2})$","type":"string"}},{"name":"uploadedBefore","required":false,"in":"query","schema":{"pattern":"([Zz]|[+-]\\d{2}:?\\d{2})$","type":"string"}},{"name":"task","required":false,"in":"query","schema":{"type":"string"}},{"name":"taskExact","required":false,"in":"query","schema":{"minLength":1,"type":"string"}},{"name":"taskMissing","required":false,"in":"query","schema":{"type":"boolean"}},{"name":"outcome","required":false,"in":"query","schema":{"type":"string","enum":["success","failure","partial"]}},{"name":"tag","required":false,"in":"query","schema":{"type":"string"}},{"name":"attribute","required":false,"in":"query","schema":{"additionalProperties":{"type":"string"},"type":"object"}},{"name":"splitTag","required":false,"in":"query","schema":{"type":"string","enum":["train","val","test"]}},{"name":"versionSplit","required":false,"in":"query","schema":{"type":"string","enum":["train","val","test"]}},{"name":"durationMin","required":false,"in":"query","schema":{"type":"number"}},{"name":"durationMax","required":false,"in":"query","schema":{"type":"number"}},{"name":"durationMaxExclusive","required":false,"in":"query","schema":{"type":"number"}},{"name":"subtaskCountMin","required":false,"in":"query","schema":{"type":"number"}},{"name":"subtaskCountMax","required":false,"in":"query","schema":{"type":"number"}},{"name":"subtaskCountMaxExclusive","required":false,"in":"query","schema":{"type":"number"}},{"name":"cameraCountMin","required":false,"in":"query","schema":{"type":"number"}},{"name":"cameraCountMax","required":false,"in":"query","schema":{"type":"number"}},{"name":"cameraCountMaxExclusive","required":false,"in":"query","schema":{"type":"number"}},{"name":"fpsMin","required":false,"in":"query","schema":{"type":"number"}},{"name":"fpsMax","required":false,"in":"query","schema":{"type":"number"}},{"name":"fpsMaxExclusive","required":false,"in":"query","schema":{"type":"number"}},{"name":"idleFractionMin","required":false,"in":"query","schema":{"type":"number"}},{"name":"idleFractionMax","required":false,"in":"query","schema":{"type":"number"}},{"name":"idleFractionMaxExclusive","required":false,"in":"query","schema":{"type":"number"}},{"name":"sceneId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"labelState","required":false,"in":"query","schema":{"type":"string","enum":["suggested","labeled","approved","rejected"]}},{"name":"hasSubtasks","required":false,"in":"query","schema":{"type":"boolean"}},{"name":"annotationJobId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"selectionRunId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"q","required":false,"in":"query","description":"Natural-language rank within the project. Ignores sort.","schema":{"maxLength":8000,"type":"string"}},{"name":"sort","required":false,"in":"query","schema":{"type":"string","enum":["upload_date","duration","verdict","recording_name"]}},{"name":"order","required":false,"in":"query","schema":{"type":"string","enum":["asc","desc"]}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"count":{"type":"number"}},"required":["count"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Count episodes matching a filter","tags":["episodes","public-docs:episodes"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}]}},"/projects/{projectId}/episode-operations":{"post":{"operationId":"projects.episodeOperations.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EpisodeOperationsBodyDto"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/EpisodeOperationsResult"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Apply label and segment operations to a selection of episodes","tags":["episodes","public-docs:episodes"],"x-embodiflow-permission":{"point":"annotation:write","projectScoped":true},"security":[{"pat":[]}]}},"/projects/{projectId}/episode-search-status":{"get":{"operationId":"projects.episodeSearchStatus.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/EpisodeSearchStatusDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Semantic search availability and index coverage for the project","tags":["episodes","public-docs:episodes"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}]}},"/datasets":{"post":{"operationId":"datasets.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateDatasetBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DatasetSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","SLUG_ALREADY_EXISTS","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["datasets","public-docs:datasets"],"x-embodiflow-permission":{"point":"dataset:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a dataset"}},"/datasets/{datasetId}":{"patch":{"operationId":"datasets.update","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DatasetPatchBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"currentVersionId":{"type":"string","nullable":true},"consentAttested":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["currentVersionId"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","SLUG_ALREADY_EXISTS","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["datasets","public-docs:datasets"],"x-embodiflow-permission":{"point":"dataset:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Update a dataset"},"get":{"operationId":"datasets.get","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DatasetSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["datasets","public-docs:datasets"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}],"summary":"Get a dataset"}},"/datasets/{datasetId}/versions":{"get":{"operationId":"datasets.versions.list","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"sortBy","required":false,"in":"query","schema":{"type":"string"}},{"name":"sortOrder","required":false,"in":"query","schema":{"type":"string","enum":["asc","desc"]}},{"name":"status","required":false,"in":"query","schema":{"type":"string"}},{"name":"metadataType","required":false,"in":"query","schema":{"type":"string"}},{"name":"codebaseVersion","required":false,"in":"query","schema":{"type":"string"}},{"name":"fpsMin","required":false,"in":"query","schema":{"type":"number"}},{"name":"fpsMax","required":false,"in":"query","schema":{"type":"number"}},{"name":"startTimeNsMin","required":false,"in":"query","schema":{"type":"number"}},{"name":"startTimeNsMax","required":false,"in":"query","schema":{"type":"number"}},{"name":"endTimeNsMin","required":false,"in":"query","schema":{"type":"number"}},{"name":"endTimeNsMax","required":false,"in":"query","schema":{"type":"number"}},{"name":"metadataKey","required":false,"in":"query","schema":{"type":"string"}},{"name":"metadataEquals","required":false,"in":"query","schema":{"type":"string"}},{"name":"includeSoftHidden","required":false,"in":"query","description":"When true, include versions with visibilityStatus soft_hidden (default list excludes them).","schema":{"type":"boolean"}},{"name":"q","required":false,"in":"query","description":"Case-insensitive search over versionName, description, and version number (vN / N).","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/DatasetVersionSummaryDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["datasets","public-docs:datasets"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List versions for a dataset"}},"/datasets/{datasetId}/versions/{versionId}":{"get":{"operationId":"datasets.versions.get","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"versionId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DatasetVersionSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["datasets","public-docs:datasets"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}],"summary":"Get a version"}},"/datasets/{datasetId}/versions/{versionId}/metadata":{"get":{"operationId":"datasets.versions.metadata.get","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"versionId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DatasetVersionMetadataDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["datasets","public-docs:datasets"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List metadata for a version"}},"/datasets/{datasetId}/versions/{versionId}/topics":{"get":{"operationId":"datasets.versions.topics.list","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"versionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/DatasetVersionTopicDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","required":["pageSize"],"properties":{"requestId":{"type":"string"},"pageSize":{"type":"number"}}}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["datasets","public-docs:datasets"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List topics for a version"}},"/datasets/{datasetId}/versions/{versionId}/quality-report":{"get":{"operationId":"datasets.versions.qualityReport.get","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"versionId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DatasetVersionQualityReportDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["datasets","public-docs:datasets"],"x-embodiflow-permission":{"point":"quality:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List quality report for a version"}},"/datasets/{datasetId}/versions/{versionId}/quality-summary":{"get":{"operationId":"datasets.versions.qualitySummary.get","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"versionId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DatasetVersionQualitySummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["datasets","public-docs:datasets"],"x-embodiflow-permission":{"point":"quality:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List quality summary for a version"}},"/datasets/{datasetId}/versions/{versionId}/derived-versions":{"post":{"operationId":"datasets.versions.derivedVersions.create","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"versionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DerivedDatasetVersionResultDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","SLUG_ALREADY_EXISTS","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["datasets","public-docs:datasets"],"x-embodiflow-permission":{"point":"dataset:write","projectScoped":true},"security":[{"pat":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateDatasetVersionCleaningJobRequestDto"}}}},"summary":"Create a derived version"}},"/datasets/{datasetId}/versions/{versionId}/processing-gate":{"get":{"operationId":"datasets.versions.processingGate.get","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"versionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"workflowDefinitionId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DatasetVersionProcessingGateDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["datasets","public-docs:datasets"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List processing gate for a version"}},"/datasets/{datasetId}/versions/{versionId}/quality-check-jobs":{"post":{"operationId":"datasets.versions.qualityCheckJobs.create","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"versionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"workflowRunId":{"type":"string"}},"required":["workflowRunId"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","SLUG_ALREADY_EXISTS","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["datasets","public-docs:datasets"],"x-embodiflow-permission":{"point":"quality:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a quality check job"}},"/datasets/{datasetId}/versions/{versionId}/visibility-restorations":{"post":{"operationId":"datasets.versions.visibilityRestorations.create","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"versionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DatasetVersionSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","SLUG_ALREADY_EXISTS","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["datasets","public-docs:datasets"],"x-embodiflow-permission":{"point":"dataset:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a visibility restoration"}},"/datasets/{datasetId}/versions/{versionId}/files":{"get":{"operationId":"datasets.versions.files.list","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"versionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"sortBy","required":false,"in":"query","schema":{"type":"string"}},{"name":"sortOrder","required":false,"in":"query","schema":{"type":"string","enum":["asc","desc"]}},{"name":"fileRole","required":false,"in":"query","schema":{"type":"string"}},{"name":"sensorName","required":false,"in":"query","schema":{"type":"string"}},{"name":"split","required":false,"in":"query","schema":{"type":"string"}},{"name":"metadataKey","required":false,"in":"query","schema":{"type":"string"}},{"name":"metadataEquals","required":false,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/DatasetVersionFileSummaryDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["datasets","public-docs:datasets"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List files for a version"}},"/datasets/{datasetId}/versions/{versionId}/items":{"get":{"operationId":"datasets.versions.items.list","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"versionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"sortBy","required":false,"in":"query","schema":{"type":"string"}},{"name":"sortOrder","required":false,"in":"query","schema":{"type":"string","enum":["asc","desc"]}},{"name":"split","required":false,"in":"query","schema":{"type":"string"}},{"name":"episodeIndex","required":false,"in":"query","schema":{"minimum":0,"type":"number"}},{"name":"includeExcluded","required":false,"in":"query","description":"ADR 0157 W6 — explicit opt-in to include training-excluded episodes.","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/DatasetVersionItemSummaryDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["datasets","public-docs:datasets"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List items for a version"}},"/datasets/{datasetId}/versions/{versionId}/signed-files":{"get":{"operationId":"datasets.versions.signedFiles.get","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"versionId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DatasetVersionSignedFilesDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["datasets","public-docs:datasets"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List signed files for a version"}},"/datasets/{datasetId}/lineage":{"get":{"operationId":"datasets.lineage.get","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DatasetLineageGraphDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["datasets","public-docs:datasets"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List lineage for a dataset"}},"/datasets/{datasetId}/versions/{versionId}/lineage":{"get":{"operationId":"datasets.versions.lineage.get","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"versionId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DatasetLineageGraphDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["datasets","public-docs:datasets"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List lineage for a version"}},"/datasets/{datasetId}/versions/{versionId}/publication-requests":{"post":{"operationId":"datasets.versions.publicationRequests.create","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"versionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DatasetVersionSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","SLUG_ALREADY_EXISTS","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["datasets","public-docs:datasets"],"x-embodiflow-permission":{"point":"dataset:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a publication request"}},"/dataset-versions/diff":{"get":{"operationId":"datasetVersions.diff.get","parameters":[{"name":"from","required":true,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"to","required":true,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"type","required":false,"in":"query","schema":{"default":"all","type":"string","enum":["file","episode","metadata","quality","all"]}},{"name":"limit","required":false,"in":"query","schema":{"minimum":1,"maximum":1000,"default":100,"type":"number"}},{"name":"offset","required":false,"in":"query","schema":{"minimum":0,"default":0,"type":"number"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DatasetVersionDiffEnvelopeDto"}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_NOT_SOFT_HIDDEN","DIFF_NOT_READY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_INPUT","LEGAL_HOLD_SCOPE_INVALID","PROVENANCE_SCHEMA_INVALID","REPRO_BUNDLE_RECIPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SPLIT_CONFIG_INVALID","SPLIT_NOT_REPRODUCIBLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-version-diff","public-docs:dataset-version-diff","dataset-version-diff"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List diff for a dataset version"}},"/lineage/edges":{"get":{"operationId":"lineage.edges.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"fromObjectId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"toObjectId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"edgeKind","required":false,"in":"query","schema":{"type":"string"}},{"name":"workflowRunId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/LineageEdgeSummaryDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LINEAGE_FILTER_REQUIRED","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["lineage","public-docs:lineage"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List edges for a lineage"}},"/lineage/nodes/{type}/{id}/upstream":{"get":{"operationId":"lineage.nodes.upstream.get","parameters":[{"name":"type","required":true,"in":"path","schema":{"type":"string"}},{"name":"id","required":true,"in":"path","schema":{"type":"string"}},{"name":"depth","required":false,"in":"query","schema":{"minimum":1,"maximum":10,"type":"number"}},{"name":"limit","required":false,"in":"query","schema":{"minimum":1,"maximum":200,"type":"number"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/LineageNodeGraphDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LINEAGE_FILTER_REQUIRED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["LINEAGE_NODE_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["lineage","public-docs:lineage"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List upstream for a node"}},"/lineage/nodes/{type}/{id}/downstream":{"get":{"operationId":"lineage.nodes.downstream.get","parameters":[{"name":"type","required":true,"in":"path","schema":{"type":"string"}},{"name":"id","required":true,"in":"path","schema":{"type":"string"}},{"name":"depth","required":false,"in":"query","schema":{"minimum":1,"maximum":10,"type":"number"}},{"name":"limit","required":false,"in":"query","schema":{"minimum":1,"maximum":200,"type":"number"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/LineageNodeGraphDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LINEAGE_FILTER_REQUIRED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["LINEAGE_NODE_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["lineage","public-docs:lineage"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List downstream for a node"}},"/legal-holds":{"get":{"operationId":"legalHolds.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","schema":{"type":"string","enum":["active","released"]}},{"name":"scopeType","required":false,"in":"query","schema":{"type":"string","enum":["tenant","project","dataset","datasetVersion","storageObject"]}},{"name":"scopeId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/LegalHoldSummaryDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize","requestId"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["legal-holds","public-docs:legal-holds","legal-holds"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List legal holds"},"post":{"operationId":"legalHolds.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateLegalHoldBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/LegalHoldSummaryDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["legal-holds","public-docs:legal-holds","legal-holds"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a legal hold"}},"/legal-holds/{id}/release-requests":{"post":{"operationId":"legalHolds.releaseRequests.create","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/LegalHoldSummaryDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["legal-holds","public-docs:legal-holds","legal-holds"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a release request"}},"/dataset-versions/{versionId}/deletion-eligibility":{"get":{"operationId":"datasetVersions.deletionEligibility.get","parameters":[{"name":"versionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"acceptUnverifiedDeletion","required":false,"in":"query","description":"Explicit opt-in to treat unverifiable training provenance as non-blocking. Writes one audit_log row. Not the default.","schema":{"type":"string","enum":["true","false","1","0"]}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DatasetVersionDeletionEligibilityDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_NOT_SOFT_HIDDEN","DIFF_NOT_READY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_INPUT","LEGAL_HOLD_SCOPE_INVALID","PROVENANCE_SCHEMA_INVALID","REPRO_BUNDLE_RECIPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SPLIT_CONFIG_INVALID","SPLIT_NOT_REPRODUCIBLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["DATASET_NOT_FOUND","DATASET_VERSION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","PROVENANCE_NOT_AVAILABLE","REPRO_BUNDLE_INPUT_NOT_FOUND","REPRO_BUNDLE_SPLIT_MISSING","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-versions-retention","public-docs:dataset-versions-retention","dataset-versions"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List deletion eligibility for a dataset version"}},"/tenants/current/offboarding-requests":{"post":{"operationId":"tenants.current.offboardingRequests.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTenantOffboardingRequestBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TenantOffboardingRequestSummaryDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["BILLING_STATE_TRANSITION_INVALID","DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","INVOICE_SNAPSHOT_ALREADY_EXISTS","LAST_OWNER_PROTECTION","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","RECONCILIATION_ALREADY_RUNNING","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","TENANT_SLUG_CONFLICT","TENANT_STORAGE_KEY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["tenants-offboarding","public-docs:tenants-offboarding","tenants"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a offboarding request"}},"/tenants/current/offboarding-requests/latest":{"get":{"operationId":"tenants.current.offboardingRequests.latest.get","parameters":[],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TenantOffboardingRequestSummaryDto","nullable":true},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["tenants-offboarding","public-docs:tenants-offboarding","tenants"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List latest for a offboarding request"}},"/tenants/current/offboarding-requests/demo-completion-requests":{"post":{"operationId":"tenants.current.offboardingRequests.demoCompletionRequests.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompleteTenantOffboardingDemoBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TenantOffboardingDemoResultDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["BILLING_STATE_TRANSITION_INVALID","DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","INVOICE_SNAPSHOT_ALREADY_EXISTS","LAST_OWNER_PROTECTION","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","RECONCILIATION_ALREADY_RUNNING","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","TENANT_SLUG_CONFLICT","TENANT_STORAGE_KEY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["tenants-offboarding","public-docs:tenants-offboarding","tenants"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a demo completion request"}},"/tenants/current/deletion-requests":{"post":{"operationId":"tenants.current.deletionRequests.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTenantDeletionRequestBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TenantDeletionJobSummaryDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["BILLING_STATE_TRANSITION_INVALID","DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","INVOICE_SNAPSHOT_ALREADY_EXISTS","LAST_OWNER_PROTECTION","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","RECONCILIATION_ALREADY_RUNNING","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","TENANT_SLUG_CONFLICT","TENANT_STORAGE_KEY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["tenants-deletion","public-docs:tenants-deletion","tenants"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a deletion request"}},"/tenants/current/deletion-requests/eligibility":{"get":{"operationId":"tenants.current.deletionRequests.eligibility.get","parameters":[{"name":"dryRun","required":false,"in":"query","description":"When true, report the exact t/{storageKey}/ prefix and per-bucket object counts without deleting.","schema":{"type":"string","enum":["true","false","1","0"]}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TenantDeletionEligibilityDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["tenants-deletion","public-docs:tenants-deletion","tenants"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List eligibility for a deletion request"}},"/tenants/current/deletion-requests/latest":{"get":{"operationId":"tenants.current.deletionRequests.latest.get","parameters":[],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TenantDeletionJobSummaryDto","nullable":true},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["tenants-deletion","public-docs:tenants-deletion","tenants"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List latest for a deletion request"}},"/tenants/current/deletion-requests/{jobId}/retry-requests":{"post":{"operationId":"tenants.current.deletionRequests.retryRequests.create","parameters":[{"name":"jobId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TenantDeletionJobSummaryDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","RESOURCE_NOT_FOUND","STORAGE_RECONCILIATION_JOB_NOT_FOUND","SUBJECT_NOT_IN_TENANT","SUBSCRIPTION_NOT_FOUND","TENANT_DELETION_JOB_NOT_FOUND","TENANT_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["BILLING_STATE_TRANSITION_INVALID","DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","INVOICE_SNAPSHOT_ALREADY_EXISTS","LAST_OWNER_PROTECTION","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","RECONCILIATION_ALREADY_RUNNING","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","TENANT_SLUG_CONFLICT","TENANT_STORAGE_KEY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["tenants-deletion","public-docs:tenants-deletion","tenants"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a retry request"}},"/users/me/personal-data-exports":{"post":{"operationId":"users.me.personalDataExports.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PersonalDataExportDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INITIAL_PASSWORD_REQUIRED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["CURRENT_SESSION_NOT_REVOCABLE","EMAIL_ALREADY_REGISTERED","IDEMPOTENCY_CONFLICT","LAST_OWNER_PROTECTION","USER_ALREADY_MEMBER"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["users","public-docs:users"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[{"pat":[]}],"summary":"Create a personal data export"}},"/users/me/personal-data-erasures":{"post":{"operationId":"users.me.personalDataErasures.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PersonalDataErasureDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INITIAL_PASSWORD_REQUIRED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["CURRENT_SESSION_NOT_REVOCABLE","EMAIL_ALREADY_REGISTERED","IDEMPOTENCY_CONFLICT","LAST_OWNER_PROTECTION","USER_ALREADY_MEMBER"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["users","public-docs:users"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[{"pat":[]}],"summary":"Create a personal data erasure"}},"/tenants/current/personal-data-exports":{"post":{"operationId":"tenants.current.personalDataExports.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTenantPersonalDataExportBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PersonalDataExportDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["BILLING_STATE_TRANSITION_INVALID","DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","INVOICE_SNAPSHOT_ALREADY_EXISTS","LAST_OWNER_PROTECTION","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","RECONCILIATION_ALREADY_RUNNING","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","TENANT_SLUG_CONFLICT","TENANT_STORAGE_KEY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["tenants-offboarding","public-docs:tenants-offboarding"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a personal data export"}},"/tenants/current/personal-data-erasures":{"post":{"operationId":"tenants.current.personalDataErasures.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTenantPersonalDataErasureBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PersonalDataErasureDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["BILLING_STATE_TRANSITION_INVALID","DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","INVOICE_SNAPSHOT_ALREADY_EXISTS","LAST_OWNER_PROTECTION","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","RECONCILIATION_ALREADY_RUNNING","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","TENANT_SLUG_CONFLICT","TENANT_STORAGE_KEY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["tenants-offboarding","public-docs:tenants-offboarding"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a personal data erasure"}},"/artifacts":{"get":{"operationId":"artifacts.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"sortBy","required":false,"in":"query","schema":{"type":"string"}},{"name":"sortOrder","required":false,"in":"query","schema":{"type":"string","enum":["asc","desc"]}},{"name":"projectId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"artifactType","required":false,"in":"query","schema":{"type":"string"}},{"name":"ownerType","required":false,"in":"query","schema":{"type":"string"}},{"name":"ownerId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ArtifactSummaryDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_CONTRACT_BLOCKED","DATASET_VERSION_MANIFEST_MISSING","DATASET_VERSION_QUALITY_BLOCKED","DATASET_VERSION_STATS_STALE","EXPORT_BLOCKED_BY_PII_POLICY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["download-sessions","public-docs:download-sessions","artifacts","public-docs:artifacts","download-sessions","deployment-packages","artifacts"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List artifacts"}},"/artifacts/{artifactId}":{"get":{"operationId":"artifacts.get","parameters":[{"name":"artifactId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ArtifactSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_CONTRACT_BLOCKED","DATASET_VERSION_MANIFEST_MISSING","DATASET_VERSION_QUALITY_BLOCKED","DATASET_VERSION_STATS_STALE","EXPORT_BLOCKED_BY_PII_POLICY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ARTIFACT_NOT_FOUND","DATASET_EXPORT_JOB_NOT_FOUND","DEPLOYMENT_PACKAGE_NOT_FOUND","DOWNLOAD_SESSION_NOT_FOUND","EXPORT_NOT_FOUND","NOT_FOUND","TRAINING_JOB_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["download-sessions","public-docs:download-sessions","artifacts","public-docs:artifacts","download-sessions","deployment-packages","artifacts"],"x-embodiflow-permission":{"point":"export:read","projectScoped":true},"security":[{"pat":[]}],"summary":"Get a artifact"}},"/download-sessions":{"post":{"operationId":"downloadSessions.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateDownloadSessionBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CreateDownloadSessionResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_CONTRACT_BLOCKED","DATASET_VERSION_MANIFEST_MISSING","DATASET_VERSION_QUALITY_BLOCKED","DATASET_VERSION_STATS_STALE","EXPORT_BLOCKED_BY_PII_POLICY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["EXPORT_ALREADY_FINALIZED","IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["download-sessions","public-docs:download-sessions","artifacts","public-docs:artifacts","download-sessions","deployment-packages","artifacts"],"x-embodiflow-permission":{"point":"export:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a download session"},"get":{"operationId":"downloadSessions.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"sortBy","required":false,"in":"query","schema":{"type":"string"}},{"name":"sortOrder","required":false,"in":"query","schema":{"type":"string","enum":["asc","desc"]}},{"name":"status","required":false,"in":"query","schema":{"type":"string"}},{"name":"artifactId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"datasetVersionId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/DownloadSessionSummaryDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_CONTRACT_BLOCKED","DATASET_VERSION_MANIFEST_MISSING","DATASET_VERSION_QUALITY_BLOCKED","DATASET_VERSION_STATS_STALE","EXPORT_BLOCKED_BY_PII_POLICY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["download-sessions","public-docs:download-sessions","artifacts","public-docs:artifacts","download-sessions","deployment-packages","artifacts"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List download sessions"}},"/download-sessions/{downloadSessionId}/presigned-get-url-batches":{"post":{"operationId":"downloadSessions.presignedGetUrlBatches.create","parameters":[{"name":"downloadSessionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateDownloadSessionPresignedGetUrlBatchBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CreateDownloadSessionPresignedGetUrlBatchResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_CONTRACT_BLOCKED","DATASET_VERSION_MANIFEST_MISSING","DATASET_VERSION_QUALITY_BLOCKED","DATASET_VERSION_STATS_STALE","EXPORT_BLOCKED_BY_PII_POLICY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ARTIFACT_NOT_FOUND","DATASET_EXPORT_JOB_NOT_FOUND","DEPLOYMENT_PACKAGE_NOT_FOUND","DOWNLOAD_SESSION_NOT_FOUND","EXPORT_NOT_FOUND","NOT_FOUND","TRAINING_JOB_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["EXPORT_ALREADY_FINALIZED","IDEMPOTENCY_CONFLICT"]}}}]}}}}},"summary":"Presigned GET URLs for CLI / scripts; auth = download sessionToken only.","tags":["download-sessions","public-docs:download-sessions","artifacts","public-docs:artifacts","download-sessions","deployment-packages","artifacts"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[]}},"/download-sessions/{downloadSessionId}":{"get":{"operationId":"downloadSessions.get","parameters":[{"name":"downloadSessionId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DownloadSessionSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_CONTRACT_BLOCKED","DATASET_VERSION_MANIFEST_MISSING","DATASET_VERSION_QUALITY_BLOCKED","DATASET_VERSION_STATS_STALE","EXPORT_BLOCKED_BY_PII_POLICY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ARTIFACT_NOT_FOUND","DATASET_EXPORT_JOB_NOT_FOUND","DEPLOYMENT_PACKAGE_NOT_FOUND","DOWNLOAD_SESSION_NOT_FOUND","EXPORT_NOT_FOUND","NOT_FOUND","TRAINING_JOB_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["download-sessions","public-docs:download-sessions","artifacts","public-docs:artifacts","download-sessions","deployment-packages","artifacts"],"x-embodiflow-permission":{"point":"export:read","projectScoped":true},"security":[{"pat":[]}],"summary":"Get a download session"}},"/deployment-packages":{"post":{"operationId":"deploymentPackages.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateDeploymentPackageBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DeploymentPackageSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","EDGE_INFERENCE_DISABLED","EMBODIMENT_INCOMPATIBLE","EMBODIMENT_NOT_PUBLISHED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMAGE_ARCH_UNSUPPORTED","IMAGE_FAMILY_UNSUPPORTED","IMAGE_GPU_MEMORY_INSUFFICIENT","IMAGE_WIRE_UNSUPPORTED","MODEL_VERSION_NOT_READY","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WIRE_PROTOCOL_NOT_PERMITTED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["download-sessions","public-docs:download-sessions","artifacts","public-docs:artifacts","download-sessions","deployment-packages","artifacts"],"x-embodiflow-permission":{"point":"deployment:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a deployment package"},"get":{"operationId":"deploymentPackages.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"sortBy","required":false,"in":"query","schema":{"type":"string"}},{"name":"sortOrder","required":false,"in":"query","schema":{"type":"string","enum":["asc","desc"]}},{"name":"projectId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"status","required":false,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/DeploymentPackageSummaryDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","EDGE_INFERENCE_DISABLED","EMBODIMENT_INCOMPATIBLE","EMBODIMENT_NOT_PUBLISHED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMAGE_ARCH_UNSUPPORTED","IMAGE_FAMILY_UNSUPPORTED","IMAGE_GPU_MEMORY_INSUFFICIENT","IMAGE_WIRE_UNSUPPORTED","MODEL_VERSION_NOT_READY","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WIRE_PROTOCOL_NOT_PERMITTED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["download-sessions","public-docs:download-sessions","artifacts","public-docs:artifacts","download-sessions","deployment-packages","artifacts"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List deployment packages"}},"/deployment-packages/{deploymentPackageId}":{"get":{"operationId":"deploymentPackages.get","parameters":[{"name":"deploymentPackageId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DeploymentPackageSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","EDGE_INFERENCE_DISABLED","EMBODIMENT_INCOMPATIBLE","EMBODIMENT_NOT_PUBLISHED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMAGE_ARCH_UNSUPPORTED","IMAGE_FAMILY_UNSUPPORTED","IMAGE_GPU_MEMORY_INSUFFICIENT","IMAGE_WIRE_UNSUPPORTED","MODEL_VERSION_NOT_READY","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WIRE_PROTOCOL_NOT_PERMITTED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["EMBODIMENT_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["download-sessions","public-docs:download-sessions","artifacts","public-docs:artifacts","download-sessions","deployment-packages","artifacts"],"x-embodiflow-permission":{"point":"deployment:read","projectScoped":true},"security":[{"pat":[]}],"summary":"Get a deployment package"}},"/projects/{projectId}/data-contracts":{"get":{"operationId":"projects.dataContracts.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Unconstrained string in OpenAPI: the plugin would emit a literal union enum that frozen v1 compat treats as narrowing.","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/DataContractSummaryDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","required":["pageSize"],"properties":{"requestId":{"type":"string"},"pageSize":{"type":"number"}}}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["data-contracts","public-docs:data-contracts","data-contracts"],"x-embodiflow-permission":{"point":"workflow:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"List data contracts for a project"},"post":{"operationId":"projects.dataContracts.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateDataContractBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DataContractSummaryDto"},"revision":{"$ref":"#/components/schemas/DataContractRevisionSummaryDto"}},"required":["data","revision"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["data-contracts","public-docs:data-contracts","data-contracts"],"x-embodiflow-permission":{"point":"workflow:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a data contract"}},"/data-contracts/{contractId}/revisions":{"post":{"operationId":"dataContracts.revisions.create","parameters":[{"name":"contractId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateDataContractRevisionBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DataContractRevisionSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_METADATA_MISSING","DATA_CONTRACT_REVISION_NOT_PUBLISHED","DATA_CONTRACT_VALIDATION_ERROR","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["DATA_CONTRACT_NOT_FOUND","DATA_CONTRACT_REVISION_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["DATA_CONTRACT_REVISION_IMMUTABLE","IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["data-contracts","public-docs:data-contracts","data-contracts"],"x-embodiflow-permission":{"point":"workflow:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a revision"}},"/data-contracts/{contractId}/archive-requests":{"post":{"operationId":"dataContracts.archiveRequests.create","parameters":[{"name":"contractId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DataContractSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_METADATA_MISSING","DATA_CONTRACT_REVISION_NOT_PUBLISHED","DATA_CONTRACT_VALIDATION_ERROR","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["DATA_CONTRACT_NOT_FOUND","DATA_CONTRACT_REVISION_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["DATA_CONTRACT_REVISION_IMMUTABLE","IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["data-contracts","public-docs:data-contracts","data-contracts"],"x-embodiflow-permission":{"point":"workflow:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a archive request"}},"/dataset-versions/{versionId}/contract-check-requests":{"post":{"operationId":"datasetVersions.contractCheckRequests.create","parameters":[{"name":"versionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateContractCheckBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ContractCheckRequestResultDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_NOT_SOFT_HIDDEN","DIFF_NOT_READY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_INPUT","LEGAL_HOLD_SCOPE_INVALID","PROVENANCE_SCHEMA_INVALID","REPRO_BUNDLE_RECIPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SPLIT_CONFIG_INVALID","SPLIT_NOT_REPRODUCIBLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["DATASET_NOT_FOUND","DATASET_VERSION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","PROVENANCE_NOT_AVAILABLE","REPRO_BUNDLE_INPUT_NOT_FOUND","REPRO_BUNDLE_SPLIT_MISSING","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","SLUG_ALREADY_EXISTS","SPLIT_CONFIG_IMMUTABLE","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["data-contracts","public-docs:data-contracts","data-contracts"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a contract check request"}},"/dataset-versions/{versionId}/checks":{"get":{"operationId":"datasetVersions.checks.get","parameters":[{"name":"versionId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AssetCheckSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_NOT_SOFT_HIDDEN","DIFF_NOT_READY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_INPUT","LEGAL_HOLD_SCOPE_INVALID","PROVENANCE_SCHEMA_INVALID","REPRO_BUNDLE_RECIPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SPLIT_CONFIG_INVALID","SPLIT_NOT_REPRODUCIBLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["DATASET_NOT_FOUND","DATASET_VERSION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","PROVENANCE_NOT_AVAILABLE","REPRO_BUNDLE_INPUT_NOT_FOUND","REPRO_BUNDLE_SPLIT_MISSING","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["data-contracts","public-docs:data-contracts","data-contracts"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List checks for a dataset version"}},"/workflow-runs/{runId}/container-runs":{"get":{"operationId":"workflowRuns.containerRuns.get","parameters":[{"name":"runId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ListWorkflowRunContainerRunsDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND","WORKFLOW_RUN_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["container-runs","public-docs:container-runs","container-runs"],"x-embodiflow-permission":{"point":"workflow:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List container runs for a workflow run"}},"/container-runs/{id}":{"get":{"operationId":"containerRuns.get","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ContainerRunSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["CONTAINER_RUN_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["container-runs","public-docs:container-runs","container-runs"],"x-embodiflow-permission":{"point":"workflow:read","projectScoped":true},"security":[{"pat":[]}],"summary":"Get a container run"}},"/container-runs/{id}/log-downloads":{"get":{"operationId":"containerRuns.logDownloads.get","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"downloadUrl":{"type":"string"},"expiresAt":{"type":"string"}},"required":["downloadUrl","expiresAt"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["CONTAINER_RUN_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["container-runs","public-docs:container-runs","container-runs"],"x-embodiflow-permission":{"point":"workflow:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List log downloads for a container run"}},"/algorithm-definitions":{"get":{"operationId":"algorithmDefinitions.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"sortBy","required":false,"in":"query","schema":{"type":"string"}},{"name":"sortOrder","required":false,"in":"query","schema":{"type":"string","enum":["asc","desc"]}},{"name":"projectId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"status","required":false,"in":"query","schema":{"type":"string"}},{"name":"ownerType","required":false,"in":"query","schema":{"type":"string"}},{"name":"category","required":false,"in":"query","schema":{"type":"string"}},{"name":"q","required":false,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/AlgorithmDefinitionSummaryDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["algorithm-definitions","public-docs:algorithm-definitions","algorithm-definitions"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List algorithm definitions"},"post":{"operationId":"algorithmDefinitions.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateAlgorithmDefinitionBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AlgorithmDefinitionSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["ALGORITHM_VERSION_DISABLED","ALGORITHM_VERSION_EXISTS","IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["algorithm-definitions","public-docs:algorithm-definitions","algorithm-definitions"],"x-embodiflow-permission":{"point":"algorithm:write","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a algorithm definition"}},"/algorithm-definitions/image-ref-validations":{"post":{"operationId":"algorithmDefinitions.imageRefValidations.create","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidateAlgorithmImageRefBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ValidateAlgorithmImageRefResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["ALGORITHM_VERSION_DISABLED","ALGORITHM_VERSION_EXISTS","IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["algorithm-definitions","public-docs:algorithm-definitions","algorithm-definitions"],"x-embodiflow-permission":{"point":"algorithm:write","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a image ref validation"}},"/algorithm-definitions/{algorithmDefinitionId}":{"get":{"operationId":"algorithmDefinitions.get","parameters":[{"name":"algorithmDefinitionId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AlgorithmDefinitionSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ALGORITHM_DEFINITION_NOT_FOUND","ALGORITHM_REVISION_NOT_FOUND","ALGORITHM_SAMPLE_RUN_NOT_FOUND","NOT_FOUND","SDK_ARTIFACT_UNKNOWN","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["algorithm-definitions","public-docs:algorithm-definitions","algorithm-definitions"],"x-embodiflow-permission":{"point":"algorithm:read","projectScoped":false},"security":[{"pat":[]}],"summary":"Get a algorithm definition"}},"/algorithm-definitions/{algorithmDefinitionId}/revisions":{"get":{"operationId":"algorithmDefinitions.revisions.list","parameters":[{"name":"algorithmDefinitionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"sortBy","required":false,"in":"query","schema":{"type":"string"}},{"name":"sortOrder","required":false,"in":"query","schema":{"type":"string","enum":["asc","desc"]}},{"name":"reviewStatus","required":false,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/AlgorithmRevisionSummaryDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ALGORITHM_DEFINITION_NOT_FOUND","ALGORITHM_REVISION_NOT_FOUND","ALGORITHM_SAMPLE_RUN_NOT_FOUND","NOT_FOUND","SDK_ARTIFACT_UNKNOWN","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["algorithm-definitions","public-docs:algorithm-definitions","algorithm-definitions"],"x-embodiflow-permission":{"point":"algorithm:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List revisions for a algorithm definition"},"post":{"operationId":"algorithmDefinitions.revisions.create","parameters":[{"name":"algorithmDefinitionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateAlgorithmRevisionBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AlgorithmRevisionSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ALGORITHM_DEFINITION_NOT_FOUND","ALGORITHM_REVISION_NOT_FOUND","ALGORITHM_SAMPLE_RUN_NOT_FOUND","NOT_FOUND","SDK_ARTIFACT_UNKNOWN","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["ALGORITHM_VERSION_DISABLED","ALGORITHM_VERSION_EXISTS","IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["algorithm-definitions","public-docs:algorithm-definitions","algorithm-definitions"],"x-embodiflow-permission":{"point":"algorithm:write","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a revision"}},"/algorithm-definitions/{algorithmDefinitionId}/revisions/{revisionId}/publication-requests":{"post":{"operationId":"algorithmDefinitions.revisions.publicationRequests.create","parameters":[{"name":"algorithmDefinitionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"revisionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AlgorithmRevisionSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ALGORITHM_DEFINITION_NOT_FOUND","ALGORITHM_REVISION_NOT_FOUND","ALGORITHM_SAMPLE_RUN_NOT_FOUND","NOT_FOUND","SDK_ARTIFACT_UNKNOWN","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["ALGORITHM_VERSION_DISABLED","ALGORITHM_VERSION_EXISTS","IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["algorithm-definitions","public-docs:algorithm-definitions","algorithm-definitions"],"x-embodiflow-permission":{"point":"algorithm:write","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a publication request"}},"/algorithm-definitions/{algorithmDefinitionId}/revisions/{revisionId}/revocations":{"post":{"operationId":"algorithmDefinitions.revisions.revocations.create","parameters":[{"name":"algorithmDefinitionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"revisionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RevokeAlgorithmRevisionBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AlgorithmRevisionSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ALGORITHM_DEFINITION_NOT_FOUND","ALGORITHM_REVISION_NOT_FOUND","ALGORITHM_SAMPLE_RUN_NOT_FOUND","NOT_FOUND","SDK_ARTIFACT_UNKNOWN","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["ALGORITHM_VERSION_DISABLED","ALGORITHM_VERSION_EXISTS","IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["algorithm-definitions","public-docs:algorithm-definitions","algorithm-definitions"],"x-embodiflow-permission":{"point":"algorithm:write","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a revocation"}},"/algorithms":{"get":{"operationId":"algorithms.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"q","required":false,"in":"query","schema":{"type":"string"}},{"name":"ownerType","required":false,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/AlgorithmLibraryItemDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"404 ALGORITHM_DEFINITION_NOT_FOUND | ALGORITHM_REVISION_NOT_FOUND"},"409":{"description":"409 ALGORITHM_VERSION_EXISTS | IDEMPOTENCY_CONFLICT"},"422":{"description":"422 ALGORITHM_IMAGE_COMMAND_MISSING | ALGORITHM_IMAGE_COMMAND_UNREACHABLE | ALGORITHM_PULL_SECRET_INVALID | ALGORITHM_IMAGE_REF_FORBIDDEN | ALGORITHM_VERSION_BELOW_SUGGESTED | ALGORITHM_FILE_INVALID | ALGORITHM_PYTHON_SOURCE_MISSING | ALGORITHM_PYTHON_SOURCE_TOO_LARGE | ALGORITHM_PYTHON_SOURCE_INVALID | ALGORITHM_PYTHON_ENTRYPOINT_MISSING | ALGORITHM_PYTHON_REQUIREMENTS_TOO_MANY | ALGORITHM_PYTHON_REQUIREMENT_INVALID | ALGORITHM_PYTHON_REQUIREMENT_DUPLICATE | ALGORITHM_SOURCE_FIELDS_CONFLICT | ALGORITHM_INPUT_FORMAT_UNKNOWN | ALGORITHM_CLOUD_BUILD_UNAVAILABLE | ALGORITHM_IMAGE_PUSH_UNAVAILABLE | ALGORITHM_BUILD_FAILED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["algorithms","public-docs:algorithms","algorithms"],"x-embodiflow-permission":{"point":"algorithm:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List algorithms"},"post":{"operationId":"algorithms.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterAlgorithmVersionBodyDto"}}}},"responses":{"201":{"description":"The saved version. A python save whose content equals the latest usable version writes nothing and also answers 201, with the stored version and `meta.unchanged: true`.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AlgorithmVersionDetailDto"},"meta":{"type":"object","properties":{"unchanged":{"type":"boolean","enum":[true]}},"required":["unchanged"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"404 ALGORITHM_DEFINITION_NOT_FOUND | ALGORITHM_REVISION_NOT_FOUND"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"422":{"description":"422 ALGORITHM_IMAGE_COMMAND_MISSING | ALGORITHM_IMAGE_COMMAND_UNREACHABLE | ALGORITHM_PULL_SECRET_INVALID | ALGORITHM_IMAGE_REF_FORBIDDEN | ALGORITHM_VERSION_BELOW_SUGGESTED | ALGORITHM_FILE_INVALID | ALGORITHM_PYTHON_SOURCE_MISSING | ALGORITHM_PYTHON_SOURCE_TOO_LARGE | ALGORITHM_PYTHON_SOURCE_INVALID | ALGORITHM_PYTHON_ENTRYPOINT_MISSING | ALGORITHM_PYTHON_REQUIREMENTS_TOO_MANY | ALGORITHM_PYTHON_REQUIREMENT_INVALID | ALGORITHM_PYTHON_REQUIREMENT_DUPLICATE | ALGORITHM_SOURCE_FIELDS_CONFLICT | ALGORITHM_INPUT_FORMAT_UNKNOWN | ALGORITHM_CLOUD_BUILD_UNAVAILABLE | ALGORITHM_IMAGE_PUSH_UNAVAILABLE | ALGORITHM_BUILD_FAILED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["algorithms","public-docs:algorithms","algorithms"],"x-embodiflow-permission":{"point":"algorithm:write","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a algorithm"}},"/algorithms/version-suggestions":{"post":{"operationId":"algorithms.versionSuggestions.create","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateAlgorithmVersionSuggestionBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AlgorithmVersionSuggestionDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"404 ALGORITHM_DEFINITION_NOT_FOUND | ALGORITHM_REVISION_NOT_FOUND"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"422":{"description":"422 ALGORITHM_IMAGE_COMMAND_MISSING | ALGORITHM_IMAGE_COMMAND_UNREACHABLE | ALGORITHM_PULL_SECRET_INVALID | ALGORITHM_IMAGE_REF_FORBIDDEN | ALGORITHM_VERSION_BELOW_SUGGESTED | ALGORITHM_FILE_INVALID | ALGORITHM_PYTHON_SOURCE_MISSING | ALGORITHM_PYTHON_SOURCE_TOO_LARGE | ALGORITHM_PYTHON_SOURCE_INVALID | ALGORITHM_PYTHON_ENTRYPOINT_MISSING | ALGORITHM_PYTHON_REQUIREMENTS_TOO_MANY | ALGORITHM_PYTHON_REQUIREMENT_INVALID | ALGORITHM_PYTHON_REQUIREMENT_DUPLICATE | ALGORITHM_SOURCE_FIELDS_CONFLICT | ALGORITHM_INPUT_FORMAT_UNKNOWN | ALGORITHM_CLOUD_BUILD_UNAVAILABLE | ALGORITHM_IMAGE_PUSH_UNAVAILABLE | ALGORITHM_BUILD_FAILED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Lowest version a save of this document may carry; writes nothing.","tags":["algorithms","public-docs:algorithms","algorithms"],"x-embodiflow-permission":{"point":"algorithm:write","projectScoped":false},"security":[{"pat":[]}]}},"/algorithms/{algorithmId}/used-by":{"get":{"operationId":"algorithms.usedBy.get","parameters":[{"name":"algorithmId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AlgorithmUsedByDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"409 ALGORITHM_VERSION_EXISTS | IDEMPOTENCY_CONFLICT"},"422":{"description":"422 ALGORITHM_IMAGE_COMMAND_MISSING | ALGORITHM_IMAGE_COMMAND_UNREACHABLE | ALGORITHM_PULL_SECRET_INVALID | ALGORITHM_IMAGE_REF_FORBIDDEN | ALGORITHM_VERSION_BELOW_SUGGESTED | ALGORITHM_FILE_INVALID | ALGORITHM_PYTHON_SOURCE_MISSING | ALGORITHM_PYTHON_SOURCE_TOO_LARGE | ALGORITHM_PYTHON_SOURCE_INVALID | ALGORITHM_PYTHON_ENTRYPOINT_MISSING | ALGORITHM_PYTHON_REQUIREMENTS_TOO_MANY | ALGORITHM_PYTHON_REQUIREMENT_INVALID | ALGORITHM_PYTHON_REQUIREMENT_DUPLICATE | ALGORITHM_SOURCE_FIELDS_CONFLICT | ALGORITHM_INPUT_FORMAT_UNKNOWN | ALGORITHM_CLOUD_BUILD_UNAVAILABLE | ALGORITHM_IMAGE_PUSH_UNAVAILABLE | ALGORITHM_BUILD_FAILED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["algorithms","public-docs:algorithms","algorithms"],"x-embodiflow-permission":{"point":"algorithm:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List used by for a algorithm"}},"/algorithms/{algorithmId}/versions":{"get":{"operationId":"algorithms.versions.list","parameters":[{"name":"algorithmId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/AlgorithmVersionSummaryDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"409 ALGORITHM_VERSION_EXISTS | IDEMPOTENCY_CONFLICT"},"422":{"description":"422 ALGORITHM_IMAGE_COMMAND_MISSING | ALGORITHM_IMAGE_COMMAND_UNREACHABLE | ALGORITHM_PULL_SECRET_INVALID | ALGORITHM_IMAGE_REF_FORBIDDEN | ALGORITHM_VERSION_BELOW_SUGGESTED | ALGORITHM_FILE_INVALID | ALGORITHM_PYTHON_SOURCE_MISSING | ALGORITHM_PYTHON_SOURCE_TOO_LARGE | ALGORITHM_PYTHON_SOURCE_INVALID | ALGORITHM_PYTHON_ENTRYPOINT_MISSING | ALGORITHM_PYTHON_REQUIREMENTS_TOO_MANY | ALGORITHM_PYTHON_REQUIREMENT_INVALID | ALGORITHM_PYTHON_REQUIREMENT_DUPLICATE | ALGORITHM_SOURCE_FIELDS_CONFLICT | ALGORITHM_INPUT_FORMAT_UNKNOWN | ALGORITHM_CLOUD_BUILD_UNAVAILABLE | ALGORITHM_IMAGE_PUSH_UNAVAILABLE | ALGORITHM_BUILD_FAILED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["algorithms","public-docs:algorithms","algorithms"],"x-embodiflow-permission":{"point":"algorithm:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List versions for a algorithm"},"post":{"operationId":"algorithms.versions.create","parameters":[{"name":"algorithmId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterAlgorithmVersionBodyDto"}}}},"responses":{"201":{"description":"The saved version. A python save whose content equals the latest usable version writes nothing and also answers 201, with the stored version and `meta.unchanged: true`.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AlgorithmVersionDetailDto"},"meta":{"type":"object","properties":{"unchanged":{"type":"boolean","enum":[true]}},"required":["unchanged"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"422":{"description":"422 ALGORITHM_IMAGE_COMMAND_MISSING | ALGORITHM_IMAGE_COMMAND_UNREACHABLE | ALGORITHM_PULL_SECRET_INVALID | ALGORITHM_IMAGE_REF_FORBIDDEN | ALGORITHM_VERSION_BELOW_SUGGESTED | ALGORITHM_FILE_INVALID | ALGORITHM_PYTHON_SOURCE_MISSING | ALGORITHM_PYTHON_SOURCE_TOO_LARGE | ALGORITHM_PYTHON_SOURCE_INVALID | ALGORITHM_PYTHON_ENTRYPOINT_MISSING | ALGORITHM_PYTHON_REQUIREMENTS_TOO_MANY | ALGORITHM_PYTHON_REQUIREMENT_INVALID | ALGORITHM_PYTHON_REQUIREMENT_DUPLICATE | ALGORITHM_SOURCE_FIELDS_CONFLICT | ALGORITHM_INPUT_FORMAT_UNKNOWN | ALGORITHM_CLOUD_BUILD_UNAVAILABLE | ALGORITHM_IMAGE_PUSH_UNAVAILABLE | ALGORITHM_BUILD_FAILED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["algorithms","public-docs:algorithms","algorithms"],"x-embodiflow-permission":{"point":"algorithm:write","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a version"}},"/algorithms/{algorithmId}/versions/{version}":{"get":{"operationId":"algorithms.versions.get","parameters":[{"name":"algorithmId","required":true,"in":"path","schema":{"type":"string"}},{"name":"version","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AlgorithmVersionDetailDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"409 ALGORITHM_VERSION_EXISTS | IDEMPOTENCY_CONFLICT"},"422":{"description":"422 ALGORITHM_IMAGE_COMMAND_MISSING | ALGORITHM_IMAGE_COMMAND_UNREACHABLE | ALGORITHM_PULL_SECRET_INVALID | ALGORITHM_IMAGE_REF_FORBIDDEN | ALGORITHM_VERSION_BELOW_SUGGESTED | ALGORITHM_FILE_INVALID | ALGORITHM_PYTHON_SOURCE_MISSING | ALGORITHM_PYTHON_SOURCE_TOO_LARGE | ALGORITHM_PYTHON_SOURCE_INVALID | ALGORITHM_PYTHON_ENTRYPOINT_MISSING | ALGORITHM_PYTHON_REQUIREMENTS_TOO_MANY | ALGORITHM_PYTHON_REQUIREMENT_INVALID | ALGORITHM_PYTHON_REQUIREMENT_DUPLICATE | ALGORITHM_SOURCE_FIELDS_CONFLICT | ALGORITHM_INPUT_FORMAT_UNKNOWN | ALGORITHM_CLOUD_BUILD_UNAVAILABLE | ALGORITHM_IMAGE_PUSH_UNAVAILABLE | ALGORITHM_BUILD_FAILED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["algorithms","public-docs:algorithms","algorithms"],"x-embodiflow-permission":{"point":"algorithm:read","projectScoped":false},"security":[{"pat":[]}],"summary":"Get a version"},"patch":{"operationId":"algorithms.versions.update","parameters":[{"name":"algorithmId","required":true,"in":"path","schema":{"type":"string"}},{"name":"version","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchAlgorithmVersionBodyDto"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AlgorithmVersionDetailDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"422":{"description":"422 ALGORITHM_IMAGE_COMMAND_MISSING | ALGORITHM_IMAGE_COMMAND_UNREACHABLE | ALGORITHM_PULL_SECRET_INVALID | ALGORITHM_IMAGE_REF_FORBIDDEN | ALGORITHM_VERSION_BELOW_SUGGESTED | ALGORITHM_FILE_INVALID | ALGORITHM_PYTHON_SOURCE_MISSING | ALGORITHM_PYTHON_SOURCE_TOO_LARGE | ALGORITHM_PYTHON_SOURCE_INVALID | ALGORITHM_PYTHON_ENTRYPOINT_MISSING | ALGORITHM_PYTHON_REQUIREMENTS_TOO_MANY | ALGORITHM_PYTHON_REQUIREMENT_INVALID | ALGORITHM_PYTHON_REQUIREMENT_DUPLICATE | ALGORITHM_SOURCE_FIELDS_CONFLICT | ALGORITHM_INPUT_FORMAT_UNKNOWN | ALGORITHM_CLOUD_BUILD_UNAVAILABLE | ALGORITHM_IMAGE_PUSH_UNAVAILABLE | ALGORITHM_BUILD_FAILED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["algorithms","public-docs:algorithms","algorithms"],"x-embodiflow-permission":{"point":"algorithm:write","projectScoped":false},"security":[{"pat":[]}],"summary":"Update a version"}},"/algorithms/{algorithmId}/versions/{version}/builds":{"post":{"operationId":"algorithms.versions.builds.create","parameters":[{"name":"algorithmId","required":true,"in":"path","schema":{"type":"string"}},{"name":"version","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"202":{"description":"Build status of the version: `data.build` is null when no build was needed; poll GET version for `build.state`.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AlgorithmRevisionBuildResultDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"422":{"description":"422 ALGORITHM_IMAGE_COMMAND_MISSING | ALGORITHM_IMAGE_COMMAND_UNREACHABLE | ALGORITHM_PULL_SECRET_INVALID | ALGORITHM_IMAGE_REF_FORBIDDEN | ALGORITHM_VERSION_BELOW_SUGGESTED | ALGORITHM_FILE_INVALID | ALGORITHM_PYTHON_SOURCE_MISSING | ALGORITHM_PYTHON_SOURCE_TOO_LARGE | ALGORITHM_PYTHON_SOURCE_INVALID | ALGORITHM_PYTHON_ENTRYPOINT_MISSING | ALGORITHM_PYTHON_REQUIREMENTS_TOO_MANY | ALGORITHM_PYTHON_REQUIREMENT_INVALID | ALGORITHM_PYTHON_REQUIREMENT_DUPLICATE | ALGORITHM_SOURCE_FIELDS_CONFLICT | ALGORITHM_INPUT_FORMAT_UNKNOWN | ALGORITHM_CLOUD_BUILD_UNAVAILABLE | ALGORITHM_IMAGE_PUSH_UNAVAILABLE | ALGORITHM_BUILD_FAILED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Builds the image of a Python version: no build when it has no\nrequirements (the platform base image is used), otherwise a queued cloud\nbuild (no reuse of an earlier version's image).\nIdempotent: a version with an image or an active build answers with it.","tags":["algorithms","public-docs:algorithms","algorithms"],"x-embodiflow-permission":{"point":"algorithm:write","projectScoped":false},"security":[{"pat":[]}]}},"/algorithms/{algorithmId}":{"get":{"operationId":"algorithms.get","parameters":[{"name":"algorithmId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AlgorithmLibraryItemDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"409 ALGORITHM_VERSION_EXISTS | IDEMPOTENCY_CONFLICT"},"422":{"description":"422 ALGORITHM_IMAGE_COMMAND_MISSING | ALGORITHM_IMAGE_COMMAND_UNREACHABLE | ALGORITHM_PULL_SECRET_INVALID | ALGORITHM_IMAGE_REF_FORBIDDEN | ALGORITHM_VERSION_BELOW_SUGGESTED | ALGORITHM_FILE_INVALID | ALGORITHM_PYTHON_SOURCE_MISSING | ALGORITHM_PYTHON_SOURCE_TOO_LARGE | ALGORITHM_PYTHON_SOURCE_INVALID | ALGORITHM_PYTHON_ENTRYPOINT_MISSING | ALGORITHM_PYTHON_REQUIREMENTS_TOO_MANY | ALGORITHM_PYTHON_REQUIREMENT_INVALID | ALGORITHM_PYTHON_REQUIREMENT_DUPLICATE | ALGORITHM_SOURCE_FIELDS_CONFLICT | ALGORITHM_INPUT_FORMAT_UNKNOWN | ALGORITHM_CLOUD_BUILD_UNAVAILABLE | ALGORITHM_IMAGE_PUSH_UNAVAILABLE | ALGORITHM_BUILD_FAILED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["algorithms","public-docs:algorithms","algorithms"],"x-embodiflow-permission":{"point":"algorithm:read","projectScoped":false},"security":[{"pat":[]}],"summary":"Get a algorithm"}},"/algorithms/sample-runs":{"post":{"operationId":"algorithms.sampleRuns.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateAlgorithmSampleRunBodyDto"}}}},"responses":{"202":{"description":"Run accepted; poll GET for state","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AlgorithmSampleRunDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"404 RECORDING_NOT_FOUND | ALGORITHM_SAMPLE_RUN_NOT_FOUND"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"422":{"description":"422 ALGORITHM_SAMPLE_RUN_UNAVAILABLE | ALGORITHM_SAMPLE_RUN_RECORDINGS_INVALID | ALGORITHM_SAMPLE_RUN_SOURCE_UNSUPPORTED | ALGORITHM_SAMPLE_RUN_PARAMS_UNSUPPORTED | ALGORITHM_FILE_INVALID | ALGORITHM_PYTHON_SOURCE_MISSING | ALGORITHM_PYTHON_SOURCE_TOO_LARGE | ALGORITHM_PYTHON_SOURCE_INVALID | ALGORITHM_PYTHON_ENTRYPOINT_MISSING | ALGORITHM_PYTHON_REQUIREMENTS_TOO_MANY | ALGORITHM_PYTHON_REQUIREMENT_INVALID | ALGORITHM_PYTHON_REQUIREMENT_DUPLICATE | ALGORITHM_SOURCE_FIELDS_CONFLICT | ALGORITHM_INPUT_FORMAT_UNKNOWN | ALGORITHM_SAMPLE_RUN_GPU_UNSUPPORTED | WORKFLOW_RAW_CODE_AUTHORITY_DENIED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["algorithms","public-docs:algorithms","algorithms"],"x-embodiflow-permission":{"point":"algorithm:write","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a sample run"}},"/algorithms/sample-runs/{id}":{"get":{"operationId":"algorithms.sampleRuns.get","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AlgorithmSampleRunDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"422":{"description":"422 ALGORITHM_SAMPLE_RUN_UNAVAILABLE | ALGORITHM_SAMPLE_RUN_RECORDINGS_INVALID | ALGORITHM_SAMPLE_RUN_SOURCE_UNSUPPORTED | ALGORITHM_SAMPLE_RUN_PARAMS_UNSUPPORTED | ALGORITHM_FILE_INVALID | ALGORITHM_PYTHON_SOURCE_MISSING | ALGORITHM_PYTHON_SOURCE_TOO_LARGE | ALGORITHM_PYTHON_SOURCE_INVALID | ALGORITHM_PYTHON_ENTRYPOINT_MISSING | ALGORITHM_PYTHON_REQUIREMENTS_TOO_MANY | ALGORITHM_PYTHON_REQUIREMENT_INVALID | ALGORITHM_PYTHON_REQUIREMENT_DUPLICATE | ALGORITHM_SOURCE_FIELDS_CONFLICT | ALGORITHM_INPUT_FORMAT_UNKNOWN | ALGORITHM_SAMPLE_RUN_GPU_UNSUPPORTED | WORKFLOW_RAW_CODE_AUTHORITY_DENIED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["algorithms","public-docs:algorithms","algorithms"],"x-embodiflow-permission":{"point":"algorithm:write","projectScoped":false},"security":[{"pat":[]}],"summary":"Get a sample run"}},"/algorithms/{algorithmId}/builds":{"get":{"operationId":"algorithms.builds.list","parameters":[{"name":"algorithmId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"data":{"type":"array","items":{"$ref":"#/components/schemas/AlgorithmBuildSummaryDto"}}},"required":["meta","data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"422":{"description":"422 ALGORITHM_CLOUD_BUILD_UNAVAILABLE | ALGORITHM_IMAGE_PUSH_UNAVAILABLE"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["algorithms","public-docs:algorithms","algorithms"],"x-embodiflow-permission":{"point":"algorithm:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List builds for a algorithm"},"post":{"operationId":"algorithms.builds.create","parameters":[{"name":"algorithmId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateAlgorithmBuildBodyDto"}}}},"responses":{"202":{"description":"Build accepted; poll GET for state","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AlgorithmBuildDetailDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"422":{"description":"422 ALGORITHM_CLOUD_BUILD_UNAVAILABLE | ALGORITHM_IMAGE_PUSH_UNAVAILABLE"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["algorithms","public-docs:algorithms","algorithms"],"x-embodiflow-permission":{"point":"algorithm:write","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a build"}},"/algorithms/{algorithmId}/builds/{buildId}":{"get":{"operationId":"algorithms.builds.get","parameters":[{"name":"algorithmId","required":true,"in":"path","schema":{"type":"string"}},{"name":"buildId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AlgorithmBuildDetailDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"422":{"description":"422 ALGORITHM_CLOUD_BUILD_UNAVAILABLE | ALGORITHM_IMAGE_PUSH_UNAVAILABLE"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["algorithms","public-docs:algorithms","algorithms"],"x-embodiflow-permission":{"point":"algorithm:read","projectScoped":false},"security":[{"pat":[]}],"summary":"Get a build"}},"/algorithms/{algorithmId}/builds/{buildId}/logs":{"get":{"operationId":"algorithms.builds.logs.get","parameters":[{"name":"algorithmId","required":true,"in":"path","schema":{"type":"string"}},{"name":"buildId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AlgorithmBuildLogsDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"422":{"description":"422 ALGORITHM_CLOUD_BUILD_UNAVAILABLE | ALGORITHM_IMAGE_PUSH_UNAVAILABLE"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["algorithms","public-docs:algorithms","algorithms"],"x-embodiflow-permission":{"point":"algorithm:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List logs for a build"}},"/algorithms/{algorithmId}/builds/{buildId}/retries":{"post":{"operationId":"algorithms.builds.retries.create","parameters":[{"name":"algorithmId","required":true,"in":"path","schema":{"type":"string"}},{"name":"buildId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"202":{"description":"Retry accepted; poll GET for state","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AlgorithmBuildDetailDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"422":{"description":"422 ALGORITHM_CLOUD_BUILD_UNAVAILABLE | ALGORITHM_IMAGE_PUSH_UNAVAILABLE"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["algorithms","public-docs:algorithms","algorithms"],"x-embodiflow-permission":{"point":"algorithm:write","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a retry"}},"/algorithms/registry-tokens":{"post":{"operationId":"algorithms.registryTokens.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateRegistryTokenBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/RegistryTokenCredentialDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"404 ALGORITHM_DEFINITION_NOT_FOUND"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"422":{"description":"422 ALGORITHM_IMAGE_PUSH_UNAVAILABLE"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["algorithms","public-docs:algorithms","algorithms"],"x-embodiflow-permission":{"point":["algorithm:read","algorithm:write","model-image:write"],"projectScoped":false},"security":[{"pat":[]}],"summary":"Create a registry token"}},"/registry/token":{"get":{"operationId":"registry.token.get","parameters":[{"name":"service","required":false,"in":"query","schema":{"type":"string"}},{"name":"scope","required":false,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DockerRegistryTokenResponseDto"}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"404 ALGORITHM_DEFINITION_NOT_FOUND"},"422":{"description":"422 ALGORITHM_IMAGE_PUSH_UNAVAILABLE"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Docker registry token protocol (non-envelope). HTTP Basic password is a PAT.","tags":["registry","public-docs:registry","registry"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[{"pat":[]}]}},"/rig-profiles/drafts":{"post":{"operationId":"rigProfiles.drafts.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateRigProfileDraftBodyDto"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/RigProfileDraftDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"description":"403 RIG_PROFILE_RAW_READ_DENIED"},"404":{"description":"404 RIG_PROFILE_NOT_FOUND | RECORDING_NOT_FOUND"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"422":{"description":"422 RIG_PROFILE_INVALID | RIG_PROFILE_DRAFT_INCOMPLETE | RIG_PROFILE_SOURCE_UNSUPPORTED | RIG_PROFILE_DRAFT_UNREADABLE"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Analyses a recording and answers a draft; stores nothing.","tags":["rig-profiles","public-docs:rig-profiles"],"x-embodiflow-permission":{"point":"algorithm:write","projectScoped":false},"security":[{"pat":[]}]}},"/rig-profiles":{"post":{"operationId":"rigProfiles.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateRigProfileBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"allOf":[{"$ref":"#/components/schemas/RigProfileDto"},{"type":"object","properties":{"draft":{"type":"object","properties":{"profile":{"type":"string"},"sourceKind":{"type":"string","enum":["human","robot"]},"robotType":{"type":"string"},"match":{"type":"object","properties":{"topics":{"type":"array","items":{"type":"string"}},"emptyTopics":{"type":"array","items":{"type":"string"},"nullable":true},"sidecar":{"type":"string","nullable":true},"deviceType":{"type":"string","nullable":true}},"required":["topics"]},"cameras":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"key":{"type":"string"},"role":{"type":"string","enum":["other","depth","head","head_left","head_right","wrist_left","wrist_right","chest","third_person","top"]},"sensor":{"type":"string","nullable":true},"optional":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true},"latencyMs":{"type":"number","nullable":true},"needsConfirmation":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true}},"required":["topic","key","role"]}},"stampSource":{"type":"string","enum":["header_stamp","log_time"],"nullable":true},"cameraLatencyMs":{"type":"number","nullable":true},"calibration":{"type":"object","properties":{"distortion":{"type":"string","enum":["none","radtan","fisheye_kb4"]},"stereo":{"type":"object","properties":{"left":{"type":"string"},"right":{"type":"string"},"extrinsicOn":{"type":"string"},"meaning":{"type":"string"}},"required":["left","right","extrinsicOn","meaning"],"nullable":true},"camImu":{"type":"object","properties":{"on":{"type":"string"},"key":{"type":"string"},"meaning":{"type":"string"},"translationUnit":{"type":"string","enum":["m","mm"]}},"required":["on","key","meaning","translationUnit"],"nullable":true}},"required":["distortion"],"nullable":true},"imu":{"type":"object","properties":{"topic":{"type":"string"},"frame":{"type":"string"},"features":{"type":"object","properties":{"angular_velocity":{"type":"string"},"linear_acceleration":{"type":"string"}},"required":["angular_velocity","linear_acceleration"]},"orientation":{"type":"string","enum":["ignore"]}},"required":["topic","frame","features","orientation"],"nullable":true},"state":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"names":{"type":"array","items":{"type":"string"}},"unit":{"type":"string","enum":["m","mm","rad","deg","percent","normalized"]},"range":{"type":"object","properties":{"min":{"type":"number"},"max":{"type":"number"}},"required":["min","max"],"nullable":true},"semantics":{"type":"string","nullable":true},"needsConfirmation":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true}},"required":["topic","names","unit"]},"nullable":true},"action":{"oneOf":[{"type":"string","enum":["none"]},{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"names":{"type":"array","items":{"type":"string"}},"unit":{"type":"string","enum":["m","mm","rad","deg","percent","normalized"]},"range":{"type":"object","properties":{"min":{"type":"number"},"max":{"type":"number"}},"required":["min","max"],"nullable":true},"semantics":{"type":"string","nullable":true},"needsConfirmation":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true}},"required":["topic","names","unit"]}}],"nullable":true},"actionSemantics":{"type":"object","properties":{"space":{"type":"string","enum":["robot_joint","robot_tcp"]},"representation":{"type":"string","enum":["absolute","relative","delta"]},"frame":{"type":"string"},"calibrationId":{"type":"string"},"embodimentId":{"type":"string","nullable":true},"controlRateHz":{"type":"number","nullable":true}},"required":["space","representation","frame","calibrationId"],"nullable":true},"extraState":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"key":{"type":"string"},"shape":{"type":"array","items":{"type":"number"},"nullable":true},"names":{"type":"array","items":{"type":"string"},"nullable":true},"frame":{"type":"string","nullable":true},"unit":{"type":"string","enum":["m","mm","rad","deg","percent","normalized"],"nullable":true}},"required":["topic","key"]},"nullable":true},"extraAction":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"key":{"type":"string"},"shape":{"type":"array","items":{"type":"number"},"nullable":true},"names":{"type":"array","items":{"type":"string"},"nullable":true},"frame":{"type":"string","nullable":true},"unit":{"type":"string","enum":["m","mm","rad","deg","percent","normalized"],"nullable":true}},"required":["topic","key"]},"nullable":true},"dropped":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"reason":{"type":"string"}},"required":["topic","reason"]},"nullable":true},"sidecarsKept":{"type":"array","items":{"type":"string"},"nullable":true}},"required":["profile","sourceKind","robotType","match","cameras"]},"needsConfirmation":{"type":"array","items":{"type":"string"}},"facts":{"type":"object","properties":{"topics":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"schema":{"type":"string"},"messageCount":{"type":"number"}},"required":["topic","schema","messageCount"]}},"stampSkewMs":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"medianMs":{"type":"number"}},"required":["topic","medianMs"]}},"bytesRead":{"type":"number"}},"required":["topics","stampSkewMs","bytesRead"],"nullable":true},"revisions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"revision":{"type":"number"},"publishedAt":{"type":"string"},"publishedBy":{"type":"string"},"documentHash":{"type":"string"}},"required":["id","revision","publishedAt","publishedBy","documentHash"]}}},"required":["draft","needsConfirmation","facts","revisions"]}]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"description":"403 RIG_PROFILE_RAW_READ_DENIED"},"404":{"description":"404 RIG_PROFILE_NOT_FOUND | RECORDING_NOT_FOUND"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"422":{"description":"422 RIG_PROFILE_INVALID | RIG_PROFILE_DRAFT_INCOMPLETE | RIG_PROFILE_SOURCE_UNSUPPORTED | RIG_PROFILE_DRAFT_UNREADABLE"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["rig-profiles","public-docs:rig-profiles"],"x-embodiflow-permission":{"point":"algorithm:write","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a rig profile"},"get":{"operationId":"rigProfiles.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size. Default 25, maximum 100. Values above the maximum are refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response's `nextPageToken`.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"description":"403 RIG_PROFILE_RAW_READ_DENIED"},"404":{"description":"404 RIG_PROFILE_NOT_FOUND | RECORDING_NOT_FOUND"},"409":{"description":"409 RIG_PROFILE_NAME_TAKEN, RIG_PROFILE_PUBLISH_CONFLICT"},"422":{"description":"422 RIG_PROFILE_INVALID | RIG_PROFILE_DRAFT_INCOMPLETE | RIG_PROFILE_SOURCE_UNSUPPORTED | RIG_PROFILE_DRAFT_UNREADABLE"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["rig-profiles","public-docs:rig-profiles"],"x-embodiflow-permission":{"point":"algorithm:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List rig profiles"}},"/rig-profiles/{id}":{"get":{"operationId":"rigProfiles.get","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"allOf":[{"$ref":"#/components/schemas/RigProfileDto"},{"type":"object","properties":{"draft":{"type":"object","properties":{"profile":{"type":"string"},"sourceKind":{"type":"string","enum":["human","robot"]},"robotType":{"type":"string"},"match":{"type":"object","properties":{"topics":{"type":"array","items":{"type":"string"}},"emptyTopics":{"type":"array","items":{"type":"string"},"nullable":true},"sidecar":{"type":"string","nullable":true},"deviceType":{"type":"string","nullable":true}},"required":["topics"]},"cameras":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"key":{"type":"string"},"role":{"type":"string","enum":["other","depth","head","head_left","head_right","wrist_left","wrist_right","chest","third_person","top"]},"sensor":{"type":"string","nullable":true},"optional":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true},"latencyMs":{"type":"number","nullable":true},"needsConfirmation":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true}},"required":["topic","key","role"]}},"stampSource":{"type":"string","enum":["header_stamp","log_time"],"nullable":true},"cameraLatencyMs":{"type":"number","nullable":true},"calibration":{"type":"object","properties":{"distortion":{"type":"string","enum":["none","radtan","fisheye_kb4"]},"stereo":{"type":"object","properties":{"left":{"type":"string"},"right":{"type":"string"},"extrinsicOn":{"type":"string"},"meaning":{"type":"string"}},"required":["left","right","extrinsicOn","meaning"],"nullable":true},"camImu":{"type":"object","properties":{"on":{"type":"string"},"key":{"type":"string"},"meaning":{"type":"string"},"translationUnit":{"type":"string","enum":["m","mm"]}},"required":["on","key","meaning","translationUnit"],"nullable":true}},"required":["distortion"],"nullable":true},"imu":{"type":"object","properties":{"topic":{"type":"string"},"frame":{"type":"string"},"features":{"type":"object","properties":{"angular_velocity":{"type":"string"},"linear_acceleration":{"type":"string"}},"required":["angular_velocity","linear_acceleration"]},"orientation":{"type":"string","enum":["ignore"]}},"required":["topic","frame","features","orientation"],"nullable":true},"state":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"names":{"type":"array","items":{"type":"string"}},"unit":{"type":"string","enum":["m","mm","rad","deg","percent","normalized"]},"range":{"type":"object","properties":{"min":{"type":"number"},"max":{"type":"number"}},"required":["min","max"],"nullable":true},"semantics":{"type":"string","nullable":true},"needsConfirmation":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true}},"required":["topic","names","unit"]},"nullable":true},"action":{"oneOf":[{"type":"string","enum":["none"]},{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"names":{"type":"array","items":{"type":"string"}},"unit":{"type":"string","enum":["m","mm","rad","deg","percent","normalized"]},"range":{"type":"object","properties":{"min":{"type":"number"},"max":{"type":"number"}},"required":["min","max"],"nullable":true},"semantics":{"type":"string","nullable":true},"needsConfirmation":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true}},"required":["topic","names","unit"]}}],"nullable":true},"actionSemantics":{"type":"object","properties":{"space":{"type":"string","enum":["robot_joint","robot_tcp"]},"representation":{"type":"string","enum":["absolute","relative","delta"]},"frame":{"type":"string"},"calibrationId":{"type":"string"},"embodimentId":{"type":"string","nullable":true},"controlRateHz":{"type":"number","nullable":true}},"required":["space","representation","frame","calibrationId"],"nullable":true},"extraState":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"key":{"type":"string"},"shape":{"type":"array","items":{"type":"number"},"nullable":true},"names":{"type":"array","items":{"type":"string"},"nullable":true},"frame":{"type":"string","nullable":true},"unit":{"type":"string","enum":["m","mm","rad","deg","percent","normalized"],"nullable":true}},"required":["topic","key"]},"nullable":true},"extraAction":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"key":{"type":"string"},"shape":{"type":"array","items":{"type":"number"},"nullable":true},"names":{"type":"array","items":{"type":"string"},"nullable":true},"frame":{"type":"string","nullable":true},"unit":{"type":"string","enum":["m","mm","rad","deg","percent","normalized"],"nullable":true}},"required":["topic","key"]},"nullable":true},"dropped":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"reason":{"type":"string"}},"required":["topic","reason"]},"nullable":true},"sidecarsKept":{"type":"array","items":{"type":"string"},"nullable":true}},"required":["profile","sourceKind","robotType","match","cameras"]},"needsConfirmation":{"type":"array","items":{"type":"string"}},"facts":{"type":"object","properties":{"topics":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"schema":{"type":"string"},"messageCount":{"type":"number"}},"required":["topic","schema","messageCount"]}},"stampSkewMs":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"medianMs":{"type":"number"}},"required":["topic","medianMs"]}},"bytesRead":{"type":"number"}},"required":["topics","stampSkewMs","bytesRead"],"nullable":true},"revisions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"revision":{"type":"number"},"publishedAt":{"type":"string"},"publishedBy":{"type":"string"},"documentHash":{"type":"string"}},"required":["id","revision","publishedAt","publishedBy","documentHash"]}}},"required":["draft","needsConfirmation","facts","revisions"]}]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"description":"403 RIG_PROFILE_RAW_READ_DENIED"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"409 RIG_PROFILE_NAME_TAKEN, RIG_PROFILE_PUBLISH_CONFLICT"},"422":{"description":"422 RIG_PROFILE_INVALID | RIG_PROFILE_DRAFT_INCOMPLETE | RIG_PROFILE_SOURCE_UNSUPPORTED | RIG_PROFILE_DRAFT_UNREADABLE"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["rig-profiles","public-docs:rig-profiles"],"x-embodiflow-permission":{"point":"algorithm:read","projectScoped":false},"security":[{"pat":[]}],"summary":"Get a rig profile"}},"/rig-profiles/{id}/draft":{"patch":{"operationId":"rigProfiles.draft.update","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}},{"name":"if-match","required":true,"in":"header","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchRigProfileDraftBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"allOf":[{"$ref":"#/components/schemas/RigProfileDto"},{"type":"object","properties":{"draft":{"type":"object","properties":{"profile":{"type":"string"},"sourceKind":{"type":"string","enum":["human","robot"]},"robotType":{"type":"string"},"match":{"type":"object","properties":{"topics":{"type":"array","items":{"type":"string"}},"emptyTopics":{"type":"array","items":{"type":"string"},"nullable":true},"sidecar":{"type":"string","nullable":true},"deviceType":{"type":"string","nullable":true}},"required":["topics"]},"cameras":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"key":{"type":"string"},"role":{"type":"string","enum":["other","depth","head","head_left","head_right","wrist_left","wrist_right","chest","third_person","top"]},"sensor":{"type":"string","nullable":true},"optional":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true},"latencyMs":{"type":"number","nullable":true},"needsConfirmation":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true}},"required":["topic","key","role"]}},"stampSource":{"type":"string","enum":["header_stamp","log_time"],"nullable":true},"cameraLatencyMs":{"type":"number","nullable":true},"calibration":{"type":"object","properties":{"distortion":{"type":"string","enum":["none","radtan","fisheye_kb4"]},"stereo":{"type":"object","properties":{"left":{"type":"string"},"right":{"type":"string"},"extrinsicOn":{"type":"string"},"meaning":{"type":"string"}},"required":["left","right","extrinsicOn","meaning"],"nullable":true},"camImu":{"type":"object","properties":{"on":{"type":"string"},"key":{"type":"string"},"meaning":{"type":"string"},"translationUnit":{"type":"string","enum":["m","mm"]}},"required":["on","key","meaning","translationUnit"],"nullable":true}},"required":["distortion"],"nullable":true},"imu":{"type":"object","properties":{"topic":{"type":"string"},"frame":{"type":"string"},"features":{"type":"object","properties":{"angular_velocity":{"type":"string"},"linear_acceleration":{"type":"string"}},"required":["angular_velocity","linear_acceleration"]},"orientation":{"type":"string","enum":["ignore"]}},"required":["topic","frame","features","orientation"],"nullable":true},"state":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"names":{"type":"array","items":{"type":"string"}},"unit":{"type":"string","enum":["m","mm","rad","deg","percent","normalized"]},"range":{"type":"object","properties":{"min":{"type":"number"},"max":{"type":"number"}},"required":["min","max"],"nullable":true},"semantics":{"type":"string","nullable":true},"needsConfirmation":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true}},"required":["topic","names","unit"]},"nullable":true},"action":{"oneOf":[{"type":"string","enum":["none"]},{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"names":{"type":"array","items":{"type":"string"}},"unit":{"type":"string","enum":["m","mm","rad","deg","percent","normalized"]},"range":{"type":"object","properties":{"min":{"type":"number"},"max":{"type":"number"}},"required":["min","max"],"nullable":true},"semantics":{"type":"string","nullable":true},"needsConfirmation":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true}},"required":["topic","names","unit"]}}],"nullable":true},"actionSemantics":{"type":"object","properties":{"space":{"type":"string","enum":["robot_joint","robot_tcp"]},"representation":{"type":"string","enum":["absolute","relative","delta"]},"frame":{"type":"string"},"calibrationId":{"type":"string"},"embodimentId":{"type":"string","nullable":true},"controlRateHz":{"type":"number","nullable":true}},"required":["space","representation","frame","calibrationId"],"nullable":true},"extraState":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"key":{"type":"string"},"shape":{"type":"array","items":{"type":"number"},"nullable":true},"names":{"type":"array","items":{"type":"string"},"nullable":true},"frame":{"type":"string","nullable":true},"unit":{"type":"string","enum":["m","mm","rad","deg","percent","normalized"],"nullable":true}},"required":["topic","key"]},"nullable":true},"extraAction":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"key":{"type":"string"},"shape":{"type":"array","items":{"type":"number"},"nullable":true},"names":{"type":"array","items":{"type":"string"},"nullable":true},"frame":{"type":"string","nullable":true},"unit":{"type":"string","enum":["m","mm","rad","deg","percent","normalized"],"nullable":true}},"required":["topic","key"]},"nullable":true},"dropped":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"reason":{"type":"string"}},"required":["topic","reason"]},"nullable":true},"sidecarsKept":{"type":"array","items":{"type":"string"},"nullable":true}},"required":["profile","sourceKind","robotType","match","cameras"]},"needsConfirmation":{"type":"array","items":{"type":"string"}},"facts":{"type":"object","properties":{"topics":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"schema":{"type":"string"},"messageCount":{"type":"number"}},"required":["topic","schema","messageCount"]}},"stampSkewMs":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"medianMs":{"type":"number"}},"required":["topic","medianMs"]}},"bytesRead":{"type":"number"}},"required":["topics","stampSkewMs","bytesRead"],"nullable":true},"revisions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"revision":{"type":"number"},"publishedAt":{"type":"string"},"publishedBy":{"type":"string"},"documentHash":{"type":"string"}},"required":["id","revision","publishedAt","publishedBy","documentHash"]}}},"required":["draft","needsConfirmation","facts","revisions"]}]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"description":"403 RIG_PROFILE_RAW_READ_DENIED"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"422":{"description":"422 RIG_PROFILE_INVALID | RIG_PROFILE_DRAFT_INCOMPLETE | RIG_PROFILE_SOURCE_UNSUPPORTED | RIG_PROFILE_DRAFT_UNREADABLE"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["rig-profiles","public-docs:rig-profiles"],"x-embodiflow-permission":{"point":"algorithm:write","projectScoped":false},"security":[{"pat":[]}],"summary":"Update a draft"}},"/rig-profiles/{id}/test":{"post":{"operationId":"rigProfiles.test.create","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TestRigProfileBodyDto"}}}},"responses":{"202":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"runId":{"type":"string"},"status":{"type":"string"},"profile":{"type":"string"}},"required":["runId","status","profile"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"description":"403 RIG_PROFILE_RAW_READ_DENIED"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"422":{"description":"422 RIG_PROFILE_INVALID | RIG_PROFILE_DRAFT_INCOMPLETE | RIG_PROFILE_SOURCE_UNSUPPORTED | RIG_PROFILE_DRAFT_UNREADABLE"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["rig-profiles","public-docs:rig-profiles"],"x-embodiflow-permission":{"point":"algorithm:write","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a test"}},"/rig-profiles/{id}/revisions":{"post":{"operationId":"rigProfiles.revisions.create","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"allOf":[{"$ref":"#/components/schemas/RigProfileDto"},{"type":"object","properties":{"draft":{"type":"object","properties":{"profile":{"type":"string"},"sourceKind":{"type":"string","enum":["human","robot"]},"robotType":{"type":"string"},"match":{"type":"object","properties":{"topics":{"type":"array","items":{"type":"string"}},"emptyTopics":{"type":"array","items":{"type":"string"},"nullable":true},"sidecar":{"type":"string","nullable":true},"deviceType":{"type":"string","nullable":true}},"required":["topics"]},"cameras":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"key":{"type":"string"},"role":{"type":"string","enum":["other","depth","head","head_left","head_right","wrist_left","wrist_right","chest","third_person","top"]},"sensor":{"type":"string","nullable":true},"optional":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true},"latencyMs":{"type":"number","nullable":true},"needsConfirmation":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true}},"required":["topic","key","role"]}},"stampSource":{"type":"string","enum":["header_stamp","log_time"],"nullable":true},"cameraLatencyMs":{"type":"number","nullable":true},"calibration":{"type":"object","properties":{"distortion":{"type":"string","enum":["none","radtan","fisheye_kb4"]},"stereo":{"type":"object","properties":{"left":{"type":"string"},"right":{"type":"string"},"extrinsicOn":{"type":"string"},"meaning":{"type":"string"}},"required":["left","right","extrinsicOn","meaning"],"nullable":true},"camImu":{"type":"object","properties":{"on":{"type":"string"},"key":{"type":"string"},"meaning":{"type":"string"},"translationUnit":{"type":"string","enum":["m","mm"]}},"required":["on","key","meaning","translationUnit"],"nullable":true}},"required":["distortion"],"nullable":true},"imu":{"type":"object","properties":{"topic":{"type":"string"},"frame":{"type":"string"},"features":{"type":"object","properties":{"angular_velocity":{"type":"string"},"linear_acceleration":{"type":"string"}},"required":["angular_velocity","linear_acceleration"]},"orientation":{"type":"string","enum":["ignore"]}},"required":["topic","frame","features","orientation"],"nullable":true},"state":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"names":{"type":"array","items":{"type":"string"}},"unit":{"type":"string","enum":["m","mm","rad","deg","percent","normalized"]},"range":{"type":"object","properties":{"min":{"type":"number"},"max":{"type":"number"}},"required":["min","max"],"nullable":true},"semantics":{"type":"string","nullable":true},"needsConfirmation":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true}},"required":["topic","names","unit"]},"nullable":true},"action":{"oneOf":[{"type":"string","enum":["none"]},{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"names":{"type":"array","items":{"type":"string"}},"unit":{"type":"string","enum":["m","mm","rad","deg","percent","normalized"]},"range":{"type":"object","properties":{"min":{"type":"number"},"max":{"type":"number"}},"required":["min","max"],"nullable":true},"semantics":{"type":"string","nullable":true},"needsConfirmation":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true}},"required":["topic","names","unit"]}}],"nullable":true},"actionSemantics":{"type":"object","properties":{"space":{"type":"string","enum":["robot_joint","robot_tcp"]},"representation":{"type":"string","enum":["absolute","relative","delta"]},"frame":{"type":"string"},"calibrationId":{"type":"string"},"embodimentId":{"type":"string","nullable":true},"controlRateHz":{"type":"number","nullable":true}},"required":["space","representation","frame","calibrationId"],"nullable":true},"extraState":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"key":{"type":"string"},"shape":{"type":"array","items":{"type":"number"},"nullable":true},"names":{"type":"array","items":{"type":"string"},"nullable":true},"frame":{"type":"string","nullable":true},"unit":{"type":"string","enum":["m","mm","rad","deg","percent","normalized"],"nullable":true}},"required":["topic","key"]},"nullable":true},"extraAction":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"key":{"type":"string"},"shape":{"type":"array","items":{"type":"number"},"nullable":true},"names":{"type":"array","items":{"type":"string"},"nullable":true},"frame":{"type":"string","nullable":true},"unit":{"type":"string","enum":["m","mm","rad","deg","percent","normalized"],"nullable":true}},"required":["topic","key"]},"nullable":true},"dropped":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"reason":{"type":"string"}},"required":["topic","reason"]},"nullable":true},"sidecarsKept":{"type":"array","items":{"type":"string"},"nullable":true}},"required":["profile","sourceKind","robotType","match","cameras"]},"needsConfirmation":{"type":"array","items":{"type":"string"}},"facts":{"type":"object","properties":{"topics":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"schema":{"type":"string"},"messageCount":{"type":"number"}},"required":["topic","schema","messageCount"]}},"stampSkewMs":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"medianMs":{"type":"number"}},"required":["topic","medianMs"]}},"bytesRead":{"type":"number"}},"required":["topics","stampSkewMs","bytesRead"],"nullable":true},"revisions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"revision":{"type":"number"},"publishedAt":{"type":"string"},"publishedBy":{"type":"string"},"documentHash":{"type":"string"}},"required":["id","revision","publishedAt","publishedBy","documentHash"]}}},"required":["draft","needsConfirmation","facts","revisions"]}]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"description":"403 RIG_PROFILE_RAW_READ_DENIED"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"422":{"description":"422 RIG_PROFILE_INVALID | RIG_PROFILE_DRAFT_INCOMPLETE | RIG_PROFILE_SOURCE_UNSUPPORTED | RIG_PROFILE_DRAFT_UNREADABLE"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Publishes the confirmed draft as the next immutable revision. The path is\nthe REST noun (`revisions`): the public contract refuses verb segments.","tags":["rig-profiles","public-docs:rig-profiles"],"x-embodiflow-permission":{"point":"algorithm:write","projectScoped":false},"security":[{"pat":[]}]}},"/data-formats":{"post":{"operationId":"dataFormats.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTeamDataFormatBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"allOf":[{"$ref":"#/components/schemas/TeamDataFormatDto"},{"type":"object","properties":{"draft":{"$ref":"#/components/schemas/TeamDataFormatDraftDto"},"latestSampleRunId":{"type":"string","nullable":true},"revisions":{"type":"array","items":{"$ref":"#/components/schemas/TeamDataFormatRevisionDto"}}},"required":["draft","latestSampleRunId","revisions"]}]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"description":"403 DATA_FORMAT_RAW_READ_DENIED"},"404":{"description":"404 DATA_FORMAT_NOT_FOUND | RECORDING_NOT_FOUND"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"422":{"description":"422 DATA_FORMAT_SLUG_INVALID | DATA_FORMAT_INVALID | DATA_FORMAT_CONVERTER_UNUSABLE | DATA_FORMAT_SAMPLE_RUN_REQUIRED | DATA_FORMAT_PRIVACY_RELAX_FORBIDDEN | RECORDING_FORMAT_SAMPLE_NOT_ADMITTED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["data-formats","public-docs:data-formats"],"x-embodiflow-permission":{"point":"algorithm:write","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a data format"},"get":{"operationId":"dataFormats.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"dataKind","required":false,"in":"query","schema":{"type":"string","enum":["human","robot","video"]}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/DataFormatDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","required":["pageSize"],"properties":{"requestId":{"type":"string"},"pageSize":{"type":"number"}}}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["data-formats","public-docs:data-formats","data-formats"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List data formats"}},"/data-formats/team":{"get":{"operationId":"dataFormats.team.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size. Default 25, maximum 100. Values above the maximum are refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response's `nextPageToken`.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"description":"403 DATA_FORMAT_RAW_READ_DENIED"},"404":{"description":"404 DATA_FORMAT_NOT_FOUND | RECORDING_NOT_FOUND"},"409":{"description":"409 DATA_FORMAT_SLUG_TAKEN, DATA_FORMAT_PUBLISH_CONFLICT"},"422":{"description":"422 DATA_FORMAT_SLUG_INVALID | DATA_FORMAT_INVALID | DATA_FORMAT_CONVERTER_UNUSABLE | DATA_FORMAT_SAMPLE_RUN_REQUIRED | DATA_FORMAT_PRIVACY_RELAX_FORBIDDEN | RECORDING_FORMAT_SAMPLE_NOT_ADMITTED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"This team's own formats, drafts included. The route precedes `:formatId`.","tags":["data-formats","public-docs:data-formats"],"x-embodiflow-permission":{"point":"algorithm:read","projectScoped":false},"security":[{"pat":[]}]}},"/data-formats/{formatId}":{"get":{"operationId":"dataFormats.get","parameters":[{"name":"formatId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"allOf":[{"$ref":"#/components/schemas/TeamDataFormatDto"},{"type":"object","properties":{"draft":{"$ref":"#/components/schemas/TeamDataFormatDraftDto"},"latestSampleRunId":{"type":"string","nullable":true},"revisions":{"type":"array","items":{"$ref":"#/components/schemas/TeamDataFormatRevisionDto"}}},"required":["draft","latestSampleRunId","revisions"]}]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"description":"403 DATA_FORMAT_RAW_READ_DENIED"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"409 DATA_FORMAT_SLUG_TAKEN, DATA_FORMAT_PUBLISH_CONFLICT"},"422":{"description":"422 DATA_FORMAT_SLUG_INVALID | DATA_FORMAT_INVALID | DATA_FORMAT_CONVERTER_UNUSABLE | DATA_FORMAT_SAMPLE_RUN_REQUIRED | DATA_FORMAT_PRIVACY_RELAX_FORBIDDEN | RECORDING_FORMAT_SAMPLE_NOT_ADMITTED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["data-formats","public-docs:data-formats"],"x-embodiflow-permission":{"point":"algorithm:read","projectScoped":false},"security":[{"pat":[]}],"summary":"Get a data format"},"patch":{"operationId":"dataFormats.update","parameters":[{"name":"formatId","required":true,"in":"path","schema":{"type":"string"}},{"name":"if-match","required":true,"in":"header","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchTeamDataFormatBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"allOf":[{"$ref":"#/components/schemas/TeamDataFormatDto"},{"type":"object","properties":{"draft":{"$ref":"#/components/schemas/TeamDataFormatDraftDto"},"latestSampleRunId":{"type":"string","nullable":true},"revisions":{"type":"array","items":{"$ref":"#/components/schemas/TeamDataFormatRevisionDto"}}},"required":["draft","latestSampleRunId","revisions"]}]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"description":"403 DATA_FORMAT_RAW_READ_DENIED"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"422":{"description":"422 DATA_FORMAT_SLUG_INVALID | DATA_FORMAT_INVALID | DATA_FORMAT_CONVERTER_UNUSABLE | DATA_FORMAT_SAMPLE_RUN_REQUIRED | DATA_FORMAT_PRIVACY_RELAX_FORBIDDEN | RECORDING_FORMAT_SAMPLE_NOT_ADMITTED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["data-formats","public-docs:data-formats"],"x-embodiflow-permission":{"point":"algorithm:write","projectScoped":false},"security":[{"pat":[]}],"summary":"Update a data format"}},"/data-formats/{formatId}/sample-runs":{"post":{"operationId":"dataFormats.sampleRuns.create","parameters":[{"name":"formatId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTeamDataFormatSampleRunBodyDto"}}}},"responses":{"202":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TeamDataFormatSampleRunDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"description":"403 DATA_FORMAT_RAW_READ_DENIED"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"422":{"description":"422 DATA_FORMAT_SLUG_INVALID | DATA_FORMAT_INVALID | DATA_FORMAT_CONVERTER_UNUSABLE | DATA_FORMAT_SAMPLE_RUN_REQUIRED | DATA_FORMAT_PRIVACY_RELAX_FORBIDDEN | RECORDING_FORMAT_SAMPLE_NOT_ADMITTED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["data-formats","public-docs:data-formats"],"x-embodiflow-permission":{"point":"algorithm:write","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a sample run"}},"/data-formats/{formatId}/sample-runs/{sampleRunId}":{"get":{"operationId":"dataFormats.sampleRuns.get","parameters":[{"name":"formatId","required":true,"in":"path","schema":{"type":"string"}},{"name":"sampleRunId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TeamDataFormatSampleRunDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"description":"403 DATA_FORMAT_RAW_READ_DENIED"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"409 DATA_FORMAT_SLUG_TAKEN, DATA_FORMAT_PUBLISH_CONFLICT"},"422":{"description":"422 DATA_FORMAT_SLUG_INVALID | DATA_FORMAT_INVALID | DATA_FORMAT_CONVERTER_UNUSABLE | DATA_FORMAT_SAMPLE_RUN_REQUIRED | DATA_FORMAT_PRIVACY_RELAX_FORBIDDEN | RECORDING_FORMAT_SAMPLE_NOT_ADMITTED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["data-formats","public-docs:data-formats"],"x-embodiflow-permission":{"point":"algorithm:read","projectScoped":false},"security":[{"pat":[]}],"summary":"Get a sample run"}},"/data-formats/{formatId}/revisions":{"post":{"operationId":"dataFormats.revisions.create","parameters":[{"name":"formatId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublishTeamDataFormatBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"allOf":[{"$ref":"#/components/schemas/TeamDataFormatDto"},{"type":"object","properties":{"draft":{"$ref":"#/components/schemas/TeamDataFormatDraftDto"},"latestSampleRunId":{"type":"string","nullable":true},"revisions":{"type":"array","items":{"$ref":"#/components/schemas/TeamDataFormatRevisionDto"}}},"required":["draft","latestSampleRunId","revisions"]}]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"description":"403 DATA_FORMAT_RAW_READ_DENIED"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"422":{"description":"422 DATA_FORMAT_SLUG_INVALID | DATA_FORMAT_INVALID | DATA_FORMAT_CONVERTER_UNUSABLE | DATA_FORMAT_SAMPLE_RUN_REQUIRED | DATA_FORMAT_PRIVACY_RELAX_FORBIDDEN | RECORDING_FORMAT_SAMPLE_NOT_ADMITTED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Publishes the draft as the next immutable revision. The path is the REST\nnoun (`revisions`): the public contract refuses verb segments.","tags":["data-formats","public-docs:data-formats"],"x-embodiflow-permission":{"point":"algorithm:write","projectScoped":false},"security":[{"pat":[]}]}},"/review-tasks":{"get":{"operationId":"reviewTasks.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size. Default 25, maximum 100. Values above the maximum are refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response's `nextPageToken`.","schema":{"type":"string"}},{"name":"projectId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"datasetVersionId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"status","required":false,"in":"query","schema":{"$ref":"#/components/schemas/Object"}},{"name":"reviewerProjectMembershipId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"unassigned","required":false,"in":"query","schema":{"type":"boolean"}},{"name":"overdue","required":false,"in":"query","schema":{"type":"boolean"}},{"name":"q","required":false,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ReviewTaskSummaryDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","properties":{"requestId":{"type":"string"},"pageSize":{"type":"number"},"totalCount":{"type":"number"}},"required":["requestId","pageSize","totalCount"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["ASSIGNEE_NOT_IN_PROJECT","BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","REVIEW_TASK_CLOSED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["human-tasks","public-docs:human-tasks"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List review tasks"}},"/review-tasks/{reviewTaskId}":{"get":{"operationId":"reviewTasks.get","parameters":[{"name":"reviewTaskId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ReviewTaskSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["ASSIGNEE_NOT_IN_PROJECT","BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","REVIEW_TASK_CLOSED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_TASK_NOT_FOUND","NOT_FOUND","REVIEW_TASK_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["human-tasks","public-docs:human-tasks"],"x-embodiflow-permission":{"point":"approval:read","projectScoped":true},"security":[{"pat":[]}],"summary":"Get a review task"},"patch":{"operationId":"reviewTasks.update","parameters":[{"name":"reviewTaskId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchReviewTaskBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ReviewTaskSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["ASSIGNEE_NOT_IN_PROJECT","BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","REVIEW_TASK_CLOSED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_TASK_NOT_FOUND","NOT_FOUND","REVIEW_TASK_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["human-tasks","public-docs:human-tasks"],"x-embodiflow-permission":{"point":"approval:decide","projectScoped":true},"security":[{"pat":[]}],"summary":"Update a review task"}},"/review-tasks/{reviewTaskId}/decision-requests":{"post":{"operationId":"reviewTasks.decisionRequests.create","parameters":[{"name":"reviewTaskId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateReviewDecisionBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ReviewTaskSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["ASSIGNEE_NOT_IN_PROJECT","BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","REVIEW_TASK_CLOSED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_TASK_NOT_FOUND","NOT_FOUND","REVIEW_TASK_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["human-tasks","public-docs:human-tasks"],"x-embodiflow-permission":{"point":"approval:decide","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a decision request"}},"/collection-delivery-batches":{"get":{"operationId":"collectionDeliveryBatches.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size. Default 25, maximum 100. Values above the maximum are refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response's `nextPageToken`.","schema":{"type":"string"}},{"name":"projectId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"collectionOrderId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"status","required":false,"in":"query","schema":{"type":"string","enum":["draft","uploading","submitted","under_review","accepted","partially_accepted","rejected","cancelled"]}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/CollectionDeliveryBatchDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"404 COLLECTION_DELIVERY_BATCH_NOT_FOUND | COLLECTION_DELIVERY_ORDER_NOT_FOUND"},"409":{"description":"409 IDEMPOTENCY_CONFLICT | COLLECTION_DELIVERY_ALREADY_TERMINAL"},"422":{"description":"422 COLLECTION_DELIVERY_REPLACEMENT_NOT_ALLOWED | COLLECTION_DELIVERY_ORDER_NOT_ACCEPTING | COLLECTION_DELIVERY_SUBMIT_NOT_ALLOWED | COLLECTION_DELIVERY_VERSION_REQUIRED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-delivery-batches","public-docs:collection-delivery-batches","collection-delivery-batches"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"List collection delivery batches"},"post":{"operationId":"collectionDeliveryBatches.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCollectionDeliveryBatchBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CollectionDeliveryBatchDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"404 COLLECTION_DELIVERY_BATCH_NOT_FOUND | COLLECTION_DELIVERY_ORDER_NOT_FOUND"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"422":{"description":"422 COLLECTION_DELIVERY_REPLACEMENT_NOT_ALLOWED | COLLECTION_DELIVERY_ORDER_NOT_ACCEPTING | COLLECTION_DELIVERY_SUBMIT_NOT_ALLOWED | COLLECTION_DELIVERY_VERSION_REQUIRED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-delivery-batches","public-docs:collection-delivery-batches","collection-delivery-batches"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a collection delivery batche"}},"/collection-delivery-batches/{collectionDeliveryBatchId}":{"get":{"operationId":"collectionDeliveryBatches.get","parameters":[{"name":"collectionDeliveryBatchId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CollectionDeliveryBatchDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"409 IDEMPOTENCY_CONFLICT | COLLECTION_DELIVERY_ALREADY_TERMINAL"},"422":{"description":"422 COLLECTION_DELIVERY_REPLACEMENT_NOT_ALLOWED | COLLECTION_DELIVERY_ORDER_NOT_ACCEPTING | COLLECTION_DELIVERY_SUBMIT_NOT_ALLOWED | COLLECTION_DELIVERY_VERSION_REQUIRED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-delivery-batches","public-docs:collection-delivery-batches","collection-delivery-batches"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Get a collection delivery batche"},"patch":{"operationId":"collectionDeliveryBatches.update","parameters":[{"name":"collectionDeliveryBatchId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchCollectionDeliveryBatchBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CollectionDeliveryBatchDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"422":{"description":"422 COLLECTION_DELIVERY_REPLACEMENT_NOT_ALLOWED | COLLECTION_DELIVERY_ORDER_NOT_ACCEPTING | COLLECTION_DELIVERY_SUBMIT_NOT_ALLOWED | COLLECTION_DELIVERY_VERSION_REQUIRED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-delivery-batches","public-docs:collection-delivery-batches","collection-delivery-batches"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Update a collection delivery batche"}},"/collection-delivery-batches/{collectionDeliveryBatchId}/upload-batches":{"post":{"operationId":"collectionDeliveryBatches.uploadBatches.create","parameters":[{"name":"collectionDeliveryBatchId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LinkCollectionUploadBatchBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CollectionUploadBatchLinkDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"422":{"description":"422 COLLECTION_DELIVERY_REPLACEMENT_NOT_ALLOWED | COLLECTION_DELIVERY_ORDER_NOT_ACCEPTING | COLLECTION_DELIVERY_SUBMIT_NOT_ALLOWED | COLLECTION_DELIVERY_VERSION_REQUIRED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-delivery-batches","public-docs:collection-delivery-batches","collection-delivery-batches"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a upload batche"}},"/collection-delivery-batches/{collectionDeliveryBatchId}/submissions":{"post":{"operationId":"collectionDeliveryBatches.submissions.create","parameters":[{"name":"collectionDeliveryBatchId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CollectionDeliverySubmitResultDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"422":{"description":"422 COLLECTION_DELIVERY_REPLACEMENT_NOT_ALLOWED | COLLECTION_DELIVERY_ORDER_NOT_ACCEPTING | COLLECTION_DELIVERY_SUBMIT_NOT_ALLOWED | COLLECTION_DELIVERY_VERSION_REQUIRED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-delivery-batches","public-docs:collection-delivery-batches","collection-delivery-batches"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a submission"}},"/projects/{projectId}/collection-orders":{"get":{"operationId":"projects.collectionOrders.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","schema":{"type":"string","enum":["draft","open","in_progress","fulfilled","cancelled","closed"]}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/CollectionOrderDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"409 IDEMPOTENCY_CONFLICT | COLLECTION_SPECIFICATION_FROZEN | COLLECTION_ORDER_NOT_DRAFT"},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"List collection orders for a project"},"post":{"operationId":"projects.collectionOrders.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCollectionOrderBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CollectionOrderDetailDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a collection order"}},"/projects/{projectId}/collection-orders/{orderId}":{"get":{"operationId":"projects.collectionOrders.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CollectionOrderDetailDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"409 IDEMPOTENCY_CONFLICT | COLLECTION_SPECIFICATION_FROZEN | COLLECTION_ORDER_NOT_DRAFT"},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Get a collection order"},"patch":{"operationId":"projects.collectionOrders.update","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchCollectionOrderBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CollectionOrderDetailDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Update a collection order"},"delete":{"operationId":"projects.collectionOrders.delete","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"204":{"description":"Success"},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Delete a collection order"}},"/projects/{projectId}/collection-orders/{orderId}/openings":{"post":{"operationId":"projects.collectionOrders.openings.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CollectionOrderOpeningBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CollectionOrderDetailDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a opening"}},"/projects/{projectId}/collection-orders/{orderId}/cancellations":{"post":{"operationId":"projects.collectionOrders.cancellations.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CollectionOrderTerminalBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CollectionOrderReworkSettlementDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a cancellation"}},"/projects/{projectId}/collection-orders/{orderId}/closures":{"post":{"operationId":"projects.collectionOrders.closures.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CollectionOrderTerminalBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CollectionOrderReworkSettlementDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a closure"}},"/projects/{projectId}/collection-orders/{orderId}/duplicates":{"post":{"operationId":"projects.collectionOrders.duplicates.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DuplicateCollectionOrderBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CollectionOrderDetailDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a duplicate"}},"/projects/{projectId}/collection-orders/{orderId}/tasks":{"get":{"operationId":"projects.collectionOrders.tasks.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"409 IDEMPOTENCY_CONFLICT | COLLECTION_SPECIFICATION_FROZEN | COLLECTION_ORDER_NOT_DRAFT"},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"List tasks for a collection order"},"post":{"operationId":"projects.collectionOrders.tasks.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCollectionTaskBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CollectionTaskDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a task"}},"/projects/{projectId}/collection-orders/{orderId}/tasks/{taskId}":{"patch":{"operationId":"projects.collectionOrders.tasks.update","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"taskId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchCollectionTaskBodyDto"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CollectionTaskDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Update a task"},"delete":{"operationId":"projects.collectionOrders.tasks.delete","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"taskId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"204":{"description":"Success"},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Delete a task"}},"/projects/{projectId}/collection-orders/{orderId}/tasks/{taskId}/demo-media":{"post":{"operationId":"projects.collectionOrders.tasks.demoMedia.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"taskId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCollectionMediaUploadBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CollectionMediaUploadDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a demo media"}},"/projects/{projectId}/collection-orders/{orderId}/scenes":{"get":{"operationId":"projects.collectionOrders.scenes.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"409 IDEMPOTENCY_CONFLICT | COLLECTION_SPECIFICATION_FROZEN | COLLECTION_ORDER_NOT_DRAFT"},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"List scenes for a collection order"},"post":{"operationId":"projects.collectionOrders.scenes.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCollectionSceneBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CollectionSceneDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a scene"}},"/projects/{projectId}/collection-orders/{orderId}/scenes/{sceneId}":{"patch":{"operationId":"projects.collectionOrders.scenes.update","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"sceneId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchCollectionSceneBodyDto"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CollectionSceneDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Update a scene"},"delete":{"operationId":"projects.collectionOrders.scenes.delete","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"sceneId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"204":{"description":"Success"},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Delete a scene"}},"/projects/{projectId}/collection-orders/{orderId}/scenes/{sceneId}/photos":{"post":{"operationId":"projects.collectionOrders.scenes.photos.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"sceneId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCollectionMediaUploadBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CollectionMediaUploadDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a photo"}},"/projects/{projectId}/collection-orders/{orderId}/quotas":{"get":{"operationId":"projects.collectionOrders.quotas.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"409 IDEMPOTENCY_CONFLICT | COLLECTION_SPECIFICATION_FROZEN | COLLECTION_ORDER_NOT_DRAFT"},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"List quotas for a collection order"},"post":{"operationId":"projects.collectionOrders.quotas.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCollectionQuotaBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CollectionQuotaDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a quota"}},"/projects/{projectId}/collection-orders/{orderId}/quotas/{quotaId}":{"patch":{"operationId":"projects.collectionOrders.quotas.update","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"quotaId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchCollectionQuotaBodyDto"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CollectionQuotaDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Update a quota"},"delete":{"operationId":"projects.collectionOrders.quotas.delete","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"quotaId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"204":{"description":"Success"},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Delete a quota"}},"/projects/{projectId}/collection-orders/{orderId}/consents":{"get":{"operationId":"projects.collectionOrders.consents.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"409 IDEMPOTENCY_CONFLICT | COLLECTION_SPECIFICATION_FROZEN | COLLECTION_ORDER_NOT_DRAFT"},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"List consents for a collection order"},"post":{"operationId":"projects.collectionOrders.consents.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCollectionConsentBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CollectionConsentDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a consent"}},"/projects/{projectId}/collection-orders/{orderId}/consents/{consentId}":{"get":{"operationId":"projects.collectionOrders.consents.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"consentId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CollectionConsentDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"409 IDEMPOTENCY_CONFLICT | COLLECTION_SPECIFICATION_FROZEN | COLLECTION_ORDER_NOT_DRAFT"},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Get a consent"},"patch":{"operationId":"projects.collectionOrders.consents.update","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"consentId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CollectionConsentDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Update a consent"},"delete":{"operationId":"projects.collectionOrders.consents.delete","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"consentId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"204":{"description":"Success"},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Delete a consent"}},"/projects/{projectId}/collection-orders/{orderId}/assignments":{"get":{"operationId":"projects.collectionOrders.assignments.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"409 IDEMPOTENCY_CONFLICT | COLLECTION_SPECIFICATION_FROZEN | COLLECTION_ORDER_NOT_DRAFT"},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"List assignments for a collection order"},"post":{"operationId":"projects.collectionOrders.assignments.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCollectionAssignmentBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CollectionAssignmentDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a assignment"}},"/projects/{projectId}/collection-orders/{orderId}/assignments/invitations":{"post":{"operationId":"projects.collectionOrders.assignments.invitations.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InviteCollectionCollectorsBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/InviteCollectionCollectorsResultDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a invitation"}},"/projects/{projectId}/collection-orders/{orderId}/assignments/{assignmentId}":{"delete":{"operationId":"projects.collectionOrders.assignments.delete","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"assignmentId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"204":{"description":"Success"},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"422 COLLECTION_SPECIFICATION_INVALID | COLLECTION_OPENING_NO_TASK | COLLECTION_OPENING_NO_QUOTA | COLLECTION_OPENING_NO_CONSENT | COLLECTION_MEDIA_LIMIT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Delete a assignment"}},"/me/collection-tasks":{"get":{"operationId":"me.collectionTasks.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"404 COLLECTION_TASK_NOT_FOUND | COLLECTION_CONSENT_NOT_FOUND"},"422":{"description":"422 COLLECTION_CONSENT_REQUIRED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["me-collection-tasks","public-docs:me-collection-tasks","me-collection-tasks"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[{"pat":[]}],"summary":"List collection tasks for a me"}},"/me/collection-tasks/{taskId}":{"get":{"operationId":"me.collectionTasks.get","parameters":[{"name":"taskId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CollectionWorkspaceTaskDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"422":{"description":"422 COLLECTION_CONSENT_REQUIRED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["me-collection-tasks","public-docs:me-collection-tasks","me-collection-tasks"],"x-embodiflow-permission":{"point":"collection:deliver","projectScoped":true},"security":[{"pat":[]}],"summary":"Get a collection task"}},"/me/collection-tasks/{taskId}/consent-acceptances":{"post":{"operationId":"me.collectionTasks.consentAcceptances.create","parameters":[{"name":"taskId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCollectionConsentAcceptanceBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CollectionConsentAcceptanceDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"422":{"description":"422 COLLECTION_CONSENT_REQUIRED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["me-collection-tasks","public-docs:me-collection-tasks","me-collection-tasks"],"x-embodiflow-permission":{"point":"collection:deliver","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a consent acceptance"}},"/projects/{projectId}/collection-orders/{orderId}/submissions":{"get":{"operationId":"projects.collectionOrders.submissions.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"decision","required":false,"in":"query","schema":{"type":"string","enum":["pending","accepted_auto","in_review","accepted","rejected"]}},{"name":"taskId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"collectorMembershipId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"409 COLLECTION_SUBMISSION_NOT_IN_REVIEW | IDEMPOTENCY_CONFLICT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"List submissions for a collection order"}},"/projects/{projectId}/collection-orders/{orderId}/submissions/{submissionId}":{"get":{"operationId":"projects.collectionOrders.submissions.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"submissionId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CollectionSubmissionDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"409 COLLECTION_SUBMISSION_NOT_IN_REVIEW | IDEMPOTENCY_CONFLICT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Get a submission"}},"/projects/{projectId}/collection-orders/{orderId}/submissions/{submissionId}/reviews":{"post":{"operationId":"projects.collectionOrders.submissions.reviews.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"submissionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCollectionSubmissionReviewBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CollectionSubmissionDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a review"}},"/projects/{projectId}/collection-orders/{orderId}/progress":{"get":{"operationId":"projects.collectionOrders.progress.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CollectionOrderProgressDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"409 COLLECTION_SUBMISSION_NOT_IN_REVIEW | IDEMPOTENCY_CONFLICT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"List progress for a collection order"}},"/projects/{projectId}/collection-orders/{orderId}/reports":{"post":{"operationId":"projects.collectionOrders.reports.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCollectionReportBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CollectionReportDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a report"}},"/projects/{projectId}/collection-orders/{orderId}/delivery-batches":{"get":{"operationId":"projects.collectionOrders.deliveryBatches.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"409 COLLECTION_SUBMISSION_NOT_IN_REVIEW | IDEMPOTENCY_CONFLICT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"List delivery batches for a collection order"}},"/projects/{projectId}/collection-orders/{orderId}/delivery-batches/{deliveryBatchId}":{"get":{"operationId":"projects.collectionOrders.deliveryBatches.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"orderId","required":true,"in":"path","schema":{"type":"string"}},{"name":"deliveryBatchId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CollectionOrderDeliveryBatchDetailDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"409 COLLECTION_SUBMISSION_NOT_IN_REVIEW | IDEMPOTENCY_CONFLICT"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["collection-orders","public-docs:collection-orders","collection-orders"],"x-embodiflow-permission":{"point":"collection:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Get a delivery batche"}},"/me/delivery-batches":{"get":{"operationId":"me.deliveryBatches.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"projectId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"404 COLLECTION_DELIVERY_BATCH_NOT_FOUND"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["me-delivery-batches","public-docs:me-delivery-batches","me-delivery-batches"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[{"pat":[]}],"summary":"List delivery batches for a me"}},"/me/delivery-batches/{deliveryBatchId}/closures":{"post":{"operationId":"me.deliveryBatches.closures.create","parameters":[{"name":"deliveryBatchId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloseMeDeliveryBatchBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"string"},"status":{"type":"string"}},"required":["id","status"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["me-delivery-batches","public-docs:me-delivery-batches","me-delivery-batches"],"x-embodiflow-permission":{"point":"collection:deliver","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a closure"}},"/tenants/current/quality-policy":{"get":{"operationId":"tenants.current.qualityPolicy.get","parameters":[],"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/QualityRuleSetSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["quality-policy","public-docs:quality-policy","quality-policy"],"x-embodiflow-permission":{"point":"quality:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List quality policy for a current"},"put":{"operationId":"tenants.current.qualityPolicy.replace","parameters":[{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpsertQualityPolicyBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/QualityRuleSetSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","BAD_REQUEST","BILLING_BLOCKED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["BILLING_STATE_TRANSITION_INVALID","DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","INVOICE_SNAPSHOT_ALREADY_EXISTS","LAST_OWNER_PROTECTION","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","RECONCILIATION_ALREADY_RUNNING","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","TENANT_SLUG_CONFLICT","TENANT_STORAGE_KEY_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["quality-policy","public-docs:quality-policy","quality-policy"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Update a quality policy"}},"/quality-rule-catalog":{"get":{"operationId":"qualityRuleCatalog.get","parameters":[],"responses":{"200":{"description":"The declared quality check catalog.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/QualityRuleCatalogResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["quality-rule-catalog","public-docs:quality-rule-catalog","quality-rule-catalog"],"x-embodiflow-permission":{"point":"quality:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List quality rule catalog"}},"/dataset-versions/{versionId}/quality-findings":{"get":{"operationId":"datasetVersions.qualityFindings.list","parameters":[{"name":"versionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","schema":{"type":"string","enum":["pass","warn","fail","error","not_evaluated","not_applicable"]}},{"name":"family","required":false,"in":"query","schema":{"type":"string","enum":["structure","temporal","clock","sync","alignment","topic","modality","semantics","lerobot","video","stats","action","state","units","episode","consistency","dataset","portability","visual","privacy","human"]}},{"name":"severity","required":false,"in":"query","schema":{"type":"string","enum":["info","warning","error"]}},{"name":"blocking","required":false,"in":"query","schema":{"type":"boolean"}},{"name":"scopeType","required":false,"in":"query","schema":{"type":"string","enum":["version","file","episode","recording","topic","feature","interval"]}},{"name":"checkId","required":false,"in":"query","schema":{"maxLength":200,"type":"string"}},{"name":"runId","required":false,"in":"query","description":"Detail truth for a specific run instead of the latest run per version.\nNamed `runId` (not `workflowRunId`) because the permission guard's\nproject-scope resolver treats a `workflowRunId` query hint as the scoping\nresource and 404s when that run row does not exist — on this route the\nversion is the scoping resource.","schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"description":"Persisted quality findings for the version. Defaults to the latest workflow run that produced findings; pass runId to read a specific run. Filter family=dataset and scopeType=version for QC0400–QC0419 composition findings.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/QualityFindingDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_NOT_SOFT_HIDDEN","DIFF_NOT_READY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_INPUT","LEGAL_HOLD_SCOPE_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","PROVENANCE_SCHEMA_INVALID","REPRO_BUNDLE_RECIPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SPLIT_CONFIG_INVALID","SPLIT_NOT_REPRODUCIBLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["DATASET_NOT_FOUND","DATASET_VERSION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","PROVENANCE_NOT_AVAILABLE","REPRO_BUNDLE_INPUT_NOT_FOUND","REPRO_BUNDLE_SPLIT_MISSING","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["quality-findings","public-docs:quality-findings","quality-findings"],"x-embodiflow-permission":{"point":"quality:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List quality findings for a dataset version"}},"/dataset-versions/{versionId}/quality-gate":{"get":{"operationId":"datasetVersions.qualityGate.get","parameters":[{"name":"versionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"runId","required":false,"in":"query","description":"Detail truth for a specific run instead of the latest run per version.","schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"description":"Gate outcome computed from persisted blocking findings of the latest run (or the run named by workflowRunId). estimatedSavings arrives with the W5 gate execution path.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/QualityGateResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_NOT_SOFT_HIDDEN","DIFF_NOT_READY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_INPUT","LEGAL_HOLD_SCOPE_INVALID","PROVENANCE_SCHEMA_INVALID","REPRO_BUNDLE_RECIPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SPLIT_CONFIG_INVALID","SPLIT_NOT_REPRODUCIBLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["DATASET_NOT_FOUND","DATASET_VERSION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","PROVENANCE_NOT_AVAILABLE","REPRO_BUNDLE_INPUT_NOT_FOUND","REPRO_BUNDLE_SPLIT_MISSING","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["quality-gate","public-docs:quality-gate","quality-gate"],"x-embodiflow-permission":{"point":"quality:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List quality gate for a dataset version"}},"/dataset-versions/{versionId}/episode-exclusion-requests":{"post":{"operationId":"datasetVersions.episodeExclusionRequests.create","parameters":[{"name":"versionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"idempotency-key","required":true,"in":"header","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateEpisodeExclusionRequestDto"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/EpisodeExclusionResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_NOT_SOFT_HIDDEN","DIFF_NOT_READY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_INPUT","LEGAL_HOLD_SCOPE_INVALID","PROVENANCE_SCHEMA_INVALID","REPRO_BUNDLE_RECIPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SPLIT_CONFIG_INVALID","SPLIT_NOT_REPRODUCIBLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["DATASET_NOT_FOUND","DATASET_VERSION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","PROVENANCE_NOT_AVAILABLE","REPRO_BUNDLE_INPUT_NOT_FOUND","REPRO_BUNDLE_SPLIT_MISSING","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","SLUG_ALREADY_EXISTS","SPLIT_CONFIG_IMMUTABLE","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["quality-episode-exclusion","public-docs:quality-episode-exclusion","quality-episode-exclusion"],"x-embodiflow-permission":{"point":"quality:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a episode exclusion request"}},"/projects/{projectId}/quality-baselines":{"get":{"operationId":"projects.qualityBaselines.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Rejection-rate baselines for the project.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/QualityBaselineSummaryDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["quality-baselines","public-docs:quality-baselines","quality-baselines"],"x-embodiflow-permission":{"point":"quality:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List quality baselines for a project"}},"/projects/{projectId}/quality-baselines/{checkId}/series":{"get":{"operationId":"projects.qualityBaselines.series.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"checkId","required":true,"in":"path","schema":{"type":"string"}},{"name":"windowFrom","required":false,"in":"query","schema":{"type":"string"}},{"name":"windowTo","required":false,"in":"query","schema":{"type":"string"}},{"name":"datasetId","required":false,"in":"query","schema":{"maxLength":64,"type":"string"}},{"name":"robotType","required":false,"in":"query","schema":{"maxLength":64,"type":"string"}}],"responses":{"200":{"description":"Window-bounded rejection-rate series, baseline band, and current verdict.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/QualityBaselineSeriesResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["quality-baselines","public-docs:quality-baselines","quality-baselines"],"x-embodiflow-permission":{"point":"quality:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List series for a quality baseline"}},"/projects/{projectId}/quality/summary":{"get":{"operationId":"projects.quality.summary.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Episode and recording display verdicts, rejected-recording savings, and a 30-day upload trend.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/QualitySummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["quality","public-docs:quality","quality"],"x-embodiflow-permission":{"point":"quality:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List summary for a quality"}},"/projects/{projectId}/quality/health":{"get":{"operationId":"projects.quality.health.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Pre-bucketed health histograms (at most 40 buckets each). Missing metrics are notMeasured, never zero.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QualityHealthDataDto"}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["quality","public-docs:quality","quality"],"x-embodiflow-permission":{"point":"quality:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List health for a quality"}},"/projects/{projectId}/quality/issues":{"get":{"operationId":"projects.quality.issues.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"List failing or warning quality checks for a project","tags":["quality","public-docs:quality","quality"],"x-embodiflow-permission":{"point":"quality:read","projectScoped":true},"security":[{"pat":[]}]}},"/projects/{projectId}/quality-reinspection-requests":{"post":{"operationId":"projects.qualityReinspectionRequests.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"projectId":{"type":"string"},"enqueued":{"type":"boolean","enum":[true]}},"required":["projectId","enqueued"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["quality-reinspection","public-docs:quality-reinspection","quality-reinspection"],"x-embodiflow-permission":{"point":"quality:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a quality reinspection request"}},"/projects/{projectId}/quality-rule-set":{"get":{"operationId":"projects.qualityRuleSet.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/QualityRuleSetSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["quality-rule-sets","public-docs:quality-rule-sets","quality-rule-sets"],"x-embodiflow-permission":{"point":"quality:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List quality rule set for a project"},"put":{"operationId":"projects.qualityRuleSet.replace","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpsertQualityRuleSetBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/QualityRuleSetSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["quality-rule-sets","public-docs:quality-rule-sets","quality-rule-sets"],"x-embodiflow-permission":{"point":"quality:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Update a quality rule set"}},"/quality-rule-sets/{ruleSetId}/preview-requests":{"post":{"operationId":"qualityRuleSets.previewRequests.create","parameters":[{"name":"ruleSetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PreviewQualityRuleSetBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/QualityRuleSetPreviewResultDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","QUALITY_CHECK_PARAM_INVALID","QUALITY_CHECK_UNKNOWN","QUALITY_IDEMPOTENCY_KEY_REQUIRED","QUALITY_POLICY_LEGACY_SPEC","QUALITY_POLICY_SCOPE_CONFLICT","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","QUALITY_RULE_SET_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","QUALITY_POLICY_CREATE_RACE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["quality-rule-sets","public-docs:quality-rule-sets","quality-rule-sets"],"x-embodiflow-permission":{"point":"quality:read","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a preview request"}},"/repair-tasks":{"get":{"operationId":"repairTasks.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"severity","required":false,"in":"query","schema":{"type":"string"}},{"name":"sourceType","required":false,"in":"query","schema":{"type":"string"}},{"name":"projectId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"status","required":false,"in":"query","schema":{"$ref":"#/components/schemas/Object"}},{"name":"datasetVersionId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"assigneeProjectMembershipId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"unassigned","required":false,"in":"query","schema":{"type":"boolean"}},{"name":"overdue","required":false,"in":"query","schema":{"type":"boolean"}},{"name":"q","required":false,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/RepairTaskDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","properties":{"requestId":{"type":"string"},"pageSize":{"type":"number"},"totalCount":{"type":"number"}},"required":["requestId","pageSize","totalCount"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_STATUS_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WAIVE_REASON_REQUIRED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["repair-tasks","public-docs:repair-tasks","repair-tasks"],"x-embodiflow-permission":{"point":"task:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List repair tasks"},"post":{"operationId":"repairTasks.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateRepairTaskBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/RepairTaskDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_STATUS_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WAIVE_REASON_REQUIRED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["repair-tasks","public-docs:repair-tasks","repair-tasks"],"x-embodiflow-permission":{"point":"task:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a repair task"}},"/repair-tasks/{repairTaskId}":{"get":{"operationId":"repairTasks.get","parameters":[{"name":"repairTaskId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/RepairTaskDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_STATUS_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WAIVE_REASON_REQUIRED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","REPAIR_TASK_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["repair-tasks","public-docs:repair-tasks","repair-tasks"],"x-embodiflow-permission":{"point":"task:read","projectScoped":true},"security":[{"pat":[]}],"summary":"Get a repair task"},"patch":{"operationId":"repairTasks.update","parameters":[{"name":"repairTaskId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchRepairTaskBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/RepairTaskDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_STATUS_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WAIVE_REASON_REQUIRED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","REPAIR_TASK_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["repair-tasks","public-docs:repair-tasks","repair-tasks"],"x-embodiflow-permission":{"point":"task:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Update a repair task"}},"/gpu-class-profiles":{"get":{"operationId":"gpuClassProfiles.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/GpuClassProfileDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","required":["pageSize"],"properties":{"requestId":{"type":"string"},"pageSize":{"type":"number"}}}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","CHECKPOINT_NOT_COMPLETE","CHECKPOINT_NOT_FOUND","COMPUTE_PROFILE_INACTIVE","COMPUTE_PROFILE_NOT_FOUND","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMAGE_REVISION_NOT_EXECUTABLE","IMAGE_REVISION_NOT_PUBLISHED","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_ARTIFACT_NOT_FINALIZED","TRAINING_ARTIFACT_UNSUPPORTED_TYPE","TRAINING_ARTIFACT_WRONG_PROJECT","TRAINING_FINALIZATION_INCOMPLETE","TRAINING_FORBIDDEN_INFRA_FIELD","TRAINING_IDEMPOTENCY_KEY_REQUIRED","TRAINING_JOB_NOT_ACTIVE","TRAINING_PROVENANCE_UNRESOLVABLE","TRAINING_TENANT_FROZEN","TRAINING_VALIDATION_ERROR","TRAIN_SPEC_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["gpu-class-profiles","public-docs:gpu-class-profiles","gpu-class-profiles"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List gpu class profiles"}},"/training-jobs":{"post":{"operationId":"trainingJobs.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTrainingJobBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TrainingJobSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","CHECKPOINT_NOT_COMPLETE","CHECKPOINT_NOT_FOUND","COMPUTE_PROFILE_INACTIVE","COMPUTE_PROFILE_NOT_FOUND","DATASET_VERSION_CONTRACT_BLOCKED","DATASET_VERSION_MANIFEST_MISSING","DATASET_VERSION_QUALITY_BLOCKED","DATASET_VERSION_STATS_STALE","EXPORT_BLOCKED_BY_PII_POLICY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMAGE_REVISION_NOT_EXECUTABLE","IMAGE_REVISION_NOT_PUBLISHED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_ARTIFACT_NOT_FINALIZED","TRAINING_ARTIFACT_UNSUPPORTED_TYPE","TRAINING_ARTIFACT_WRONG_PROJECT","TRAINING_FINALIZATION_INCOMPLETE","TRAINING_FORBIDDEN_INFRA_FIELD","TRAINING_IDEMPOTENCY_KEY_REQUIRED","TRAINING_JOB_NOT_ACTIVE","TRAINING_PROVENANCE_UNRESOLVABLE","TRAINING_TENANT_FROZEN","TRAINING_VALIDATION_ERROR","TRAIN_SPEC_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["EXPORT_ALREADY_FINALIZED","IDEMPOTENCY_CONFLICT","TRAINING_CANCEL_CONFLICT","TRAINING_IDEMPOTENCY_KEY_CONFLICT","TRAINING_INVALID_STATE_TRANSITION","TRAINING_LEASE_CONFLICT","TRAINING_LEASE_NOT_HELD","TRAINING_NON_TERMINAL_ATTEMPT_EXISTS","TRAINING_OBSERVATION_VERSION_CONFLICT","TRAINING_PROVIDER_BINDING_CONFLICT","TRAINING_RETRY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["training-jobs","public-docs:training-jobs","training-jobs"],"x-embodiflow-permission":{"point":"training:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a training job"},"get":{"operationId":"trainingJobs.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"sortBy","required":false,"in":"query","schema":{"type":"string"}},{"name":"sortOrder","required":false,"in":"query","schema":{"type":"string","enum":["asc","desc"]}},{"name":"projectId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"status","required":false,"in":"query","schema":{"type":"string"}},{"name":"q","required":false,"in":"query","schema":{"maxLength":200,"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TrainingJobSummaryDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","CHECKPOINT_NOT_COMPLETE","CHECKPOINT_NOT_FOUND","COMPUTE_PROFILE_INACTIVE","COMPUTE_PROFILE_NOT_FOUND","DATASET_VERSION_CONTRACT_BLOCKED","DATASET_VERSION_MANIFEST_MISSING","DATASET_VERSION_QUALITY_BLOCKED","DATASET_VERSION_STATS_STALE","EXPORT_BLOCKED_BY_PII_POLICY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMAGE_REVISION_NOT_EXECUTABLE","IMAGE_REVISION_NOT_PUBLISHED","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_ARTIFACT_NOT_FINALIZED","TRAINING_ARTIFACT_UNSUPPORTED_TYPE","TRAINING_ARTIFACT_WRONG_PROJECT","TRAINING_FINALIZATION_INCOMPLETE","TRAINING_FORBIDDEN_INFRA_FIELD","TRAINING_IDEMPOTENCY_KEY_REQUIRED","TRAINING_JOB_NOT_ACTIVE","TRAINING_PROVENANCE_UNRESOLVABLE","TRAINING_TENANT_FROZEN","TRAINING_VALIDATION_ERROR","TRAIN_SPEC_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["training-jobs","public-docs:training-jobs","training-jobs"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List training jobs"}},"/training-jobs/{trainingJobId}":{"get":{"operationId":"trainingJobs.get","parameters":[{"name":"trainingJobId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TrainingJobSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","CHECKPOINT_NOT_COMPLETE","CHECKPOINT_NOT_FOUND","COMPUTE_PROFILE_INACTIVE","COMPUTE_PROFILE_NOT_FOUND","DATASET_VERSION_CONTRACT_BLOCKED","DATASET_VERSION_MANIFEST_MISSING","DATASET_VERSION_QUALITY_BLOCKED","DATASET_VERSION_STATS_STALE","EXPORT_BLOCKED_BY_PII_POLICY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMAGE_REVISION_NOT_EXECUTABLE","IMAGE_REVISION_NOT_PUBLISHED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_ARTIFACT_NOT_FINALIZED","TRAINING_ARTIFACT_UNSUPPORTED_TYPE","TRAINING_ARTIFACT_WRONG_PROJECT","TRAINING_FINALIZATION_INCOMPLETE","TRAINING_FORBIDDEN_INFRA_FIELD","TRAINING_IDEMPOTENCY_KEY_REQUIRED","TRAINING_JOB_NOT_ACTIVE","TRAINING_PROVENANCE_UNRESOLVABLE","TRAINING_TENANT_FROZEN","TRAINING_VALIDATION_ERROR","TRAIN_SPEC_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ARTIFACT_NOT_FOUND","DATASET_EXPORT_JOB_NOT_FOUND","DEPLOYMENT_PACKAGE_NOT_FOUND","DOWNLOAD_SESSION_NOT_FOUND","EXPORT_NOT_FOUND","IMAGE_REVISION_NOT_FOUND","NOT_FOUND","TRAINING_ARTIFACT_NOT_FOUND","TRAINING_ATTEMPT_NOT_FOUND","TRAINING_JOB_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["training-jobs","public-docs:training-jobs","training-jobs"],"x-embodiflow-permission":{"point":"training:read","projectScoped":true},"security":[{"pat":[]}],"summary":"Get a training job"}},"/training-jobs/{trainingJobId}/attempts":{"get":{"operationId":"trainingJobs.attempts.list","parameters":[{"name":"trainingJobId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TrainingAttemptSummaryDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","CHECKPOINT_NOT_COMPLETE","CHECKPOINT_NOT_FOUND","COMPUTE_PROFILE_INACTIVE","COMPUTE_PROFILE_NOT_FOUND","DATASET_VERSION_CONTRACT_BLOCKED","DATASET_VERSION_MANIFEST_MISSING","DATASET_VERSION_QUALITY_BLOCKED","DATASET_VERSION_STATS_STALE","EXPORT_BLOCKED_BY_PII_POLICY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMAGE_REVISION_NOT_EXECUTABLE","IMAGE_REVISION_NOT_PUBLISHED","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_ARTIFACT_NOT_FINALIZED","TRAINING_ARTIFACT_UNSUPPORTED_TYPE","TRAINING_ARTIFACT_WRONG_PROJECT","TRAINING_FINALIZATION_INCOMPLETE","TRAINING_FORBIDDEN_INFRA_FIELD","TRAINING_IDEMPOTENCY_KEY_REQUIRED","TRAINING_JOB_NOT_ACTIVE","TRAINING_PROVENANCE_UNRESOLVABLE","TRAINING_TENANT_FROZEN","TRAINING_VALIDATION_ERROR","TRAIN_SPEC_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ARTIFACT_NOT_FOUND","DATASET_EXPORT_JOB_NOT_FOUND","DEPLOYMENT_PACKAGE_NOT_FOUND","DOWNLOAD_SESSION_NOT_FOUND","EXPORT_NOT_FOUND","IMAGE_REVISION_NOT_FOUND","NOT_FOUND","TRAINING_ARTIFACT_NOT_FOUND","TRAINING_ATTEMPT_NOT_FOUND","TRAINING_JOB_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["training-jobs","public-docs:training-jobs","training-jobs"],"x-embodiflow-permission":{"point":"training:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List attempts for a training job"}},"/training-jobs/{trainingJobId}/attempts/{attemptId}":{"get":{"operationId":"trainingJobs.attempts.get","parameters":[{"name":"trainingJobId","required":true,"in":"path","schema":{"type":"string"}},{"name":"attemptId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TrainingAttemptDetailDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","CHECKPOINT_NOT_COMPLETE","CHECKPOINT_NOT_FOUND","COMPUTE_PROFILE_INACTIVE","COMPUTE_PROFILE_NOT_FOUND","DATASET_VERSION_CONTRACT_BLOCKED","DATASET_VERSION_MANIFEST_MISSING","DATASET_VERSION_QUALITY_BLOCKED","DATASET_VERSION_STATS_STALE","EXPORT_BLOCKED_BY_PII_POLICY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMAGE_REVISION_NOT_EXECUTABLE","IMAGE_REVISION_NOT_PUBLISHED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_ARTIFACT_NOT_FINALIZED","TRAINING_ARTIFACT_UNSUPPORTED_TYPE","TRAINING_ARTIFACT_WRONG_PROJECT","TRAINING_FINALIZATION_INCOMPLETE","TRAINING_FORBIDDEN_INFRA_FIELD","TRAINING_IDEMPOTENCY_KEY_REQUIRED","TRAINING_JOB_NOT_ACTIVE","TRAINING_PROVENANCE_UNRESOLVABLE","TRAINING_TENANT_FROZEN","TRAINING_VALIDATION_ERROR","TRAIN_SPEC_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ARTIFACT_NOT_FOUND","DATASET_EXPORT_JOB_NOT_FOUND","DEPLOYMENT_PACKAGE_NOT_FOUND","DOWNLOAD_SESSION_NOT_FOUND","EXPORT_NOT_FOUND","IMAGE_REVISION_NOT_FOUND","NOT_FOUND","TRAINING_ARTIFACT_NOT_FOUND","TRAINING_ATTEMPT_NOT_FOUND","TRAINING_JOB_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["training-jobs","public-docs:training-jobs","training-jobs"],"x-embodiflow-permission":{"point":"training:read","projectScoped":true},"security":[{"pat":[]}],"summary":"Get a attempt"}},"/training-jobs/{trainingJobId}/cancellation-requests":{"post":{"operationId":"trainingJobs.cancellationRequests.create","parameters":[{"name":"trainingJobId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CancelTrainingJobBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TrainingJobSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","CHECKPOINT_NOT_COMPLETE","CHECKPOINT_NOT_FOUND","COMPUTE_PROFILE_INACTIVE","COMPUTE_PROFILE_NOT_FOUND","DATASET_VERSION_CONTRACT_BLOCKED","DATASET_VERSION_MANIFEST_MISSING","DATASET_VERSION_QUALITY_BLOCKED","DATASET_VERSION_STATS_STALE","EXPORT_BLOCKED_BY_PII_POLICY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMAGE_REVISION_NOT_EXECUTABLE","IMAGE_REVISION_NOT_PUBLISHED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_ARTIFACT_NOT_FINALIZED","TRAINING_ARTIFACT_UNSUPPORTED_TYPE","TRAINING_ARTIFACT_WRONG_PROJECT","TRAINING_FINALIZATION_INCOMPLETE","TRAINING_FORBIDDEN_INFRA_FIELD","TRAINING_IDEMPOTENCY_KEY_REQUIRED","TRAINING_JOB_NOT_ACTIVE","TRAINING_PROVENANCE_UNRESOLVABLE","TRAINING_TENANT_FROZEN","TRAINING_VALIDATION_ERROR","TRAIN_SPEC_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ARTIFACT_NOT_FOUND","DATASET_EXPORT_JOB_NOT_FOUND","DEPLOYMENT_PACKAGE_NOT_FOUND","DOWNLOAD_SESSION_NOT_FOUND","EXPORT_NOT_FOUND","IMAGE_REVISION_NOT_FOUND","NOT_FOUND","TRAINING_ARTIFACT_NOT_FOUND","TRAINING_ATTEMPT_NOT_FOUND","TRAINING_JOB_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["EXPORT_ALREADY_FINALIZED","IDEMPOTENCY_CONFLICT","TRAINING_CANCEL_CONFLICT","TRAINING_IDEMPOTENCY_KEY_CONFLICT","TRAINING_INVALID_STATE_TRANSITION","TRAINING_LEASE_CONFLICT","TRAINING_LEASE_NOT_HELD","TRAINING_NON_TERMINAL_ATTEMPT_EXISTS","TRAINING_OBSERVATION_VERSION_CONFLICT","TRAINING_PROVIDER_BINDING_CONFLICT","TRAINING_RETRY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["training-jobs","public-docs:training-jobs","training-jobs"],"x-embodiflow-permission":{"point":"training:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a cancellation request"}},"/training-jobs/{trainingJobId}/retry-requests":{"post":{"operationId":"trainingJobs.retryRequests.create","parameters":[{"name":"trainingJobId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RetryTrainingJobBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TrainingJobSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","CHECKPOINT_NOT_COMPLETE","CHECKPOINT_NOT_FOUND","COMPUTE_PROFILE_INACTIVE","COMPUTE_PROFILE_NOT_FOUND","DATASET_VERSION_CONTRACT_BLOCKED","DATASET_VERSION_MANIFEST_MISSING","DATASET_VERSION_QUALITY_BLOCKED","DATASET_VERSION_STATS_STALE","EXPORT_BLOCKED_BY_PII_POLICY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMAGE_REVISION_NOT_EXECUTABLE","IMAGE_REVISION_NOT_PUBLISHED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_ARTIFACT_NOT_FINALIZED","TRAINING_ARTIFACT_UNSUPPORTED_TYPE","TRAINING_ARTIFACT_WRONG_PROJECT","TRAINING_FINALIZATION_INCOMPLETE","TRAINING_FORBIDDEN_INFRA_FIELD","TRAINING_IDEMPOTENCY_KEY_REQUIRED","TRAINING_JOB_NOT_ACTIVE","TRAINING_PROVENANCE_UNRESOLVABLE","TRAINING_TENANT_FROZEN","TRAINING_VALIDATION_ERROR","TRAIN_SPEC_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ARTIFACT_NOT_FOUND","DATASET_EXPORT_JOB_NOT_FOUND","DEPLOYMENT_PACKAGE_NOT_FOUND","DOWNLOAD_SESSION_NOT_FOUND","EXPORT_NOT_FOUND","IMAGE_REVISION_NOT_FOUND","NOT_FOUND","TRAINING_ARTIFACT_NOT_FOUND","TRAINING_ATTEMPT_NOT_FOUND","TRAINING_JOB_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["EXPORT_ALREADY_FINALIZED","IDEMPOTENCY_CONFLICT","TRAINING_CANCEL_CONFLICT","TRAINING_IDEMPOTENCY_KEY_CONFLICT","TRAINING_INVALID_STATE_TRANSITION","TRAINING_LEASE_CONFLICT","TRAINING_LEASE_NOT_HELD","TRAINING_NON_TERMINAL_ATTEMPT_EXISTS","TRAINING_OBSERVATION_VERSION_CONFLICT","TRAINING_PROVIDER_BINDING_CONFLICT","TRAINING_RETRY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["training-jobs","public-docs:training-jobs","training-jobs"],"x-embodiflow-permission":{"point":"training:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a retry request"}},"/compute-profiles":{"get":{"operationId":"computeProfiles.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"forModelImageRevisionId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ComputeProfileSummaryDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","required":["pageSize"],"properties":{"requestId":{"type":"string"},"pageSize":{"type":"number"}}}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","CHECKPOINT_NOT_COMPLETE","CHECKPOINT_NOT_FOUND","COMPUTE_PROFILE_INACTIVE","COMPUTE_PROFILE_NOT_FOUND","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMAGE_REVISION_NOT_EXECUTABLE","IMAGE_REVISION_NOT_PUBLISHED","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_ARTIFACT_NOT_FINALIZED","TRAINING_ARTIFACT_UNSUPPORTED_TYPE","TRAINING_ARTIFACT_WRONG_PROJECT","TRAINING_FINALIZATION_INCOMPLETE","TRAINING_FORBIDDEN_INFRA_FIELD","TRAINING_IDEMPOTENCY_KEY_REQUIRED","TRAINING_JOB_NOT_ACTIVE","TRAINING_PROVENANCE_UNRESOLVABLE","TRAINING_TENANT_FROZEN","TRAINING_VALIDATION_ERROR","TRAIN_SPEC_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["training-jobs","public-docs:training-jobs","training-jobs"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List compute profiles"}},"/training-jobs/{trainingJobId}/attempts/{attemptId}/metrics":{"get":{"operationId":"trainingJobs.attempts.metrics.list","parameters":[{"name":"trainingJobId","required":true,"in":"path","schema":{"type":"string"}},{"name":"attemptId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"fromStep","required":false,"in":"query","schema":{"type":"number"}},{"name":"toStep","required":false,"in":"query","schema":{"type":"number"}},{"name":"stride","required":false,"in":"query","description":"Keep rows where `step % stride === 0`. The last point in range is always\nincluded. Minimum 1.","schema":{"minimum":1,"type":"number"}},{"name":"limit","required":false,"in":"query","deprecated":true,"schema":{"minimum":1,"type":"number"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TrainingMetricPointDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","CHECKPOINT_NOT_COMPLETE","CHECKPOINT_NOT_FOUND","COMPUTE_PROFILE_INACTIVE","COMPUTE_PROFILE_NOT_FOUND","DATASET_VERSION_CONTRACT_BLOCKED","DATASET_VERSION_MANIFEST_MISSING","DATASET_VERSION_QUALITY_BLOCKED","DATASET_VERSION_STATS_STALE","EXPORT_BLOCKED_BY_PII_POLICY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMAGE_REVISION_NOT_EXECUTABLE","IMAGE_REVISION_NOT_PUBLISHED","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_ARTIFACT_NOT_FINALIZED","TRAINING_ARTIFACT_UNSUPPORTED_TYPE","TRAINING_ARTIFACT_WRONG_PROJECT","TRAINING_FINALIZATION_INCOMPLETE","TRAINING_FORBIDDEN_INFRA_FIELD","TRAINING_IDEMPOTENCY_KEY_REQUIRED","TRAINING_JOB_NOT_ACTIVE","TRAINING_PROVENANCE_UNRESOLVABLE","TRAINING_TENANT_FROZEN","TRAINING_VALIDATION_ERROR","TRAIN_SPEC_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ARTIFACT_NOT_FOUND","DATASET_EXPORT_JOB_NOT_FOUND","DEPLOYMENT_PACKAGE_NOT_FOUND","DOWNLOAD_SESSION_NOT_FOUND","EXPORT_NOT_FOUND","IMAGE_REVISION_NOT_FOUND","NOT_FOUND","TRAINING_ARTIFACT_NOT_FOUND","TRAINING_ATTEMPT_NOT_FOUND","TRAINING_JOB_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["training-jobs","public-docs:training-jobs","training-jobs"],"x-embodiflow-permission":{"point":"training:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List metrics for a attempt"}},"/training-jobs/{trainingJobId}/attempts/{attemptId}/logs":{"get":{"operationId":"trainingJobs.attempts.logs.get","parameters":[{"name":"trainingJobId","required":true,"in":"path","schema":{"type":"string"}},{"name":"attemptId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TrainingAttemptLogsDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","CHECKPOINT_NOT_COMPLETE","CHECKPOINT_NOT_FOUND","COMPUTE_PROFILE_INACTIVE","COMPUTE_PROFILE_NOT_FOUND","DATASET_VERSION_CONTRACT_BLOCKED","DATASET_VERSION_MANIFEST_MISSING","DATASET_VERSION_QUALITY_BLOCKED","DATASET_VERSION_STATS_STALE","EXPORT_BLOCKED_BY_PII_POLICY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMAGE_REVISION_NOT_EXECUTABLE","IMAGE_REVISION_NOT_PUBLISHED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_ARTIFACT_NOT_FINALIZED","TRAINING_ARTIFACT_UNSUPPORTED_TYPE","TRAINING_ARTIFACT_WRONG_PROJECT","TRAINING_FINALIZATION_INCOMPLETE","TRAINING_FORBIDDEN_INFRA_FIELD","TRAINING_IDEMPOTENCY_KEY_REQUIRED","TRAINING_JOB_NOT_ACTIVE","TRAINING_PROVENANCE_UNRESOLVABLE","TRAINING_TENANT_FROZEN","TRAINING_VALIDATION_ERROR","TRAIN_SPEC_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ARTIFACT_NOT_FOUND","DATASET_EXPORT_JOB_NOT_FOUND","DEPLOYMENT_PACKAGE_NOT_FOUND","DOWNLOAD_SESSION_NOT_FOUND","EXPORT_NOT_FOUND","IMAGE_REVISION_NOT_FOUND","NOT_FOUND","TRAINING_ARTIFACT_NOT_FOUND","TRAINING_ATTEMPT_NOT_FOUND","TRAINING_JOB_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["training-jobs","public-docs:training-jobs","training-jobs"],"x-embodiflow-permission":{"point":"training:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List logs for a attempt"}},"/training-jobs/{trainingJobId}/attempts/{attemptId}/checkpoints":{"get":{"operationId":"trainingJobs.attempts.checkpoints.list","parameters":[{"name":"trainingJobId","required":true,"in":"path","schema":{"type":"string"}},{"name":"attemptId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TrainingCheckpointSummaryDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","required":["pageSize"],"properties":{"requestId":{"type":"string"},"pageSize":{"type":"number"}}}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","CHECKPOINT_NOT_COMPLETE","CHECKPOINT_NOT_FOUND","COMPUTE_PROFILE_INACTIVE","COMPUTE_PROFILE_NOT_FOUND","DATASET_VERSION_CONTRACT_BLOCKED","DATASET_VERSION_MANIFEST_MISSING","DATASET_VERSION_QUALITY_BLOCKED","DATASET_VERSION_STATS_STALE","EXPORT_BLOCKED_BY_PII_POLICY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMAGE_REVISION_NOT_EXECUTABLE","IMAGE_REVISION_NOT_PUBLISHED","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_ARTIFACT_NOT_FINALIZED","TRAINING_ARTIFACT_UNSUPPORTED_TYPE","TRAINING_ARTIFACT_WRONG_PROJECT","TRAINING_FINALIZATION_INCOMPLETE","TRAINING_FORBIDDEN_INFRA_FIELD","TRAINING_IDEMPOTENCY_KEY_REQUIRED","TRAINING_JOB_NOT_ACTIVE","TRAINING_PROVENANCE_UNRESOLVABLE","TRAINING_TENANT_FROZEN","TRAINING_VALIDATION_ERROR","TRAIN_SPEC_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ARTIFACT_NOT_FOUND","DATASET_EXPORT_JOB_NOT_FOUND","DEPLOYMENT_PACKAGE_NOT_FOUND","DOWNLOAD_SESSION_NOT_FOUND","EXPORT_NOT_FOUND","IMAGE_REVISION_NOT_FOUND","NOT_FOUND","TRAINING_ARTIFACT_NOT_FOUND","TRAINING_ATTEMPT_NOT_FOUND","TRAINING_JOB_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["training-jobs","public-docs:training-jobs","training-jobs"],"x-embodiflow-permission":{"point":"training:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List checkpoints for a attempt"}},"/training-checkpoints/{checkpointId}":{"get":{"operationId":"trainingCheckpoints.get","parameters":[{"name":"checkpointId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TrainingCheckpointSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","CHECKPOINT_NOT_COMPLETE","CHECKPOINT_NOT_FOUND","COMPUTE_PROFILE_INACTIVE","COMPUTE_PROFILE_NOT_FOUND","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMAGE_REVISION_NOT_EXECUTABLE","IMAGE_REVISION_NOT_PUBLISHED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_ARTIFACT_NOT_FINALIZED","TRAINING_ARTIFACT_UNSUPPORTED_TYPE","TRAINING_ARTIFACT_WRONG_PROJECT","TRAINING_FINALIZATION_INCOMPLETE","TRAINING_FORBIDDEN_INFRA_FIELD","TRAINING_IDEMPOTENCY_KEY_REQUIRED","TRAINING_JOB_NOT_ACTIVE","TRAINING_PROVENANCE_UNRESOLVABLE","TRAINING_TENANT_FROZEN","TRAINING_VALIDATION_ERROR","TRAIN_SPEC_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMAGE_REVISION_NOT_FOUND","NOT_FOUND","TRAINING_ARTIFACT_NOT_FOUND","TRAINING_ATTEMPT_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["training-jobs","public-docs:training-jobs","training-jobs"],"x-embodiflow-permission":{"point":"training:read","projectScoped":true},"security":[{"pat":[]}],"summary":"Get a training checkpoint"},"delete":{"operationId":"trainingCheckpoints.delete","parameters":[{"name":"checkpointId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TrainingCheckpointSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","CHECKPOINT_NOT_COMPLETE","CHECKPOINT_NOT_FOUND","COMPUTE_PROFILE_INACTIVE","COMPUTE_PROFILE_NOT_FOUND","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMAGE_REVISION_NOT_EXECUTABLE","IMAGE_REVISION_NOT_PUBLISHED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_ARTIFACT_NOT_FINALIZED","TRAINING_ARTIFACT_UNSUPPORTED_TYPE","TRAINING_ARTIFACT_WRONG_PROJECT","TRAINING_FINALIZATION_INCOMPLETE","TRAINING_FORBIDDEN_INFRA_FIELD","TRAINING_IDEMPOTENCY_KEY_REQUIRED","TRAINING_JOB_NOT_ACTIVE","TRAINING_PROVENANCE_UNRESOLVABLE","TRAINING_TENANT_FROZEN","TRAINING_VALIDATION_ERROR","TRAIN_SPEC_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMAGE_REVISION_NOT_FOUND","NOT_FOUND","TRAINING_ARTIFACT_NOT_FOUND","TRAINING_ATTEMPT_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","TRAINING_CANCEL_CONFLICT","TRAINING_IDEMPOTENCY_KEY_CONFLICT","TRAINING_INVALID_STATE_TRANSITION","TRAINING_LEASE_CONFLICT","TRAINING_LEASE_NOT_HELD","TRAINING_NON_TERMINAL_ATTEMPT_EXISTS","TRAINING_OBSERVATION_VERSION_CONFLICT","TRAINING_PROVIDER_BINDING_CONFLICT","TRAINING_RETRY_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["training-jobs","public-docs:training-jobs","training-jobs"],"x-embodiflow-permission":{"point":"training:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Delete a training checkpoint"}},"/training-checkpoints/{checkpointId}/downloads":{"post":{"operationId":"trainingCheckpoints.downloads.create","parameters":[{"name":"checkpointId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TrainingCheckpointDownloadUrlDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","CHECKPOINT_NOT_COMPLETE","CHECKPOINT_NOT_FOUND","COMPUTE_PROFILE_INACTIVE","COMPUTE_PROFILE_NOT_FOUND","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMAGE_REVISION_NOT_EXECUTABLE","IMAGE_REVISION_NOT_PUBLISHED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_ARTIFACT_NOT_FINALIZED","TRAINING_ARTIFACT_UNSUPPORTED_TYPE","TRAINING_ARTIFACT_WRONG_PROJECT","TRAINING_FINALIZATION_INCOMPLETE","TRAINING_FORBIDDEN_INFRA_FIELD","TRAINING_IDEMPOTENCY_KEY_REQUIRED","TRAINING_JOB_NOT_ACTIVE","TRAINING_PROVENANCE_UNRESOLVABLE","TRAINING_TENANT_FROZEN","TRAINING_VALIDATION_ERROR","TRAIN_SPEC_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMAGE_REVISION_NOT_FOUND","NOT_FOUND","TRAINING_ARTIFACT_NOT_FOUND","TRAINING_ATTEMPT_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","TRAINING_CANCEL_CONFLICT","TRAINING_IDEMPOTENCY_KEY_CONFLICT","TRAINING_INVALID_STATE_TRANSITION","TRAINING_LEASE_CONFLICT","TRAINING_LEASE_NOT_HELD","TRAINING_NON_TERMINAL_ATTEMPT_EXISTS","TRAINING_OBSERVATION_VERSION_CONFLICT","TRAINING_PROVIDER_BINDING_CONFLICT","TRAINING_RETRY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["training-jobs","public-docs:training-jobs","training-jobs"],"x-embodiflow-permission":{"point":"training:read","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a download"}},"/model-versions":{"get":{"operationId":"modelVersions.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"sortBy","required":false,"in":"query","schema":{"type":"string"}},{"name":"sortOrder","required":false,"in":"query","schema":{"type":"string","enum":["asc","desc"]}},{"name":"projectId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"status","required":false,"in":"query","schema":{"type":"string","enum":["draft","registered","archived"]}},{"name":"modelImageDefinitionId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"q","required":false,"in":"query","schema":{"maxLength":200,"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ModelVersionSummaryDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORTED_CHECKPOINT_INCOMPLETE","IMPORTED_CHECKPOINT_INVALID_PATH","MODEL_BUNDLE_OBJECTS_REQUIRED","MODEL_BUNDLE_PREFIX_INVALID","MODEL_BUNDLE_PREFIX_REQUIRED","MODEL_VERSION_INVALID_STATUS","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_JOB_HAS_NO_OUTPUT_ARTIFACT","TRAINING_JOB_NOT_COMPLETED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["model-versions","public-docs:model-versions","model-versions"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List model versions"},"post":{"operationId":"modelVersions.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterModelVersionFromTrainingJobBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ModelVersionSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORTED_CHECKPOINT_INCOMPLETE","IMPORTED_CHECKPOINT_INVALID_PATH","MODEL_BUNDLE_OBJECTS_REQUIRED","MODEL_BUNDLE_PREFIX_INVALID","MODEL_BUNDLE_PREFIX_REQUIRED","MODEL_VERSION_INVALID_STATUS","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_JOB_HAS_NO_OUTPUT_ARTIFACT","TRAINING_JOB_NOT_COMPLETED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","MODEL_BUNDLE_JOB_NOT_RUNNING"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["model-versions","public-docs:model-versions","model-versions"],"x-embodiflow-permission":{"point":"model-version:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a model version"}},"/model-versions/{modelVersionId}":{"get":{"operationId":"modelVersions.get","parameters":[{"name":"modelVersionId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ModelVersionSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORTED_CHECKPOINT_INCOMPLETE","IMPORTED_CHECKPOINT_INVALID_PATH","MODEL_BUNDLE_OBJECTS_REQUIRED","MODEL_BUNDLE_PREFIX_INVALID","MODEL_BUNDLE_PREFIX_REQUIRED","MODEL_VERSION_INVALID_STATUS","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_JOB_HAS_NO_OUTPUT_ARTIFACT","TRAINING_JOB_NOT_COMPLETED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORTED_CHECKPOINT_NOT_FOUND","MODEL_BUNDLE_JOB_NOT_FOUND","MODEL_VERSION_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["model-versions","public-docs:model-versions","model-versions"],"x-embodiflow-permission":{"point":"model-version:read","projectScoped":true},"security":[{"pat":[]}],"summary":"Get a model version"},"delete":{"operationId":"modelVersions.delete","parameters":[{"name":"modelVersionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"202":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TrashMoveResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORTED_CHECKPOINT_INCOMPLETE","IMPORTED_CHECKPOINT_INVALID_PATH","MODEL_BUNDLE_OBJECTS_REQUIRED","MODEL_BUNDLE_PREFIX_INVALID","MODEL_BUNDLE_PREFIX_REQUIRED","MODEL_VERSION_INVALID_STATUS","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_JOB_HAS_NO_OUTPUT_ARTIFACT","TRAINING_JOB_NOT_COMPLETED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORTED_CHECKPOINT_NOT_FOUND","MODEL_BUNDLE_JOB_NOT_FOUND","MODEL_VERSION_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","MODEL_BUNDLE_JOB_NOT_RUNNING"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["model-versions","public-docs:model-versions","model-versions"],"x-embodiflow-permission":{"point":"model-version:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Delete a model version"}},"/model-versions/imports":{"post":{"operationId":"modelVersions.imports.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImportModelVersionBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ModelVersionSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORTED_CHECKPOINT_INCOMPLETE","IMPORTED_CHECKPOINT_INVALID_PATH","MODEL_BUNDLE_OBJECTS_REQUIRED","MODEL_BUNDLE_PREFIX_INVALID","MODEL_BUNDLE_PREFIX_REQUIRED","MODEL_VERSION_INVALID_STATUS","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_JOB_HAS_NO_OUTPUT_ARTIFACT","TRAINING_JOB_NOT_COMPLETED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","MODEL_BUNDLE_JOB_NOT_RUNNING"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["model-versions","public-docs:model-versions","model-versions"],"x-embodiflow-permission":{"point":"model-version:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a import"}},"/model-versions/{modelVersionId}/promotions":{"post":{"operationId":"modelVersions.promotions.create","parameters":[{"name":"modelVersionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ModelVersionSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORTED_CHECKPOINT_INCOMPLETE","IMPORTED_CHECKPOINT_INVALID_PATH","MODEL_BUNDLE_OBJECTS_REQUIRED","MODEL_BUNDLE_PREFIX_INVALID","MODEL_BUNDLE_PREFIX_REQUIRED","MODEL_VERSION_INVALID_STATUS","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_JOB_HAS_NO_OUTPUT_ARTIFACT","TRAINING_JOB_NOT_COMPLETED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORTED_CHECKPOINT_NOT_FOUND","MODEL_BUNDLE_JOB_NOT_FOUND","MODEL_VERSION_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","MODEL_BUNDLE_JOB_NOT_RUNNING"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["model-versions","public-docs:model-versions","model-versions"],"x-embodiflow-permission":{"point":"model-version:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a promotion"}},"/model-versions/{modelVersionId}/edge-inference-package":{"post":{"operationId":"modelVersions.edgeInferencePackage.create","parameters":[{"name":"modelVersionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateEdgeInferencePackageBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/EdgeInferencePackageDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORTED_CHECKPOINT_INCOMPLETE","IMPORTED_CHECKPOINT_INVALID_PATH","MODEL_BUNDLE_OBJECTS_REQUIRED","MODEL_BUNDLE_PREFIX_INVALID","MODEL_BUNDLE_PREFIX_REQUIRED","MODEL_VERSION_INVALID_STATUS","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_JOB_HAS_NO_OUTPUT_ARTIFACT","TRAINING_JOB_NOT_COMPLETED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORTED_CHECKPOINT_NOT_FOUND","MODEL_BUNDLE_JOB_NOT_FOUND","MODEL_VERSION_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","MODEL_BUNDLE_JOB_NOT_RUNNING"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Edge inference package (ADR 0072) — openpi_client + embodiment fail-closed.","tags":["model-versions","public-docs:model-versions","model-versions"],"x-embodiflow-permission":{"point":"model-version:read","projectScoped":true},"security":[{"pat":[]}]}},"/model-versions/{modelVersionId}/bundle-builds":{"post":{"operationId":"modelVersions.bundleBuilds.create","parameters":[{"name":"modelVersionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"jobId":{"type":"string"},"created":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["jobId","created"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORTED_CHECKPOINT_INCOMPLETE","IMPORTED_CHECKPOINT_INVALID_PATH","MODEL_BUNDLE_OBJECTS_REQUIRED","MODEL_BUNDLE_PREFIX_INVALID","MODEL_BUNDLE_PREFIX_REQUIRED","MODEL_VERSION_INVALID_STATUS","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_JOB_HAS_NO_OUTPUT_ARTIFACT","TRAINING_JOB_NOT_COMPLETED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORTED_CHECKPOINT_NOT_FOUND","MODEL_BUNDLE_JOB_NOT_FOUND","MODEL_VERSION_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","MODEL_BUNDLE_JOB_NOT_RUNNING"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Queue a model bundle build (ADR 0145 §5). Idempotent per reason.","tags":["model-versions","public-docs:model-versions","model-versions"],"x-embodiflow-permission":{"point":"model-version:write","projectScoped":true},"security":[{"pat":[]}]}},"/model-versions/{modelVersionId}/archivals":{"post":{"operationId":"modelVersions.archivals.create","parameters":[{"name":"modelVersionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ModelVersionSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORTED_CHECKPOINT_INCOMPLETE","IMPORTED_CHECKPOINT_INVALID_PATH","MODEL_BUNDLE_OBJECTS_REQUIRED","MODEL_BUNDLE_PREFIX_INVALID","MODEL_BUNDLE_PREFIX_REQUIRED","MODEL_VERSION_INVALID_STATUS","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_JOB_HAS_NO_OUTPUT_ARTIFACT","TRAINING_JOB_NOT_COMPLETED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORTED_CHECKPOINT_NOT_FOUND","MODEL_BUNDLE_JOB_NOT_FOUND","MODEL_VERSION_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","MODEL_BUNDLE_JOB_NOT_RUNNING"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["model-versions","public-docs:model-versions","model-versions"],"x-embodiflow-permission":{"point":"model-version:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a archival"}},"/dataset-versions/{versionId}/training-jobs":{"get":{"operationId":"datasetVersions.trainingJobs.list","parameters":[{"name":"versionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/DatasetVersionTrainingUsageItemDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_NOT_SOFT_HIDDEN","DIFF_NOT_READY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_INPUT","LEGAL_HOLD_SCOPE_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","PROVENANCE_SCHEMA_INVALID","REPRO_BUNDLE_RECIPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SPLIT_CONFIG_INVALID","SPLIT_NOT_REPRODUCIBLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["DATASET_NOT_FOUND","DATASET_VERSION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","PROVENANCE_NOT_AVAILABLE","REPRO_BUNDLE_INPUT_NOT_FOUND","REPRO_BUNDLE_SPLIT_MISSING","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-versions-retention","public-docs:dataset-versions-retention","dataset-versions"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List training jobs for a dataset version"}},"/projects/{projectId}/imported-checkpoints":{"post":{"operationId":"projects.importedCheckpoints.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateImportedCheckpointBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ImportedCheckpointSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["imported-checkpoints","public-docs:imported-checkpoints","imported-checkpoints"],"x-embodiflow-permission":{"point":"model-version:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a imported checkpoint"}},"/imported-checkpoints/{artifactId}/completion-requests":{"post":{"operationId":"importedCheckpoints.completionRequests.create","parameters":[{"name":"artifactId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ImportedCheckpointSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","CHECKPOINT_NOT_COMPLETE","CHECKPOINT_NOT_FOUND","COMPUTE_PROFILE_INACTIVE","COMPUTE_PROFILE_NOT_FOUND","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMAGE_REVISION_NOT_EXECUTABLE","IMAGE_REVISION_NOT_PUBLISHED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_ARTIFACT_NOT_FINALIZED","TRAINING_ARTIFACT_UNSUPPORTED_TYPE","TRAINING_ARTIFACT_WRONG_PROJECT","TRAINING_FINALIZATION_INCOMPLETE","TRAINING_FORBIDDEN_INFRA_FIELD","TRAINING_IDEMPOTENCY_KEY_REQUIRED","TRAINING_JOB_NOT_ACTIVE","TRAINING_PROVENANCE_UNRESOLVABLE","TRAINING_TENANT_FROZEN","TRAINING_VALIDATION_ERROR","TRAIN_SPEC_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMAGE_REVISION_NOT_FOUND","NOT_FOUND","TRAINING_ARTIFACT_NOT_FOUND","TRAINING_ATTEMPT_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","TRAINING_CANCEL_CONFLICT","TRAINING_IDEMPOTENCY_KEY_CONFLICT","TRAINING_INVALID_STATE_TRANSITION","TRAINING_LEASE_CONFLICT","TRAINING_LEASE_NOT_HELD","TRAINING_NON_TERMINAL_ATTEMPT_EXISTS","TRAINING_OBSERVATION_VERSION_CONFLICT","TRAINING_PROVIDER_BINDING_CONFLICT","TRAINING_RETRY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["imported-checkpoints","public-docs:imported-checkpoints","imported-checkpoints"],"x-embodiflow-permission":{"point":"model-version:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a completion request"}},"/embodiment-profiles":{"get":{"operationId":"embodimentProfiles.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"code","required":false,"in":"query","schema":{"type":"string"}},{"name":"publishedOnly","required":false,"in":"query","description":"Defaults to true when omitted, matching the previous raw binding.\nOnly the string `'false'` (or boolean false) disables the filter.","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/EmbodimentProfileSummaryDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","required":["pageSize"],"properties":{"requestId":{"type":"string"},"pageSize":{"type":"number"}}}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","EMBODIMENT_NOT_PUBLISHED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["embodiment-profiles","public-docs:embodiment-profiles","embodiment-profiles"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List embodiment profiles"}},"/embodiment-profiles/{embodimentProfileId}":{"get":{"operationId":"embodimentProfiles.get","parameters":[{"name":"embodimentProfileId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/EmbodimentProfileSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","EMBODIMENT_NOT_PUBLISHED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["embodiment-profiles","public-docs:embodiment-profiles","embodiment-profiles"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"Get a embodiment profile"}},"/trash":{"get":{"operationId":"trash.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"type","required":false,"in":"query","schema":{"type":"string","enum":["project","recording","episode","version","model"]}},{"name":"projectId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TrashItemDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"List items in trash","tags":["trash","public-docs:trash"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}]}},"/trash/{type}/{id}/restorations":{"post":{"operationId":"trash.restorations.create","parameters":[{"name":"type","required":true,"in":"path","schema":{"type":"string"}},{"name":"id","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RestoreTrashItemBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TrashMoveResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Restore an item from trash","tags":["trash","public-docs:trash"],"x-embodiflow-permission":{"point":["project:manage","dataset:write","model-version:write"],"projectScoped":true},"security":[{"pat":[]}]}},"/trash/{type}/{id}":{"delete":{"description":"Enqueues a Worker job. Storage is billed until the prefix is empty and the row is deleted.","operationId":"trash.delete","parameters":[{"name":"type","required":true,"in":"path","schema":{"type":"string"}},{"name":"id","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PurgeTrashItemBodyDto"}}}},"responses":{"202":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"type":{"type":"string","enum":["project","version","recording","episode","model"]},"id":{"type":"string"},"enqueued":{"type":"boolean","enum":[true]}},"required":["type","id","enqueued"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Permanently purge an item from trash","tags":["trash","public-docs:trash"],"x-embodiflow-permission":{"point":"project:manage","projectScoped":true},"security":[{"pat":[]}]}},"/models/{modelId}/evaluations":{"post":{"operationId":"models.evaluations.create","parameters":[{"name":"modelId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateModelEvaluationBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/Record"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["models","public-docs:models","models"],"x-embodiflow-permission":{"point":"training:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a evaluation"},"get":{"operationId":"models.evaluations.list","parameters":[{"name":"modelId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["models","public-docs:models","models"],"x-embodiflow-permission":{"point":"model-version:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List evaluations for a model"}},"/models/{modelId}/evaluations/{evaluationId}":{"get":{"operationId":"models.evaluations.get","parameters":[{"name":"modelId","required":true,"in":"path","schema":{"type":"string"}},{"name":"evaluationId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size. Default 25, maximum 100. Values above the maximum are refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response's `nextPageToken`.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/Record"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["models","public-docs:models","models"],"x-embodiflow-permission":{"point":"model-version:read","projectScoped":true},"security":[{"pat":[]}],"summary":"Get a evaluation"}},"/inference-deployments":{"get":{"operationId":"inferenceDeployments.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"sortBy","required":false,"in":"query","schema":{"type":"string"}},{"name":"sortOrder","required":false,"in":"query","schema":{"type":"string","enum":["asc","desc"]}},{"name":"projectId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"status","required":false,"in":"query","schema":{"type":"string","enum":["pending","deploying","running","stopping","stopped","failed"]}},{"name":"modelVersionId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"q","required":false,"in":"query","schema":{"maxLength":200,"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/InferenceDeploymentSummaryDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORTED_CHECKPOINT_INCOMPLETE","IMPORTED_CHECKPOINT_INVALID_PATH","INFERENCE_DEPLOYMENT_NOT_RUNNING","INFERENCE_ENDPOINT_NOT_EXPOSED","MODEL_BUNDLE_OBJECTS_REQUIRED","MODEL_BUNDLE_PREFIX_INVALID","MODEL_BUNDLE_PREFIX_REQUIRED","MODEL_VERSION_INVALID_STATUS","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_JOB_HAS_NO_OUTPUT_ARTIFACT","TRAINING_JOB_NOT_COMPLETED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["inference-deployments","public-docs:inference-deployments","inference-deployments"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List inference deployments"},"post":{"operationId":"inferenceDeployments.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateInferenceDeploymentBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/InferenceDeploymentSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORTED_CHECKPOINT_INCOMPLETE","IMPORTED_CHECKPOINT_INVALID_PATH","INFERENCE_DEPLOYMENT_NOT_RUNNING","INFERENCE_ENDPOINT_NOT_EXPOSED","MODEL_BUNDLE_OBJECTS_REQUIRED","MODEL_BUNDLE_PREFIX_INVALID","MODEL_BUNDLE_PREFIX_REQUIRED","MODEL_VERSION_INVALID_STATUS","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_JOB_HAS_NO_OUTPUT_ARTIFACT","TRAINING_JOB_NOT_COMPLETED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","MODEL_BUNDLE_JOB_NOT_RUNNING"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["inference-deployments","public-docs:inference-deployments","inference-deployments"],"x-embodiflow-permission":{"point":"inference-deployment:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a inference deployment"}},"/inference-deployments/{inferenceDeploymentId}":{"get":{"operationId":"inferenceDeployments.get","parameters":[{"name":"inferenceDeploymentId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/InferenceDeploymentSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORTED_CHECKPOINT_INCOMPLETE","IMPORTED_CHECKPOINT_INVALID_PATH","INFERENCE_DEPLOYMENT_NOT_RUNNING","INFERENCE_ENDPOINT_NOT_EXPOSED","MODEL_BUNDLE_OBJECTS_REQUIRED","MODEL_BUNDLE_PREFIX_INVALID","MODEL_BUNDLE_PREFIX_REQUIRED","MODEL_VERSION_INVALID_STATUS","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_JOB_HAS_NO_OUTPUT_ARTIFACT","TRAINING_JOB_NOT_COMPLETED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORTED_CHECKPOINT_NOT_FOUND","INFERENCE_DEPLOYMENT_NOT_FOUND","MODEL_BUNDLE_JOB_NOT_FOUND","MODEL_VERSION_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["inference-deployments","public-docs:inference-deployments","inference-deployments"],"x-embodiflow-permission":{"point":"inference-deployment:read","projectScoped":true},"security":[{"pat":[]}],"summary":"Get a inference deployment"}},"/inference-deployments/{inferenceDeploymentId}/control-requests":{"post":{"operationId":"inferenceDeployments.controlRequests.create","parameters":[{"name":"inferenceDeploymentId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ControlInferenceDeploymentBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/InferenceDeploymentSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORTED_CHECKPOINT_INCOMPLETE","IMPORTED_CHECKPOINT_INVALID_PATH","INFERENCE_DEPLOYMENT_NOT_RUNNING","INFERENCE_ENDPOINT_NOT_EXPOSED","MODEL_BUNDLE_OBJECTS_REQUIRED","MODEL_BUNDLE_PREFIX_INVALID","MODEL_BUNDLE_PREFIX_REQUIRED","MODEL_VERSION_INVALID_STATUS","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_JOB_HAS_NO_OUTPUT_ARTIFACT","TRAINING_JOB_NOT_COMPLETED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORTED_CHECKPOINT_NOT_FOUND","INFERENCE_DEPLOYMENT_NOT_FOUND","MODEL_BUNDLE_JOB_NOT_FOUND","MODEL_VERSION_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","MODEL_BUNDLE_JOB_NOT_RUNNING"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["inference-deployments","public-docs:inference-deployments","inference-deployments"],"x-embodiflow-permission":{"point":"inference-deployment:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a control request"}},"/inference-deployments/{inferenceDeploymentId}/connection":{"post":{"operationId":"inferenceDeployments.connection.create","parameters":[{"name":"inferenceDeploymentId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/InferenceConnectionResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORTED_CHECKPOINT_INCOMPLETE","IMPORTED_CHECKPOINT_INVALID_PATH","INFERENCE_DEPLOYMENT_NOT_RUNNING","INFERENCE_ENDPOINT_NOT_EXPOSED","MODEL_BUNDLE_OBJECTS_REQUIRED","MODEL_BUNDLE_PREFIX_INVALID","MODEL_BUNDLE_PREFIX_REQUIRED","MODEL_VERSION_INVALID_STATUS","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_JOB_HAS_NO_OUTPUT_ARTIFACT","TRAINING_JOB_NOT_COMPLETED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORTED_CHECKPOINT_NOT_FOUND","INFERENCE_DEPLOYMENT_NOT_FOUND","MODEL_BUNDLE_JOB_NOT_FOUND","MODEL_VERSION_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","MODEL_BUNDLE_JOB_NOT_RUNNING"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Connection details for a robot client (ADR 0145 §4).\n\nRead-tier because it hands out a dial target and the deployment's own token,\nnot because it is harmless — the token is the credential guarding both\nwires, so the response carries no internal Kubernetes identifier.","tags":["inference-deployments","public-docs:inference-deployments","inference-deployments"],"x-embodiflow-permission":{"point":"inference-deployment:read","projectScoped":true},"security":[{"pat":[]}]}},"/inference-deployments/{inferenceDeploymentId}/invocations":{"post":{"operationId":"inferenceDeployments.invocations.create","parameters":[{"name":"inferenceDeploymentId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InvokeInferenceDeploymentBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/InvokeInferenceDeploymentResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORTED_CHECKPOINT_INCOMPLETE","IMPORTED_CHECKPOINT_INVALID_PATH","INFERENCE_DEPLOYMENT_NOT_RUNNING","INFERENCE_ENDPOINT_NOT_EXPOSED","MODEL_BUNDLE_OBJECTS_REQUIRED","MODEL_BUNDLE_PREFIX_INVALID","MODEL_BUNDLE_PREFIX_REQUIRED","MODEL_VERSION_INVALID_STATUS","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_JOB_HAS_NO_OUTPUT_ARTIFACT","TRAINING_JOB_NOT_COMPLETED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORTED_CHECKPOINT_NOT_FOUND","INFERENCE_DEPLOYMENT_NOT_FOUND","MODEL_BUNDLE_JOB_NOT_FOUND","MODEL_VERSION_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","MODEL_BUNDLE_JOB_NOT_RUNNING"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["inference-deployments","public-docs:inference-deployments","inference-deployments"],"x-embodiflow-permission":{"point":"inference-deployment:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a invocation"}},"/model-image-definitions":{"get":{"operationId":"modelImageDefinitions.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"sortBy","required":false,"in":"query","schema":{"type":"string"}},{"name":"sortOrder","required":false,"in":"query","schema":{"type":"string","enum":["asc","desc"]}},{"name":"projectId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"status","required":false,"in":"query","schema":{"type":"string"}},{"name":"imageKind","required":false,"in":"query","schema":{"type":"string","enum":["training","inference"]}},{"name":"ownerType","required":false,"in":"query","schema":{"type":"string"}},{"name":"category","required":false,"in":"query","schema":{"type":"string"}},{"name":"q","required":false,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ModelImageDefinitionSummaryDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","MODEL_IMAGE_REVISION_NOT_EXECUTABLE","MODEL_IMAGE_REVISION_NOT_PUBLISHED","MODEL_IMAGE_REVISION_REVOKED","MODEL_IMAGE_SELF_REVIEW_FORBIDDEN","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["model-image-definitions","public-docs:model-image-definitions","model-image-definitions"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List model image definitions"},"post":{"operationId":"modelImageDefinitions.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateModelImageDefinitionBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ModelImageDefinitionSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","MODEL_IMAGE_REVISION_NOT_EXECUTABLE","MODEL_IMAGE_REVISION_NOT_PUBLISHED","MODEL_IMAGE_REVISION_REVOKED","MODEL_IMAGE_SELF_REVIEW_FORBIDDEN","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["model-image-definitions","public-docs:model-image-definitions","model-image-definitions"],"x-embodiflow-permission":{"point":"model-image:write","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a model image definition"}},"/model-image-definitions/image-ref-validations":{"post":{"operationId":"modelImageDefinitions.imageRefValidations.create","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidateModelImageRefBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ValidateModelImageRefResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","MODEL_IMAGE_REVISION_NOT_EXECUTABLE","MODEL_IMAGE_REVISION_NOT_PUBLISHED","MODEL_IMAGE_REVISION_REVOKED","MODEL_IMAGE_SELF_REVIEW_FORBIDDEN","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["model-image-definitions","public-docs:model-image-definitions","model-image-definitions"],"x-embodiflow-permission":{"point":"model-image:write","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a image ref validation"}},"/model-image-definitions/{modelImageDefinitionId}":{"get":{"operationId":"modelImageDefinitions.get","parameters":[{"name":"modelImageDefinitionId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ModelImageDefinitionSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","MODEL_IMAGE_REVISION_NOT_EXECUTABLE","MODEL_IMAGE_REVISION_NOT_PUBLISHED","MODEL_IMAGE_REVISION_REVOKED","MODEL_IMAGE_SELF_REVIEW_FORBIDDEN","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["MODEL_IMAGE_DEFINITION_NOT_FOUND","MODEL_IMAGE_REVISION_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["model-image-definitions","public-docs:model-image-definitions","model-image-definitions"],"x-embodiflow-permission":{"point":"model-image:read","projectScoped":false},"security":[{"pat":[]}],"summary":"Get a model image definition"}},"/model-image-definitions/{modelImageDefinitionId}/revisions":{"get":{"operationId":"modelImageDefinitions.revisions.list","parameters":[{"name":"modelImageDefinitionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"sortBy","required":false,"in":"query","schema":{"type":"string"}},{"name":"sortOrder","required":false,"in":"query","schema":{"type":"string","enum":["asc","desc"]}},{"name":"projectId","required":false,"in":"query","schema":{"type":"string"}},{"name":"reviewStatus","required":false,"in":"query","schema":{"type":"string"}},{"name":"publishedOnly","required":false,"in":"query","schema":{"type":"boolean"}},{"name":"q","required":false,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ModelImageRevisionSummaryDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","MODEL_IMAGE_REVISION_NOT_EXECUTABLE","MODEL_IMAGE_REVISION_NOT_PUBLISHED","MODEL_IMAGE_REVISION_REVOKED","MODEL_IMAGE_SELF_REVIEW_FORBIDDEN","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["MODEL_IMAGE_DEFINITION_NOT_FOUND","MODEL_IMAGE_REVISION_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["model-image-definitions","public-docs:model-image-definitions","model-image-definitions"],"x-embodiflow-permission":{"point":"model-image:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List revisions for a model image definition"},"post":{"operationId":"modelImageDefinitions.revisions.create","parameters":[{"name":"modelImageDefinitionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateModelImageRevisionBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ModelImageRevisionSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","MODEL_IMAGE_REVISION_NOT_EXECUTABLE","MODEL_IMAGE_REVISION_NOT_PUBLISHED","MODEL_IMAGE_REVISION_REVOKED","MODEL_IMAGE_SELF_REVIEW_FORBIDDEN","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["MODEL_IMAGE_DEFINITION_NOT_FOUND","MODEL_IMAGE_REVISION_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["model-image-definitions","public-docs:model-image-definitions","model-image-definitions"],"x-embodiflow-permission":{"point":"model-image:write","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a revision"}},"/model-image-definitions/{modelImageDefinitionId}/revisions/{revisionId}/publication-requests":{"post":{"operationId":"modelImageDefinitions.revisions.publicationRequests.create","parameters":[{"name":"modelImageDefinitionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"revisionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ModelImageRevisionSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","MODEL_IMAGE_REVISION_NOT_EXECUTABLE","MODEL_IMAGE_REVISION_NOT_PUBLISHED","MODEL_IMAGE_REVISION_REVOKED","MODEL_IMAGE_SELF_REVIEW_FORBIDDEN","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["MODEL_IMAGE_DEFINITION_NOT_FOUND","MODEL_IMAGE_REVISION_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["model-image-definitions","public-docs:model-image-definitions","model-image-definitions"],"x-embodiflow-permission":{"point":"model-image:write","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a publication request"}},"/model-image-definitions/{modelImageDefinitionId}/revisions/{revisionId}/review-decisions":{"post":{"operationId":"modelImageDefinitions.revisions.reviewDecisions.create","parameters":[{"name":"modelImageDefinitionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"revisionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReviewModelImageRevisionBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ModelImageRevisionSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","MODEL_IMAGE_REVISION_NOT_EXECUTABLE","MODEL_IMAGE_REVISION_NOT_PUBLISHED","MODEL_IMAGE_REVISION_REVOKED","MODEL_IMAGE_SELF_REVIEW_FORBIDDEN","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["MODEL_IMAGE_DEFINITION_NOT_FOUND","MODEL_IMAGE_REVISION_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Human review (must not be the revision author). Publish is a separate step.","tags":["model-image-definitions","public-docs:model-image-definitions","model-image-definitions"],"x-embodiflow-permission":{"point":"model-image:write","projectScoped":false},"security":[{"pat":[]}]}},"/model-image-definitions/{modelImageDefinitionId}/revisions/{revisionId}/revocations":{"post":{"operationId":"modelImageDefinitions.revisions.revocations.create","parameters":[{"name":"modelImageDefinitionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"revisionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RevokeModelImageRevisionBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ModelImageRevisionSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","MODEL_IMAGE_REVISION_NOT_EXECUTABLE","MODEL_IMAGE_REVISION_NOT_PUBLISHED","MODEL_IMAGE_REVISION_REVOKED","MODEL_IMAGE_SELF_REVIEW_FORBIDDEN","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["MODEL_IMAGE_DEFINITION_NOT_FOUND","MODEL_IMAGE_REVISION_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["model-image-definitions","public-docs:model-image-definitions","model-image-definitions"],"x-embodiflow-permission":{"point":"model-image:write","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a revocation"}},"/projects/{projectId}/recordings":{"get":{"operationId":"projects.recordings.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"q","required":false,"in":"query","schema":{"type":"string"}},{"name":"lifecycle","required":false,"in":"query","schema":{"type":"string","enum":["empty","uploading","processing","ready","failed","stalled"]}},{"name":"privacyState","required":false,"in":"query","schema":{"type":"string","enum":["pending","anonymized","refused"]}},{"name":"segmentationState","required":false,"in":"query","schema":{"type":"string","enum":["not_segmented","proposed","reviewed"]}},{"name":"source","required":false,"in":"query","schema":{"type":"string","enum":["upload","collection","hub_import"]}},{"name":"collectorId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"episodeCountMin","required":false,"in":"query","schema":{"type":"number"}},{"name":"episodeCountMax","required":false,"in":"query","schema":{"type":"number"}},{"name":"episodeCountMaxExclusive","required":false,"in":"query","schema":{"type":"number"}},{"name":"uploadedAfter","required":false,"in":"query","schema":{"pattern":"([Zz]|[+-]\\d{2}:?\\d{2})$","type":"string"}},{"name":"uploadedBefore","required":false,"in":"query","schema":{"pattern":"([Zz]|[+-]\\d{2}:?\\d{2})$","type":"string"}},{"name":"selectionRunId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/RecordingDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"List recordings in a project","tags":["recordings","public-docs:recordings"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}]},"post":{"operationId":"projects.recordings.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateRecordingBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CreateRecordingResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Create a recording from an upload session or a one-way Hugging Face Hub import","tags":["recordings","public-docs:recordings"],"x-embodiflow-permission":{"point":"upload:write","projectScoped":true},"security":[{"pat":[]}]}},"/projects/{projectId}/recordings/{recordingId}":{"get":{"operationId":"projects.recordings.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"recordingId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/RecordingDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Get a recording","tags":["recordings","public-docs:recordings"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}]},"patch":{"operationId":"projects.recordings.update","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"recordingId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchRecordingBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/RecordingDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Patch recording name and tags","tags":["recordings","public-docs:recordings"],"x-embodiflow-permission":{"point":"dataset:write","projectScoped":true},"security":[{"pat":[]}]},"delete":{"operationId":"projects.recordings.delete","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"recordingId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"responses":{"202":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TrashMoveResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Move a recording to trash","tags":["recordings","public-docs:recordings"],"x-embodiflow-permission":{"point":"dataset:write","projectScoped":true},"security":[{"pat":[]}]}},"/projects/{projectId}/recordings/{recordingId}/privacy":{"get":{"operationId":"projects.recordings.privacy.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"recordingId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/RecordingPrivacyEvidenceDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Get anonymization evidence and spot-check status for a recording","tags":["recordings","public-docs:recordings"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}]}},"/projects/{projectId}/recordings/{recordingId}/privacy/consents":{"post":{"operationId":"projects.recordings.privacy.consents.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"recordingId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateRecordingPrivacyConsentBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CreateRecordingPrivacyConsentResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Create a consent-document upload for a human recording","tags":["recordings","public-docs:recordings"],"x-embodiflow-permission":{"point":"dataset:write","projectScoped":true},"security":[{"pat":[]}]}},"/projects/{projectId}/recordings/{recordingId}/privacy/consents/{consentId}/completions":{"post":{"operationId":"projects.recordings.privacy.consents.completions.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"recordingId","required":true,"in":"path","schema":{"type":"string"}},{"name":"consentId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"consentId":{"type":"string"},"state":{"type":"string","enum":["completed"]}},"required":["consentId","state"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Complete a consent-document upload after the object is stored","tags":["recordings","public-docs:recordings"],"x-embodiflow-permission":{"point":"dataset:write","projectScoped":true},"security":[{"pat":[]}]}},"/projects/{projectId}/recordings/{recordingId}/privacy/spot-checks":{"post":{"operationId":"projects.recordings.privacy.spotChecks.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"recordingId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"confirmedBy":{"type":"string"},"confirmedAt":{"type":"string"}},"required":["confirmedBy","confirmedAt"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Confirm a privacy spot check for the latest processing result","tags":["recordings","public-docs:recordings"],"x-embodiflow-permission":{"point":"quality:write","projectScoped":true},"security":[{"pat":[]}]}},"/upload-batches":{"post":{"operationId":"uploadBatches.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateUploadBatchBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CreateUploadBatchResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"description":"403 DATA_FORMAT_SAMPLE_UPLOAD_FORBIDDEN"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED"]}}}]}}}},"413":{"description":"JSON request body exceeds the 4 MiB upload-batch descriptor ceiling. File bytes belong in object storage; this limit applies only to the JSON descriptor. The global public JSON limit stays 100kb.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[413]},"code":{"type":"string","enum":["PAYLOAD_TOO_LARGE"]}}}]}}}},"422":{"description":"422 DATA_FORMAT_SAMPLE_EXTENSION_UNSUPPORTED | DATA_FORMAT_SAMPLE_PROJECT_MISMATCH | RECORDING_FORMAT_NOT_ACCEPTED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Create an upload batch from a path+size manifest.\n\nJSON body ceiling is 4 MiB on this route only (global public JSON stays\n100kb). Exceeding it returns 413 PAYLOAD_TOO_LARGE. File bytes are not\naccepted here; clients upload objects directly to storage.\n\nWith `sampleForFormatId` the batch carries a test sample for the draft of\na team data format (FV-20c): it needs `algorithm:write`, `sourceType`\n`team-format` and files with an extension the draft card declares, and the\nsample is used only for that format's sample runs.","tags":["upload-batches","public-docs:upload-batches"],"x-embodiflow-permission":{"point":"upload:write","projectScoped":true},"security":[{"pat":[]}]}},"/upload-batches/{batchId}":{"get":{"operationId":"uploadBatches.get","parameters":[{"name":"batchId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/UploadBatchSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["LEROBOT_META_INFO_MISSING","NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["upload-batches","public-docs:upload-batches"],"x-embodiflow-permission":{"point":"upload:read","projectScoped":true},"security":[{"pat":[]}],"summary":"Get a upload batche"}},"/upload-batches/{batchId}/dataset-plan":{"get":{"operationId":"uploadBatches.datasetPlan.get","parameters":[{"name":"batchId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/UploadDatasetPlanDto","nullable":true}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["LEROBOT_META_INFO_MISSING","NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["upload-batches","public-docs:upload-batches"],"x-embodiflow-permission":{"point":"upload:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List dataset plan for a upload batche"}},"/upload-batches/{batchId}/activity-requests":{"post":{"operationId":"uploadBatches.activityRequests.create","parameters":[{"name":"batchId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"lastActivityAt":{"type":"string"}},"required":["lastActivityAt"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["LEROBOT_META_INFO_MISSING","NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Heartbeat of the uploader: the uploading page calls this about every\nminute while it hashes or sends bytes, so the batch is told apart from an\nabandoned one. 409 UPLOAD_BATCH_NOT_DISCARDABLE once the batch is no longer\nin progress.","tags":["upload-batches","public-docs:upload-batches"],"x-embodiflow-permission":{"point":"upload:write","projectScoped":true},"security":[{"pat":[]}]}},"/upload-batches/{batchId}/cancellation-requests":{"post":{"operationId":"uploadBatches.cancellationRequests.create","parameters":[{"name":"batchId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"status":{"type":"string","enum":["failed"]},"abortedSessions":{"type":"number"}},"required":["status","abortedSessions"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["LEROBOT_META_INFO_MISSING","NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Discard an unfinished upload: aborts its open sessions and settles the\nbatch as failed (`UPLOAD_BATCH_DISCARDED`). 409 UPLOAD_BATCH_ACTIVE\nwhile the uploader is alive; 409 UPLOAD_BATCH_NOT_DISCARDABLE when a file\nalready completed or the batch was submitted.","tags":["upload-batches","public-docs:upload-batches"],"x-embodiflow-permission":{"point":"upload:write","projectScoped":true},"security":[{"pat":[]}]}},"/upload-batches/{batchId}/submission-requests":{"post":{"operationId":"uploadBatches.submissionRequests.create","parameters":[{"name":"batchId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UploadBatchSubmissionBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/UploadBatchSubmissionResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["LEROBOT_META_INFO_MISSING","NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["upload-batches","public-docs:upload-batches"],"x-embodiflow-permission":{"point":"upload:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a submission request"}},"/upload-sessions":{"post":{"operationId":"uploadSessions.create","parameters":[{"name":"x-embodiflow-client","required":false,"in":"header","description":"Optional CLI hint (`cli`). Write STS is issued only to PAT principals; cookie sessions keep putUrl / part-urls even if this header is sent.","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateUploadSessionsBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateUploadSessionsResponseSwaggerDto"}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["upload-sessions","public-docs:upload-sessions"],"x-embodiflow-permission":{"point":"upload:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a upload session"}},"/upload-sessions/{sessionId}":{"get":{"operationId":"uploadSessions.get","parameters":[{"name":"sessionId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"allOf":[{"$ref":"#/components/schemas/UploadSessionSummaryDto"},{"type":"object","properties":{"parts":{"type":"array","items":{"type":"object","properties":{"partNumber":{"type":"number"},"status":{"type":"string"},"uploadedAt":{"type":"string","nullable":true}},"required":["partNumber","status"]}}}}]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["LEROBOT_META_INFO_MISSING","NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["upload-sessions","public-docs:upload-sessions"],"x-embodiflow-permission":{"point":"upload:read","projectScoped":true},"security":[{"pat":[]}],"summary":"Get a upload session"}},"/upload-sessions/{sessionId}/part-urls":{"post":{"operationId":"uploadSessions.partUrls.create","parameters":[{"name":"sessionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PartUrlsBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PartUrlsResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["LEROBOT_META_INFO_MISSING","NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["upload-sessions","public-docs:upload-sessions"],"x-embodiflow-permission":{"point":"upload:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a part url"}},"/upload-sessions/{sessionId}/completion-requests":{"post":{"operationId":"uploadSessions.completionRequests.create","parameters":[{"name":"sessionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UploadCompletionBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/UploadCompletionResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["LEROBOT_META_INFO_MISSING","NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["upload-sessions","public-docs:upload-sessions"],"x-embodiflow-permission":{"point":"upload:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a completion request"}},"/upload-sessions/{sessionId}/cancellation-requests":{"post":{"operationId":"uploadSessions.cancellationRequests.create","parameters":[{"name":"sessionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"status":{"type":"string"}},"required":["status"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["LEROBOT_META_INFO_MISSING","NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["upload-sessions","public-docs:upload-sessions"],"x-embodiflow-permission":{"point":"upload:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a cancellation request"}},"/projects/{projectId}/upload-batches":{"get":{"operationId":"projects.uploadBatches.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"sortBy","required":false,"in":"query","schema":{"type":"string"}},{"name":"sortOrder","required":false,"in":"query","schema":{"type":"string","enum":["asc","desc"]}},{"name":"status","required":false,"in":"query","schema":{"type":"string"}},{"name":"sourceType","required":false,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/UploadBatchSummaryDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["upload-batches","public-docs:upload-batches"],"x-embodiflow-permission":{"point":"upload:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List upload batches for a project"}},"/data-formats/{formatId}/samples":{"delete":{"operationId":"dataFormats.samples.delete","parameters":[{"name":"formatId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RemoveFormatSamplesResult"}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Removes every sample uploaded for the DRAFT of a team format (FV-20c). The\nformat stays. Repeating the call removes nothing and still succeeds.","tags":["data-formats","public-docs:data-formats"],"x-embodiflow-permission":{"point":"algorithm:write","projectScoped":false},"security":[{"pat":[]}]}},"/projects/{projectId}/versions/{versionNumber}/exports":{"get":{"operationId":"projects.versions.exports.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"versionNumber","required":true,"in":"path","schema":{"type":"number"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/VersionExportSwaggerDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","PROJECT_VERSION_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"List exports of a version","tags":["exports","public-docs:exports"],"x-embodiflow-permission":{"point":"export:read","projectScoped":true},"security":[{"pat":[]}]},"post":{"operationId":"projects.versions.exports.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"versionNumber","required":true,"in":"path","schema":{"type":"number"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateVersionExportBodyDto"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VersionExportEnvelopeSwaggerDto"}}}},"202":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VersionExportEnvelopeSwaggerDto"}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","PROJECT_VERSION_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","VERSION_ALREADY_EXISTS","VERSION_IN_TRASH","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"Unprocessable entity. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[422]},"code":{"type":"string","enum":["DATASET_REF_AMBIGUOUS","VERSION_ALIAS_RESERVED","VERSION_CAPTURE_SESSION_SPLIT_MISMATCH","VERSION_DATA_CONTRACT_INCOMPLETE","VERSION_DATA_CONTRACT_MISMATCH","VERSION_MIXED_FEATURE_SCHEMA","VERSION_SPLIT_TAG_MISSING"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Create or reuse a cached version export","tags":["exports","public-docs:exports"],"x-embodiflow-permission":{"point":"export:write","projectScoped":true},"security":[{"pat":[]}]}},"/projects/{projectId}/versions/{versionNumber}/exports/preview":{"get":{"operationId":"projects.versions.exports.preview.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"versionNumber","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VersionExportPreviewEnvelopeSwaggerDto"}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","PROJECT_VERSION_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"422":{"description":"PRIVACY_GATE_UNRESOLVED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Preview what an export of a version contains, with the unreviewed AI episodes and the privacy warnings","tags":["exports","public-docs:exports"],"x-embodiflow-permission":{"point":"export:read","projectScoped":true},"security":[{"pat":[]}]}},"/projects/{projectId}/versions/{versionNumber}/exports/{exportId}":{"get":{"operationId":"projects.versions.exports.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"versionNumber","required":true,"in":"path","schema":{"type":"number"}},{"name":"exportId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VersionExportEnvelopeSwaggerDto"}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","PROJECT_VERSION_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Get a version export","tags":["exports","public-docs:exports"],"x-embodiflow-permission":{"point":"export:read","projectScoped":true},"security":[{"pat":[]}]}},"/projects/{projectId}/versions/{versionNumber}/exports/{exportId}/downloads":{"post":{"operationId":"projects.versions.exports.downloads.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"versionNumber","required":true,"in":"path","schema":{"type":"number"}},{"name":"exportId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateVersionExportDownloadBodyDto"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VersionExportDownloadEnvelopeSwaggerDto"}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","PROJECT_VERSION_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","VERSION_ALREADY_EXISTS","VERSION_IN_TRASH","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"Unprocessable entity. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[422]},"code":{"type":"string","enum":["DATASET_REF_AMBIGUOUS","VERSION_ALIAS_RESERVED","VERSION_CAPTURE_SESSION_SPLIT_MISMATCH","VERSION_DATA_CONTRACT_INCOMPLETE","VERSION_DATA_CONTRACT_MISMATCH","VERSION_MIXED_FEATURE_SCHEMA","VERSION_SPLIT_TAG_MISSING"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Create a download session of presigned version-export files","tags":["exports","public-docs:exports"],"x-embodiflow-permission":{"point":"export:read","projectScoped":true},"security":[{"pat":[]}]}},"/projects/{projectId}/versions/{versionNumber}/training-recommendation":{"get":{"operationId":"projects.versions.trainingRecommendation.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"versionNumber","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VersionTrainingRecommendationEnvelopeSwaggerDto"}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","PROJECT_VERSION_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Recommend a training policy for a version","tags":["training-jobs","public-docs:training-jobs"],"x-embodiflow-permission":{"point":"training:read","projectScoped":true},"security":[{"pat":[]}]}},"/projects/{projectId}/versions/{versionNumber}/trainings":{"post":{"operationId":"projects.versions.trainings.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"versionNumber","required":true,"in":"path","schema":{"type":"number"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateVersionTrainingBodyDto"}}}},"responses":{"202":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VersionTrainingCreatedEnvelopeSwaggerDto"}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","PROJECT_VERSION_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","VERSION_ALREADY_EXISTS","VERSION_IN_TRASH","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"Unprocessable entity. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[422]},"code":{"type":"string","enum":["DATASET_REF_AMBIGUOUS","VERSION_ALIAS_RESERVED","VERSION_CAPTURE_SESSION_SPLIT_MISMATCH","VERSION_DATA_CONTRACT_INCOMPLETE","VERSION_DATA_CONTRACT_MISMATCH","VERSION_MIXED_FEATURE_SCHEMA","VERSION_SPLIT_TAG_MISSING"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Start training from a version","tags":["training-jobs","public-docs:training-jobs"],"x-embodiflow-permission":{"point":"training:write","projectScoped":true},"security":[{"pat":[]}]}},"/models/{modelId}/metrics":{"get":{"operationId":"models.metrics.get","parameters":[{"name":"modelId","required":true,"in":"path","schema":{"type":"string"}},{"name":"series","required":false,"in":"query","description":"Comma-separated series: loss,val_loss,lr,grad_norm,gpu_util,samples_per_s","schema":{"type":"string"}},{"name":"since","required":false,"in":"query","description":"Step cursor; returns points with step greater than this value","schema":{"minimum":0,"type":"number"}},{"name":"maxPoints","required":false,"in":"query","description":"Default 500, maximum 2000","schema":{"minimum":1,"type":"number"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModelLiveMetricsEnvelopeSwaggerDto"}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Live training metrics for a model (downsampled)","tags":["models","public-docs:models","models"],"x-embodiflow-permission":{"point":"training:read","projectScoped":true},"security":[{"pat":[]}]}},"/models/{modelId}/checkpoints":{"get":{"operationId":"models.checkpoints.get","parameters":[{"name":"modelId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ListResponse"},{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"step":{"type":"number","nullable":true},"createdAt":{"type":"string"},"sizeBytes":{"type":"number","nullable":true},"status":{"type":"string"},"artifactId":{"type":"string","nullable":true}},"required":["id","step","createdAt","sizeBytes","status","artifactId"]}}},"required":["data"]}]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Checkpoints for the latest training attempt","tags":["models","public-docs:models","models"],"x-embodiflow-permission":{"point":"training:read","projectScoped":true},"security":[{"pat":[]}]}},"/models/{modelId}/logs":{"get":{"operationId":"models.logs.get","parameters":[{"name":"modelId","required":true,"in":"path","schema":{"type":"string"}},{"name":"lineCursor","required":false,"in":"query","description":"Line cursor from the previous log page","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TrainingAttemptLogsDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Log tail for the latest training attempt","tags":["models","public-docs:models","models"],"x-embodiflow-permission":{"point":"training:read","projectScoped":true},"security":[{"pat":[]}]}},"/models/{modelId}/cancellation-requests":{"post":{"operationId":"models.cancellationRequests.create","parameters":[{"name":"modelId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CancelModelTrainingBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TrainingJobSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Cancel the training job for this model","tags":["models","public-docs:models","models"],"x-embodiflow-permission":{"point":"training:write","projectScoped":true},"security":[{"pat":[]}]}},"/models/{modelId}/retry-requests":{"post":{"operationId":"models.retryRequests.create","parameters":[{"name":"modelId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RetryModelTrainingBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TrainingJobSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Retry the training job from the latest available checkpoint","tags":["models","public-docs:models","models"],"x-embodiflow-permission":{"point":"training:write","projectScoped":true},"security":[{"pat":[]}]}},"/webhook-endpoints":{"get":{"operationId":"webhookEndpoints.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size. Default 25, maximum 100. Values above the maximum are refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response's `nextPageToken`.","schema":{"type":"string"}},{"name":"projectId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/WebhookEndpointDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","properties":{"requestId":{"type":"string"},"pageSize":{"type":"number"}},"required":["requestId","pageSize"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DESTINATION_NOT_ALLOWED","ENDPOINT_LIMIT_EXCEEDED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","UNKNOWN_EVENT_TYPE","VALIDATION_ERROR","WEBHOOK_DELIVERY_INVALID_TIME_RANGE","WEBHOOK_DELIVERY_TIME_RANGE_REQUIRED","WEBHOOK_DELIVERY_WINDOW_TOO_LARGE"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["webhook-endpoints","public-docs:webhook-endpoints"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"List webhook endpoints"},"post":{"operationId":"webhookEndpoints.create","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateWebhookEndpointBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/WebhookEndpointSecretDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DESTINATION_NOT_ALLOWED","ENDPOINT_LIMIT_EXCEEDED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","UNKNOWN_EVENT_TYPE","VALIDATION_ERROR","WEBHOOK_DELIVERY_INVALID_TIME_RANGE","WEBHOOK_DELIVERY_TIME_RANGE_REQUIRED","WEBHOOK_DELIVERY_WINDOW_TOO_LARGE"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","WEBHOOK_DELIVERY_IN_FLIGHT","WEBHOOK_ENDPOINT_DISABLED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["webhook-endpoints","public-docs:webhook-endpoints"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a webhook endpoint"}},"/webhook-endpoints/{endpointId}":{"get":{"operationId":"webhookEndpoints.get","parameters":[{"name":"endpointId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/WebhookEndpointDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DESTINATION_NOT_ALLOWED","ENDPOINT_LIMIT_EXCEEDED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","UNKNOWN_EVENT_TYPE","VALIDATION_ERROR","WEBHOOK_DELIVERY_INVALID_TIME_RANGE","WEBHOOK_DELIVERY_TIME_RANGE_REQUIRED","WEBHOOK_DELIVERY_WINDOW_TOO_LARGE"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WEBHOOK_DELIVERY_NOT_FOUND","WEBHOOK_ENDPOINT_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["webhook-endpoints","public-docs:webhook-endpoints"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Get a webhook endpoint"},"patch":{"operationId":"webhookEndpoints.update","parameters":[{"name":"endpointId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateWebhookEndpointBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/WebhookEndpointDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DESTINATION_NOT_ALLOWED","ENDPOINT_LIMIT_EXCEEDED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","UNKNOWN_EVENT_TYPE","VALIDATION_ERROR","WEBHOOK_DELIVERY_INVALID_TIME_RANGE","WEBHOOK_DELIVERY_TIME_RANGE_REQUIRED","WEBHOOK_DELIVERY_WINDOW_TOO_LARGE"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WEBHOOK_DELIVERY_NOT_FOUND","WEBHOOK_ENDPOINT_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","WEBHOOK_DELIVERY_IN_FLIGHT","WEBHOOK_ENDPOINT_DISABLED"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["webhook-endpoints","public-docs:webhook-endpoints"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Update a webhook endpoint"},"delete":{"operationId":"webhookEndpoints.delete","parameters":[{"name":"endpointId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"string"}},"required":["id"]},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DESTINATION_NOT_ALLOWED","ENDPOINT_LIMIT_EXCEEDED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","UNKNOWN_EVENT_TYPE","VALIDATION_ERROR","WEBHOOK_DELIVERY_INVALID_TIME_RANGE","WEBHOOK_DELIVERY_TIME_RANGE_REQUIRED","WEBHOOK_DELIVERY_WINDOW_TOO_LARGE"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WEBHOOK_DELIVERY_NOT_FOUND","WEBHOOK_ENDPOINT_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","WEBHOOK_DELIVERY_IN_FLIGHT","WEBHOOK_ENDPOINT_DISABLED"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["webhook-endpoints","public-docs:webhook-endpoints"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Delete a webhook endpoint"}},"/webhook-endpoints/{endpointId}/deliveries":{"get":{"operationId":"webhookEndpoints.deliveries.list","parameters":[{"name":"endpointId","required":true,"in":"path","schema":{"type":"string"}},{"name":"from","required":false,"in":"query","schema":{"type":"string"}},{"name":"to","required":false,"in":"query","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","schema":{"minimum":1,"type":"number"}},{"name":"pageToken","required":false,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/WebhookDeliverySummaryDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","properties":{"requestId":{"type":"string"},"pageSize":{"type":"number"}},"required":["requestId","pageSize"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DESTINATION_NOT_ALLOWED","ENDPOINT_LIMIT_EXCEEDED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","UNKNOWN_EVENT_TYPE","VALIDATION_ERROR","WEBHOOK_DELIVERY_INVALID_TIME_RANGE","WEBHOOK_DELIVERY_TIME_RANGE_REQUIRED","WEBHOOK_DELIVERY_WINDOW_TOO_LARGE"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WEBHOOK_DELIVERY_NOT_FOUND","WEBHOOK_ENDPOINT_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["webhook-endpoints","public-docs:webhook-endpoints"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"List deliveries for a webhook endpoint"}},"/webhook-endpoints/{endpointId}/deliveries/{deliveryId}":{"get":{"operationId":"webhookEndpoints.deliveries.get","parameters":[{"name":"endpointId","required":true,"in":"path","schema":{"type":"string"}},{"name":"deliveryId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/WebhookDeliveryDetailDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DESTINATION_NOT_ALLOWED","ENDPOINT_LIMIT_EXCEEDED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","UNKNOWN_EVENT_TYPE","VALIDATION_ERROR","WEBHOOK_DELIVERY_INVALID_TIME_RANGE","WEBHOOK_DELIVERY_TIME_RANGE_REQUIRED","WEBHOOK_DELIVERY_WINDOW_TOO_LARGE"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WEBHOOK_DELIVERY_NOT_FOUND","WEBHOOK_ENDPOINT_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["webhook-endpoints","public-docs:webhook-endpoints"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Get a delivery"}},"/webhook-endpoints/{endpointId}/deliveries/{deliveryId}/replays":{"post":{"operationId":"webhookEndpoints.deliveries.replays.create","parameters":[{"name":"endpointId","required":true,"in":"path","schema":{"type":"string"}},{"name":"deliveryId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/WebhookDeliverySummaryDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DESTINATION_NOT_ALLOWED","ENDPOINT_LIMIT_EXCEEDED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","UNKNOWN_EVENT_TYPE","VALIDATION_ERROR","WEBHOOK_DELIVERY_INVALID_TIME_RANGE","WEBHOOK_DELIVERY_TIME_RANGE_REQUIRED","WEBHOOK_DELIVERY_WINDOW_TOO_LARGE"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WEBHOOK_DELIVERY_NOT_FOUND","WEBHOOK_ENDPOINT_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","WEBHOOK_DELIVERY_IN_FLIGHT","WEBHOOK_ENDPOINT_DISABLED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["webhook-endpoints","public-docs:webhook-endpoints"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a replay"}},"/webhook-endpoints/{endpointId}/pings":{"post":{"operationId":"webhookEndpoints.pings.create","parameters":[{"name":"endpointId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/WebhookDeliverySummaryDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DESTINATION_NOT_ALLOWED","ENDPOINT_LIMIT_EXCEEDED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","UNKNOWN_EVENT_TYPE","VALIDATION_ERROR","WEBHOOK_DELIVERY_INVALID_TIME_RANGE","WEBHOOK_DELIVERY_TIME_RANGE_REQUIRED","WEBHOOK_DELIVERY_WINDOW_TOO_LARGE"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WEBHOOK_DELIVERY_NOT_FOUND","WEBHOOK_ENDPOINT_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","WEBHOOK_DELIVERY_IN_FLIGHT","WEBHOOK_ENDPOINT_DISABLED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["webhook-endpoints","public-docs:webhook-endpoints"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a ping"}},"/webhook-endpoints/{endpointId}/secret-rotations":{"post":{"operationId":"webhookEndpoints.secretRotations.create","parameters":[{"name":"endpointId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/WebhookEndpointSecretDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DESTINATION_NOT_ALLOWED","ENDPOINT_LIMIT_EXCEEDED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","UNKNOWN_EVENT_TYPE","VALIDATION_ERROR","WEBHOOK_DELIVERY_INVALID_TIME_RANGE","WEBHOOK_DELIVERY_TIME_RANGE_REQUIRED","WEBHOOK_DELIVERY_WINDOW_TOO_LARGE"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WEBHOOK_DELIVERY_NOT_FOUND","WEBHOOK_ENDPOINT_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","WEBHOOK_DELIVERY_IN_FLIGHT","WEBHOOK_ENDPOINT_DISABLED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["webhook-endpoints","public-docs:webhook-endpoints"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a secret rotation"}},"/projects/{projectId}/webhook-endpoints":{"get":{"operationId":"projects.webhookEndpoints.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size. Default 25, maximum 100. Values above the maximum are refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response's `nextPageToken`.","schema":{"type":"string"}},{"name":"projectId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/WebhookEndpointDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","properties":{"requestId":{"type":"string"},"pageSize":{"type":"number"}},"required":["requestId","pageSize"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["webhook-endpoints","public-docs:webhook-endpoints"],"x-embodiflow-permission":{"point":"project:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"List webhook endpoints for a project"},"post":{"operationId":"projects.webhookEndpoints.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateWebhookEndpointBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/WebhookEndpointSecretDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["webhook-endpoints","public-docs:webhook-endpoints"],"x-embodiflow-permission":{"point":"project:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a webhook endpoint"}},"/projects/{projectId}/webhook-endpoints/{endpointId}":{"get":{"operationId":"projects.webhookEndpoints.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"endpointId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/WebhookEndpointDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["webhook-endpoints","public-docs:webhook-endpoints"],"x-embodiflow-permission":{"point":"project:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Get a webhook endpoint"},"patch":{"operationId":"projects.webhookEndpoints.update","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"endpointId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateWebhookEndpointBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/WebhookEndpointDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["webhook-endpoints","public-docs:webhook-endpoints"],"x-embodiflow-permission":{"point":"project:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Update a webhook endpoint"},"delete":{"operationId":"projects.webhookEndpoints.delete","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"endpointId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"string"}},"required":["id"]},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["webhook-endpoints","public-docs:webhook-endpoints"],"x-embodiflow-permission":{"point":"project:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Delete a webhook endpoint"}},"/projects/{projectId}/webhook-endpoints/{endpointId}/deliveries":{"get":{"operationId":"projects.webhookEndpoints.deliveries.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"endpointId","required":true,"in":"path","schema":{"type":"string"}},{"name":"from","required":false,"in":"query","schema":{"type":"string"}},{"name":"to","required":false,"in":"query","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","schema":{"minimum":1,"type":"number"}},{"name":"pageToken","required":false,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/WebhookDeliverySummaryDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","properties":{"requestId":{"type":"string"},"pageSize":{"type":"number"}},"required":["requestId","pageSize"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["webhook-endpoints","public-docs:webhook-endpoints"],"x-embodiflow-permission":{"point":"project:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"List deliveries for a webhook endpoint"}},"/projects/{projectId}/webhook-endpoints/{endpointId}/deliveries/{deliveryId}":{"get":{"operationId":"projects.webhookEndpoints.deliveries.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"endpointId","required":true,"in":"path","schema":{"type":"string"}},{"name":"deliveryId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/WebhookDeliveryDetailDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["webhook-endpoints","public-docs:webhook-endpoints"],"x-embodiflow-permission":{"point":"project:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Get a delivery"}},"/projects/{projectId}/webhook-endpoints/{endpointId}/deliveries/{deliveryId}/replays":{"post":{"operationId":"projects.webhookEndpoints.deliveries.replays.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"endpointId","required":true,"in":"path","schema":{"type":"string"}},{"name":"deliveryId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/WebhookDeliverySummaryDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["webhook-endpoints","public-docs:webhook-endpoints"],"x-embodiflow-permission":{"point":"project:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a replay"}},"/projects/{projectId}/webhook-endpoints/{endpointId}/pings":{"post":{"operationId":"projects.webhookEndpoints.pings.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"endpointId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/WebhookDeliverySummaryDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["webhook-endpoints","public-docs:webhook-endpoints"],"x-embodiflow-permission":{"point":"project:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a ping"}},"/projects/{projectId}/webhook-endpoints/{endpointId}/secret-rotations":{"post":{"operationId":"projects.webhookEndpoints.secretRotations.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"endpointId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/WebhookEndpointSecretDto"},"meta":{"type":"object","properties":{"requestId":{"type":"string"}},"required":["requestId"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["webhook-endpoints","public-docs:webhook-endpoints"],"x-embodiflow-permission":{"point":"project:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a secret rotation"}},"/catalog/dataset-versions":{"get":{"operationId":"catalog.datasetVersions.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"sortBy","required":false,"in":"query","schema":{"type":"string","enum":["updatedAt","createdAt","version"]}},{"name":"sortOrder","required":false,"in":"query","schema":{"type":"string","enum":["asc","desc"]}},{"name":"projectId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"datasetId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"sourceType","required":false,"in":"query","schema":{"type":"string"}},{"name":"dataSource","required":false,"in":"query","schema":{"type":"string","enum":["ego_human"]}},{"name":"metadataType","required":false,"in":"query","schema":{"type":"string"}},{"name":"qualityStatus","required":false,"in":"query","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","schema":{"type":"string"}},{"name":"fpsMin","required":false,"in":"query","schema":{"type":"number"}},{"name":"fpsMax","required":false,"in":"query","schema":{"type":"number"}},{"name":"episodeCountMin","required":false,"in":"query","schema":{"type":"number"}},{"name":"episodeCountMax","required":false,"in":"query","schema":{"type":"number"}},{"name":"frameCountMin","required":false,"in":"query","schema":{"type":"number"}},{"name":"frameCountMax","required":false,"in":"query","schema":{"type":"number"}},{"name":"startTimeNsMin","required":false,"in":"query","schema":{"type":"number"}},{"name":"startTimeNsMax","required":false,"in":"query","schema":{"type":"number"}},{"name":"endTimeNsMin","required":false,"in":"query","schema":{"type":"number"}},{"name":"endTimeNsMax","required":false,"in":"query","schema":{"type":"number"}},{"name":"metadataKey","required":false,"in":"query","schema":{"type":"string","enum":["profile","task","robotType","cameraCount","fpsBucket"]}},{"name":"metadataEquals","required":false,"in":"query","schema":{"type":"string"}},{"name":"includeSoftHidden","required":false,"in":"query","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/CatalogDatasetVersionSummaryDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","CATALOG_INVALID_METADATA_KEY","CATALOG_INVALID_SORT_FIELD","CATALOG_SEARCH_DSL_INVALID","CATALOG_SEARCH_EXPRESSION_TOO_DEEP","CATALOG_SEARCH_EXPRESSION_TOO_LARGE","CATALOG_SEARCH_FIELD_NOT_ALLOWED","CATALOG_SEARCH_INDEX_NOT_READY","CATALOG_SEARCH_OPERATOR_NOT_ALLOWED","CATALOG_SEARCH_SCHEMA_UNAVAILABLE","CATALOG_SEARCH_SEMANTIC_NOT_READY","CATALOG_SEARCH_VALIDATION_ERROR","CATALOG_VALIDATION_ERROR","DATASET_VERSION_NOT_SOFT_HIDDEN","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"L0 Postgres coarse filter across dataset versions visible to the caller.","tags":["catalog","public-docs:catalog"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}]}},"/catalog/assets":{"get":{"operationId":"catalog.assets.list","parameters":[{"name":"projectId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"assetType","required":false,"in":"query","schema":{"type":"string","enum":["dataset-version","artifact","dataset-mixture"]}},{"name":"sourceType","required":false,"in":"query","schema":{"type":"string"}},{"name":"qualityStatus","required":false,"in":"query","schema":{"type":"string"}},{"name":"healthStatus","required":false,"in":"query","schema":{"type":"string","enum":["unknown","healthy","warning","failed","stale"]}},{"name":"governanceTagKey","required":false,"in":"query","schema":{"type":"string"}},{"name":"governanceTagValue","required":false,"in":"query","schema":{"type":"string"}},{"name":"ownerId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/CatalogAssetCardDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","CATALOG_INVALID_METADATA_KEY","CATALOG_INVALID_SORT_FIELD","CATALOG_SEARCH_DSL_INVALID","CATALOG_SEARCH_EXPRESSION_TOO_DEEP","CATALOG_SEARCH_EXPRESSION_TOO_LARGE","CATALOG_SEARCH_FIELD_NOT_ALLOWED","CATALOG_SEARCH_INDEX_NOT_READY","CATALOG_SEARCH_OPERATOR_NOT_ALLOWED","CATALOG_SEARCH_SCHEMA_UNAVAILABLE","CATALOG_SEARCH_SEMANTIC_NOT_READY","CATALOG_SEARCH_VALIDATION_ERROR","CATALOG_VALIDATION_ERROR","DATASET_VERSION_NOT_SOFT_HIDDEN","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Asset cards across dataset versions and artifacts.","tags":["catalog","public-docs:catalog"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}]}},"/catalog/assets/{assetType}/{assetId}":{"get":{"operationId":"catalog.assets.get","parameters":[{"name":"assetType","required":true,"in":"path","schema":{"type":"string"}},{"name":"assetId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CatalogAssetDetailDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","CATALOG_INVALID_METADATA_KEY","CATALOG_INVALID_SORT_FIELD","CATALOG_SEARCH_DSL_INVALID","CATALOG_SEARCH_EXPRESSION_TOO_DEEP","CATALOG_SEARCH_EXPRESSION_TOO_LARGE","CATALOG_SEARCH_FIELD_NOT_ALLOWED","CATALOG_SEARCH_INDEX_NOT_READY","CATALOG_SEARCH_OPERATOR_NOT_ALLOWED","CATALOG_SEARCH_SCHEMA_UNAVAILABLE","CATALOG_SEARCH_SEMANTIC_NOT_READY","CATALOG_SEARCH_VALIDATION_ERROR","CATALOG_VALIDATION_ERROR","DATASET_VERSION_NOT_SOFT_HIDDEN","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["DATASET_NOT_FOUND","DATASET_VERSION_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Single asset card with recent events.","tags":["catalog","public-docs:catalog"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}]}},"/catalog/facets":{"get":{"operationId":"catalog.facets.get","parameters":[{"name":"projectId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"datasetId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}},{"name":"sourceType","required":false,"in":"query","schema":{"type":"string"}},{"name":"dataSource","required":false,"in":"query","schema":{"type":"string","enum":["ego_human"]}},{"name":"metadataType","required":false,"in":"query","schema":{"type":"string"}},{"name":"qualityStatus","required":false,"in":"query","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","schema":{"type":"string"}},{"name":"fpsMin","required":false,"in":"query","schema":{"type":"number"}},{"name":"fpsMax","required":false,"in":"query","schema":{"type":"number"}},{"name":"episodeCountMin","required":false,"in":"query","schema":{"type":"number"}},{"name":"episodeCountMax","required":false,"in":"query","schema":{"type":"number"}},{"name":"frameCountMin","required":false,"in":"query","schema":{"type":"number"}},{"name":"frameCountMax","required":false,"in":"query","schema":{"type":"number"}},{"name":"startTimeNsMin","required":false,"in":"query","schema":{"type":"number"}},{"name":"startTimeNsMax","required":false,"in":"query","schema":{"type":"number"}},{"name":"endTimeNsMin","required":false,"in":"query","schema":{"type":"number"}},{"name":"endTimeNsMax","required":false,"in":"query","schema":{"type":"number"}},{"name":"metadataKey","required":false,"in":"query","schema":{"type":"string","enum":["profile","task","robotType","cameraCount","fpsBucket"]}},{"name":"metadataEquals","required":false,"in":"query","schema":{"type":"string"}},{"name":"includeSoftHidden","required":false,"in":"query","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CatalogFacetsDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","CATALOG_INVALID_METADATA_KEY","CATALOG_INVALID_SORT_FIELD","CATALOG_SEARCH_DSL_INVALID","CATALOG_SEARCH_EXPRESSION_TOO_DEEP","CATALOG_SEARCH_EXPRESSION_TOO_LARGE","CATALOG_SEARCH_FIELD_NOT_ALLOWED","CATALOG_SEARCH_INDEX_NOT_READY","CATALOG_SEARCH_OPERATOR_NOT_ALLOWED","CATALOG_SEARCH_SCHEMA_UNAVAILABLE","CATALOG_SEARCH_SEMANTIC_NOT_READY","CATALOG_SEARCH_VALIDATION_ERROR","CATALOG_VALIDATION_ERROR","DATASET_VERSION_NOT_SOFT_HIDDEN","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Facet counts for the same visible version scope as dataset-versions list.","tags":["catalog","public-docs:catalog"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}]}},"/catalog/search-schema":{"get":{"operationId":"catalog.searchSchema.get","parameters":[],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CatalogSearchSchemaDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","CATALOG_INVALID_METADATA_KEY","CATALOG_INVALID_SORT_FIELD","CATALOG_SEARCH_DSL_INVALID","CATALOG_SEARCH_EXPRESSION_TOO_DEEP","CATALOG_SEARCH_EXPRESSION_TOO_LARGE","CATALOG_SEARCH_FIELD_NOT_ALLOWED","CATALOG_SEARCH_INDEX_NOT_READY","CATALOG_SEARCH_OPERATOR_NOT_ALLOWED","CATALOG_SEARCH_SCHEMA_UNAVAILABLE","CATALOG_SEARCH_SEMANTIC_NOT_READY","CATALOG_SEARCH_VALIDATION_ERROR","CATALOG_VALIDATION_ERROR","DATASET_VERSION_NOT_SOFT_HIDDEN","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Structured catalog search schema for query builders (ADR 0012).","tags":["catalog","public-docs:catalog"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}]}},"/catalog/search-queries":{"post":{"operationId":"catalog.searchQueries.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CatalogSearchQueryBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CatalogSearchQueryResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","CATALOG_INVALID_METADATA_KEY","CATALOG_INVALID_SORT_FIELD","CATALOG_SEARCH_DSL_INVALID","CATALOG_SEARCH_EXPRESSION_TOO_DEEP","CATALOG_SEARCH_EXPRESSION_TOO_LARGE","CATALOG_SEARCH_FIELD_NOT_ALLOWED","CATALOG_SEARCH_INDEX_NOT_READY","CATALOG_SEARCH_OPERATOR_NOT_ALLOWED","CATALOG_SEARCH_SCHEMA_UNAVAILABLE","CATALOG_SEARCH_SEMANTIC_NOT_READY","CATALOG_SEARCH_VALIDATION_ERROR","CATALOG_VALIDATION_ERROR","DATASET_VERSION_NOT_SOFT_HIDDEN","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","SLUG_ALREADY_EXISTS"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Structured + optional semantic catalog search (ADR 0012 / 0014).","tags":["catalog","public-docs:catalog"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":false},"security":[{"pat":[]}]}},"/catalog/dataset-version-queries":{"post":{"operationId":"catalog.datasetVersionQueries.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DatasetVersionQueryBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DatasetVersionQueryResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","CATALOG_INVALID_METADATA_KEY","CATALOG_INVALID_SORT_FIELD","CATALOG_SEARCH_DSL_INVALID","CATALOG_SEARCH_EXPRESSION_TOO_DEEP","CATALOG_SEARCH_EXPRESSION_TOO_LARGE","CATALOG_SEARCH_FIELD_NOT_ALLOWED","CATALOG_SEARCH_INDEX_NOT_READY","CATALOG_SEARCH_OPERATOR_NOT_ALLOWED","CATALOG_SEARCH_SCHEMA_UNAVAILABLE","CATALOG_SEARCH_SEMANTIC_NOT_READY","CATALOG_SEARCH_VALIDATION_ERROR","CATALOG_VALIDATION_ERROR","DATASET_VERSION_NOT_SOFT_HIDDEN","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","SLUG_ALREADY_EXISTS"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Preview a structured query against canonical parquet for one dataset version.","tags":["catalog","public-docs:catalog"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}]}},"/project-import-sources":{"post":{"operationId":"projectImportSources.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateProjectImportSourceBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ProjectImportSourceDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["project-imports","public-docs:project-imports","project-imports"],"x-embodiflow-permission":{"point":"project:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a project import source"}},"/project-import-sources/{sourceId}/validation-requests":{"post":{"operationId":"projectImportSources.validationRequests.create","parameters":[{"name":"sourceId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidateProjectImportBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ProjectImportValidationResultDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["project-imports","public-docs:project-imports","project-imports"],"x-embodiflow-permission":{"point":"project:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a validation request"}},"/project-import-jobs/{runId}/confirmations":{"post":{"operationId":"projectImportJobs.confirmations.create","parameters":[{"name":"runId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConfirmProjectImportAttemptBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ProjectImportAttemptConfirmationDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["project-imports","public-docs:project-imports","project-imports"],"x-embodiflow-permission":{"point":"project:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a confirmation"}},"/project-import-jobs/{runId}/resumptions":{"post":{"operationId":"projectImportJobs.resumptions.create","parameters":[{"name":"runId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConfirmProjectImportAttemptBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ProjectImportAttemptConfirmationDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["project-imports","public-docs:project-imports","project-imports"],"x-embodiflow-permission":{"point":"project:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a resumption"}},"/project-import-jobs":{"post":{"operationId":"projectImportJobs.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateProjectImportJobBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ProjectImportJobDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["project-imports","public-docs:project-imports","project-imports"],"x-embodiflow-permission":{"point":"project:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a project import job"}},"/project-import-jobs/{runId}":{"get":{"operationId":"projectImportJobs.get","parameters":[{"name":"runId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ProjectImportJobDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["project-imports","public-docs:project-imports","project-imports"],"x-embodiflow-permission":{"point":"project:read","projectScoped":true},"security":[{"pat":[]}],"summary":"Get a project import job"}},"/projects":{"post":{"operationId":"projects.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateProjectBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ProjectDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Create a project","tags":["projects","public-docs:projects"],"x-embodiflow-permission":{"point":"tenant:manage","projectScoped":false},"security":[{"pat":[]}]},"get":{"operationId":"projects.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"sortBy","required":false,"in":"query","schema":{"type":"string"}},{"name":"sortOrder","required":false,"in":"query","schema":{"type":"string","enum":["asc","desc"]}},{"name":"visibility","required":false,"in":"query","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","schema":{"type":"string"}},{"name":"q","required":false,"in":"query","schema":{"type":"string"}},{"name":"slug","required":false,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ProjectDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"List projects","tags":["projects","public-docs:projects"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}]}},"/projects/{projectId}/overview":{"get":{"operationId":"projects.overview.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ProjectOverviewDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["projects","public-docs:projects"],"x-embodiflow-permission":{"point":"project:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List overview for a project"}},"/projects/{projectId}/analytics":{"get":{"operationId":"projects.analytics.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ProjectAnalyticsDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["projects","public-docs:projects"],"x-embodiflow-permission":{"point":"analytics:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List analytics for a project"}},"/projects/{projectId}/project-import-jobs":{"get":{"operationId":"projects.projectImportJobs.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["projects","public-docs:projects"],"x-embodiflow-permission":{"point":"project:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List project import jobs for a project"}},"/projects/{projectId}/members":{"get":{"operationId":"projects.members.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"sortBy","required":false,"in":"query","schema":{"type":"string"}},{"name":"sortOrder","required":false,"in":"query","schema":{"type":"string","enum":["asc","desc"]}},{"name":"q","required":false,"in":"query","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ProjectMemberDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","properties":{"requestId":{"type":"string"},"pageSize":{"type":"number"},"totalCount":{"type":"number"},"truncated":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["requestId","pageSize","totalCount","truncated"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["projects","public-docs:projects"],"x-embodiflow-permission":{"point":"member:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List members for a project"},"post":{"operationId":"projects.members.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateProjectMemberBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ProjectMemberDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["projects","public-docs:projects"],"x-embodiflow-permission":{"point":"member:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a member"}},"/projects/{projectId}/memberships/{membershipId}":{"patch":{"operationId":"projects.memberships.update","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"membershipId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateProjectMemberBodyDto"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ProjectMemberDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["projects","public-docs:projects"],"x-embodiflow-permission":{"point":"member:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Update a membership"}},"/projects/{projectId}/archive-requests":{"post":{"operationId":"projects.archiveRequests.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ProjectSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["projects","public-docs:projects"],"x-embodiflow-permission":{"point":"project:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a archive request"}},"/projects/{projectId}/deletion-requests":{"post":{"operationId":"projects.deletionRequests.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"202":{"description":"Moved to trash","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TrashMoveResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Move a project to trash","tags":["projects","public-docs:projects"],"x-embodiflow-permission":{"point":"project:manage","projectScoped":true},"security":[{"pat":[]}]}},"/projects/{projectId}":{"patch":{"operationId":"projects.update","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchProjectBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ProjectDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["projects","public-docs:projects"],"x-embodiflow-permission":{"point":"project:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Update a project"},"delete":{"operationId":"projects.delete","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"responses":{"202":{"description":"Moved to trash","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TrashMoveResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Move a project to trash","tags":["projects","public-docs:projects"],"x-embodiflow-permission":{"point":"project:manage","projectScoped":true},"security":[{"pat":[]}]},"get":{"operationId":"projects.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ProjectDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["projects","public-docs:projects"],"x-embodiflow-permission":{"point":"project:read","projectScoped":true},"security":[{"pat":[]}],"summary":"Get a project"}},"/projects/{projectId}/pii-policy":{"get":{"operationId":"projects.piiPolicy.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ProjectPiiPolicyDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["project-pii-policy","public-docs:project-pii-policy","project-pii-policy"],"x-embodiflow-permission":{"point":"project:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List pii policy for a project"},"put":{"operationId":"projects.piiPolicy.replace","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpsertProjectPiiPolicyBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ProjectPiiPolicyDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["project-pii-policy","public-docs:project-pii-policy","project-pii-policy"],"x-embodiflow-permission":{"point":"project:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Update a pii policy"}},"/projects/{projectId}/recording-privacy":{"get":{"operationId":"projects.recordingPrivacy.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ProjectRecordingPrivacyDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["project-recording-privacy","public-docs:project-recording-privacy","project-recording-privacy"],"x-embodiflow-permission":{"point":"project:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List recording privacy for a project"},"put":{"operationId":"projects.recordingPrivacy.replace","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateProjectRecordingPrivacyBodyDto"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ProjectRecordingPrivacyDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Owner only (checked in the service); applies to new uploads.","tags":["project-recording-privacy","public-docs:project-recording-privacy","project-recording-privacy"],"x-embodiflow-permission":{"point":"project:manage","projectScoped":true},"security":[{"pat":[]}]}},"/projects/{projectId}/datasets":{"get":{"operationId":"projects.datasets.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"sortBy","required":false,"in":"query","schema":{"type":"string"}},{"name":"sortOrder","required":false,"in":"query","schema":{"type":"string","enum":["asc","desc"]}},{"name":"status","required":false,"in":"query","schema":{"type":"string"}},{"name":"datasetType","required":false,"in":"query","schema":{"type":"string"}},{"name":"sourceType","required":false,"in":"query","schema":{"type":"string"}},{"name":"metadataSchema","required":false,"in":"query","schema":{"type":"string"}},{"name":"metadataKey","required":false,"in":"query","schema":{"type":"string"}},{"name":"metadataEquals","required":false,"in":"query","schema":{"type":"string"}},{"name":"q","required":false,"in":"query","description":"Case-insensitive search over dataset name, description, and slug.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/DatasetSummaryDto"}},"meta":{"type":"object","properties":{"requestId":{"type":"string"},"pageSize":{"type":"number"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["datasets","public-docs:datasets"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List datasets for a project"}},"/project-memberships/{projectMembershipId}":{"patch":{"operationId":"projectMemberships.update","parameters":[{"name":"projectMembershipId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateProjectMemberBodyDto"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ProjectMemberDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","LAST_OWNER_PROTECTION","SLUG_GENERATION_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["project-memberships","public-docs:project-memberships","project-memberships"],"x-embodiflow-permission":{"point":"member:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Update a project membership"}},"/users/me/recent-projects":{"get":{"operationId":"users.me.recentProjects.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ProjectSummaryDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","required":["pageSize"],"properties":{"requestId":{"type":"string"},"pageSize":{"type":"number"}}}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INITIAL_PASSWORD_REQUIRED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["projects","public-docs:projects","projects"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List recent projects for a me"}},"/users/me/dashboard-metrics":{"get":{"operationId":"users.me.dashboardMetrics.get","parameters":[],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DashboardMetricsSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INITIAL_PASSWORD_REQUIRED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dashboard","public-docs:dashboard","dashboard"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List dashboard metrics for a me"}},"/users/me/dashboard-stats":{"get":{"operationId":"users.me.dashboardStats.get","parameters":[{"name":"range","required":false,"in":"query","schema":{"default":"30d","type":"string","enum":["7d","30d","90d"]}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DashboardStatsDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INITIAL_PASSWORD_REQUIRED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Team home statistics for the projects you can see","tags":["dashboard","public-docs:dashboard","dashboard"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}]}},"/users/me/recent-quality-jobs":{"get":{"operationId":"users.me.recentQualityJobs.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/WorkflowRunSummaryDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INITIAL_PASSWORD_REQUIRED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","REGISTRATION_INVITATION_EXPIRED","SSO_NOT_CONFIGURED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["workflow-runs","public-docs:workflow-runs","workflow-runs"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List recent quality jobs for a me"}},"/datasets/{datasetId}/versions/{datasetVersionId}/governance-tags":{"get":{"operationId":"datasets.versions.governanceTags.list","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"datasetVersionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size. Default 25, maximum 100. Values above the maximum are refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response's `nextPageToken`.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/DatasetGovernanceTagDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","required":["pageSize"],"properties":{"requestId":{"type":"string"},"pageSize":{"type":"number"}}}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-governance-tags","public-docs:dataset-governance-tags","dataset-governance-tags"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List governance tags for a version"},"post":{"operationId":"datasets.versions.governanceTags.create","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"datasetVersionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateDatasetGovernanceTagBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DatasetGovernanceTagDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","SLUG_ALREADY_EXISTS","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-governance-tags","public-docs:dataset-governance-tags","dataset-governance-tags"],"x-embodiflow-permission":{"point":"dataset:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a governance tag"}},"/datasets/{datasetId}/versions/{datasetVersionId}/governance-tags/{tagId}":{"patch":{"operationId":"datasets.versions.governanceTags.update","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"datasetVersionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"tagId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchDatasetGovernanceTagBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DatasetGovernanceTagDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","SLUG_ALREADY_EXISTS","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-governance-tags","public-docs:dataset-governance-tags","dataset-governance-tags"],"x-embodiflow-permission":{"point":"dataset:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Update a governance tag"},"delete":{"operationId":"datasets.versions.governanceTags.delete","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"datasetVersionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"tagId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"ok":{"type":"boolean","enum":[true]}},"required":["ok"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","SLUG_ALREADY_EXISTS","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-governance-tags","public-docs:dataset-governance-tags","dataset-governance-tags"],"x-embodiflow-permission":{"point":"dataset:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Delete a governance tag"}},"/datasets/{datasetId}/versions/{datasetVersionId}/items/{itemId}/governance-tags":{"get":{"operationId":"datasets.versions.items.governanceTags.list","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"datasetVersionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"itemId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size. Default 25, maximum 100. Values above the maximum are refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response's `nextPageToken`.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/DatasetGovernanceTagDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","required":["pageSize"],"properties":{"requestId":{"type":"string"},"pageSize":{"type":"number"}}}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-governance-tags","public-docs:dataset-governance-tags","dataset-governance-tags"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List governance tags for a item"},"post":{"operationId":"datasets.versions.items.governanceTags.create","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"datasetVersionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"itemId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateDatasetGovernanceTagBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DatasetGovernanceTagDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","SLUG_ALREADY_EXISTS","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-governance-tags","public-docs:dataset-governance-tags","dataset-governance-tags"],"x-embodiflow-permission":{"point":"dataset:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a governance tag"}},"/datasets/{datasetId}/versions/{datasetVersionId}/items/{itemId}/governance-tags/{tagId}":{"patch":{"operationId":"datasets.versions.items.governanceTags.update","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"datasetVersionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"itemId","required":true,"in":"path","schema":{"type":"string"}},{"name":"tagId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchDatasetGovernanceTagBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DatasetGovernanceTagDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","SLUG_ALREADY_EXISTS","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-governance-tags","public-docs:dataset-governance-tags","dataset-governance-tags"],"x-embodiflow-permission":{"point":"dataset:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Update a governance tag"},"delete":{"operationId":"datasets.versions.items.governanceTags.delete","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"datasetVersionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"itemId","required":true,"in":"path","schema":{"type":"string"}},{"name":"tagId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"ok":{"type":"boolean","enum":[true]}},"required":["ok"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","SLUG_ALREADY_EXISTS","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-governance-tags","public-docs:dataset-governance-tags","dataset-governance-tags"],"x-embodiflow-permission":{"point":"dataset:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Delete a governance tag"}},"/first-value-state":{"get":{"operationId":"firstValueState.get","parameters":[{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/FirstValueStateDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","SAMPLE_NOT_FOUND","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"412":{"description":"PRECONDITION_FAILED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["first-value-activation","public-docs:first-value-activation"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List first value state"},"patch":{"operationId":"firstValueState.update","parameters":[{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/FirstValueStateDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","SAMPLE_NOT_FOUND","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["first-value-activation","public-docs:first-value-activation"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchFirstValueStateRequestDto"}}}},"summary":"Update a first value state"}},"/onboarding-samples":{"post":{"operationId":"onboardingSamples.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/OnboardingSampleDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","SAMPLE_NOT_FOUND","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["first-value-activation","public-docs:first-value-activation"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a onboarding sample"}},"/onboarding-samples/current":{"get":{"operationId":"onboardingSamples.current.get","parameters":[],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/OnboardingSampleDto","nullable":true}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","SAMPLE_NOT_FOUND","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["first-value-activation","public-docs:first-value-activation"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List current for a onboarding sample"},"delete":{"operationId":"onboardingSamples.current.delete","parameters":[],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"deleted":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["deleted"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","SAMPLE_NOT_FOUND","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["first-value-activation","public-docs:first-value-activation"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"Delete a current"}},"/projects/{projectId}/versions":{"get":{"operationId":"projects.versions.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","PROJECT_VERSION_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"List versions in a project","tags":["versions","public-docs:versions"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}]},"post":{"operationId":"projects.versions.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateProjectVersionBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ProjectVersionDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","PROJECT_VERSION_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","VERSION_ALREADY_EXISTS","VERSION_IN_TRASH","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"Unprocessable entity. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[422]},"code":{"type":"string","enum":["DATASET_REF_AMBIGUOUS","VERSION_ALIAS_RESERVED","VERSION_CAPTURE_SESSION_SPLIT_MISMATCH","VERSION_DATA_CONTRACT_INCOMPLETE","VERSION_DATA_CONTRACT_MISMATCH","VERSION_MIXED_FEATURE_SCHEMA","VERSION_SPLIT_TAG_MISSING"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Create a version from a selection of episodes","tags":["versions","public-docs:versions"],"x-embodiflow-permission":{"point":"dataset:write","projectScoped":true},"security":[{"pat":[]}]}},"/projects/{projectId}/versions/previews":{"post":{"operationId":"projects.versions.previews.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PreviewProjectVersionBodyDto"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ProjectVersionPreviewDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","PROJECT_VERSION_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","VERSION_ALREADY_EXISTS","VERSION_IN_TRASH","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"Unprocessable entity. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[422]},"code":{"type":"string","enum":["DATASET_REF_AMBIGUOUS","VERSION_ALIAS_RESERVED","VERSION_CAPTURE_SESSION_SPLIT_MISMATCH","VERSION_DATA_CONTRACT_INCOMPLETE","VERSION_DATA_CONTRACT_MISMATCH","VERSION_MIXED_FEATURE_SCHEMA","VERSION_SPLIT_TAG_MISSING"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Preview a version selection without writing","tags":["versions","public-docs:versions"],"x-embodiflow-permission":{"point":"dataset:write","projectScoped":true},"security":[{"pat":[]}]}},"/projects/{projectId}/versions/{versionNumber}/citation":{"get":{"operationId":"projects.versions.citation.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"versionNumber","required":true,"in":"path","schema":{"type":"number"}},{"name":"format","required":false,"in":"query","schema":{"default":"bibtex","type":"string","enum":["bibtex","text","cff"]}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"format":{"type":"string","enum":["bibtex","text","cff"]},"text":{"type":"string"}},"required":["format","text"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","PROJECT_VERSION_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Get a version citation","tags":["versions","public-docs:versions"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}]}},"/projects/{projectId}/versions/{versionNumber}/episodes":{"get":{"operationId":"projects.versions.episodes.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"versionNumber","required":true,"in":"path","schema":{"type":"number"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"split","required":false,"in":"query","schema":{"type":"string","enum":["train","val","test"]}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","PROJECT_VERSION_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"List episodes in a version","tags":["versions","public-docs:versions"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}]}},"/projects/{projectId}/versions/{versionNumber}":{"get":{"operationId":"projects.versions.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"versionNumber","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ProjectVersionDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","PROJECT_VERSION_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Get a version","tags":["versions","public-docs:versions"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}]},"patch":{"operationId":"projects.versions.update","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"versionNumber","required":true,"in":"path","schema":{"type":"number"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchProjectVersionBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ProjectVersionDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","PROJECT_VERSION_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","VERSION_ALREADY_EXISTS","VERSION_IN_TRASH","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"422":{"description":"Unprocessable entity. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[422]},"code":{"type":"string","enum":["DATASET_REF_AMBIGUOUS","VERSION_ALIAS_RESERVED","VERSION_CAPTURE_SESSION_SPLIT_MISMATCH","VERSION_DATA_CONTRACT_INCOMPLETE","VERSION_DATA_CONTRACT_MISMATCH","VERSION_MIXED_FEATURE_SCHEMA","VERSION_SPLIT_TAG_MISSING"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Patch version name, readme, and licence","tags":["versions","public-docs:versions"],"x-embodiflow-permission":{"point":"dataset:write","projectScoped":true},"security":[{"pat":[]}]},"delete":{"operationId":"projects.versions.delete","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"versionNumber","required":true,"in":"path","schema":{"type":"number"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"responses":{"202":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TrashMoveResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","PROJECT_VERSION_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","VERSION_ALREADY_EXISTS","VERSION_IN_TRASH","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"422":{"description":"Unprocessable entity. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[422]},"code":{"type":"string","enum":["DATASET_REF_AMBIGUOUS","VERSION_ALIAS_RESERVED","VERSION_CAPTURE_SESSION_SPLIT_MISMATCH","VERSION_DATA_CONTRACT_INCOMPLETE","VERSION_DATA_CONTRACT_MISMATCH","VERSION_MIXED_FEATURE_SCHEMA","VERSION_SPLIT_TAG_MISSING"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Move a version to trash","tags":["versions","public-docs:versions"],"x-embodiflow-permission":{"point":"dataset:write","projectScoped":true},"security":[{"pat":[]}]}},"/projects/{projectId}/version-aliases":{"get":{"operationId":"projects.versionAliases.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/VersionAliasListRowSwaggerDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"List version aliases in a project","tags":["version-aliases","public-docs:version-aliases"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}]}},"/projects/{projectId}/version-aliases/{aliasName}":{"put":{"operationId":"projects.versionAliases.replace","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"aliasName","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetVersionAliasBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/VersionAliasMutationDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"422":{"description":"VERSION_ALIAS_RESERVED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Create or move a version alias","tags":["version-aliases","public-docs:version-aliases"],"x-embodiflow-permission":{"point":"dataset:write","projectScoped":true},"security":[{"pat":[]}]},"delete":{"operationId":"projects.versionAliases.delete","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"aliasName","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"204":{"description":"Success"},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Delete a version alias","tags":["version-aliases","public-docs:version-aliases"],"x-embodiflow-permission":{"point":"dataset:write","projectScoped":true},"security":[{"pat":[]}]}},"/vision/annotations":{"post":{"operationId":"vision.annotations.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VisionAnnotateBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/VisionAnnotateResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Create a vision annotation for a single frame","tags":["vision","public-docs:vision","vision"],"x-embodiflow-permission":{"point":"vision:annotate","projectScoped":true},"security":[{"pat":[]}]}},"/dataset-versions/{versionId}/reproducibility-bundle":{"get":{"operationId":"datasetVersions.reproducibilityBundle.get","parameters":[{"name":"versionId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ReproducibilityBundleDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_NOT_SOFT_HIDDEN","DIFF_NOT_READY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_INPUT","LEGAL_HOLD_SCOPE_INVALID","PROVENANCE_SCHEMA_INVALID","REPRO_BUNDLE_RECIPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SPLIT_CONFIG_INVALID","SPLIT_NOT_REPRODUCIBLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["DATASET_NOT_FOUND","DATASET_VERSION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","PROVENANCE_NOT_AVAILABLE","REPRO_BUNDLE_INPUT_NOT_FOUND","REPRO_BUNDLE_SPLIT_MISSING","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-versions","public-docs:dataset-versions","dataset-versions"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List reproducibility bundle for a dataset version"}},"/dataset-versions/{versionId}/provenance-summary":{"get":{"operationId":"datasetVersions.provenanceSummary.get","parameters":[{"name":"versionId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DatasetVersionProvenanceSummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_NOT_SOFT_HIDDEN","DIFF_NOT_READY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_INPUT","LEGAL_HOLD_SCOPE_INVALID","PROVENANCE_SCHEMA_INVALID","REPRO_BUNDLE_RECIPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SPLIT_CONFIG_INVALID","SPLIT_NOT_REPRODUCIBLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["DATASET_NOT_FOUND","DATASET_VERSION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","PROVENANCE_NOT_AVAILABLE","REPRO_BUNDLE_INPUT_NOT_FOUND","REPRO_BUNDLE_SPLIT_MISSING","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-versions","public-docs:dataset-versions","dataset-versions"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List provenance summary for a dataset version"}},"/dataset-versions/{versionId}/split-plans":{"post":{"operationId":"datasetVersions.splitPlans.create","parameters":[{"name":"versionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateSplitPlanBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/SplitPlanResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_NOT_SOFT_HIDDEN","DIFF_NOT_READY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_INPUT","LEGAL_HOLD_SCOPE_INVALID","PROVENANCE_SCHEMA_INVALID","REPRO_BUNDLE_RECIPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SPLIT_CONFIG_INVALID","SPLIT_NOT_REPRODUCIBLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["DATASET_NOT_FOUND","DATASET_VERSION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","PROVENANCE_NOT_AVAILABLE","REPRO_BUNDLE_INPUT_NOT_FOUND","REPRO_BUNDLE_SPLIT_MISSING","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","SLUG_ALREADY_EXISTS","SPLIT_CONFIG_IMMUTABLE","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-versions","public-docs:dataset-versions","dataset-versions"],"x-embodiflow-permission":{"point":"dataset:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a split plan"}},"/training-jobs/{trainingJobId}/reproducibility-bundle":{"get":{"operationId":"trainingJobs.reproducibilityBundle.get","parameters":[{"name":"trainingJobId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ReproducibilityBundleDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","CHECKPOINT_NOT_COMPLETE","CHECKPOINT_NOT_FOUND","COMPUTE_PROFILE_INACTIVE","COMPUTE_PROFILE_NOT_FOUND","DATASET_VERSION_CONTRACT_BLOCKED","DATASET_VERSION_MANIFEST_MISSING","DATASET_VERSION_QUALITY_BLOCKED","DATASET_VERSION_STATS_STALE","EXPORT_BLOCKED_BY_PII_POLICY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMAGE_REVISION_NOT_EXECUTABLE","IMAGE_REVISION_NOT_PUBLISHED","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","TRAINING_ARTIFACT_NOT_FINALIZED","TRAINING_ARTIFACT_UNSUPPORTED_TYPE","TRAINING_ARTIFACT_WRONG_PROJECT","TRAINING_FINALIZATION_INCOMPLETE","TRAINING_FORBIDDEN_INFRA_FIELD","TRAINING_IDEMPOTENCY_KEY_REQUIRED","TRAINING_JOB_NOT_ACTIVE","TRAINING_PROVENANCE_UNRESOLVABLE","TRAINING_TENANT_FROZEN","TRAINING_VALIDATION_ERROR","TRAIN_SPEC_INVALID","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ARTIFACT_NOT_FOUND","DATASET_EXPORT_JOB_NOT_FOUND","DEPLOYMENT_PACKAGE_NOT_FOUND","DOWNLOAD_SESSION_NOT_FOUND","EXPORT_NOT_FOUND","IMAGE_REVISION_NOT_FOUND","NOT_FOUND","TRAINING_ARTIFACT_NOT_FOUND","TRAINING_ATTEMPT_NOT_FOUND","TRAINING_JOB_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["training-jobs","public-docs:training-jobs","training-jobs"],"x-embodiflow-permission":{"point":"training:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List reproducibility bundle for a training job"}},"/projects/{projectId}/capture-sessions":{"get":{"operationId":"projects.captureSessions.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"List capture sessions in a project","tags":["capture-sessions","public-docs:capture-sessions"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}]},"post":{"operationId":"projects.captureSessions.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCaptureSessionBodyDto"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CaptureSessionEnvelopeDto"}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Create a capture session","tags":["capture-sessions","public-docs:capture-sessions"],"x-embodiflow-permission":{"point":"dataset:write","projectScoped":true},"security":[{"pat":[]}]}},"/recordings/{recordingId}/capture-session":{"put":{"operationId":"recordings.captureSession.replace","parameters":[{"name":"recordingId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AssignRecordingCaptureSessionBodyDto"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecordingCaptureSessionEnvelopeDto"}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Assign or clear a recording capture session","tags":["capture-sessions","public-docs:capture-sessions"],"x-embodiflow-permission":{"point":"dataset:write","projectScoped":true},"security":[{"pat":[]}]}},"/dataset-versions/{versionId}/composition-profiles":{"get":{"operationId":"datasetVersions.compositionProfiles.list","parameters":[{"name":"versionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","schema":{"type":"string","enum":["ready","not_evaluated","error"]}},{"name":"itemSetMode","required":false,"in":"query","schema":{"type":"string","enum":["all","accepted","all_and_accepted"]}},{"name":"hasDrift","required":false,"in":"query","schema":{"type":"boolean","enum":["true","false"]}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/DatasetCompositionProfileSummaryDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"totalCount":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","COMPOSITION_IDEMPOTENCY_KEY_REQUIRED","COMPOSITION_PROFILE_VALIDATION_ERROR","DATASET_VERSION_NOT_SOFT_HIDDEN","DIFF_NOT_READY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_INPUT","LEGAL_HOLD_SCOPE_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","PROVENANCE_SCHEMA_INVALID","REPRO_BUNDLE_RECIPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SPLIT_CONFIG_INVALID","SPLIT_NOT_REPRODUCIBLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["COMPOSITION_PROFILE_NOT_FOUND","COMPOSITION_REFERENCE_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","PROVENANCE_NOT_AVAILABLE","REPRO_BUNDLE_INPUT_NOT_FOUND","REPRO_BUNDLE_SPLIT_MISSING","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"409 COMPOSITION_PROFILE_IN_PROGRESS | IDEMPOTENCY_CONFLICT"},"422":{"description":"422 COMPOSITION_CANONICAL_OUTPUTS_MISSING | COMPOSITION_EXTRACTOR_UNSUPPORTED | COMPOSITION_PROFILES_NOT_COMPARABLE"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-composition-profiles","public-docs:dataset-composition-profiles","dataset-composition-profiles"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List composition profiles for a dataset version"}},"/dataset-versions/{versionId}/composition-profile-requests":{"post":{"operationId":"datasetVersions.compositionProfileRequests.create","parameters":[{"name":"versionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"idempotency-key","required":true,"in":"header","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCompositionProfileRequestBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CompositionProfileRequestResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","COMPOSITION_IDEMPOTENCY_KEY_REQUIRED","COMPOSITION_PROFILE_VALIDATION_ERROR","DATASET_VERSION_NOT_SOFT_HIDDEN","DIFF_NOT_READY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_INPUT","LEGAL_HOLD_SCOPE_INVALID","PROVENANCE_SCHEMA_INVALID","REPRO_BUNDLE_RECIPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SPLIT_CONFIG_INVALID","SPLIT_NOT_REPRODUCIBLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["COMPOSITION_PROFILE_NOT_FOUND","COMPOSITION_REFERENCE_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","PROVENANCE_NOT_AVAILABLE","REPRO_BUNDLE_INPUT_NOT_FOUND","REPRO_BUNDLE_SPLIT_MISSING","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["COMPOSITION_PROFILE_IN_PROGRESS","DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","SLUG_ALREADY_EXISTS","SPLIT_CONFIG_IMMUTABLE","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE"]}}}]}}}},"422":{"description":"Unprocessable entity. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[422]},"code":{"type":"string","enum":["COMPOSITION_CANONICAL_OUTPUTS_MISSING","COMPOSITION_EXTRACTOR_UNSUPPORTED","COMPOSITION_PROFILES_NOT_COMPARABLE"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-composition-profiles","public-docs:dataset-composition-profiles","dataset-composition-profiles"],"x-embodiflow-permission":{"point":"quality:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a composition profile request"}},"/dataset-version-composition-profiles/{profileId}":{"get":{"operationId":"datasetVersionCompositionProfiles.get","parameters":[{"name":"profileId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DatasetCompositionProfileEnvelopeDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","COMPOSITION_IDEMPOTENCY_KEY_REQUIRED","COMPOSITION_PROFILE_VALIDATION_ERROR","DATASET_VERSION_NOT_SOFT_HIDDEN","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["COMPOSITION_PROFILE_NOT_FOUND","COMPOSITION_REFERENCE_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"409 COMPOSITION_PROFILE_IN_PROGRESS | IDEMPOTENCY_CONFLICT"},"422":{"description":"422 COMPOSITION_CANONICAL_OUTPUTS_MISSING | COMPOSITION_EXTRACTOR_UNSUPPORTED | COMPOSITION_PROFILES_NOT_COMPARABLE"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-composition-profiles","public-docs:dataset-composition-profiles","dataset-composition-profiles"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}],"summary":"Get a dataset version composition profile"}},"/dataset-version-composition-profiles/{profileId}/quality-findings":{"get":{"operationId":"datasetVersionCompositionProfiles.qualityFindings.list","parameters":[{"name":"profileId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","schema":{"type":"string"}},{"name":"blocking","required":false,"in":"query","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/QualityFindingDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","COMPOSITION_IDEMPOTENCY_KEY_REQUIRED","COMPOSITION_PROFILE_VALIDATION_ERROR","DATASET_VERSION_NOT_SOFT_HIDDEN","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["COMPOSITION_PROFILE_NOT_FOUND","COMPOSITION_REFERENCE_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_NOT_FOUND","NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"409 COMPOSITION_PROFILE_IN_PROGRESS | IDEMPOTENCY_CONFLICT"},"422":{"description":"422 COMPOSITION_CANONICAL_OUTPUTS_MISSING | COMPOSITION_EXTRACTOR_UNSUPPORTED | COMPOSITION_PROFILES_NOT_COMPARABLE"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-composition-profiles","public-docs:dataset-composition-profiles","dataset-composition-profiles"],"x-embodiflow-permission":{"point":"quality:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List quality findings for a dataset version composition profile"}},"/dataset-versions/{versionId}/health":{"get":{"operationId":"datasetVersions.health.get","parameters":[{"name":"versionId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DatasetVersionHealthDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_NOT_SOFT_HIDDEN","DIFF_NOT_READY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_INPUT","LEGAL_HOLD_SCOPE_INVALID","PROVENANCE_SCHEMA_INVALID","REPRO_BUNDLE_RECIPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SPLIT_CONFIG_INVALID","SPLIT_NOT_REPRODUCIBLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["DATASET_NOT_FOUND","DATASET_VERSION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","PROVENANCE_NOT_AVAILABLE","REPRO_BUNDLE_INPUT_NOT_FOUND","REPRO_BUNDLE_SPLIT_MISSING","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-versions-health","public-docs:dataset-versions-health","dataset-versions-health"],"x-embodiflow-permission":{"point":"dataset:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List health for a dataset version"}},"/dataset-versions/{versionId}/health-recompute-requests":{"post":{"operationId":"datasetVersions.healthRecomputeRequests.create","parameters":[{"name":"versionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/HealthRecomputeRequestResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_NOT_SOFT_HIDDEN","DIFF_NOT_READY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_INPUT","LEGAL_HOLD_SCOPE_INVALID","PROVENANCE_SCHEMA_INVALID","REPRO_BUNDLE_RECIPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SPLIT_CONFIG_INVALID","SPLIT_NOT_REPRODUCIBLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["DATASET_NOT_FOUND","DATASET_VERSION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","PROVENANCE_NOT_AVAILABLE","REPRO_BUNDLE_INPUT_NOT_FOUND","REPRO_BUNDLE_SPLIT_MISSING","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","SLUG_ALREADY_EXISTS","SPLIT_CONFIG_IMMUTABLE","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-versions-health","public-docs:dataset-versions-health","dataset-versions-health"],"x-embodiflow-permission":{"point":"dataset:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a health recompute request"}},"/dataset-versions/{versionId}/repair-task-generation-requests":{"post":{"operationId":"datasetVersions.repairTaskGenerationRequests.create","parameters":[{"name":"versionId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RepairTaskGenerationBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/RepairTaskGenerationRequestResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_NOT_SOFT_HIDDEN","DIFF_NOT_READY","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","INVALID_INPUT","LEGAL_HOLD_SCOPE_INVALID","PROVENANCE_SCHEMA_INVALID","REPRO_BUNDLE_RECIPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SPLIT_CONFIG_INVALID","SPLIT_NOT_REPRODUCIBLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["DATASET_NOT_FOUND","DATASET_VERSION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","PROVENANCE_NOT_AVAILABLE","REPRO_BUNDLE_INPUT_NOT_FOUND","REPRO_BUNDLE_SPLIT_MISSING","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","SLUG_ALREADY_EXISTS","SPLIT_CONFIG_IMMUTABLE","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-versions-health","public-docs:dataset-versions-health","dataset-versions-health"],"x-embodiflow-permission":{"point":"task:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a repair task generation request"}},"/projects/{projectId}/health":{"get":{"operationId":"projects.health.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ProjectHealthRollupDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-versions-health","public-docs:dataset-versions-health","dataset-versions-health"],"x-embodiflow-permission":{"point":"project:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List health for a project"}},"/projects/{projectId}/annotation-jobs":{"get":{"operationId":"projects.annotationJobs.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"description":"403 ANNOTATION_SELF_REVIEW_FORBIDDEN"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"409 ANNOTATION_JOB_NOT_OPEN | ANNOTATION_ITEM_HAS_SUGGESTIONS | ANNOTATION_COMPLETION_STALE"},"422":{"description":"422 PRIVACY_GATE_UNRESOLVED | ANNOTATION_COMPLETION_INCOMPLETE"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["annotation-jobs","public-docs:annotation-jobs","annotation-jobs"],"x-embodiflow-permission":{"point":"annotation:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List annotation jobs for a project"},"post":{"operationId":"projects.annotationJobs.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateAnnotationJobBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AnnotationJobDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"description":"403 ANNOTATION_SELF_REVIEW_FORBIDDEN"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"422 PRIVACY_GATE_UNRESOLVED | ANNOTATION_COMPLETION_INCOMPLETE"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["annotation-jobs","public-docs:annotation-jobs","annotation-jobs"],"x-embodiflow-permission":{"point":"annotation-job:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a annotation job"}},"/projects/{projectId}/annotation-jobs/{jobId}":{"get":{"operationId":"projects.annotationJobs.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"jobId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AnnotationJobDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"description":"403 ANNOTATION_SELF_REVIEW_FORBIDDEN"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"409 ANNOTATION_JOB_NOT_OPEN | ANNOTATION_ITEM_HAS_SUGGESTIONS | ANNOTATION_COMPLETION_STALE"},"422":{"description":"422 PRIVACY_GATE_UNRESOLVED | ANNOTATION_COMPLETION_INCOMPLETE"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["annotation-jobs","public-docs:annotation-jobs","annotation-jobs"],"x-embodiflow-permission":{"point":"annotation:read","projectScoped":true},"security":[{"pat":[]}],"summary":"Get a annotation job"},"patch":{"operationId":"projects.annotationJobs.update","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"jobId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Required precondition. Absent returns 428 PRECONDITION_REQUIRED. A stale tag returns 412 PRECONDITION_FAILED with no write. If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":true,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchAnnotationJobBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AnnotationJobDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"description":"403 ANNOTATION_SELF_REVIEW_FORBIDDEN"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"422":{"description":"422 PRIVACY_GATE_UNRESOLVED | ANNOTATION_COMPLETION_INCOMPLETE"},"428":{"description":"PRECONDITION_REQUIRED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["annotation-jobs","public-docs:annotation-jobs","annotation-jobs"],"x-embodiflow-permission":{"point":"annotation-job:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Update a annotation job"}},"/projects/{projectId}/annotation-jobs/{jobId}/cancellations":{"post":{"operationId":"projects.annotationJobs.cancellations.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"jobId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CancelAnnotationJobBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AnnotationJobDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"description":"403 ANNOTATION_SELF_REVIEW_FORBIDDEN"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"422 PRIVACY_GATE_UNRESOLVED | ANNOTATION_COMPLETION_INCOMPLETE"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["annotation-jobs","public-docs:annotation-jobs","annotation-jobs"],"x-embodiflow-permission":{"point":"annotation-job:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a cancellation"}},"/projects/{projectId}/annotation-jobs/{jobId}/items":{"get":{"operationId":"projects.annotationJobs.items.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"jobId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"description":"403 ANNOTATION_SELF_REVIEW_FORBIDDEN"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"409 ANNOTATION_JOB_NOT_OPEN | ANNOTATION_ITEM_HAS_SUGGESTIONS | ANNOTATION_COMPLETION_STALE"},"422":{"description":"422 PRIVACY_GATE_UNRESOLVED | ANNOTATION_COMPLETION_INCOMPLETE"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["annotation-jobs","public-docs:annotation-jobs","annotation-jobs"],"x-embodiflow-permission":{"point":"annotation:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List items for a annotation job"}},"/projects/{projectId}/annotation-jobs/{jobId}/items/{itemId}":{"get":{"operationId":"projects.annotationJobs.items.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"jobId","required":true,"in":"path","schema":{"type":"string"}},{"name":"itemId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AnnotationJobItemDetailDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"description":"403 ANNOTATION_SELF_REVIEW_FORBIDDEN"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"409 ANNOTATION_JOB_NOT_OPEN | ANNOTATION_ITEM_HAS_SUGGESTIONS | ANNOTATION_COMPLETION_STALE"},"422":{"description":"422 PRIVACY_GATE_UNRESOLVED | ANNOTATION_COMPLETION_INCOMPLETE"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["annotation-jobs","public-docs:annotation-jobs","annotation-jobs"],"x-embodiflow-permission":{"point":"annotation:read","projectScoped":true},"security":[{"pat":[]}],"summary":"Get a item"}},"/projects/{projectId}/annotation-jobs/{jobId}/claims":{"post":{"operationId":"projects.annotationJobs.claims.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"jobId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AnnotationJobItemDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"description":"403 ANNOTATION_SELF_REVIEW_FORBIDDEN"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"422 PRIVACY_GATE_UNRESOLVED | ANNOTATION_COMPLETION_INCOMPLETE"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["annotation-jobs","public-docs:annotation-jobs","annotation-jobs"],"x-embodiflow-permission":{"point":"annotation:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a claim"}},"/projects/{projectId}/annotation-jobs/{jobId}/items/{itemId}/completions":{"post":{"operationId":"projects.annotationJobs.items.completions.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"jobId","required":true,"in":"path","schema":{"type":"string"}},{"name":"itemId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CompleteAnnotationJobItemBodyDto"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AnnotationJobItemDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"description":"403 ANNOTATION_SELF_REVIEW_FORBIDDEN"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"422 PRIVACY_GATE_UNRESOLVED | ANNOTATION_COMPLETION_INCOMPLETE"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["annotation-jobs","public-docs:annotation-jobs","annotation-jobs"],"x-embodiflow-permission":{"point":"annotation:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a completion"}},"/projects/{projectId}/annotation-jobs/{jobId}/items/{itemId}/reviews":{"post":{"operationId":"projects.annotationJobs.items.reviews.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"jobId","required":true,"in":"path","schema":{"type":"string"}},{"name":"itemId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReviewAnnotationJobItemBodyDto"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AnnotationJobItemDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"description":"403 ANNOTATION_SELF_REVIEW_FORBIDDEN"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"422":{"description":"422 PRIVACY_GATE_UNRESOLVED | ANNOTATION_COMPLETION_INCOMPLETE"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["annotation-jobs","public-docs:annotation-jobs","annotation-jobs"],"x-embodiflow-permission":{"point":"annotation:review","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a review"}},"/projects/{projectId}/annotation-jobs/{jobId}/insights":{"get":{"operationId":"projects.annotationJobs.insights.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"jobId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AnnotationJobInsightsDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"description":"403 ANNOTATION_SELF_REVIEW_FORBIDDEN"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"409 ANNOTATION_JOB_NOT_OPEN | ANNOTATION_ITEM_HAS_SUGGESTIONS | ANNOTATION_COMPLETION_STALE"},"422":{"description":"422 PRIVACY_GATE_UNRESOLVED | ANNOTATION_COMPLETION_INCOMPLETE"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["annotation-jobs","public-docs:annotation-jobs","annotation-jobs"],"x-embodiflow-permission":{"point":"annotation-job:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"List insights for a annotation job"}},"/me/annotation-assignments":{"get":{"operationId":"me.annotationAssignments.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["me-annotation-assignments","public-docs:me-annotation-assignments","me-annotation-assignments"],"x-embodiflow-permission":{"point":"annotation:read","projectScoped":false,"own":true},"security":[{"pat":[]}],"summary":"List annotation assignments for a me"}},"/datasets/{datasetId}/studio":{"get":{"operationId":"datasets.studio.get","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"datasetVersionId","required":false,"in":"query","schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DatasetStudioResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-annotations","public-docs:dataset-annotations","dataset-annotations"],"x-embodiflow-permission":{"point":"annotation:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List studio for a dataset"}},"/datasets/{datasetId}/annotations/draft":{"put":{"operationId":"datasets.annotations.draft.replace","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReplaceAnnotationDraftsBodyDto"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ReplaceAnnotationDraftsResponseDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","SLUG_ALREADY_EXISTS","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-annotations","public-docs:dataset-annotations","dataset-annotations"],"x-embodiflow-permission":{"point":"annotation:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Update a draft"}},"/datasets/{datasetId}/time-range-annotations":{"get":{"operationId":"datasets.timeRangeAnnotations.list","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","schema":{"minimum":1,"type":"number"}},{"name":"pageToken","required":false,"in":"query","schema":{"type":"string"}},{"name":"includeDeleted","required":false,"in":"query","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/DatasetTimeRangeAnnotationDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-annotations","public-docs:dataset-annotations","dataset-annotations"],"x-embodiflow-permission":{"point":"annotation:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List time range annotations for a dataset"},"post":{"operationId":"datasets.timeRangeAnnotations.create","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateDatasetTimeRangeAnnotationBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DatasetTimeRangeAnnotationDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","SLUG_ALREADY_EXISTS","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-annotations","public-docs:dataset-annotations","dataset-annotations"],"x-embodiflow-permission":{"point":"annotation:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a time range annotation"}},"/datasets/{datasetId}/auto-annotate-imports":{"post":{"operationId":"datasets.autoAnnotateImports.create","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImportAutoAnnotateDraftBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"writebackCount":{"type":"number"},"publishMode":{"type":"string"},"searchIndexRebuilt":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"primaryTask":{"type":"string","nullable":true}},"required":["writebackCount","publishMode","searchIndexRebuilt","primaryTask"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","SLUG_ALREADY_EXISTS","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"ADR 0073: import QWen auto-annotate draft → writeback + optional search index rebuild.","tags":["dataset-annotations","public-docs:dataset-annotations","dataset-annotations"],"x-embodiflow-permission":{"point":"annotation:write","projectScoped":true},"security":[{"pat":[]}]}},"/datasets/{datasetId}/time-range-annotations/{annotationId}":{"patch":{"operationId":"datasets.timeRangeAnnotations.update","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"annotationId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchDatasetTimeRangeAnnotationBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DatasetTimeRangeAnnotationDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","SLUG_ALREADY_EXISTS","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-annotations","public-docs:dataset-annotations","dataset-annotations"],"x-embodiflow-permission":{"point":"annotation:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Update a time range annotation"},"delete":{"operationId":"datasets.timeRangeAnnotations.delete","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"annotationId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"ok":{"type":"boolean","enum":[true]}},"required":["ok"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","SLUG_ALREADY_EXISTS","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-annotations","public-docs:dataset-annotations","dataset-annotations"],"x-embodiflow-permission":{"point":"annotation:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Delete a time range annotation"}},"/datasets/{datasetId}/frame-spatial-annotations":{"get":{"operationId":"datasets.frameSpatialAnnotations.list","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","schema":{"minimum":1,"type":"number"}},{"name":"pageToken","required":false,"in":"query","schema":{"type":"string"}},{"name":"includeDeleted","required":false,"in":"query","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/DatasetFrameSpatialAnnotationDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-annotations","public-docs:dataset-annotations","dataset-annotations"],"x-embodiflow-permission":{"point":"annotation:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List frame spatial annotations for a dataset"},"post":{"operationId":"datasets.frameSpatialAnnotations.create","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateDatasetFrameSpatialAnnotationBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DatasetFrameSpatialAnnotationDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","SLUG_ALREADY_EXISTS","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-annotations","public-docs:dataset-annotations","dataset-annotations"],"x-embodiflow-permission":{"point":"annotation:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a frame spatial annotation"}},"/datasets/{datasetId}/frame-spatial-annotations/{annotationId}":{"patch":{"operationId":"datasets.frameSpatialAnnotations.update","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"annotationId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchDatasetFrameSpatialAnnotationBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DatasetFrameSpatialAnnotationDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","SLUG_ALREADY_EXISTS","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-annotations","public-docs:dataset-annotations","dataset-annotations"],"x-embodiflow-permission":{"point":"annotation:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Update a frame spatial annotation"},"delete":{"operationId":"datasets.frameSpatialAnnotations.delete","parameters":[{"name":"datasetId","required":true,"in":"path","schema":{"type":"string"}},{"name":"annotationId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"ok":{"type":"boolean","enum":[true]}},"required":["ok"]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_SOFT_HIDDEN","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMPTY_UPLOAD_MANIFEST","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","LEGAL_HOLD_SCOPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","SNAPSHOT_ROW_IMMUTABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","UNCLASSIFIED_FILES","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ANNOTATION_SNAPSHOT_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","SUBJECT_NOT_IN_TENANT","TENANT_DELETION_JOB_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["DELETION_BLOCKED_BY_ACTIVE_WORK","IDEMPOTENCY_CONFLICT","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","SLUG_ALREADY_EXISTS","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["dataset-annotations","public-docs:dataset-annotations","dataset-annotations"],"x-embodiflow-permission":{"point":"annotation:write","projectScoped":true},"security":[{"pat":[]}],"summary":"Delete a frame spatial annotation"}},"/projects/{projectId}/skill-taxonomy":{"get":{"operationId":"projects.skillTaxonomy.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/SkillTaxonomyTermDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/SkillTaxonomyListMetaDto","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"409 SKILL_TAXONOMY_CONFLICT | IDEMPOTENCY_CONFLICT"},"422":{"description":"422 SKILL_TAXONOMY_COVERAGE_FLOOR_NOT_DISABLEABLE | SKILL_TAXONOMY_NOT_DRAFT | SKILL_TAXONOMY_PLATFORM_IDENTITY_SHADOWED | SKILL_TAXONOMY_PLATFORM_CODE_REUSED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["skill-taxonomy","public-docs:skill-taxonomy","skill-taxonomy"],"x-embodiflow-permission":{"point":"project:read","projectScoped":true},"security":[{"pat":[]}],"summary":"List skill taxonomy for a project"}},"/skill-taxonomies/{taxonomyId}/terms":{"get":{"operationId":"skillTaxonomies.terms.list","parameters":[{"name":"taxonomyId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/SkillTaxonomyTermDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"totalCount":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"409 SKILL_TAXONOMY_CONFLICT | IDEMPOTENCY_CONFLICT"},"422":{"description":"422 SKILL_TAXONOMY_COVERAGE_FLOOR_NOT_DISABLEABLE | SKILL_TAXONOMY_NOT_DRAFT | SKILL_TAXONOMY_PLATFORM_IDENTITY_SHADOWED | SKILL_TAXONOMY_PLATFORM_CODE_REUSED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["skill-taxonomy","public-docs:skill-taxonomy","skill-taxonomy"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List terms for a skill taxonomy"},"post":{"operationId":"skillTaxonomies.terms.create","parameters":[{"name":"taxonomyId","required":true,"in":"path","schema":{"type":"string"}},{"name":"idempotency-key","required":true,"in":"header","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateSkillTaxonomyTermBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/SkillTaxonomyTermDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"422":{"description":"422 SKILL_TAXONOMY_COVERAGE_FLOOR_NOT_DISABLEABLE | SKILL_TAXONOMY_NOT_DRAFT | SKILL_TAXONOMY_PLATFORM_IDENTITY_SHADOWED | SKILL_TAXONOMY_PLATFORM_CODE_REUSED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["skill-taxonomy","public-docs:skill-taxonomy","skill-taxonomy"],"x-embodiflow-permission":{"point":"skill-taxonomy:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a term"}},"/skill-taxonomies":{"post":{"operationId":"skillTaxonomies.create","parameters":[{"name":"idempotency-key","required":true,"in":"header","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateSkillTaxonomyBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/SkillTaxonomySummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"404 SKILL_TAXONOMY_NOT_FOUND | SKILL_TAXONOMY_TERM_NOT_FOUND"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"422":{"description":"422 SKILL_TAXONOMY_COVERAGE_FLOOR_NOT_DISABLEABLE | SKILL_TAXONOMY_NOT_DRAFT | SKILL_TAXONOMY_PLATFORM_IDENTITY_SHADOWED | SKILL_TAXONOMY_PLATFORM_CODE_REUSED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["skill-taxonomy","public-docs:skill-taxonomy","skill-taxonomy"],"x-embodiflow-permission":{"point":"skill-taxonomy:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Create a skill taxonomy"}},"/skill-taxonomies/{taxonomyId}":{"patch":{"operationId":"skillTaxonomies.update","parameters":[{"name":"taxonomyId","required":true,"in":"path","schema":{"type":"string"}},{"name":"idempotency-key","required":true,"in":"header","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}},{"name":"If-Match","in":"header","description":"Optional precondition. A matching tag proceeds and returns the new ETag. A stale tag returns 412 PRECONDITION_FAILED with no write. Absent proceeds (opt-in this release). If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":false,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchSkillTaxonomyBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/SkillTaxonomySummaryDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"422":{"description":"422 SKILL_TAXONOMY_COVERAGE_FLOOR_NOT_DISABLEABLE | SKILL_TAXONOMY_NOT_DRAFT | SKILL_TAXONOMY_PLATFORM_IDENTITY_SHADOWED | SKILL_TAXONOMY_PLATFORM_CODE_REUSED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["skill-taxonomy","public-docs:skill-taxonomy","skill-taxonomy"],"x-embodiflow-permission":{"point":"skill-taxonomy:manage","projectScoped":true},"security":[{"pat":[]}],"summary":"Update a skill taxonomy"}},"/projects/{projectId}/skills":{"get":{"operationId":"projects.skills.list","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"List resolved project skills","tags":["skills","public-docs:skills"],"x-embodiflow-permission":{"point":"project:read","projectScoped":true},"security":[{"pat":[]}]},"post":{"operationId":"projects.skills.create","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"idempotency-key","required":true,"in":"header","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateProjectSkillBodyDto"}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ProjectSkillDto"}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Add a skill term to the project taxonomy","tags":["skills","public-docs:skills"],"x-embodiflow-permission":{"point":"skill-taxonomy:manage","projectScoped":true},"security":[{"pat":[]}]}},"/projects/{projectId}/annotation-schema":{"get":{"operationId":"projects.annotationSchema.get","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"allOf":[{"type":"object","properties":{"version":{"type":"number","enum":[1]},"languages":{"type":"array","items":{"type":"string"},"enum":["en","zh"]},"fields":{"type":"object","properties":{"task":{"type":"object","properties":{"enabled":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["enabled"]},"outcome":{"type":"object","properties":{"enabled":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["enabled"]},"subtasks":{"type":"object","properties":{"enabled":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["enabled"]},"subtaskOutcome":{"type":"object","properties":{"enabled":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["enabled"]},"relevance":{"type":"object","properties":{"enabled":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["enabled"]},"keyframeBoxes":{"type":"object","properties":{"enabled":{"type":"boolean","enum":[false]}},"required":["enabled"]}},"required":["task","outcome","subtasks","subtaskOutcome","relevance","keyframeBoxes"]},"subtaskLabels":{"type":"array","items":{"type":"object","properties":{"en":{"type":"string","nullable":true},"zh":{"type":"string","nullable":true}}}},"attributes":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string"},"type":{"type":"string","enum":["number","text","single_choice"]},"options":{"type":"array","items":{"type":"string"},"nullable":true}},"required":["key","type"]}}},"required":["version","languages","fields","subtaskLabels","attributes"]},{"type":"object","properties":{"requireReview":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"allowEpisodeOverlap":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"taskList":{"type":"array","items":{"type":"object","properties":{"en":{"type":"string","nullable":true},"zh":{"type":"string","nullable":true}}}}},"required":["requireReview","allowEpisodeOverlap","taskList"]}]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Get the project annotation schema","tags":["annotation-schema","public-docs:annotation-schema"],"x-embodiflow-permission":{"point":"project:read","projectScoped":true},"security":[{"pat":[]}]},"put":{"operationId":"projects.annotationSchema.replace","parameters":[{"name":"projectId","required":true,"in":"path","schema":{"type":"string"}},{"name":"If-Match","in":"header","description":"Required precondition. Absent returns 428 PRECONDITION_REQUIRED. A stale tag returns 412 PRECONDITION_FAILED with no write. If-Match: * succeeds when the resource exists. Malformed values return 400 IF_MATCH_INVALID.","required":true,"schema":{"type":"string","example":"\"1\""}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PutAnnotationSchemaBodyDto"}}}},"responses":{"200":{"description":"Success","headers":{"ETag":{"description":"Strong entity tag derived from the monotonic row version, not a body hash.","schema":{"type":"string","example":"\"1\""}}},"content":{"application/json":{"schema":{"type":"object","properties":{"data":{"allOf":[{"type":"object","properties":{"version":{"type":"number","enum":[1]},"languages":{"type":"array","items":{"type":"string"},"enum":["en","zh"]},"fields":{"type":"object","properties":{"task":{"type":"object","properties":{"enabled":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["enabled"]},"outcome":{"type":"object","properties":{"enabled":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["enabled"]},"subtasks":{"type":"object","properties":{"enabled":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["enabled"]},"subtaskOutcome":{"type":"object","properties":{"enabled":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["enabled"]},"relevance":{"type":"object","properties":{"enabled":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["enabled"]},"keyframeBoxes":{"type":"object","properties":{"enabled":{"type":"boolean","enum":[false]}},"required":["enabled"]}},"required":["task","outcome","subtasks","subtaskOutcome","relevance","keyframeBoxes"]},"subtaskLabels":{"type":"array","items":{"type":"object","properties":{"en":{"type":"string","nullable":true},"zh":{"type":"string","nullable":true}}}},"attributes":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string"},"type":{"type":"string","enum":["number","text","single_choice"]},"options":{"type":"array","items":{"type":"string"},"nullable":true}},"required":["key","type"]}}},"required":["version","languages","fields","subtaskLabels","attributes"]},{"type":"object","properties":{"requireReview":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"allowEpisodeOverlap":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"taskList":{"type":"array","items":{"type":"object","properties":{"en":{"type":"string","nullable":true},"zh":{"type":"string","nullable":true}}}}},"required":["requireReview","allowEpisodeOverlap","taskList"]}]}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","RESOURCE_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","LAST_OWNER_PROTECTION","PIPELINE_BINDING_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","WORKFLOW_DEFINITION_CODE_CONFLICT"]}}}]}}}},"412":{"description":"If-Match did not match the current resource. No partial write.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}},"428":{"description":"PRECONDITION_REQUIRED\n\nPRECONDITION_REQUIRED"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Replace the project annotation schema, requireReview, and overlap flag","tags":["annotation-schema","public-docs:annotation-schema"],"x-embodiflow-permission":{"point":"project:write","projectScoped":true},"security":[{"pat":[]}]}},"/platform-notices":{"get":{"description":"Authenticated, tenant-scoped. Returns resolved booleans and visible notices only — no targeting rules, allowlists, percentages, or config history.","operationId":"platformNotices.get","parameters":[],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TenantPlatformNoticesEnvelopeSwaggerDto"}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Get resolved flags and active notices for the current tenant","tags":["platform-notices","public-docs:platform-notices"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}]}},"/notifications":{"get":{"operationId":"notifications.list","parameters":[{"name":"unreadOnly","required":false,"in":"query","schema":{"type":"boolean"}},{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/UserNotificationItemDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."},"meta":{"$ref":"#/components/schemas/UserNotificationListMetaDto","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["notifications","public-docs:notifications"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List notifications"}},"/notifications/unread-count":{"get":{"operationId":"notifications.unreadCount.get","parameters":[],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserNotificationUnreadCountEnvelopeDto"}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["notifications","public-docs:notifications"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"List unread count for a notification"}},"/notifications/read-receipts":{"post":{"operationId":"notifications.readReceipts.create","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserNotificationMarkAllReadEnvelopeDto"}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["notifications","public-docs:notifications"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a read receipt"}},"/notifications/{id}/read-receipts":{"post":{"operationId":"notifications.id.readReceipts.create","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserNotificationItemEnvelopeDto"}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"404":{"description":"Not found. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["NOT_FOUND","USER_NOTIFICATION_NOT_FOUND"]}}}]}}}},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"tags":["notifications","public-docs:notifications"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}],"summary":"Create a read receipt"}},"/me/notification-preferences":{"get":{"operationId":"me.notificationPreferences.get","parameters":[],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotificationPreferencesEnvelopeDto"}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Get the current user notification channel preferences for this team","tags":["me-notification-preferences","public-docs:me-notification-preferences"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[{"pat":[]}]},"put":{"operationId":"me.notificationPreferences.replace","parameters":[{"name":"Idempotency-Key","in":"header","description":"Optional idempotency key, at most 255 characters (UUIDv4 recommended). A repeated key returns the first response byte-for-byte, including a 5xx. The same key with a different body, or a second in-flight request, returns 409 IDEMPOTENCY_CONFLICT. Keys are unique per tenant and retained for 24 hours.","required":false,"schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReplaceNotificationPreferencesBodyDto"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotificationPreferencesEnvelopeDto"}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"409":{"description":"Conflict. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["IDEMPOTENCY_CONFLICT"]}}}]}}}},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Replace the current user notification channel preferences for this team","tags":["me-notification-preferences","public-docs:me-notification-preferences"],"x-embodiflow-permission":{"point":null,"projectScoped":false},"security":[{"pat":[]}]}},"/activity":{"get":{"operationId":"activity.list","parameters":[{"name":"pageSize","required":false,"in":"query","description":"Page size (default 25, maximum 100). Over-maximum is refused.","schema":{"minimum":1,"maximum":100,"default":25,"type":"number"}},{"name":"pageToken","required":false,"in":"query","description":"Opaque page token from the previous response.","schema":{"type":"string"}},{"name":"state","required":false,"in":"query","schema":{"type":"string","enum":["running","recent"]}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ActivityItemSwaggerDto"}},"nextPageToken":{"type":"string","description":"Opaque AIP-158 page token. Omitted when the collection is exhausted."}},"required":["data"]}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"List the current user activity tray for this team","tags":["activity","public-docs:activity"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}]}},"/search":{"get":{"operationId":"search.get","parameters":[{"name":"q","required":true,"in":"query","schema":{"minLength":1,"maxLength":100,"type":"string"}},{"name":"types","required":false,"in":"query","description":"Comma-separated result types","schema":{"type":"array","items":{"type":"string"},"enum":["project","recording","version","episode","model","deployment","collection_order","algorithm","workflow"]}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchResultEnvelopeDto"}}}},"400":{"description":"Bad request. Enumerated catalog codes for this operation.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["BAD_REQUEST","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","TENANT_CONTEXT_MISMATCH","TENANT_REQUIRED","VALIDATION_ERROR"]}}}]}}}},"401":{"$ref":"#/components/responses/AuthUnauthorized"},"403":{"$ref":"#/components/responses/AuthzForbidden"},"429":{"$ref":"#/components/responses/AuthRateLimited"}},"summary":"Search this team for projects, recordings, versions, and commands","tags":["search","public-docs:search"],"x-embodiflow-permission":{"point":"tenant:read","projectScoped":false},"security":[{"pat":[]}]}}},"info":{"title":"Embodiflow Public API (docs export)","description":"Public REST API for EmbodiFlow, filtered for the docs site.","version":"1.0","contact":{}},"tags":[],"servers":[{"url":"https://api.embodiflow.com/v1","description":"Production"},{"url":"https://api.embodiflow.dev/v1","description":"Development"}],"components":{"securitySchemes":{"pat":{"scheme":"bearer","bearerFormat":"PAT","type":"http"},"cookie":{"type":"apiKey","in":"cookie","name":"embodiflow_session"}},"schemas":{"AcceptTenantInvitationBodyDto":{"type":"object","properties":{"token":{"type":"string"},"password":{"type":"string"},"displayName":{"type":"string"}},"required":["token"]},"AccessReviewPatHolderDto":{"type":"object","properties":{"membershipId":{"type":"string"},"user":{"$ref":"#/components/schemas/AccessReviewUserRefDto"},"activePatCount":{"type":"number"}},"required":["membershipId","user","activePatCount"]},"AccessReviewPermissionChangeDto":{"type":"object","properties":{"auditLogId":{"type":"string"},"action":{"type":"string"},"occurredAt":{"type":"string"},"membershipId":{"type":"string","nullable":true},"userId":{"type":"string","nullable":true},"resourceType":{"type":"string","nullable":true},"resourceId":{"type":"string","nullable":true},"actorType":{"type":"string","nullable":true},"actorId":{"type":"string","nullable":true},"actor":{"$ref":"#/components/schemas/AccessReviewUserRefDto","nullable":true},"actorLabel":{"type":"string","nullable":true}},"required":["auditLogId","action","occurredAt","membershipId","userId","resourceType","resourceId","actorType","actorId","actor","actorLabel"]},"AccessReviewProjectMembershipItemDto":{"type":"object","properties":{"projectMembershipId":{"type":"string"},"projectId":{"type":"string"},"projectName":{"type":"string"},"membershipId":{"type":"string"},"user":{"$ref":"#/components/schemas/AccessReviewUserRefDto"},"role":{"type":"string"},"status":{"type":"string"},"expiresAt":{"type":"string","nullable":true}},"required":["projectMembershipId","projectId","projectName","membershipId","user","role","status","expiresAt"]},"AccessReviewQueryDto":{"type":"object","properties":{"expiringWithinDays":{"type":"integer","nullable":true},"permissionChangeLimit":{"type":"integer","nullable":true}}},"AccessReviewTenantMembershipItemDto":{"type":"object","properties":{"membershipId":{"type":"string"},"user":{"$ref":"#/components/schemas/AccessReviewUserRefDto"},"role":{"type":"string"},"status":{"type":"string"},"expiresAt":{"type":"string","nullable":true}},"required":["membershipId","user","role","status","expiresAt"]},"AccessReviewUserRefDto":{"type":"object","properties":{"userId":{"type":"string"},"email":{"type":"string","nullable":true},"displayName":{"type":"string","nullable":true},"status":{"type":"string"}},"required":["userId","email","displayName","status"]},"ActivityItemDto":{"type":"object","properties":{"id":{"type":"string"},"type":{"type":"string","enum":["export","workflow_run","training","upload_session","recording_processing"]},"projectId":{"type":"string","nullable":true},"object":{"$ref":"#/components/schemas/ActivityObjectDto"},"state":{"type":"string","enum":["queued","running","succeeded","failed","partially_succeeded","canceled"]},"progress":{"type":"number","nullable":true},"stageKey":{"type":"string"},"etaSeconds":{"type":"number","nullable":true},"startedAt":{"type":"string"},"finishedAt":{"type":"string","nullable":true},"failure":{"$ref":"#/components/schemas/FailureReasonDto","nullable":true}},"required":["id","type","projectId","object","state","progress","stageKey","etaSeconds","startedAt","finishedAt","failure"]},"ActivityItemSwaggerDto":{"type":"object","properties":{"id":{"type":"string"},"type":{"enum":["upload_session","workflow_run","recording_processing","export","training"],"type":"string"},"projectId":{"type":"string","nullable":true,"format":"uuid"},"object":{"type":"object"},"state":{"enum":["queued","running","succeeded","partially_succeeded","failed","canceled"],"type":"string"},"progress":{"type":"number","nullable":true},"stageKey":{"type":"string"},"etaSeconds":{"type":"number","nullable":true},"startedAt":{"type":"string"},"finishedAt":{"type":"string","nullable":true},"failure":{"nullable":true,"type":"object","allOf":[{"$ref":"#/components/schemas/FailureReasonSwaggerDto"}]}},"required":["id","type","projectId","object","state","progress","stageKey","etaSeconds","startedAt","finishedAt","failure"]},"ActivityObjectDto":{"type":"object","properties":{"type":{"type":"string","enum":["export","project","workflow_run","recording","training_job"]},"id":{"type":"string"},"name":{"type":"string"},"url":{"type":"string"}},"required":["type","id","name","url"]},"AdminCreateUserBodyDto":{"type":"object","properties":{"mode":{"enum":["invite","create"],"type":"string"},"email":{"type":"string"},"role":{"enum":["owner","admin","researcher","billing_admin","viewer"],"type":"string"},"displayName":{"type":"string","nullable":true},"initialPassword":{"type":"string","nullable":true}},"required":["mode","email","role"]},"AdminCreateUserResponseDto":{"type":"object","properties":{"outcome":{"type":"string","enum":["created","invited","invitation_reused","idempotent_replay"]},"mode":{"type":"string","enum":["invite","create"]},"user":{"$ref":"#/components/schemas/UserSummaryDto"},"membership":{"$ref":"#/components/schemas/CurrentTenantMembershipDto"},"invitation":{"$ref":"#/components/schemas/TenantInvitationSummaryDto"}},"required":["outcome","mode"]},"AdminPasswordResetRequestedDto":{"type":"object","properties":{"message":{"type":"string"},"debugOtp":{"type":"string"}},"required":["message"]},"AlgorithmBuildDetailDto":{"type":"object","properties":{"sourceRef":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","enum":["archive"]},"objectKey":{"type":"string"}},"required":["type","objectKey"]},{"type":"object","properties":{"type":{"type":"string","enum":["context"]},"objectKey":{"type":"string"}},"required":["type","objectKey"]},{"type":"object","properties":{"type":{"type":"string","enum":["git"]},"url":{"type":"string"},"ref":{"type":"string"},"secretName":{"type":"string"}},"required":["type","url","ref"]},{"type":"object","properties":{"type":{"type":"string","enum":["generated"]},"objectKey":{"type":"string"},"algorithmRevisionId":{"type":"string"}},"required":["type","objectKey","algorithmRevisionId"]}]},"upload":{"type":"object","properties":{"url":{"type":"string"},"objectKey":{"type":"string"},"expiresAt":{"type":"string"}},"required":["url","objectKey","expiresAt"]},"logs":{"$ref":"#/components/schemas/AlgorithmBuildLogsDto"},"logTail":{"type":"string"},"id":{"type":"string"},"algorithmDefinitionId":{"type":"string"},"version":{"type":"string","nullable":true},"kind":{"type":"string","enum":["cloud_build","archive_import"]},"state":{"type":"string","enum":["queued","running","succeeded","failed","cancelled"]},"imageDigest":{"type":"string","nullable":true},"logObjectKey":{"type":"string","nullable":true},"errorMessage":{"type":"string","nullable":true},"durationS":{"type":"number","nullable":true},"algorithmRevisionId":{"type":"string","nullable":true},"cacheKey":{"type":"string","nullable":true},"failureReason":{"type":"string","enum":["pip_resolution","timeout","submit_failed","build_failed"],"nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["sourceRef","id","algorithmDefinitionId","version","kind","state","imageDigest","logObjectKey","errorMessage","durationS","createdAt","updatedAt"]},"AlgorithmBuildLogsDto":{"type":"object","properties":{"url":{"type":"string"},"expiresAt":{"type":"string"}},"required":["url","expiresAt"]},"AlgorithmBuildStateReportBodyDto":{"type":"object","properties":{"tenantId":{"type":"string","format":"uuid"},"state":{"enum":["queued","running","succeeded","failed","cancelled"],"type":"string"},"imageDigest":{"type":"string","nullable":true},"repository":{"type":"string","nullable":true},"reason":{"enum":["pip_resolution","timeout","submit_failed","build_failed"],"type":"string","nullable":true},"errorMessage":{"type":"string","nullable":true},"durationS":{"type":"number","nullable":true},"logObjectKey":{"type":"string","nullable":true},"logTail":{"type":"string","nullable":true}},"required":["tenantId","state"]},"AlgorithmBuildSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"algorithmDefinitionId":{"type":"string"},"version":{"type":"string","nullable":true},"kind":{"type":"string","enum":["cloud_build","archive_import"]},"state":{"type":"string","enum":["queued","running","succeeded","failed","cancelled"]},"imageDigest":{"type":"string","nullable":true},"logObjectKey":{"type":"string","nullable":true},"errorMessage":{"type":"string","nullable":true},"durationS":{"type":"number","nullable":true},"algorithmRevisionId":{"type":"string","nullable":true},"cacheKey":{"type":"string","nullable":true},"failureReason":{"type":"string","enum":["pip_resolution","timeout","submit_failed","build_failed"],"nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","algorithmDefinitionId","version","kind","state","imageDigest","logObjectKey","errorMessage","durationS","createdAt","updatedAt"]},"AlgorithmDefinitionSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string","nullable":true},"projectId":{"type":"string","nullable":true},"code":{"type":"string"},"name":{"type":"string"},"description":{"type":"string","nullable":true},"status":{"type":"string"},"ownerType":{"type":"string"},"isPublic":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"systemSlug":{"type":"string","nullable":true},"category":{"type":"string","nullable":true},"tags":{"type":"array","items":{"type":"string"}},"thumbnailUrl":{"type":"string","nullable":true},"documentationUrl":{"type":"string","nullable":true},"latestRevisionId":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","tenantId","projectId","code","name","description","status","ownerType","isPublic","systemSlug","category","tags","thumbnailUrl","documentationUrl","latestRevisionId","createdAt","updatedAt"]},"AlgorithmLibraryItemDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string","nullable":true},"code":{"type":"string"},"name":{"type":"string"},"description":{"type":"string","nullable":true},"ownerType":{"type":"string"},"systemSlug":{"type":"string","nullable":true},"latestVersion":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","tenantId","code","name","description","ownerType","systemSlug","latestVersion","createdAt","updatedAt"]},"AlgorithmRevisionBuildDto":{"type":"object","properties":{"buildId":{"type":"string"},"state":{"type":"string","enum":["queued","running","succeeded","failed","cancelled"]},"reason":{"type":"string","enum":["pip_resolution","timeout","submit_failed","build_failed"]},"startedAt":{"type":"string"},"finishedAt":{"type":"string"}},"required":["buildId","state"]},"AlgorithmRevisionBuildResultDto":{"type":"object","properties":{"revisionId":{"type":"string"},"version":{"type":"string"},"imageDigest":{"type":"string","nullable":true},"build":{"$ref":"#/components/schemas/AlgorithmRevisionBuildDto","nullable":true}},"required":["revisionId","version","imageDigest","build"]},"AlgorithmRevisionSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string","nullable":true},"projectId":{"type":"string","nullable":true},"algorithmDefinitionId":{"type":"string"},"revision":{"type":"number"},"imageRef":{"type":"string"},"imageDigest":{"type":"string","nullable":true},"requestedEgressDomains":{"type":"array","items":{"type":"string"}},"approvedEgressDomains":{"type":"array","items":{"type":"string"}},"paramSchema":{"$ref":"#/components/schemas/Record","nullable":true},"outputSchema":{"$ref":"#/components/schemas/Record","nullable":true},"resourceDefaults":{"$ref":"#/components/schemas/Record","nullable":true},"profile":{"type":"string"},"version":{"type":"string"},"acceptedInputFormats":{"type":"array","items":{"type":"string"}},"reviewStatus":{"type":"string"},"reviewNotes":{"type":"string","nullable":true},"revokedAt":{"type":"string","nullable":true},"revokeReason":{"type":"string","nullable":true},"publishedAt":{"type":"string","nullable":true},"registeredAt":{"type":"string","nullable":true},"createdAt":{"type":"string"}},"required":["id","tenantId","projectId","algorithmDefinitionId","revision","imageRef","imageDigest","requestedEgressDomains","approvedEgressDomains","paramSchema","outputSchema","resourceDefaults","profile","version","acceptedInputFormats","reviewStatus","reviewNotes","revokedAt","revokeReason","publishedAt","registeredAt","createdAt"]},"AlgorithmSampleRunDto":{"type":"object","properties":{"id":{"type":"string"},"state":{"type":"string","enum":["queued","running","succeeded","failed","timed_out"]},"recordingIds":{"type":"array","items":{"type":"string"}},"inputKind":{"type":"string","enum":["metadata_only","recording_files"]},"inputBytes":{"type":"number","nullable":true},"deadlineSeconds":{"type":"number"},"createdAt":{"type":"string"},"startedAt":{"type":"string","nullable":true},"finishedAt":{"type":"string","nullable":true},"result":{"$ref":"#/components/schemas/AlgorithmSampleRunResultDto","nullable":true}},"required":["id","state","recordingIds","inputKind","inputBytes","deadlineSeconds","createdAt","startedAt","finishedAt","result"]},"AlgorithmSampleRunOutputDto":{"type":"object","properties":{"name":{"type":"string"},"type":{"type":"string"},"summary":{"type":"string"}},"required":["name","type","summary"]},"AlgorithmSampleRunReportBodyDto":{"type":"object","properties":{"tenantId":{"type":"string","format":"uuid"},"state":{"enum":["succeeded","failed","timed_out"],"type":"string"},"durationMs":{"type":"number"},"logs":{"type":"string"},"logsTruncated":{"type":"boolean"},"outputs":{"type":"array","items":{"type":"string"}},"error":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}},"required":["code","message"],"nullable":true}},"required":["tenantId","state","durationMs","logs","logsTruncated","outputs"]},"AlgorithmSampleRunResultDto":{"type":"object","properties":{"state":{"type":"string","enum":["succeeded","failed","timed_out"]},"durationMs":{"type":"number"},"logs":{"type":"string"},"logsTruncated":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"outputs":{"type":"array","items":{"$ref":"#/components/schemas/AlgorithmSampleRunOutputDto"}},"error":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}},"required":["code","message"],"nullable":true}},"required":["state","durationMs","logs","logsTruncated","outputs","error"]},"AlgorithmSampleRunStageManifestBodyDto":{"type":"object","properties":{"tenantId":{"type":"string","format":"uuid"},"stageToken":{"type":"string"}},"required":["tenantId","stageToken"]},"AlgorithmUsedByDto":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/AlgorithmUsedByItemDto"}}},"required":["items"]},"AlgorithmUsedByItemDto":{"type":"object","properties":{"projectId":{"type":"string","nullable":true},"workflowDefinitionId":{"type":"string"},"pinnedVersion":{"type":"string","nullable":true},"newestCompatibleVersion":{"type":"string","nullable":true}},"required":["projectId","workflowDefinitionId","pinnedVersion","newestCompatibleVersion"]},"AlgorithmVersionDetailDto":{"type":"object","properties":{"package":{"$ref":"#/components/schemas/Record"},"id":{"type":"string"},"algorithmId":{"type":"string"},"version":{"type":"string"},"revision":{"type":"number"},"imageRef":{"type":"string"},"imageDigest":{"type":"string","nullable":true},"interfaceHash":{"type":"string"},"bumpWarning":{"$ref":"#/components/schemas/Record","nullable":true},"imageCommand":{"type":"array","items":{"type":"string"}},"deprecatedAt":{"type":"string","nullable":true},"disabledAt":{"type":"string","nullable":true},"createdAt":{"type":"string"},"build":{"$ref":"#/components/schemas/AlgorithmRevisionBuildDto","nullable":true}},"required":["package","id","algorithmId","version","revision","imageRef","imageDigest","interfaceHash","bumpWarning","imageCommand","deprecatedAt","disabledAt","createdAt"]},"AlgorithmVersionSuggestionDto":{"type":"object","properties":{"latestVersion":{"type":"string","nullable":true},"unchanged":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"suggestedBump":{"type":"string","enum":["MAJOR","MINOR","PATCH"],"nullable":true},"suggestedVersion":{"type":"string","nullable":true},"changes":{"type":"array","items":{"type":"object","properties":{"path":{"type":"string"},"bump":{"type":"string","enum":["MAJOR","MINOR","PATCH"]},"message":{"type":"string"}},"required":["path","bump","message"]}}},"required":["latestVersion","unchanged","suggestedBump","suggestedVersion","changes"]},"AlgorithmVersionSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"algorithmId":{"type":"string"},"version":{"type":"string"},"revision":{"type":"number"},"imageRef":{"type":"string"},"imageDigest":{"type":"string","nullable":true},"interfaceHash":{"type":"string"},"bumpWarning":{"$ref":"#/components/schemas/Record","nullable":true},"imageCommand":{"type":"array","items":{"type":"string"}},"deprecatedAt":{"type":"string","nullable":true},"disabledAt":{"type":"string","nullable":true},"createdAt":{"type":"string"},"build":{"$ref":"#/components/schemas/AlgorithmRevisionBuildDto","nullable":true}},"required":["id","algorithmId","version","revision","imageRef","imageDigest","interfaceHash","bumpWarning","imageCommand","deprecatedAt","disabledAt","createdAt"]},"AnnotationAttributeDto":{"type":"object","properties":{"key":{"type":"string"},"type":{"enum":["text","single_choice","number"],"type":"string"},"options":{"type":"array","items":{"type":"string"}}},"required":["key","type"]},"AnnotationJobDto":{"type":"object","properties":{"id":{"type":"string"},"projectId":{"type":"string"},"kind":{"type":"string","enum":["segmentation","labeling"]},"name":{"type":"string"},"instructionsMd":{"type":"string","nullable":true},"exampleEpisodeId":{"type":"string","nullable":true},"fieldsJson":{"type":"array","items":{"type":"string"}},"reviewerMembershipId":{"type":"string","nullable":true},"dueAt":{"type":"string","nullable":true},"status":{"type":"string","enum":["cancelled","in_review","in_progress","open","done"]},"distribution":{"type":"string","enum":["even","queue"]},"createdBy":{"type":"string","nullable":true},"assigneeMembershipIds":{"type":"array","items":{"type":"string"}},"progress":{"$ref":"#/components/schemas/AnnotationJobProgressDto"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"rowVersion":{"type":"number"}},"required":["id","projectId","kind","name","instructionsMd","exampleEpisodeId","fieldsJson","reviewerMembershipId","dueAt","status","distribution","createdBy","assigneeMembershipIds","progress","createdAt","updatedAt","rowVersion"]},"AnnotationJobInsightsDto":{"type":"object","properties":{"jobId":{"type":"string"},"labelers":{"type":"array","items":{"$ref":"#/components/schemas/AnnotationJobLabelerInsightDto"}}},"required":["jobId","labelers"]},"AnnotationJobItemDetailDto":{"type":"object","properties":{"item":{"$ref":"#/components/schemas/AnnotationJobItemDto"},"episode":{"type":"object","properties":{"id":{"type":"string"},"recordingId":{"type":"string"}},"required":["id","recordingId"],"nullable":true},"recording":{"type":"object","properties":{"id":{"type":"string"}},"required":["id"],"nullable":true},"studio":{"$ref":"#/components/schemas/AnnotationJobItemStudioDto"}},"required":["item","episode","recording","studio"]},"AnnotationJobItemDto":{"type":"object","properties":{"id":{"type":"string"},"jobId":{"type":"string"},"recordingId":{"type":"string","nullable":true},"episodeId":{"type":"string","nullable":true},"assigneeMembershipId":{"type":"string","nullable":true},"state":{"type":"string","enum":["approved","labeled","rejected","todo"]},"lastRevisionId":{"type":"string","nullable":true},"comment":{"type":"string","nullable":true},"startedAt":{"type":"string","nullable":true},"completedAt":{"type":"string","nullable":true},"completion":{"type":"object","properties":{"contractVersion":{"type":"string","enum":["embodiflow-annotation-completion/v1"]},"taskPositive":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"noEligibleTaskReason":{"type":"string","nullable":true},"membership":{"type":"array","items":{"type":"object","properties":{"episodeId":{"type":"string"},"revisionId":{"type":"string"}},"required":["episodeId","revisionId"]}},"processingResultId":{"type":"string","nullable":true},"profileIdentity":{"type":"string","nullable":true},"profileSource":{"type":"string","enum":["unknown","recording","processing_result"]},"coverage":{"type":"array","items":{"type":"object","properties":{"episodeId":{"type":"string"},"revisionId":{"type":"string"},"startNs":{"type":"number"},"endNs":{"type":"number"}},"required":["episodeId","revisionId","startNs","endNs"]}},"exclusions":{"type":"array","items":{"type":"object","properties":{"episodeId":{"type":"string"},"revisionId":{"type":"string"},"startNs":{"type":"number"},"endNs":{"type":"number"},"reason":{"type":"string"}},"required":["episodeId","revisionId","startNs","endNs","reason"]}},"human":{"type":"object","properties":{"actorUserId":{"type":"string"},"membershipId":{"type":"string","nullable":true},"completedAt":{"type":"string"}},"required":["actorUserId","membershipId","completedAt"]},"requirementRevision":{"type":"string"}},"required":["contractVersion","taskPositive","noEligibleTaskReason","membership","processingResultId","profileIdentity","profileSource","coverage","exclusions","human","requirementRevision"],"nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"rowVersion":{"type":"number"}},"required":["id","jobId","recordingId","episodeId","assigneeMembershipId","state","lastRevisionId","comment","startedAt","completedAt","completion","createdAt","updatedAt","rowVersion"]},"AnnotationJobItemStudioDto":{"type":"object","properties":{"processingResultId":{"type":"string","nullable":true},"startNs":{"type":"number","nullable":true},"endNs":{"type":"number","nullable":true}},"required":["processingResultId","startNs","endNs"]},"AnnotationJobLabelerInsightDto":{"type":"object","properties":{"membershipId":{"type":"string"},"itemsDone":{"type":"number"},"recordedMinutesPerHour":{"type":"number","nullable":true},"episodesPerHour":{"type":"number","nullable":true},"medianSecondsPerItem":{"type":"number","nullable":true},"rejectionRate":{"type":"number","nullable":true},"boundaryAgreement":{"type":"number","nullable":true}},"required":["membershipId","itemsDone","recordedMinutesPerHour","episodesPerHour","medianSecondsPerItem","rejectionRate","boundaryAgreement"]},"AnnotationJobProgressDto":{"type":"object","properties":{"total":{"type":"number"},"todo":{"type":"number"},"labeled":{"type":"number"},"approved":{"type":"number"},"rejected":{"type":"number"}},"required":["total","todo","labeled","approved","rejected"]},"AnnotationSchemaFieldsDto":{"type":"object","properties":{"task":{"$ref":"#/components/schemas/FieldEnabledDto"},"outcome":{"$ref":"#/components/schemas/FieldEnabledDto"},"subtasks":{"$ref":"#/components/schemas/FieldEnabledDto"},"subtaskOutcome":{"$ref":"#/components/schemas/FieldEnabledDto"},"relevance":{"$ref":"#/components/schemas/FieldEnabledDto"},"keyframeBoxes":{"$ref":"#/components/schemas/KeyframeBoxesDto"}},"required":["task","outcome","subtasks","subtaskOutcome","relevance","keyframeBoxes"]},"ApiKeyOwnerIdentityDto":{"type":"object","properties":{"userId":{"type":"string"},"email":{"type":"string"},"displayName":{"type":"string","nullable":true}},"required":["userId","email","displayName"]},"ApiKeySummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"membershipId":{"type":"string"},"name":{"type":"string"},"tokenPrefix":{"type":"string","nullable":true},"tokenLastFour":{"type":"string","nullable":true},"status":{"type":"string"},"expiresAt":{"type":"string"},"lastUsedAt":{"type":"string","nullable":true},"revokedAt":{"type":"string","nullable":true},"createdAt":{"type":"string"},"permissions":{"type":"array","items":{"type":"string"},"enum":["project:read","project:write","project:manage","member:read","member:manage","dataset:read","dataset:write","annotation:read","annotation:write","annotation:review","annotation-job:manage","upload:read","upload:write","collection:manage","collection:deliver","workflow:read","workflow:run","workflow:manage","approval:read","approval:decide","algorithm:read","algorithm:write","export:read","export:write","training:read","training:write","quality:read","quality:write","recipe:read","recipe:manage","skill-taxonomy:manage","task:read","task:write","deployment:read","deployment:write","model-image:read","model-image:write","model-version:read","model-version:write","inference-deployment:read","inference-deployment:write","analytics:read","vision:annotate","tenant:read","tenant:manage","billing:read","billing:write","apikey:read","apikey:write","apikey:manage","audit:read"]},"scopeAllProjects":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"projectIds":{"type":"array","items":{"type":"string"}},"owner":{"$ref":"#/components/schemas/ApiKeyOwnerIdentityDto"}},"required":["id","tenantId","membershipId","name","tokenPrefix","tokenLastFour","status","expiresAt","lastUsedAt","revokedAt","createdAt","permissions","scopeAllProjects","projectIds","owner"]},"ApproveCliLoginBodyDto":{"type":"object","properties":{"browserSecret":{"type":"string","minLength":16},"membershipId":{"type":"string","format":"uuid"}},"required":["browserSecret","membershipId"]},"ArtifactSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string","nullable":true},"artifactType":{"type":"string"},"ownerType":{"type":"string"},"ownerId":{"type":"string"},"storageObjectId":{"type":"string","nullable":true},"manifestJson":{"$ref":"#/components/schemas/Record","nullable":true},"createdAt":{"type":"string"}},"required":["id","tenantId","projectId","artifactType","ownerType","ownerId","storageObjectId","manifestJson","createdAt"]},"AssetCheckResultDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string","nullable":true},"assetType":{"type":"string"},"assetId":{"type":"string"},"datasetVersionId":{"type":"string","nullable":true},"checkCode":{"type":"string"},"targetScope":{"type":"string"},"targetId":{"type":"string","nullable":true},"status":{"type":"string","enum":["failed","warning","passed","skipped"]},"severity":{"type":"string","enum":["info","warn","error"]},"blocking":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"metadataJson":{"$ref":"#/components/schemas/Record","nullable":true},"contractRevisionId":{"type":"string","nullable":true},"createdAt":{"type":"string"}},"required":["id","tenantId","projectId","assetType","assetId","datasetVersionId","checkCode","targetScope","targetId","status","severity","blocking","metadataJson","contractRevisionId","createdAt"]},"AssetCheckSummaryDto":{"type":"object","properties":{"overallStatus":{"type":"string","enum":["failed","warning","passed","skipped"]},"blockingFailed":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"passedCount":{"type":"number"},"warningCount":{"type":"number"},"failedCount":{"type":"number"},"skippedCount":{"type":"number"},"latestCheckAt":{"type":"string","nullable":true},"schemaDrift":{"$ref":"#/components/schemas/SchemaDriftSummaryDto","nullable":true}},"required":["overallStatus","blockingFailed","passedCount","warningCount","failedCount","skippedCount","latestCheckAt"]},"AssetEventSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"eventType":{"type":"string","enum":["materialized","observed","check-evaluated","freshness-evaluated","backfill-requested"]},"createdAt":{"type":"string"},"payloadJson":{"$ref":"#/components/schemas/Record","nullable":true}},"required":["id","eventType","createdAt"]},"AssetHealthExplainabilityDto":{"type":"object","properties":{"assetType":{"type":"string"},"assetId":{"type":"string"},"healthStatus":{"type":"string","enum":["failed","warning","unknown","healthy","stale"]},"healthSummary":{"type":"string","nullable":true},"qualityStatus":{"type":"string","nullable":true},"handoffImpact":{"$ref":"#/components/schemas/ExplainabilityHandoffImpactDto"},"blockingChecks":{"type":"array","items":{"$ref":"#/components/schemas/ExplainabilityBlockingCheckDto"}},"evidenceWorkflowRunId":{"type":"string","nullable":true},"failingNodes":{"type":"array","items":{"$ref":"#/components/schemas/ExplainabilityFailingNodeDto"}},"nextActions":{"type":"array","items":{"$ref":"#/components/schemas/ExplainabilityNextActionDto"}},"locators":{"type":"array","items":{"$ref":"#/components/schemas/ExplainabilityLocatorDto"}},"evidenceLinks":{"$ref":"#/components/schemas/ExplainabilityEvidenceLinksDto"},"relatedBackfill":{"$ref":"#/components/schemas/ExplainabilityBackfillSnapshotDto","nullable":true}},"required":["assetType","assetId","healthStatus","healthSummary","qualityStatus","handoffImpact","blockingChecks","evidenceWorkflowRunId","failingNodes","nextActions","locators","evidenceLinks","relatedBackfill"]},"AssetHealthSummaryDto":{"type":"object","properties":{"healthStatus":{"type":"string","enum":["failed","warning","unknown","healthy","stale"]},"lastEventAt":{"type":"string","nullable":true},"summary":{"type":"string","nullable":true},"qualityStatus":{"type":"string","nullable":true}},"required":["healthStatus","lastEventAt","summary"]},"AssetObservationSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"observationKind":{"type":"string","enum":["external-source-hash","storage-reconciliation","processor-registry-smoke","download-broker-capability","freshness-probe"]},"sourceSystem":{"type":"string"},"dataVersion":{"type":"string"},"observedAt":{"type":"string"},"hash":{"type":"string","nullable":true},"reconciliationStatus":{"type":"string","enum":["matched","missing","drift"],"nullable":true},"capabilitySummary":{"$ref":"#/components/schemas/Record","nullable":true}},"required":["id","observationKind","sourceSystem","dataVersion","observedAt"]},"AssignRecordingCaptureSessionBodyDto":{"type":"object","properties":{"captureSessionId":{"type":"string","nullable":true,"format":"uuid"},"sessionRole":{"nullable":true,"enum":["mapping","calibration","gripper_calibration","demo","other",null],"type":"string"}},"required":["captureSessionId","sessionRole"]},"AuditLogMetadataDto":{"type":"object","properties":{"reason":{"type":"string"},"previousStatus":{"type":"string"},"nextStatus":{"type":"string"},"projectId":{"type":"string"}}},"AuthLoginOptionsDto":{"type":"object","properties":{"oauthProviders":{"type":"array","items":{"type":"string"},"enum":["github","google"]}},"required":["oauthProviders"]},"AuthMeDataSwaggerDto":{"type":"object","properties":{"user":{"$ref":"#/components/schemas/AuthMeUserSwaggerDto"},"memberships":{"type":"array","items":{"$ref":"#/components/schemas/AuthMeMembershipSwaggerDto"}},"currentMembershipId":{"type":"string","format":"uuid","nullable":true},"csrfToken":{"type":"string"},"mustRotatePassword":{"type":"boolean"},"mfaEnrollmentRequired":{"type":"boolean"},"mfaEnrollmentGraceExpiresAt":{"type":"string","nullable":true}},"required":["user","memberships","currentMembershipId"]},"AuthMeMembershipSwaggerDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"tenantId":{"type":"string","format":"uuid"},"tenant":{"$ref":"#/components/schemas/AuthMeTenantSwaggerDto"},"role":{"type":"string"},"status":{"type":"string"},"joinedAt":{"type":"string"}},"required":["id","tenantId","tenant","role","status","joinedAt"]},"AuthMeResponseDto":{"type":"object","properties":{"user":{"$ref":"#/components/schemas/UserSummaryDto"},"memberships":{"type":"array","items":{"$ref":"#/components/schemas/MembershipSummaryDto"}},"currentMembershipId":{"type":"string","nullable":true},"csrfToken":{"type":"string"},"mustRotatePassword":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"mfaEnrollmentRequired":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"mfaEnrollmentGraceExpiresAt":{"type":"string","nullable":true},"effectivePasswordPolicy":{"oneOf":[{"allOf":[{"type":"object","properties":{"minLength":{"type":"number","enum":[8]},"maxLength":{"type":"number","enum":[128]},"requireCharacterClasses":{"type":"boolean","enum":[false]},"allowPasswordManagerPaste":{"type":"boolean","enum":[true]},"periodicRotation":{"type":"boolean","enum":[false]}},"required":["minLength","maxLength","requireCharacterClasses","allowPasswordManagerPaste","periodicRotation"]},{"type":"object","properties":{"profile":{"type":"string","enum":["default","strong"]},"breachedPasswordCheckEnabled":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["profile","breachedPasswordCheckEnabled"]}]},{"allOf":[{"type":"object","properties":{"minLength":{"type":"number","enum":[12]},"maxLength":{"type":"number","enum":[128]},"requireCharacterClasses":{"type":"boolean","enum":[false]},"allowPasswordManagerPaste":{"type":"boolean","enum":[true]},"periodicRotation":{"type":"boolean","enum":[false]}},"required":["minLength","maxLength","requireCharacterClasses","allowPasswordManagerPaste","periodicRotation"]},{"type":"object","properties":{"profile":{"type":"string","enum":["default","strong"]},"breachedPasswordCheckEnabled":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["profile","breachedPasswordCheckEnabled"]}]}]},"tenantPermissions":{"type":"array","items":{"type":"string"},"enum":["project:read","project:write","project:manage","member:read","member:manage","dataset:read","dataset:write","annotation:read","annotation:write","annotation:review","annotation-job:manage","upload:read","upload:write","collection:manage","collection:deliver","workflow:read","workflow:run","workflow:manage","approval:read","approval:decide","algorithm:read","algorithm:write","export:read","export:write","training:read","training:write","quality:read","quality:write","recipe:read","recipe:manage","skill-taxonomy:manage","task:read","task:write","deployment:read","deployment:write","model-image:read","model-image:write","model-version:read","model-version:write","inference-deployment:read","inference-deployment:write","analytics:read","vision:annotate","tenant:read","tenant:manage","billing:read","billing:write","apikey:read","apikey:write","apikey:manage","audit:read"]}},"required":["user","memberships","currentMembershipId"]},"AuthMeTenantSwaggerDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"slug":{"type":"string"},"name":{"type":"string"},"status":{"type":"string"},"storageKey":{"type":"string"}},"required":["id","slug","name","status","storageKey"]},"AuthMeUserSwaggerDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"email":{"type":"string","nullable":true},"displayName":{"type":"string","nullable":true},"avatarUrl":{"type":"string","nullable":true},"hasPassword":{"type":"boolean"},"status":{"type":"string"},"lastLoginAt":{"type":"string","nullable":true},"emailVerifiedAt":{"type":"string","nullable":true}},"required":["id","email","displayName","avatarUrl","hasPassword","status","lastLoginAt","emailVerifiedAt"]},"AuthSessionEnvelopeSwaggerDto":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/AuthMeDataSwaggerDto"},"meta":{"$ref":"#/components/schemas/RequestMetaSwaggerDto"}},"required":["data","meta"]},"BackfillRequestDto":{"type":"object","properties":{"stepIds":{"type":"array","items":{"type":"string"}},"recordingIds":{"type":"array","items":{"type":"string","format":"uuid"}},"allOutdated":{"type":"boolean"},"dryRun":{"type":"boolean"}},"required":["stepIds"]},"CancelAnnotationJobBodyDto":{"type":"object","properties":{"unused":{"type":"string","nullable":true,"description":"Unused. Send an empty JSON object."}}},"CancelModelTrainingBodyDto":{"type":"object","properties":{"reason":{"type":"string","nullable":true,"maxLength":1024}}},"CancelTrainingJobBodyDto":{"type":"object","properties":{"reason":{"type":"string","nullable":true,"maxLength":1024}}},"CaptureLabelsDto":{"type":"object","properties":{"tags":{"type":"array","items":{"type":"string"}},"scene":{"type":"string","nullable":true},"taskDescription":{"type":"string","nullable":true}},"required":["tags","scene","taskDescription"]},"CaptureLabelsSchemaDto":{"type":"object","properties":{"tags":{"maxItems":32,"type":"array","items":{"type":"string"}},"scene":{"type":"string","nullable":true,"maxLength":128},"taskDescription":{"type":"string","nullable":true,"maxLength":1000}},"required":["tags","scene","taskDescription"]},"CaptureSessionDto":{"type":"object","properties":{"id":{"type":"string"},"projectId":{"type":"string"},"name":{"type":"string"},"createdByUserId":{"type":"string"},"createdAt":{"type":"string"}},"required":["id","projectId","name","createdByUserId","createdAt"]},"CaptureSessionEnvelopeDto":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CaptureSessionResponseDto"}},"required":["data"]},"CaptureSessionResponseDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"projectId":{"type":"string","format":"uuid"},"name":{"type":"string"},"createdByUserId":{"type":"string","format":"uuid"},"createdAt":{"type":"string","format":"date-time"}},"required":["id","projectId","name","createdByUserId","createdAt"]},"CatalogAssetArtifactSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"artifactType":{"type":"string"}},"required":["id","artifactType"]},"CatalogAssetCardDto":{"type":"object","properties":{"sourceType":{"type":"string","nullable":true},"qualityStatus":{"type":"string","nullable":true},"freshnessStatus":{"type":"string","enum":["unknown","stale","fresh"]},"lineageSummary":{"$ref":"#/components/schemas/CatalogAssetLineageSummaryDto","nullable":true},"ownerId":{"type":"string","nullable":true},"governanceTags":{"type":"array","items":{"$ref":"#/components/schemas/CatalogAssetGovernanceTagDto"}},"datasetId":{"type":"string","nullable":true},"updatedAt":{"type":"string","nullable":true},"assetType":{"type":"string","enum":["artifact","dataset-version","dataset-mixture"]},"assetId":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string","nullable":true},"assetKey":{"type":"string"},"displayName":{"type":"string"},"health":{"$ref":"#/components/schemas/AssetHealthSummaryDto"},"recentEvents":{"type":"array","items":{"$ref":"#/components/schemas/AssetEventSummaryDto"}}},"required":["assetType","assetId","tenantId","projectId","assetKey","displayName","health"]},"CatalogAssetChecksSummaryDto":{"type":"object","properties":{"qualityStatus":{"type":"string","nullable":true},"datasetId":{"type":"string","nullable":true},"datasetVersionId":{"type":"string","nullable":true}},"required":["qualityStatus"]},"CatalogAssetDetailDto":{"type":"object","properties":{"checksSummary":{"$ref":"#/components/schemas/CatalogAssetChecksSummaryDto","nullable":true},"recentWorkflowRuns":{"type":"array","items":{"$ref":"#/components/schemas/CatalogAssetWorkflowRunSummaryDto"}},"artifactLinks":{"type":"array","items":{"$ref":"#/components/schemas/CatalogAssetArtifactSummaryDto"}},"latestObservation":{"$ref":"#/components/schemas/AssetObservationSummaryDto","nullable":true},"nextActionHint":{"type":"string","nullable":true},"explainability":{"$ref":"#/components/schemas/AssetHealthExplainabilityDto","nullable":true},"sourceType":{"type":"string","nullable":true},"qualityStatus":{"type":"string","nullable":true},"freshnessStatus":{"type":"string","enum":["unknown","stale","fresh"]},"lineageSummary":{"$ref":"#/components/schemas/CatalogAssetLineageSummaryDto","nullable":true},"ownerId":{"type":"string","nullable":true},"governanceTags":{"type":"array","items":{"$ref":"#/components/schemas/CatalogAssetGovernanceTagDto"}},"datasetId":{"type":"string","nullable":true},"updatedAt":{"type":"string","nullable":true},"assetType":{"type":"string","enum":["artifact","dataset-version","dataset-mixture"]},"assetId":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string","nullable":true},"assetKey":{"type":"string"},"displayName":{"type":"string"},"health":{"$ref":"#/components/schemas/AssetHealthSummaryDto"},"recentEvents":{"type":"array","items":{"$ref":"#/components/schemas/AssetEventSummaryDto"}}},"required":["assetType","assetId","tenantId","projectId","assetKey","displayName","health"]},"CatalogAssetGovernanceTagDto":{"type":"object","properties":{"key":{"type":"string"},"value":{"type":"string","nullable":true}},"required":["key","value"]},"CatalogAssetLineageSummaryDto":{"type":"object","properties":{"datasetId":{"type":"string","nullable":true},"datasetVersionId":{"type":"string","nullable":true},"edgeCount":{"type":"number"}},"required":["edgeCount"]},"CatalogAssetWorkflowRunSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"jobType":{"type":"string"},"status":{"type":"string"},"createdAt":{"type":"string"}},"required":["id","jobType","status","createdAt"]},"CatalogDatasetVersionSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"projectId":{"type":"string"},"datasetId":{"type":"string"},"datasetName":{"type":"string"},"sourceType":{"type":"string"},"dataSource":{"type":"string","nullable":true},"episodeStatisticsGranularity":{"type":"string","enum":["coarse"]},"version":{"type":"number"},"versionName":{"type":"string","nullable":true},"description":{"type":"string","nullable":true},"status":{"type":"string"},"manifestVersion":{"type":"number"},"metadataType":{"type":"string","nullable":true},"codebaseVersion":{"type":"string","nullable":true},"episodeCount":{"type":"number","nullable":true},"featureCount":{"type":"number","nullable":true},"fps":{"type":"number","nullable":true},"topicCount":{"type":"number","nullable":true},"frameCount":{"type":"number","nullable":true},"startTimeNs":{"type":"number","nullable":true},"endTimeNs":{"type":"number","nullable":true},"metadataProjectionJson":{"$ref":"#/components/schemas/Record","nullable":true},"itemCount":{"type":"number"},"totalBytes":{"type":"number","nullable":true},"finalizedAt":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"qualityStatus":{"type":"string"},"visibilityStatus":{"type":"string","enum":["active","soft_hidden"]},"assetHealth":{"$ref":"#/components/schemas/AssetHealthSummaryDto"}},"required":["id","projectId","datasetId","datasetName","sourceType","version","versionName","description","status","itemCount","totalBytes","finalizedAt","createdAt","updatedAt"]},"CatalogFacetBucketDto":{"type":"object","properties":{"value":{"type":"string"},"count":{"type":"number"}},"required":["value","count"]},"CatalogFacetsDto":{"type":"object","properties":{"sourceType":{"type":"array","items":{"$ref":"#/components/schemas/CatalogFacetBucketDto"}},"dataSource":{"type":"array","items":{"$ref":"#/components/schemas/CatalogFacetBucketDto"}},"metadataType":{"type":"array","items":{"$ref":"#/components/schemas/CatalogFacetBucketDto"}},"qualityStatus":{"type":"array","items":{"$ref":"#/components/schemas/CatalogFacetBucketDto"}},"projectId":{"type":"array","items":{"$ref":"#/components/schemas/CatalogFacetBucketDto"}},"governanceTag":{"type":"array","items":{"$ref":"#/components/schemas/CatalogFacetBucketDto"}}},"required":["sourceType","dataSource","metadataType","qualityStatus","projectId"]},"CatalogSearchFieldPredicateDto":{"type":"object","properties":{"field":{"type":"string","enum":["name","qualityStatus","messageCount","fps","sourceType","dataSource","metadataType","sourceProfile","durationNs","cameraCount","jointDimension","topicCount","featureCount","datasetName","normalizedName","signalType","dimension","frequencyHz","frameCount"]},"op":{"type":"string","enum":["in","lt","lte","gt","gte","eq","neq","between","contains","exists","notExists"]},"value":{"type":"object","additionalProperties":true},"values":{"type":"array","items":{"type":"object","additionalProperties":true}},"min":{"type":"object","additionalProperties":true},"max":{"type":"object","additionalProperties":true}},"required":["field","op"]},"CatalogSearchMatchedEpisodeDto":{"type":"object","properties":{"sampleKey":{"type":"string"},"episodeIndex":{"type":"number","nullable":true},"semanticScore":{"type":"number"},"summaryPreview":{"type":"string","nullable":true}},"required":["sampleKey","episodeIndex","semanticScore","summaryPreview"]},"CatalogSearchMatchedPredicateDto":{"type":"object","properties":{"kind":{"type":"string","enum":["field","signalExists","signalNotExists","signalGroup","semantic"]},"summary":{"type":"string"}},"required":["kind","summary"]},"CatalogSearchMatchedSignalDto":{"type":"object","properties":{"id":{"type":"string"},"signalKind":{"type":"string"},"name":{"type":"string","nullable":true},"normalizedName":{"type":"string","nullable":true},"signalType":{"type":"string","nullable":true},"dimension":{"type":"number","nullable":true},"frequencyHz":{"type":"number","nullable":true}},"required":["id","signalKind","name","normalizedName","signalType","dimension","frequencyHz"]},"CatalogSearchQueryBodyDto":{"type":"object","properties":{"scope":{"type":"object","properties":{"projectId":{"type":"string","format":"uuid","nullable":true},"datasetId":{"type":"string","format":"uuid","nullable":true},"currentVersionOnly":{"type":"boolean","nullable":true},"includeSoftHidden":{"type":"boolean","nullable":true}},"nullable":true},"where":{"type":"object","additionalProperties":true,"nullable":true},"semantic":{"type":"object","properties":{"text":{"type":"string"},"limit":{"type":"integer","nullable":true}},"required":["text"],"nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true},"sortBy":{"enum":["updatedAt","createdAt","durationNs","qualityStatus","indexedAt"],"type":"string","nullable":true},"sortOrder":{"enum":["asc","desc"],"type":"string","nullable":true}}},"CatalogSearchQueryResponseDto":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/CatalogSearchResultItemDto"}},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"elapsedMs":{"type":"number"},"indexStatus":{"type":"string","enum":["missing","partial","ready"]}},"required":["pageSize","elapsedMs","indexStatus"]}},"required":["data","meta"]},"CatalogSearchResultItemDto":{"type":"object","properties":{"datasetVersionId":{"type":"string"},"datasetId":{"type":"string"},"projectId":{"type":"string"},"datasetName":{"type":"string"},"sourceType":{"type":"string"},"dataSource":{"type":"string","nullable":true},"episodeStatisticsGranularity":{"type":"string","enum":["coarse"]},"version":{"type":"number"},"qualityStatus":{"type":"string"},"assetHealth":{"$ref":"#/components/schemas/AssetHealthSummaryDto"},"operationFacts":{"$ref":"#/components/schemas/DatasetVersionOperationFactsDto"},"recordingStatus":{"$ref":"#/components/schemas/RecordingStatusDto","nullable":true},"durationNs":{"type":"number","nullable":true},"cameraCount":{"type":"number","nullable":true},"jointDimension":{"type":"number","nullable":true},"topicCount":{"type":"number","nullable":true},"featureCount":{"type":"number","nullable":true},"fps":{"type":"number","nullable":true},"semanticScore":{"type":"number","nullable":true},"matchedEpisodes":{"type":"array","items":{"$ref":"#/components/schemas/CatalogSearchMatchedEpisodeDto"}},"matchedSignals":{"type":"array","items":{"$ref":"#/components/schemas/CatalogSearchMatchedSignalDto"}},"matchedPredicates":{"type":"array","items":{"$ref":"#/components/schemas/CatalogSearchMatchedPredicateDto"}},"updatedAt":{"type":"string"}},"required":["datasetVersionId","datasetId","projectId","datasetName","sourceType","version","qualityStatus","durationNs","cameraCount","jointDimension","topicCount","featureCount","fps","matchedSignals","matchedPredicates","updatedAt"]},"CatalogSearchSchemaDto":{"type":"object","properties":{"contractVersion":{"type":"string","enum":["embodiflow-catalog-search/v1"]},"profileFields":{"type":"array","items":{"$ref":"#/components/schemas/CatalogSearchSchemaFieldDto"}},"signalKinds":{"type":"array","items":{"$ref":"#/components/schemas/CatalogSearchSchemaSignalKindDto"}},"sortFields":{"type":"array","items":{"type":"string"}},"maxExpressionDepth":{"type":"number"},"maxExpressionNodes":{"type":"number"},"semanticSearch":{"type":"object","properties":{"enabled":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"configured":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"embeddingModel":{"type":"string"},"embeddingDimension":{"type":"number"},"granularity":{"type":"string","enum":["dataset_version_summary","hybrid_version_episode"]}},"required":["enabled","configured","embeddingModel","embeddingDimension","granularity"]}},"required":["contractVersion","profileFields","signalKinds","sortFields","maxExpressionDepth","maxExpressionNodes","semanticSearch"]},"CatalogSearchSchemaFieldDto":{"type":"object","properties":{"field":{"type":"string"},"label":{"type":"string"},"type":{"type":"string","enum":["string","number","boolean","integer"]},"operators":{"type":"array","items":{"type":"string"},"enum":["in","lt","lte","gt","gte","eq","neq","between","contains","exists","notExists"]}},"required":["field","label","type","operators"]},"CatalogSearchSchemaSignalKindDto":{"type":"object","properties":{"signalKind":{"type":"string"},"label":{"type":"string"},"fields":{"type":"array","items":{"$ref":"#/components/schemas/CatalogSearchSchemaFieldDto"}}},"required":["signalKind","label","fields"]},"CatalogSearchScopeBodyDto":{"type":"object","properties":{"projectId":{"type":"string","format":"uuid"},"datasetId":{"type":"string","format":"uuid"},"currentVersionOnly":{"type":"boolean"},"includeSoftHidden":{"type":"boolean"}}},"CatalogSearchSemanticBodyDto":{"type":"object","properties":{"text":{"type":"string"},"limit":{"type":"number","minimum":1}},"required":["text"]},"CatalogSearchSignalExistsDto":{"type":"object","properties":{"signalKind":{"type":"object","additionalProperties":true},"name":{"type":"object","additionalProperties":true},"normalizedName":{"type":"object","additionalProperties":true},"signalType":{"type":"object","additionalProperties":true},"dimension":{"type":"object","additionalProperties":true},"frequencyHz":{"type":"object","additionalProperties":true},"durationNs":{"type":"object","additionalProperties":true},"frameCount":{"type":"object","additionalProperties":true},"messageCount":{"type":"object","additionalProperties":true}},"required":["signalKind"]},"CatalogSearchSignalGroupDto":{"type":"object","properties":{"signalKind":{"type":"object","additionalProperties":true},"count":{"type":"object","additionalProperties":true},"mustMatch":{"type":"object","additionalProperties":true},"anyMatch":{"type":"object","additionalProperties":true}},"required":["signalKind"]},"CategoricalCategory":{"type":"object","properties":{"key":{"type":"string"},"termIdentity":{"type":"string","nullable":true},"count":{"type":"number"},"fraction":{"type":"number"}},"required":["key","termIdentity","count","fraction"]},"CategoricalDistributionSummary":{"type":"object","properties":{"categories":{"type":"array","items":{"$ref":"#/components/schemas/CategoricalCategory"}},"other":{"type":"object","properties":{"count":{"type":"number"},"fraction":{"type":"number"}},"required":["count","fraction"]},"totalCount":{"type":"number"}},"required":["categories","other","totalCount"]},"ChangePasswordBodyDto":{"type":"object","properties":{"currentPassword":{"type":"string","description":"Current or temporary password. Required when a password exists.","minLength":1},"newPassword":{"type":"string","description":"New password. Platform default minimum is 8 characters.","minLength":8}},"required":["newPassword"]},"ChangePasswordResponseBodyDto":{"type":"object","properties":{"revokedOtherSessions":{"type":"number"},"mustRotatePassword":{"type":"boolean","description":"Always false after a successful password write."},"user":{"$ref":"#/components/schemas/ChangePasswordUserResponseDto"},"continueTo":{"type":"string","example":"/"},"csrfToken":{"type":"string"},"activationCompleted":{"type":"boolean"}},"required":["revokedOtherSessions","mustRotatePassword","user","continueTo"]},"ChangePasswordResponseDto":{"type":"object","properties":{"revokedOtherSessions":{"type":"number"},"mustRotatePassword":{"type":"boolean","enum":[false]},"user":{"$ref":"#/components/schemas/UserSummaryDto"},"continueTo":{"type":"string"},"csrfToken":{"type":"string"},"activationCompleted":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["revokedOtherSessions","mustRotatePassword","user","continueTo"]},"ChangePasswordResponseEnvelopeDto":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ChangePasswordResponseBodyDto"},"meta":{"type":"object"}},"required":["data","meta"]},"ChangePasswordUserResponseDto":{"type":"object","properties":{"id":{"type":"string"},"email":{"type":"string","nullable":true},"displayName":{"type":"string","nullable":true},"avatarUrl":{"type":"string","nullable":true},"hasPassword":{"type":"boolean"},"status":{"type":"string"}},"required":["id","email","displayName","avatarUrl","hasPassword","status"]},"CliLoginRequestStatusResponseDto":{"type":"object","properties":{"id":{"type":"string"},"status":{"type":"string","enum":["expired","pending","approved","consumed","denied"]},"expiresAt":{"type":"string"}},"required":["id","status","expiresAt"]},"CloseMeDeliveryBatchBodyDto":{"type":"object","properties":{"note":{"type":"string"}}},"CollectionAcceptanceDecisionSnapshot":{"type":"object","properties":{"contractVersion":{"type":"string","enum":["embodiflow-collection-delivery/v1"]},"reviewTaskId":{"type":"string"},"reviewerProjectMembershipId":{"type":"string","nullable":true},"decision":{"type":"string","enum":["approve","reject"]},"batchStatus":{"type":"string","enum":["accepted","rejected","partially_accepted"]},"comment":{"type":"string","nullable":true},"waiverReason":{"type":"string","nullable":true},"acceptedItemIds":{"type":"array","items":{"type":"string"}},"rejectedItemIds":{"type":"array","items":{"type":"string"}},"rejectedQueryDescriptors":{"type":"array","items":{"type":"string"}},"criteriaHash":{"type":"string"},"criteriaVersion":{"type":"number"},"machineOverall":{"type":"string","enum":["error","fail","pass","not_evaluated"]}},"required":["contractVersion","reviewTaskId","reviewerProjectMembershipId","decision","batchStatus","comment","waiverReason","acceptedItemIds","rejectedItemIds","rejectedQueryDescriptors","criteriaHash","criteriaVersion","machineOverall"]},"CollectionAssignmentDto":{"type":"object","properties":{"id":{"type":"string"},"orderId":{"type":"string"},"taskId":{"type":"string","nullable":true},"collectorMembershipId":{"type":"string"},"status":{"type":"string","enum":["active","removed"]},"assignedBy":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","orderId","taskId","collectorMembershipId","status","assignedBy","createdAt","updatedAt"]},"CollectionCollectorAcceptanceRateDto":{"type":"object","properties":{"collectorMembershipId":{"type":"string"},"acceptedCount":{"type":"number"},"rejectedCount":{"type":"number"},"acceptanceRate":{"type":"number","nullable":true}},"required":["collectorMembershipId","acceptedCount","rejectedCount","acceptanceRate"]},"CollectionConsentAcceptanceDto":{"type":"object","properties":{"consentAcceptanceId":{"type":"string"},"consentId":{"type":"string"},"version":{"type":"number"},"acceptedAt":{"type":"string"}},"required":["consentAcceptanceId","consentId","version","acceptedAt"]},"CollectionConsentDto":{"type":"object","properties":{"id":{"type":"string"},"orderId":{"type":"string"},"version":{"type":"number"},"textMd":{"type":"string"},"createdAt":{"type":"string"}},"required":["id","orderId","version","textMd","createdAt"]},"CollectionDeliveryBatchDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string"},"collectionOrderId":{"type":"string"},"supplierProjectMembershipId":{"type":"string"},"deliveryNumber":{"type":"string"},"status":{"type":"string"},"attemptGroupKey":{"type":"string"},"attemptNumber":{"type":"number"},"supersedesDeliveryBatchId":{"type":"string","nullable":true},"reviewTaskId":{"type":"string","nullable":true},"sourceMetadata":{"$ref":"#/components/schemas/Record","nullable":true},"declaredContent":{"$ref":"#/components/schemas/Record","nullable":true},"machineVerdict":{"$ref":"#/components/schemas/CollectionMachineVerdictSnapshot","nullable":true},"acceptanceDecision":{"$ref":"#/components/schemas/CollectionAcceptanceDecisionSnapshot","nullable":true},"linkedUploadBatchIds":{"type":"array","items":{"type":"string"}},"attemptCount":{"type":"number"},"outstandingReworkCount":{"type":"number"},"outstandingRework":{"type":"array","items":{"$ref":"#/components/schemas/CollectionDeliveryOutstandingReworkDto"}},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"rowVersion":{"type":"number"}},"required":["id","tenantId","projectId","collectionOrderId","supplierProjectMembershipId","deliveryNumber","status","attemptGroupKey","attemptNumber","supersedesDeliveryBatchId","reviewTaskId","sourceMetadata","declaredContent","machineVerdict","acceptanceDecision","linkedUploadBatchIds","attemptCount","outstandingReworkCount","outstandingRework","createdAt","updatedAt","rowVersion"]},"CollectionDeliveryOutstandingReworkDto":{"type":"object","properties":{"repairTaskId":{"type":"string"},"sourceId":{"type":"string"},"status":{"type":"string"},"severity":{"type":"string"}},"required":["repairTaskId","sourceId","status","severity"]},"CollectionDeliverySubmitResultDto":{"type":"object","properties":{"id":{"type":"string"},"status":{"type":"string"},"reviewTaskId":{"type":"string","nullable":true},"workflowRunId":{"type":"string","nullable":true},"datasetVersionId":{"type":"string","nullable":true},"machineVerdict":{"$ref":"#/components/schemas/CollectionMachineVerdictSnapshot"}},"required":["id","status","reviewTaskId","workflowRunId","datasetVersionId","machineVerdict"]},"CollectionInstructionBodyDto":{"type":"object","properties":{"en":{"type":"string"},"zh":{"type":"string"}}},"CollectionInstructionJson":{"type":"object","properties":{"en":{"type":"string"},"zh":{"type":"string"}}},"CollectionMachineVerdictSnapshot":{"type":"object","properties":{"contractVersion":{"type":"string","enum":["embodiflow-collection-delivery/v1"]},"criteriaId":{"type":"string","enum":["embodiflow-collection-delivery/v1"]},"criteriaVersion":{"type":"number"},"criteriaHash":{"type":"string"},"generatedAt":{"type":"string"},"sourceWorkflowRunId":{"type":"string","nullable":true},"sourceDatasetVersionId":{"type":"string","nullable":true},"overall":{"type":"string","enum":["error","fail","pass","not_evaluated"]},"quality":{"type":"object","properties":{"status":{"type":"string","enum":["warn","error","fail","pass","not_applicable","not_evaluated"]},"blockingFailCount":{"type":"number"},"summaries":{"type":"array","items":{"$ref":"#/components/schemas/CollectionQualityFindingSummary"}}},"required":["status","blockingFailCount","summaries"]},"alignment":{"type":"object","properties":{"status":{"type":"string","enum":["warn","error","fail","pass","not_applicable","not_evaluated"]},"checkIds":{"type":"array","items":{"type":"string"}}},"required":["status","checkIds"]},"composition":{"type":"object","properties":{"status":{"type":"string","enum":["warn","error","fail","pass","not_applicable","not_evaluated"]},"profileId":{"type":"string","nullable":true},"inputDigest":{"type":"string","nullable":true}},"required":["status","profileId","inputDigest"]}},"required":["contractVersion","criteriaId","criteriaVersion","criteriaHash","generatedAt","sourceWorkflowRunId","sourceDatasetVersionId","overall","quality","alignment","composition"]},"CollectionMediaUploadDto":{"type":"object","properties":{"objectKey":{"type":"string"},"uploadUrl":{"type":"string"},"headers":{"$ref":"#/components/schemas/Record"},"expiresInSeconds":{"type":"number"}},"required":["objectKey","uploadUrl","headers","expiresInSeconds"]},"CollectionOrderDeliveryBatchDetailDto":{"type":"object","properties":{"submissions":{"type":"array","items":{"$ref":"#/components/schemas/CollectionSubmissionDto"}},"deliveryBatchId":{"type":"string"},"collectorMembershipId":{"type":"string"},"status":{"type":"string"},"submissionCount":{"type":"number"},"acceptedCount":{"type":"number"},"rejectedCount":{"type":"number"},"submittedAt":{"type":"string","nullable":true},"resolvedAt":{"type":"string","nullable":true}},"required":["submissions","deliveryBatchId","collectorMembershipId","status","submissionCount","acceptedCount","rejectedCount","submittedAt","resolvedAt"]},"CollectionOrderDetailDto":{"type":"object","properties":{"tasks":{"type":"array","items":{"$ref":"#/components/schemas/CollectionTaskDto"}},"scenes":{"type":"array","items":{"$ref":"#/components/schemas/CollectionSceneDto"}},"quotas":{"type":"array","items":{"$ref":"#/components/schemas/CollectionQuotaDto"}},"consents":{"type":"array","items":{"$ref":"#/components/schemas/CollectionConsentDto"}},"estimate":{"$ref":"#/components/schemas/CollectionOrderEstimateDto","nullable":true},"id":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string"},"orderNumber":{"type":"string"},"title":{"type":"string"},"description":{"type":"string","nullable":true},"status":{"type":"string"},"targetSkillsJson":{"$ref":"#/components/schemas/Record"},"targetEmbodimentJson":{"$ref":"#/components/schemas/Record"},"targetSceneJson":{"$ref":"#/components/schemas/Record"},"sourceMetadataSchemaJson":{"$ref":"#/components/schemas/Record","nullable":true},"acceptanceRules":{"type":"object","properties":{"blockingChecks":{"type":"array","items":{"type":"string"}},"thresholds":{"$ref":"#/components/schemas/Record"},"sampling":{"type":"object","properties":{"rate":{"type":"number"},"firstPerCollector":{"type":"number"}},"required":["rate","firstPerCollector"]},"rerecordOnReject":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["blockingChecks","thresholds","sampling","rerecordOnReject"]},"templateId":{"type":"string","nullable":true},"segmentationJobId":{"type":"string","nullable":true},"deadlineAt":{"type":"string","nullable":true},"acceptedQuantity":{"type":"number"},"targetQuantity":{"type":"number","nullable":true},"outstandingReworkCount":{"type":"number"},"outstandingRework":{"type":"array","items":{"$ref":"#/components/schemas/CollectionDeliveryOutstandingReworkDto"}},"openedAt":{"type":"string","nullable":true},"closedAt":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"rowVersion":{"type":"number"}},"required":["tasks","scenes","quotas","consents","estimate","id","tenantId","projectId","orderNumber","title","description","status","targetSkillsJson","targetEmbodimentJson","targetSceneJson","sourceMetadataSchemaJson","acceptanceRules","templateId","segmentationJobId","deadlineAt","acceptedQuantity","targetQuantity","outstandingReworkCount","outstandingRework","openedAt","closedAt","createdAt","updatedAt","rowVersion"]},"CollectionOrderDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string"},"orderNumber":{"type":"string"},"title":{"type":"string"},"description":{"type":"string","nullable":true},"status":{"type":"string"},"targetSkillsJson":{"$ref":"#/components/schemas/Record"},"targetEmbodimentJson":{"$ref":"#/components/schemas/Record"},"targetSceneJson":{"$ref":"#/components/schemas/Record"},"sourceMetadataSchemaJson":{"$ref":"#/components/schemas/Record","nullable":true},"acceptanceRules":{"type":"object","properties":{"blockingChecks":{"type":"array","items":{"type":"string"}},"thresholds":{"$ref":"#/components/schemas/Record"},"sampling":{"type":"object","properties":{"rate":{"type":"number"},"firstPerCollector":{"type":"number"}},"required":["rate","firstPerCollector"]},"rerecordOnReject":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["blockingChecks","thresholds","sampling","rerecordOnReject"]},"templateId":{"type":"string","nullable":true},"segmentationJobId":{"type":"string","nullable":true},"deadlineAt":{"type":"string","nullable":true},"acceptedQuantity":{"type":"number"},"targetQuantity":{"type":"number","nullable":true},"outstandingReworkCount":{"type":"number"},"outstandingRework":{"type":"array","items":{"$ref":"#/components/schemas/CollectionDeliveryOutstandingReworkDto"}},"openedAt":{"type":"string","nullable":true},"closedAt":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"rowVersion":{"type":"number"}},"required":["id","tenantId","projectId","orderNumber","title","description","status","targetSkillsJson","targetEmbodimentJson","targetSceneJson","sourceMetadataSchemaJson","acceptanceRules","templateId","segmentationJobId","deadlineAt","acceptedQuantity","targetQuantity","outstandingReworkCount","outstandingRework","openedAt","closedAt","createdAt","updatedAt","rowVersion"]},"CollectionOrderEstimateDto":{"type":"object","properties":{"recordedSeconds":{"type":"number"},"labelledAsEstimate":{"type":"boolean","enum":[true]},"durationSeconds":{"type":"number"},"units":{"type":"array","items":{"$ref":"#/components/schemas/UsageEstimateUnitDto"}},"price":{"$ref":"#/components/schemas/UsageEstimatePriceDto","nullable":true},"basis":{"type":"string","enum":["coefficient","history","declared_resources"]},"evidence":{"type":"array","items":{"type":"string"}},"limitCheck":{"type":"object","properties":{"wouldExceed":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"remainingBytes":{"type":"number"}},"required":["wouldExceed","remainingBytes"]}},"required":["recordedSeconds","labelledAsEstimate","durationSeconds","units","price","basis","evidence","limitCheck"]},"CollectionOrderOpeningBodyDto":{"type":"object","properties":{"unused":{"type":"object","additionalProperties":true,"nullable":true}}},"CollectionOrderProgressDto":{"type":"object","properties":{"orderId":{"type":"string"},"cells":{"type":"array","items":{"$ref":"#/components/schemas/CollectionQuotaProgressCellDto"}},"collectorRates":{"type":"array","items":{"$ref":"#/components/schemas/CollectionCollectorAcceptanceRateDto"}},"taskRates":{"type":"array","items":{"$ref":"#/components/schemas/CollectionTaskAcceptanceRateDto"}},"topRejectionReasons":{"type":"array","items":{"$ref":"#/components/schemas/CollectionRejectionReasonCountDto"}},"submissionsPerDay":{"type":"array","items":{"$ref":"#/components/schemas/CollectionSubmissionsPerDayDto"}},"forecastDays":{"type":"number","nullable":true}},"required":["orderId","cells","collectorRates","taskRates","topRejectionReasons","submissionsPerDay","forecastDays"]},"CollectionOrderReworkSettlementDto":{"type":"object","properties":{"orderId":{"type":"string"},"status":{"type":"string"},"settledReworkCount":{"type":"number"}},"required":["orderId","status","settledReworkCount"]},"CollectionOrderTerminalBodyDto":{"type":"object","properties":{"reason":{"type":"string","minLength":1,"description":"Reason recorded on open rework waiver when the order is cancelled or closed."}},"required":["reason"]},"CollectionQualityFindingSummary":{"type":"object","properties":{"blocking":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"status":{"type":"string","enum":["warn","error","fail","pass","not_applicable","not_evaluated"]},"checkId":{"type":"string"},"count":{"type":"number"}},"required":["blocking","status","checkId","count"]},"CollectionQuotaDto":{"type":"object","properties":{"id":{"type":"string"},"orderId":{"type":"string"},"taskId":{"type":"string"},"sceneId":{"type":"string","nullable":true},"targetHours":{"type":"number","nullable":true},"targetSubmissions":{"type":"number","nullable":true},"perCollectorCap":{"type":"number","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"rowVersion":{"type":"number"}},"required":["id","orderId","taskId","sceneId","targetHours","targetSubmissions","perCollectorCap","createdAt","updatedAt","rowVersion"]},"CollectionQuotaProgressCellDto":{"type":"object","properties":{"taskId":{"type":"string"},"sceneId":{"type":"string","nullable":true},"targetHours":{"type":"number","nullable":true},"targetSubmissions":{"type":"number","nullable":true},"acceptedHours":{"type":"number"},"acceptedSubmissions":{"type":"number"}},"required":["taskId","sceneId","targetHours","targetSubmissions","acceptedHours","acceptedSubmissions"]},"CollectionRejectionReasonCountDto":{"type":"object","properties":{"reasonCode":{"type":"string"},"count":{"type":"number"}},"required":["reasonCode","count"]},"CollectionReportDto":{"type":"object","properties":{"reportId":{"type":"string"},"orderId":{"type":"string"},"objectKey":{"type":"string"},"downloadUrl":{"type":"string"},"expiresAt":{"type":"string"},"grouping":{"type":"string","enum":["task","collector","scene"]},"periodStart":{"type":"string"},"periodEnd":{"type":"string"}},"required":["reportId","orderId","objectKey","downloadUrl","expiresAt","grouping","periodStart","periodEnd"]},"CollectionSceneDto":{"type":"object","properties":{"id":{"type":"string"},"orderId":{"type":"string"},"name":{"type":"string"},"description":{"type":"string","nullable":true},"photoKeys":{"type":"array","items":{"type":"string"}},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"rowVersion":{"type":"number"}},"required":["id","orderId","name","description","photoKeys","createdAt","updatedAt","rowVersion"]},"CollectionSubmissionDto":{"type":"object","properties":{"id":{"type":"string"},"orderId":{"type":"string"},"taskId":{"type":"string"},"sceneId":{"type":"string","nullable":true},"collectorMembershipId":{"type":"string"},"recordingId":{"type":"string"},"deliveryBatchId":{"type":"string"},"decision":{"type":"string","enum":["pending","accepted","rejected","accepted_auto","in_review"]},"reasonCode":{"type":"string","enum":["consent_missing","privacy_not_cleared","recording_length","modality_missing","hands_visible","quality_check_failed","processing_failed","processing_cancelled","reviewer_other"],"nullable":true},"reasonDetail":{"type":"string","nullable":true},"reviewerMembershipId":{"type":"string","nullable":true},"decidedAt":{"type":"string","nullable":true},"countsTowardQuota":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"recordedDurationS":{"type":"number","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"rowVersion":{"type":"number"}},"required":["id","orderId","taskId","sceneId","collectorMembershipId","recordingId","deliveryBatchId","decision","reasonCode","reasonDetail","reviewerMembershipId","decidedAt","countsTowardQuota","recordedDurationS","createdAt","updatedAt","rowVersion"]},"CollectionSubmissionsPerDayDto":{"type":"object","properties":{"day":{"type":"string"},"count":{"type":"number"}},"required":["day","count"]},"CollectionTaskAcceptanceRateDto":{"type":"object","properties":{"taskId":{"type":"string"},"acceptedCount":{"type":"number"},"rejectedCount":{"type":"number"},"acceptanceRate":{"type":"number","nullable":true}},"required":["taskId","acceptedCount","rejectedCount","acceptanceRate"]},"CollectionTaskDto":{"type":"object","properties":{"id":{"type":"string"},"orderId":{"type":"string"},"name":{"type":"string"},"instructionJson":{"$ref":"#/components/schemas/CollectionInstructionJson"},"demoMediaKeys":{"type":"array","items":{"type":"string"}},"startCondition":{"type":"string"},"endCondition":{"type":"string"},"allowedVariation":{"type":"string","nullable":true},"durationMinS":{"type":"number","nullable":true},"durationMaxS":{"type":"number","nullable":true},"requiredCameras":{"type":"array","items":{"type":"string"},"enum":["other","depth","head","head_left","head_right","wrist_left","wrist_right","chest","third_person","top"]},"requiredModalities":{"type":"array","items":{"type":"string"},"enum":["imu","hand_pose","depth","head_pose"]},"minHandsVisible":{"type":"number","nullable":true},"recordingMode":{"type":"string","enum":["continuous","single_task"]},"orderIndex":{"type":"number"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"rowVersion":{"type":"number"}},"required":["id","orderId","name","instructionJson","demoMediaKeys","startCondition","endCondition","allowedVariation","durationMinS","durationMaxS","requiredCameras","requiredModalities","minHandsVisible","recordingMode","orderIndex","createdAt","updatedAt","rowVersion"]},"CollectionUploadBatchLinkDto":{"type":"object","properties":{"uploadBatchId":{"type":"string"},"collectionDeliveryBatchId":{"type":"string"}},"required":["uploadBatchId","collectionDeliveryBatchId"]},"CollectionWorkspaceQuotaDto":{"type":"object","properties":{"remainingForMe":{"type":"number","nullable":true},"remainingOverall":{"type":"number","nullable":true},"perCollectorCap":{"type":"number","nullable":true},"mySubmissionCount":{"type":"number"},"overallSubmissionCount":{"type":"number"}},"required":["remainingForMe","remainingOverall","perCollectorCap","mySubmissionCount","overallSubmissionCount"]},"CollectionWorkspaceSubmissionDto":{"type":"object","properties":{"id":{"type":"string"},"recordingId":{"type":"string"},"taskId":{"type":"string"},"sceneId":{"type":"string","nullable":true},"decision":{"type":"string","enum":["pending","accepted","rejected","accepted_auto","in_review"]},"displayStatus":{"type":"string","enum":["accepted","processing","rejected","in_review","anonymizing","rerecord_requested"]},"reasonCode":{"type":"string","nullable":true},"reasonDetail":{"type":"string","nullable":true},"createdAt":{"type":"string"}},"required":["id","recordingId","taskId","sceneId","decision","displayStatus","reasonCode","reasonDetail","createdAt"]},"CollectionWorkspaceTaskDto":{"type":"object","properties":{"id":{"type":"string"},"orderId":{"type":"string"},"projectId":{"type":"string"},"orderTitle":{"type":"string"},"name":{"type":"string"},"instructionJson":{"type":"object","properties":{"en":{"type":"string"},"zh":{"type":"string"}}},"demoMediaKeys":{"type":"array","items":{"type":"string"}},"startCondition":{"type":"string"},"endCondition":{"type":"string"},"allowedVariation":{"type":"string","nullable":true},"durationMinS":{"type":"number","nullable":true},"durationMaxS":{"type":"number","nullable":true},"requiredCameras":{"type":"array","items":{"type":"string"}},"requiredModalities":{"type":"array","items":{"type":"string"}},"minHandsVisible":{"type":"number","nullable":true},"recordingMode":{"type":"string"},"orderIndex":{"type":"number"},"consentRequired":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"latestConsent":{"type":"object","properties":{"id":{"type":"string"},"version":{"type":"number"},"textMd":{"type":"string"}},"required":["id","version","textMd"],"nullable":true},"consentAccepted":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"quota":{"$ref":"#/components/schemas/CollectionWorkspaceQuotaDto"},"submissions":{"type":"array","items":{"$ref":"#/components/schemas/CollectionWorkspaceSubmissionDto"}}},"required":["id","orderId","projectId","orderTitle","name","instructionJson","demoMediaKeys","startCondition","endCondition","allowedVariation","durationMinS","durationMaxS","requiredCameras","requiredModalities","minHandsVisible","recordingMode","orderIndex","consentRequired","latestConsent","consentAccepted","quota","submissions"]},"CompleteAnnotationJobItemBodyDto":{"type":"object","properties":{"unused":{"type":"string","nullable":true,"description":"Unused. Send an empty JSON object or noEligibleTaskReason."},"noEligibleTaskReason":{"type":"string","description":"Explicit no-eligible-task completion. Records the reason and is not a task-positive example."}}},"CompleteTenantOffboardingDemoBodyDto":{"type":"object","properties":{"datasetVersionId":{"type":"string","nullable":true,"format":"uuid"}}},"CompletionRequestPartBodyDto":{"type":"object","properties":{"partNumber":{"type":"number","minimum":1},"etag":{"type":"string"}},"required":["partNumber","etag"]},"CompositionActionStatisticsFacet":{"type":"object","properties":{"facetId":{"type":"string","enum":["actionStatistics"]},"status":{"type":"string","enum":["warn","error","fail","pass","not_applicable","not_evaluated"]},"reasonCode":{"type":"string","nullable":true},"coverage":{"$ref":"#/components/schemas/CompositionFacetCoverage"},"trajectorySource":{"$ref":"#/components/schemas/CompositionTrajectorySourceIdentity"},"dimensions":{"type":"array","items":{"$ref":"#/components/schemas/CompositionTrajectoryDimensionStats"}},"actionIdleFraction":{"$ref":"#/components/schemas/ContinuousDistributionSummary","nullable":true},"actionPauseCount":{"$ref":"#/components/schemas/ContinuousDistributionSummary","nullable":true},"actionPauseCountPerMinute":{"$ref":"#/components/schemas/ContinuousDistributionSummary","nullable":true},"actionRestartCount":{"$ref":"#/components/schemas/ContinuousDistributionSummary","nullable":true},"actionRestartCountPerMinute":{"$ref":"#/components/schemas/ContinuousDistributionSummary","nullable":true},"actionCorrectionReversalCount":{"$ref":"#/components/schemas/ContinuousDistributionSummary","nullable":true},"actionCorrectionReversalCountPerMinute":{"$ref":"#/components/schemas/ContinuousDistributionSummary","nullable":true},"actionTrajectoryLength":{"$ref":"#/components/schemas/ContinuousDistributionSummary","nullable":true},"actionRmsJerk":{"$ref":"#/components/schemas/ContinuousDistributionSummary","nullable":true},"actionNormalizedJerkP50":{"type":"number","nullable":true},"actionNormalizedJerkP95":{"type":"number","nullable":true},"actionSaturationShare":{"$ref":"#/components/schemas/ContinuousDistributionSummary","nullable":true},"actionSaturationStatus":{"type":"string","enum":["warn","error","fail","pass","not_applicable","not_evaluated"]},"actionValidSourceCoverage":{"type":"number","nullable":true},"derivativeStatisticsStatus":{"type":"string","enum":["warn","error","fail","pass","not_applicable","not_evaluated"]},"evidence":{"$ref":"#/components/schemas/CompositionEvidence"}},"required":["facetId","status","reasonCode","coverage","trajectorySource","dimensions","actionIdleFraction","actionPauseCount","actionPauseCountPerMinute","actionRestartCount","actionRestartCountPerMinute","actionCorrectionReversalCount","actionCorrectionReversalCountPerMinute","actionTrajectoryLength","actionRmsJerk","actionNormalizedJerkP50","actionNormalizedJerkP95","actionSaturationShare","actionSaturationStatus","actionValidSourceCoverage","derivativeStatisticsStatus","evidence"]},"CompositionCaptureTimeFacet":{"type":"object","properties":{"facetId":{"type":"string","enum":["captureTime"]},"status":{"type":"string","enum":["warn","error","fail","pass","not_applicable","not_evaluated"]},"reasonCode":{"type":"string","nullable":true},"coverage":{"$ref":"#/components/schemas/CompositionFacetCoverage"},"distinctCaptureDayCount":{"type":"number","nullable":true},"maxSingleDayShare":{"type":"number","nullable":true},"summary":{"$ref":"#/components/schemas/CategoricalDistributionSummary","nullable":true},"evidence":{"$ref":"#/components/schemas/CompositionEvidence"}},"required":["facetId","status","reasonCode","coverage","distinctCaptureDayCount","maxSingleDayShare","summary","evidence"]},"CompositionCategoricalDriftEntry":{"type":"object","properties":{"facetId":{"type":"string"},"status":{"type":"string","enum":["warn","error","fail","pass","not_applicable","not_evaluated"]},"value":{"type":"number","nullable":true},"largestCategoryDeltas":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string"},"delta":{"type":"number"}},"required":["key","delta"]}}},"required":["facetId","status","value","largestCategoryDeltas"]},"CompositionContinuousDriftEntry":{"type":"object","properties":{"facetId":{"type":"string"},"dimensionKey":{"type":"string","nullable":true},"status":{"type":"string","enum":["warn","error","fail","pass","not_applicable","not_evaluated"]},"value":{"type":"number","nullable":true},"iqrRef":{"type":"number","nullable":true},"epsilon":{"type":"number"}},"required":["facetId","dimensionKey","status","value","iqrRef","epsilon"]},"CompositionContinuousFacet":{"type":"object","properties":{"facetId":{"type":"string","enum":["duration","frameCount"]},"status":{"type":"string","enum":["warn","error","fail","pass","not_applicable","not_evaluated"]},"reasonCode":{"type":"string","nullable":true},"coverage":{"$ref":"#/components/schemas/CompositionFacetCoverage"},"unit":{"type":"string","enum":["frames","nanoseconds"]},"summary":{"$ref":"#/components/schemas/ContinuousDistributionSummary","nullable":true},"evidence":{"$ref":"#/components/schemas/CompositionEvidence"}},"required":["facetId","status","reasonCode","coverage","unit","summary","evidence"]},"CompositionDriftFacet":{"type":"object","properties":{"facetId":{"type":"string","enum":["drift"]},"status":{"type":"string","enum":["warn","error","fail","pass","not_applicable","not_evaluated"]},"reasonCode":{"type":"string","nullable":true},"request":{"$ref":"#/components/schemas/CompositionDriftRequest","nullable":true},"referenceSetDigest":{"type":"string","nullable":true},"thisTrajectorySourceKind":{"type":"string","enum":["imu","action","mag","pose"],"nullable":true},"referenceTrajectorySourceKind":{"type":"string","enum":["imu","action","mag","pose"],"nullable":true},"continuous":{"type":"array","items":{"$ref":"#/components/schemas/CompositionContinuousDriftEntry"}},"categorical":{"type":"array","items":{"$ref":"#/components/schemas/CompositionCategoricalDriftEntry"}},"aggregate":{"type":"object","properties":{"p95SourceDimensionDrift":{"type":"number","nullable":true},"maxCategoricalDivergence":{"type":"number","nullable":true}},"required":["p95SourceDimensionDrift","maxCategoricalDivergence"],"nullable":true},"comparableItemFraction":{"type":"number","nullable":true},"evidence":{"$ref":"#/components/schemas/CompositionEvidence"}},"required":["facetId","status","reasonCode","request","referenceSetDigest","thisTrajectorySourceKind","referenceTrajectorySourceKind","continuous","categorical","aggregate","comparableItemFraction","evidence"]},"CompositionDriftRequest":{"type":"object","properties":{"kind":{"type":"string","enum":["profile","reference_set"]},"referenceProfileId":{"type":"string","nullable":true},"referenceSet":{"type":"object","properties":{"entries":{"type":"array","items":{"type":"object","properties":{"profileId":{"type":"string","nullable":true},"datasetVersionId":{"type":"string","nullable":true},"selectionId":{"type":"string","nullable":true},"weight":{"type":"number"}},"required":["profileId","datasetVersionId","selectionId","weight"]}}},"required":["entries"],"nullable":true}},"required":["kind","referenceProfileId","referenceSet"]},"CompositionEvidence":{"type":"object","properties":{"sampleRefs":{"type":"array","items":{"$ref":"#/components/schemas/QualitySampleRef"}},"intervals":{"type":"array","items":{"$ref":"#/components/schemas/QualityViolationInterval"}}},"required":["sampleRefs","intervals"]},"CompositionFacetCoverage":{"type":"object","properties":{"coveredDurationNs":{"type":"number"},"eligibleDurationNs":{"type":"number"},"coveredEpisodeCount":{"type":"number"},"eligibleEpisodeCount":{"type":"number"},"coveredDurationFraction":{"type":"number"},"coveredEpisodeFraction":{"type":"number"}},"required":["coveredDurationNs","eligibleDurationNs","coveredEpisodeCount","eligibleEpisodeCount","coveredDurationFraction","coveredEpisodeFraction"]},"CompositionLabelFacet":{"type":"object","properties":{"facetId":{"type":"string","enum":["scene","dataSource","skill","taskInstruction","embodiment","manipulatedObject","qualityTier"]},"status":{"type":"string","enum":["warn","error","fail","pass","not_applicable","not_evaluated"]},"reasonCode":{"type":"string","nullable":true},"coverage":{"$ref":"#/components/schemas/CompositionFacetCoverage"},"unknownEpisodeCount":{"type":"number"},"unknownDurationNs":{"type":"number"},"summary":{"$ref":"#/components/schemas/CategoricalDistributionSummary","nullable":true},"evidence":{"$ref":"#/components/schemas/CompositionEvidence"}},"required":["facetId","status","reasonCode","coverage","unknownEpisodeCount","unknownDurationNs","summary","evidence"]},"CompositionProfileFacets":{"type":"object","properties":{"skill":{"$ref":"#/components/schemas/CompositionLabelFacet"},"taskInstruction":{"$ref":"#/components/schemas/CompositionLabelFacet"},"embodiment":{"$ref":"#/components/schemas/CompositionLabelFacet"},"scene":{"$ref":"#/components/schemas/CompositionLabelFacet"},"manipulatedObject":{"$ref":"#/components/schemas/CompositionLabelFacet"},"duration":{"$ref":"#/components/schemas/CompositionContinuousFacet"},"frameCount":{"$ref":"#/components/schemas/CompositionContinuousFacet"},"qualityTier":{"$ref":"#/components/schemas/CompositionLabelFacet"},"dataSource":{"$ref":"#/components/schemas/CompositionLabelFacet"},"captureTime":{"$ref":"#/components/schemas/CompositionCaptureTimeFacet"},"actionStatistics":{"$ref":"#/components/schemas/CompositionActionStatisticsFacet"},"drift":{"$ref":"#/components/schemas/CompositionDriftFacet"}},"required":["skill","taskInstruction","embodiment","scene","manipulatedObject","duration","frameCount","qualityTier","dataSource","captureTime","actionStatistics","drift"]},"CompositionProfileQualityFindingListResponseDto":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/QualityFindingDto"}},"nextPageToken":{"type":"string"},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]}},"required":["data","meta"]},"CompositionProfileRequestResponseDto":{"type":"object","properties":{"scheduled":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"workflowRunId":{"type":"string","nullable":true},"inputDigest":{"type":"string"},"profile":{"$ref":"#/components/schemas/DatasetCompositionProfileSummaryDto","nullable":true}},"required":["scheduled","workflowRunId","inputDigest","profile"]},"CompositionReferenceSetDto":{"type":"object","properties":{"entries":{"maxItems":32,"type":"array","items":{"$ref":"#/components/schemas/CompositionReferenceSetEntryDto"}}}},"CompositionReferenceSetEntryDto":{"type":"object","properties":{"profileId":{"type":"string","nullable":true,"format":"uuid"},"datasetVersionId":{"type":"string","nullable":true,"format":"uuid"},"selectionId":{"type":"string","nullable":true,"format":"uuid"},"weight":{"type":"number"}}},"CompositionTrajectoryDimensionStats":{"type":"object","properties":{"dimensionIndex":{"type":"number"},"sourceKey":{"type":"string"},"declaredUnit":{"type":"string","nullable":true},"semanticName":{"type":"string","nullable":true},"scaleDenominator":{"type":"number","nullable":true},"declaredMin":{"type":"number","nullable":true},"declaredMax":{"type":"number","nullable":true},"magnitude":{"$ref":"#/components/schemas/ContinuousDistributionSummary","nullable":true},"signedValue":{"$ref":"#/components/schemas/ContinuousDistributionSummary","nullable":true},"velocity":{"$ref":"#/components/schemas/ContinuousDistributionSummary","nullable":true},"acceleration":{"$ref":"#/components/schemas/ContinuousDistributionSummary","nullable":true},"jerk":{"$ref":"#/components/schemas/ContinuousDistributionSummary","nullable":true}},"required":["dimensionIndex","sourceKey","declaredUnit","semanticName","scaleDenominator","declaredMin","declaredMax","magnitude","signedValue","velocity","acceleration","jerk"]},"CompositionTrajectorySourceIdentity":{"type":"object","properties":{"kind":{"type":"string","enum":["imu","action","mag","pose"],"nullable":true},"featureKey":{"type":"string","nullable":true},"schemaFingerprint":{"type":"string","nullable":true},"gridHz":{"type":"number","enum":[30],"nullable":true},"gridAvailable":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["kind","featureKey","schemaFingerprint","gridHz","gridAvailable"]},"ComputeProfileSummaryDto":{"type":"object","properties":{"code":{"type":"string"},"displayName":{"type":"string"},"gpuCount":{"type":"number"},"minGpuMemoryGb":{"type":"number"},"costClass":{"type":"string"},"latencyClass":{"type":"string"},"maxDurationSeconds":{"type":"number"},"isActive":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["code","displayName","gpuCount","minGpuMemoryGb","costClass","latencyClass","maxDurationSeconds","isActive"]},"ConfirmProjectImportAttemptBodyDto":{"type":"object","properties":{"credentials":{"$ref":"#/components/schemas/CredentialsDto"},"conditionalIdentitySupported":{"type":"boolean"}},"required":["credentials"]},"ConsumeCliLoginBodyDto":{"type":"object","properties":{"pollSecret":{"type":"string","minLength":16}},"required":["pollSecret"]},"ConsumeCliLoginResponseDto":{"type":"object","properties":{"token":{"type":"string"},"apiKey":{"$ref":"#/components/schemas/ApiKeySummaryDto"}},"required":["token","apiKey"]},"ContainerRunSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string","nullable":true},"workflowRunId":{"type":"string","nullable":true},"algorithmRevisionId":{"type":"string","nullable":true},"trainingJobId":{"type":"string","nullable":true},"inferenceDeploymentId":{"type":"string","nullable":true},"runKind":{"type":"string","enum":["training","workflow-processor","inference"]},"kind":{"type":"string","enum":["processor","file-downloader","quality-extractor","legacy-job","trainer","inference-server"]},"k8sNamespace":{"type":"string"},"k8sJobName":{"type":"string"},"k8sPodName":{"type":"string"},"k8sPodUid":{"type":"string"},"k8sNodeName":{"type":"string","nullable":true},"containerName":{"type":"string"},"imageRef":{"type":"string","nullable":true},"resourceRequests":{"$ref":"#/components/schemas/Record","nullable":true},"resourceLimits":{"$ref":"#/components/schemas/Record","nullable":true},"startedAt":{"type":"string"},"finishedAt":{"type":"string"},"durationSeconds":{"type":"number"},"exitCode":{"type":"number","nullable":true},"terminationReason":{"type":"string","nullable":true},"logObjectKey":{"type":"string","nullable":true},"logSizeBytes":{"type":"string","nullable":true},"logTruncated":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"logArchivedAt":{"type":"string","nullable":true},"logRetentionExpiresAt":{"type":"string","nullable":true},"createdAt":{"type":"string"}},"required":["id","tenantId","projectId","workflowRunId","algorithmRevisionId","kind","k8sNamespace","k8sJobName","k8sPodName","k8sPodUid","k8sNodeName","containerName","imageRef","resourceRequests","resourceLimits","startedAt","finishedAt","durationSeconds","exitCode","terminationReason","logObjectKey","logSizeBytes","logTruncated","logArchivedAt","logRetentionExpiresAt","createdAt"]},"ContinuousDistributionSummary":{"type":"object","properties":{"quantileGrid":{"type":"array","items":{"type":"number"}},"values":{"type":"array","items":{"type":"number"}},"count":{"type":"number"},"missingCount":{"type":"number"},"min":{"type":"number"},"max":{"type":"number"},"mean":{"type":"number"},"stddev":{"type":"number"}},"required":["quantileGrid","values","count","missingCount","min","max","mean","stddev"]},"ContractCheckRequestResultDto":{"type":"object","properties":{"id":{"type":"string"},"datasetVersionId":{"type":"string"},"contractRevisionId":{"type":"string"},"status":{"type":"string"},"summary":{"$ref":"#/components/schemas/SchemaDriftSummaryDto"},"checkResults":{"type":"array","items":{"$ref":"#/components/schemas/AssetCheckResultDto"}},"createdAt":{"type":"string"}},"required":["id","datasetVersionId","contractRevisionId","status","summary","checkResults","createdAt"]},"ControlInferenceDeploymentBodyDto":{"type":"object","properties":{"action":{"type":"string","enum":["start","stop"]}},"required":["action"]},"CreateAlgorithmBuildBodyDto":{"type":"object","properties":{"kind":{"type":"string","enum":["cloud_build","archive_import"]},"version":{"type":"string","nullable":true},"contentLength":{"type":"number","nullable":true},"git":{"nullable":true,"type":"object","allOf":[{"$ref":"#/components/schemas/GitSourceDto"}]}},"required":["kind"]},"CreateAlgorithmDefinitionBodyDto":{"type":"object","properties":{"projectId":{"type":"string","nullable":true,"format":"uuid"},"code":{"type":"string","nullable":true},"name":{"type":"string"},"description":{"type":"string","nullable":true},"category":{"type":"string","nullable":true},"tags":{"type":"array","items":{"type":"string"}},"imageRef":{"type":"string","nullable":true},"requestedEgressDomains":{"type":"array","items":{"type":"string"}},"paramSchema":{"type":"object","additionalProperties":true,"nullable":true},"outputSchema":{"type":"object","additionalProperties":true,"nullable":true},"resourceDefaults":{"type":"object","additionalProperties":true,"nullable":true},"registryServer":{"type":"string","nullable":true,"description":"Private registry credentials (for imageRef). Persisted only in internal storage\non the revision; redacted from all public responses and summaries."},"registryUsername":{"type":"string","nullable":true},"registryPassword":{"type":"string","nullable":true},"acceptedInputFormats":{"type":"array","items":{"type":"string"}}},"required":["name"]},"CreateAlgorithmRevisionBodyDto":{"type":"object","properties":{"imageRef":{"type":"string"},"requestedEgressDomains":{"type":"array","items":{"type":"string"}},"paramSchema":{"type":"object","additionalProperties":true,"nullable":true},"outputSchema":{"type":"object","additionalProperties":true,"nullable":true},"resourceDefaults":{"type":"object","additionalProperties":true,"nullable":true},"registryServer":{"type":"string","nullable":true,"description":"Private registry credentials (for imageRef). Persisted only in internal storage\non the revision; redacted from all public responses and summaries."},"registryUsername":{"type":"string","nullable":true},"registryPassword":{"type":"string","nullable":true},"acceptedInputFormats":{"type":"array","items":{"type":"string"}}},"required":["imageRef"]},"CreateAlgorithmSampleRunBodyDto":{"type":"object","properties":{"package":{"type":"object","additionalProperties":true},"recordingIds":{"type":"array","items":{"type":"string"}},"params":{"type":"object","additionalProperties":true},"inputKind":{"type":"string","enum":["metadata_only","recording_files"]}},"required":["package","recordingIds"]},"CreateAlgorithmVersionSuggestionBodyDto":{"type":"object","properties":{"package":{"type":"object","additionalProperties":true}},"required":["package"]},"CreateAnnotationJobBodyDto":{"type":"object","properties":{"kind":{"type":"string"},"name":{"type":"string"},"instructionsMd":{"type":"string","nullable":true},"exampleEpisodeId":{"type":"string","nullable":true},"fieldsJson":{"type":"array","items":{"type":"string"}},"reviewerMembershipId":{"type":"string","nullable":true},"dueAt":{"type":"string","nullable":true},"distribution":{"type":"string"},"assigneeMembershipIds":{"type":"array","items":{"type":"string"}},"selection":{"type":"object","additionalProperties":true}},"required":["kind","name","distribution","assigneeMembershipIds","selection"]},"CreateApiKeyBodyDto":{"type":"object","properties":{"expiresAt":{"type":"string","nullable":true,"format":"date-time"},"name":{"type":"string"},"permissions":{"type":"array","description":"Required at the service layer; empty or omitted is VALIDATION_ERROR.","items":{"type":"string"},"enum":["project:read","project:write","project:manage","member:read","member:manage","dataset:read","dataset:write","annotation:read","annotation:write","annotation:review","annotation-job:manage","upload:read","upload:write","collection:manage","collection:deliver","workflow:read","workflow:run","workflow:manage","approval:read","approval:decide","algorithm:read","algorithm:write","export:read","export:write","training:read","training:write","quality:read","quality:write","recipe:read","recipe:manage","skill-taxonomy:manage","task:read","task:write","deployment:read","deployment:write","model-image:read","model-image:write","model-version:read","model-version:write","inference-deployment:read","inference-deployment:write","analytics:read","vision:annotate","tenant:read","tenant:manage","billing:read","billing:write","apikey:read","apikey:write","apikey:manage","audit:read"]},"scopeAllProjects":{"type":"boolean","description":"Required with projectIds: true for every project, false for projectIds only."},"projectIds":{"description":"Required (non-empty) when scopeAllProjects is false.","type":"array","items":{"type":"string","format":"uuid"}}},"required":["name"]},"CreateApiKeyResponseDto":{"type":"object","properties":{"apiKey":{"$ref":"#/components/schemas/ApiKeySummaryDto"},"token":{"type":"string"}},"required":["apiKey","token"]},"CreateCaptureSessionBodyDto":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":120}},"required":["name"]},"CreateCliLoginRequestResponseDto":{"type":"object","properties":{"id":{"type":"string"},"loginUrl":{"type":"string"},"pollSecret":{"type":"string"},"expiresAt":{"type":"string"},"pollIntervalSeconds":{"type":"number"}},"required":["id","loginUrl","pollSecret","expiresAt","pollIntervalSeconds"]},"CreateCollectionAssignmentBodyDto":{"type":"object","properties":{"collectorMembershipId":{"type":"string","format":"uuid"},"taskId":{"type":"string","nullable":true,"format":"uuid"}},"required":["collectorMembershipId"]},"CreateCollectionConsentAcceptanceBodyDto":{"type":"object","properties":{"consentId":{"type":"string","format":"uuid"}},"required":["consentId"]},"CreateCollectionConsentBodyDto":{"type":"object","properties":{"textMd":{"type":"string","minLength":1}},"required":["textMd"]},"CreateCollectionDeliveryBatchBodyDto":{"type":"object","properties":{"collectionOrderId":{"type":"string","format":"uuid"},"supersedesDeliveryBatchId":{"type":"string","nullable":true,"format":"uuid","description":"Rejected or partially accepted delivery batch this declaration replaces. Copies attemptGroupKey and increments attemptNumber once."},"deliveryNumber":{"type":"string","nullable":true,"minLength":1,"description":"Required for a first delivery. Generated for replacements when omitted."},"supplierProjectMembershipId":{"type":"string","nullable":true,"format":"uuid","description":"Supplier project membership. Managers may set this; data suppliers use their own membership."},"sourceMetadata":{"type":"object","additionalProperties":true,"nullable":true},"declaredContent":{"type":"object","additionalProperties":true,"nullable":true}},"required":["collectionOrderId"]},"CreateCollectionMediaUploadBodyDto":{"type":"object","properties":{"fileName":{"type":"string","minLength":1,"maxLength":255},"contentType":{"type":"string","nullable":true},"sizeBytes":{"type":"number","nullable":true,"minimum":1}},"required":["fileName"]},"CreateCollectionOrderBodyDto":{"type":"object","properties":{"orderNumber":{"type":"string","minLength":1,"maxLength":128},"title":{"type":"string","minLength":1,"maxLength":200},"description":{"type":"string","nullable":true},"templateId":{"type":"string","nullable":true,"format":"uuid"},"acceptanceRules":{"type":"object","additionalProperties":true},"segmentationJobId":{"type":"string","nullable":true,"format":"uuid"},"sourceMetadataSchemaJson":{"type":"object","additionalProperties":true,"nullable":true},"deadlineAt":{"type":"string","nullable":true}},"required":["orderNumber","title"]},"CreateCollectionQuotaBodyDto":{"type":"object","properties":{"taskId":{"type":"string","format":"uuid"},"sceneId":{"type":"string","nullable":true,"format":"uuid"},"targetHours":{"type":"number","nullable":true},"targetSubmissions":{"type":"number","nullable":true},"perCollectorCap":{"type":"number","nullable":true}},"required":["taskId"]},"CreateCollectionReportBodyDto":{"type":"object","properties":{"periodStart":{"type":"string","format":"date-time"},"periodEnd":{"type":"string","format":"date-time"},"grouping":{"enum":["collector","task","scene"],"type":"string"}},"required":["periodStart","periodEnd","grouping"]},"CreateCollectionSceneBodyDto":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"description":{"type":"string","nullable":true}},"required":["name"]},"CreateCollectionSubmissionReviewBodyDto":{"type":"object","properties":{"decision":{"enum":["accepted","rejected"],"type":"string"},"reasonCode":{"enum":["consent_missing","privacy_not_cleared","recording_length","modality_missing","hands_visible","quality_check_failed","processing_failed","processing_cancelled","reviewer_other"],"minLength":1,"maxLength":64,"type":"string"},"reasonDetail":{"type":"string","maxLength":500}},"required":["decision"]},"CreateCollectionTaskBodyDto":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"instructionJson":{"$ref":"#/components/schemas/CollectionInstructionBodyDto"},"startCondition":{"type":"string","minLength":1},"endCondition":{"type":"string","minLength":1},"allowedVariation":{"type":"string","nullable":true},"durationMinS":{"type":"number","nullable":true},"durationMaxS":{"type":"number","nullable":true},"requiredCameras":{"type":"array","items":{"type":"string"},"enum":["head","head_left","head_right","wrist_left","wrist_right","chest","third_person","top","depth","other"]},"requiredModalities":{"type":"array","items":{"type":"string"},"enum":["imu","hand_pose","head_pose","depth"]},"minHandsVisible":{"type":"number","nullable":true,"minimum":0,"maximum":1},"recordingMode":{"enum":["continuous","single_task"],"type":"string"},"orderIndex":{"type":"number","minimum":0}},"required":["name","startCondition","endCondition","orderIndex"]},"CreateCompositionProfileRequestBodyDto":{"type":"object","properties":{"itemSetMode":{"enum":["all","accepted","all_and_accepted"],"type":"string"},"trajectorySourceIdentity":{"type":"string","nullable":true},"referenceProfileId":{"type":"string","format":"uuid"},"referenceSet":{"nullable":true,"type":"object","allOf":[{"$ref":"#/components/schemas/CompositionReferenceSetDto"}]}}},"CreateContractCheckBodyDto":{"type":"object","properties":{"contractRevisionId":{"type":"string"}},"required":["contractRevisionId"]},"CreateDataContractBodyDto":{"type":"object","properties":{"name":{"type":"string"},"slug":{"type":"string"},"description":{"type":"string","nullable":true},"specJson":{"$ref":"#/components/schemas/DataContractSpecBodyDto"},"blocking":{"type":"boolean"},"publish":{"type":"boolean"}},"required":["name","specJson"]},"CreateDataContractRevisionBodyDto":{"type":"object","properties":{"specJson":{"$ref":"#/components/schemas/DataContractSpecBodyDto"},"blocking":{"type":"boolean"},"publish":{"type":"boolean"}},"required":["specJson"]},"CreateDatasetBodyDto":{"type":"object","properties":{"projectId":{"type":"string","format":"uuid"},"slug":{"type":"string"},"name":{"type":"string"},"description":{"type":"string","nullable":true}},"required":["projectId","name"]},"CreateDatasetFrameSpatialAnnotationBodyDto":{"type":"object","properties":{"datasetVersionId":{"type":"string","nullable":true,"format":"uuid"},"datasetVersionFileId":{"type":"string","format":"uuid"},"frameIndex":{"type":"number","minimum":0},"frameStampSec":{"type":"number","nullable":true,"minimum":-9007199254740991,"maximum":9007199254740991},"frameStampNsec":{"type":"number","nullable":true,"minimum":0,"maximum":999999999},"timeReference":{"type":"string"},"datasetClassId":{"type":"string","nullable":true,"format":"uuid"},"className":{"type":"string","nullable":true},"trackId":{"type":"string","nullable":true},"trackKey":{"type":"string","nullable":true},"bboxX":{"type":"number"},"bboxY":{"type":"number"},"bboxWidth":{"type":"number"},"bboxHeight":{"type":"number"},"occluded":{"type":"boolean","nullable":true},"truncated":{"type":"boolean","nullable":true},"reviewStatus":{"type":"string"},"status":{"type":"string"},"attributesJson":{"type":"object","additionalProperties":true,"nullable":true}},"required":["datasetVersionFileId","frameIndex","timeReference","bboxX","bboxY","bboxWidth","bboxHeight"]},"CreateDatasetGovernanceTagBodyDto":{"type":"object","properties":{"tagKey":{"type":"string","minLength":1,"maxLength":64},"tagValue":{"type":"string","minLength":1,"maxLength":256}},"required":["tagKey","tagValue"]},"CreateDatasetTimeRangeAnnotationBodyDto":{"type":"object","properties":{"datasetVersionId":{"type":"string","nullable":true,"format":"uuid"},"annotationSchemaId":{"type":"string","nullable":true,"format":"uuid"},"segmentKind":{"type":"string","enum":["action","segment","event","phase","quality-issue","task","subtask","skill"]},"startSec":{"type":"number","minimum":-9007199254740991,"maximum":9007199254740991},"startNsec":{"type":"number","minimum":0,"maximum":999999999},"endSec":{"type":"number","minimum":-9007199254740991,"maximum":9007199254740991},"endNsec":{"type":"number","minimum":0,"maximum":999999999},"timeReference":{"type":"string"},"title":{"type":"string","nullable":true},"naturalLanguageInstruction":{"type":"string","nullable":true},"success":{"type":"boolean","nullable":true},"score":{"type":"number","nullable":true},"failureReason":{"type":"string","nullable":true},"parentId":{"type":"string","nullable":true,"format":"uuid"},"orderIndex":{"type":"number"},"reviewStatus":{"type":"string"},"status":{"type":"string"},"attributesJson":{"type":"object","additionalProperties":true,"nullable":true}},"required":["startSec","endSec","timeReference"]},"CreateDatasetVersionCleaningJobRequestDto":{"type":"object","properties":{"steps":{"type":"array","items":{"$ref":"#/components/schemas/RosCleaningStepDto"}},"outputSourceType":{"type":"string"},"versionName":{"type":"string","nullable":true},"description":{"type":"string","nullable":true}},"required":["steps"]},"CreateDeploymentPackageBodyDto":{"type":"object","properties":{"sourceArtifactId":{"type":"string","format":"uuid"},"sourceType":{"type":"string"},"manifestJson":{"type":"object","additionalProperties":true,"nullable":true}},"required":["sourceArtifactId","sourceType"]},"CreateDownloadSessionBodyDto":{"type":"object","properties":{"exportJobId":{"type":"string","format":"uuid"},"artifactId":{"type":"string","format":"uuid"},"datasetVersionId":{"type":"string","format":"uuid"},"deliveryMode":{"type":"string","enum":["aws-cli","mc","https-manifest"]},"expiresInSeconds":{"type":"number","minimum":300,"maximum":86400}}},"CreateDownloadSessionPresignedGetUrlBatchBodyDto":{"type":"object","properties":{"sessionToken":{"type":"string","minLength":10}},"required":["sessionToken"]},"CreateDownloadSessionPresignedGetUrlBatchResponseDto":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/DownloadPresignedGetUrlItemDto"}}},"required":["items"]},"CreateDownloadSessionResponseDto":{"type":"object","properties":{"session":{"$ref":"#/components/schemas/DownloadSessionSummaryDto"},"sessionToken":{"type":"string"},"providerAccessPayload":{"$ref":"#/components/schemas/Record","nullable":true},"credential":{"$ref":"#/components/schemas/ScopedDownloadCredentialDto","nullable":true},"fallbackReason":{"type":"string","nullable":true}},"required":["session","sessionToken","providerAccessPayload"]},"CreateEdgeInferencePackageBodyDto":{"type":"object","properties":{"embodimentProfileId":{"type":"string","format":"uuid"},"mode":{"type":"string","enum":["local","remote_ws"]},"strategyKey":{"type":"string"},"remotePolicyHost":{"type":"string"},"remotePolicyPort":{"type":"number","minimum":1,"maximum":65535},"steps":{"type":"number","minimum":1,"maximum":100000},"targetArch":{"type":"string","description":"Image line (ADR 0145 §6). Jetson is a separate line, not a platform.","enum":["x86-cuda","jetson-jp6","cpu"]},"wireProtocols":{"type":"array","description":"Non-empty subset when provided; defaults to `openpi-ws` only.","minItems":1,"items":{"type":"string"},"enum":["openpi-ws","lerobot-grpc"]},"useFakeTransport":{"type":"boolean"}},"required":["embodimentProfileId","mode"]},"CreateEpisodeExclusionRequestDto":{"type":"object","properties":{"action":{"type":"string","enum":["exclude","restore"]},"datasetVersionItemIds":{"description":"dataset_version_item ids (one selector required; validated in the service).","minItems":1,"maxItems":500,"type":"array","items":{"type":"string","format":"uuid"}},"sampleKeys":{"description":"Alternative selector: version-unique sampleKeys.","minItems":1,"maxItems":500,"type":"array","items":{"type":"string"}},"episodeIndexes":{"description":"Alternative selector: episode indexes within the version.","minItems":1,"maxItems":500,"type":"array","items":{"type":"number","minimum":0}},"checkId":{"type":"string","description":"Exclusion attributed to a catalog checkId (validated in the service).","maxLength":200},"note":{"type":"string","description":"Optional free-form note recorded in the audit entry.","maxLength":2000}},"required":["action"]},"CreateEpisodeRevisionBodyDto":{"type":"object","properties":{"expectedHeadRevisionId":{"type":"string","format":"uuid"},"startNs":{"type":"number"},"endNs":{"type":"number"},"task":{"type":"object","additionalProperties":true,"nullable":true},"outcome":{"type":"string","nullable":true},"subtasks":{"type":"array","items":{"type":"object"}},"tags":{"type":"array","items":{"type":"string"}},"attributes":{"type":"object","additionalProperties":{"type":"string"}},"splitTag":{"type":"string","nullable":true},"excluded":{"type":"boolean"},"deleted":{"type":"boolean"},"comment":{"type":"string"},"commentAtNs":{"type":"number"},"annotationJobId":{"type":"string","format":"uuid"}},"required":["expectedHeadRevisionId"]},"CreateImportedCheckpointBodyDto":{"type":"object","properties":{"relativePaths":{"minItems":1,"type":"array","items":{"type":"string","maxLength":512}}},"required":["relativePaths"]},"CreateInferenceDeploymentBodyDto":{"type":"object","properties":{"modelVersionId":{"type":"string","format":"uuid"},"inferenceImageRevisionId":{"type":"string","format":"uuid"},"gpuClassCode":{"type":"string","nullable":true},"gpuCount":{"type":"number","minimum":0,"maximum":8},"mode":{"type":"string","enum":["online","offline-package"]},"embodimentProfileId":{"type":"string","nullable":true,"format":"uuid"}},"required":["modelVersionId","inferenceImageRevisionId"]},"CreateInvoiceSnapshotBodyDto":{"type":"object","properties":{"billingPeriodStart":{"type":"string","format":"date-time"},"billingPeriodEnd":{"type":"string","format":"date-time"}},"required":["billingPeriodStart","billingPeriodEnd"]},"CreateLegalHoldBodyDto":{"type":"object","properties":{"scopeType":{"type":"string","enum":["tenant","project","dataset","datasetVersion","storageObject"]},"scopeId":{"type":"string","nullable":true,"format":"uuid"},"reason":{"type":"string"}},"required":["scopeType","reason"]},"CreateModelEvaluationBodyDto":{"type":"object","properties":{"projectVersionId":{"type":"string","format":"uuid"},"checkpointId":{"type":"string","format":"uuid"},"split":{"type":"string","enum":["val","test"]},"stride":{"type":"number","minimum":1,"maximum":10000},"maxFrames":{"type":"number","minimum":1,"maximum":100000}},"required":["split"]},"CreateModelImageDefinitionBodyDto":{"type":"object","properties":{"projectId":{"type":"string","nullable":true,"format":"uuid"},"code":{"type":"string","nullable":true},"name":{"type":"string"},"description":{"type":"string","nullable":true},"imageKind":{"type":"string","enum":["training","inference"]},"category":{"type":"string","nullable":true},"tags":{"type":"array","items":{"type":"string"}},"imageRef":{"type":"string","nullable":true},"runnerContractVersion":{"type":"string","nullable":true},"paramSchema":{"type":"object","additionalProperties":true,"nullable":true},"outputSchema":{"type":"object","additionalProperties":true,"nullable":true},"resourceDefaults":{"type":"object","additionalProperties":true,"nullable":true},"minGpuMemoryGb":{"type":"number","nullable":true,"minimum":1},"recommendedGpuMemoryGb":{"type":"number","nullable":true,"minimum":1},"maxGpuCount":{"type":"number","nullable":true,"minimum":1,"maximum":64},"supportsMultiGpu":{"type":"boolean"},"frameworkTags":{"type":"array","items":{"type":"string"}},"registryServer":{"type":"string","nullable":true},"registryUsername":{"type":"string","nullable":true},"registryPassword":{"type":"string","nullable":true}},"required":["name","imageKind"]},"CreateModelImageRevisionBodyDto":{"type":"object","properties":{"imageRef":{"type":"string"},"runnerContractVersion":{"type":"string"},"paramSchema":{"type":"object","additionalProperties":true,"nullable":true},"outputSchema":{"type":"object","additionalProperties":true,"nullable":true},"resourceDefaults":{"type":"object","additionalProperties":true,"nullable":true},"minGpuMemoryGb":{"type":"number","nullable":true,"minimum":1},"recommendedGpuMemoryGb":{"type":"number","nullable":true,"minimum":1},"maxGpuCount":{"type":"number","nullable":true,"minimum":1,"maximum":64},"supportsMultiGpu":{"type":"boolean"},"frameworkTags":{"type":"array","items":{"type":"string"}},"registryServer":{"type":"string","nullable":true},"registryUsername":{"type":"string","nullable":true},"registryPassword":{"type":"string","nullable":true}},"required":["imageRef"]},"CreatePipelineDefinitionBodyDto":{"type":"object","properties":{"projectId":{"type":"string","format":"uuid"},"code":{"type":"string","nullable":true},"name":{"type":"string"},"description":{"type":"string","nullable":true},"triggerMode":{"type":"string","nullable":true},"concurrencyLimit":{"type":"integer","nullable":true},"spec":{"type":"object","additionalProperties":true,"nullable":true}},"required":["projectId","name"]},"CreatePipelineDefinitionRevisionBodyDto":{"type":"object","properties":{"graphJson":{"type":"object","additionalProperties":true},"inputSchema":{"type":"object","additionalProperties":true,"nullable":true},"visualTemplate":{"type":"object","additionalProperties":true,"nullable":true},"publish":{"type":"boolean","nullable":true}},"required":["graphJson"]},"CreateProjectBodyDto":{"type":"object","properties":{"name":{"type":"string","description":"Display name for the project."},"description":{"type":"string","nullable":true},"visibility":{"enum":["private","internal"],"type":"string"},"dataKind":{"enum":["human","robot","video"],"type":"string"},"dataFormat":{"type":"string","nullable":true,"maxLength":40,"description":"Optional import default hint: a platform data format or a published team format slug (x-<name>); never restricts formats in this project.","example":"x-sim-hdf5"},"robotType":{"type":"string","nullable":true},"defaultFps":{"type":"number","nullable":true,"minimum":1},"defaultTask":{"type":"string","nullable":true,"maxLength":500},"requiresSegmentation":{"type":"boolean"}},"required":["name","visibility"]},"CreateProjectImportJobBodyDto":{"type":"object","properties":{"projectId":{"type":"string"},"importSourceId":{"type":"string","nullable":true},"bucketName":{"type":"string"},"prefix":{"type":"string"},"region":{"type":"string","nullable":true},"provider":{"type":"string"},"conflictPolicy":{"type":"string"},"credentials":{"$ref":"#/components/schemas/CredentialsDto"}},"required":["projectId","bucketName","credentials"]},"CreateProjectImportSourceBodyDto":{"type":"object","properties":{"projectId":{"type":"string"},"bucketName":{"type":"string"},"prefix":{"type":"string"},"region":{"type":"string","nullable":true},"provider":{"type":"string"},"displayName":{"type":"string","nullable":true}},"required":["projectId","bucketName"]},"CreateProjectMemberBodyDto":{"type":"object","properties":{"membershipId":{"type":"string"},"role":{"type":"string","enum":["owner","editor","reviewer","labeler","viewer","uploader","data_supplier"]},"roles":{"type":"array","minItems":1,"items":{"type":"string"},"enum":["owner","editor","reviewer","labeler","viewer","uploader","data_supplier"]}},"required":["membershipId"]},"CreateProjectPipelineBindingBodyDto":{"type":"object","properties":{"workflowDefinitionId":{"type":"string","format":"uuid"},"pinnedRevisionId":{"type":"string","format":"uuid","nullable":true},"paramOverrides":{"type":"object","additionalProperties":true,"nullable":true},"triggerMode":{"enum":["on_upload","manual_only","on-upload-submit","manual"],"type":"string","nullable":true}},"required":["workflowDefinitionId"]},"CreateProjectSkillBodyDto":{"type":"object","properties":{"code":{"type":"string"},"displayLabel":{"type":"string"},"labels":{"type":"object","additionalProperties":true}},"required":["labels"]},"CreateProjectVersionBodyDto":{"type":"object","properties":{"selection":{"$ref":"#/components/schemas/SelectionBodyDto"},"name":{"type":"string","minLength":1,"maxLength":200},"split":{"$ref":"#/components/schemas/SplitConfigBodyDto"},"labelPolicy":{"enum":["current","approved_only"],"type":"string"},"includeFailing":{"type":"boolean"},"includeIncomplete":{"type":"boolean"},"preprocessing":{"$ref":"#/components/schemas/PreprocessingBodyDto"},"readmeMd":{"type":"string","nullable":true,"maxLength":20000},"licence":{"type":"string","nullable":true,"maxLength":2000}},"required":["selection","name"]},"CreateProjectWorkflowRunBodyDto":{"type":"object","properties":{"workflow":{"enum":["project"],"type":"string","nullable":true},"algorithmRevisionId":{"type":"string","format":"uuid","nullable":true},"params":{"type":"object","additionalProperties":true,"nullable":true},"selection":{"type":"object","properties":{"recordingIds":{"type":"string","format":"uuid","nullable":true},"episodeIds":{"type":"string","format":"uuid","nullable":true},"savedViewId":{"type":"string","format":"uuid","nullable":true},"annotationJobId":{"type":"string","format":"uuid","nullable":true}}},"preview":{"type":"boolean","nullable":true}},"required":["selection"]},"CreateRecordingBodyDto":{"type":"object","properties":{"files":{"type":"array","items":{"$ref":"#/components/schemas/CreateUploadSessionFileBodyDto"}},"name":{"type":"string","nullable":true,"minLength":1},"tags":{"type":"array","items":{"type":"string"}},"dataFormat":{"type":"string","nullable":true},"sourceKind":{"enum":["human","robot","umi"],"type":"string"},"recordingShape":{"enum":["continuous","single_task","presegmented"],"type":"string"},"vendorSchema":{"type":"string","nullable":true},"taskId":{"type":"string","nullable":true},"task":{"type":"string","nullable":true,"description":"Robot task text; wins over the project default task (FV-09)."},"durationS":{"type":"number","nullable":true},"sourceEpisodes":{"type":"array","items":{"$ref":"#/components/schemas/ImportSourceEpisodeBodyDto"}},"captureSessionId":{"type":"string","nullable":true},"sourceTime":{"type":"string","nullable":true},"collectionTaskId":{"type":"string","nullable":true,"description":"Reserved; validated in W41.","format":"uuid"},"sceneId":{"type":"string","nullable":true,"description":"Reserved; validated in W41.","format":"uuid"},"storageBucketId":{"type":"string","nullable":true,"format":"uuid"},"captureLabels":{"nullable":true,"description":"Uploader labels (EGO-DATA P5). Shape and size are checked by the service\nwith the named codes RECORDING_CAPTURE_LABELS_INVALID / _TOO_LARGE.","type":"object","allOf":[{"$ref":"#/components/schemas/CaptureLabelsSchemaDto"}]},"source":{"$ref":"#/components/schemas/CreateRecordingHubSourceBodyDto"},"accessToken":{"type":"string","description":"One-shot Hub token. Used once, not stored.","minLength":1}}},"CreateRecordingHubSourceBodyDto":{"type":"object","properties":{"type":{"type":"string","enum":["hugging_face"]},"repoId":{"type":"string","example":"lerobot/pusht"},"revision":{"type":"string","minLength":1},"subPath":{"type":"string","minLength":1}},"required":["type","repoId"]},"CreateRecordingPrivacyConsentBodyDto":{"type":"object","properties":{"fileName":{"type":"string","minLength":1,"maxLength":255},"contentType":{"enum":["application/pdf","image/jpeg","image/png"],"type":"string"},"sizeBytes":{"type":"number","minimum":1,"maximum":20971520},"sha256":{"type":"string","pattern":"^[0-9a-fA-F]{64}$","minLength":64,"maxLength":64}},"required":["fileName","contentType","sizeBytes","sha256"]},"CreateRecordingPrivacyConsentResponseDto":{"type":"object","properties":{"consentId":{"type":"string"},"uploadUrl":{"type":"string"},"uploadUrlExpiresAt":{"type":"string"}},"required":["consentId","uploadUrl","uploadUrlExpiresAt"]},"CreateRecordingResponseDto":{"type":"object","properties":{"recording":{"$ref":"#/components/schemas/RecordingDto"},"uploadBatchId":{"type":"string"},"sessions":{"type":"array","items":{"$ref":"#/components/schemas/UploadSessionSummaryDto"}}},"required":["recording","uploadBatchId"]},"CreateRegistryTokenBodyDto":{"type":"object","properties":{"name":{"type":"string"}},"required":["name"]},"CreateRepairTaskBodyDto":{"type":"object","properties":{"projectId":{"type":"string","format":"uuid"},"scopeType":{"type":"string","enum":["project","dataset","dataset_version"]},"datasetId":{"type":"string","nullable":true,"format":"uuid"},"datasetVersionId":{"type":"string","nullable":true,"format":"uuid"},"sourceType":{"type":"string","enum":["health-check","workflow-run","workflow_item","quality-rule","annotation-gap","export-job","policy-gate","collection-delivery-batch","collection-submission"]},"sourceId":{"type":"string","format":"uuid"},"title":{"type":"string","nullable":true,"maxLength":256},"description":{"type":"string","nullable":true,"maxLength":4000},"severity":{"type":"string","enum":["info","warning","blocking"]},"assigneeProjectMembershipId":{"type":"string","nullable":true,"format":"uuid"},"dueAt":{"type":"string","nullable":true}},"required":["projectId","scopeType","sourceType","sourceId"]},"CreateReviewDecisionBodyDto":{"type":"object","properties":{"decision":{"type":"string","enum":["approve","reject"]},"comment":{"type":"string","nullable":true},"acceptedItemIds":{"type":"array","items":{"type":"string"}},"rejectedItemIds":{"type":"array","items":{"type":"string"}},"rejectedQueryDescriptors":{"type":"array","items":{"type":"string"}}},"required":["decision"]},"CreateRigProfileBodyDto":{"type":"object","properties":{"document":{"type":"object","additionalProperties":true,"description":"An `embodiflow-rig-profile/v1` document; `needsConfirmation` fields allowed."},"recordingId":{"type":"string","description":"The recording the draft was made from.","format":"uuid"},"facts":{"type":"object","additionalProperties":true,"description":"The `facts` of the draft response, kept so the editor can show them again."}},"required":["document"]},"CreateRigProfileDraftBodyDto":{"type":"object","properties":{"recordingId":{"type":"string","format":"uuid"}},"required":["recordingId"]},"CreateSavedViewBodyDto":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":80},"filter":{"type":"object","additionalProperties":true},"shared":{"type":"boolean"}},"required":["name","filter"]},"CreateScimConnectionRequestDto":{"type":"object","properties":{"name":{"type":"string"},"issuer":{"type":"string"}},"required":["name"]},"CreateScimConnectionResponseDto":{"type":"object","properties":{"connection":{"$ref":"#/components/schemas/ScimConnectionAdminDto"},"token":{"type":"string"}},"required":["connection","token"]},"CreateSessionBodyDto":{"type":"object","properties":{"kind":{"enum":["email_password","oauth"],"type":"string"},"email":{"type":"string","format":"email"},"password":{"type":"string","minLength":1},"provider":{"enum":["github","google"],"type":"string"},"providerSubject":{"type":"string"},"providerEmail":{"type":"string","nullable":true,"format":"email"},"displayName":{"type":"string","nullable":true},"avatarUrl":{"type":"string","nullable":true},"profileSnapshot":{"type":"string","nullable":true}},"required":["kind"]},"CreateSkillTaxonomyBodyDto":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":120},"scopeLevel":{"enum":["tenant","project"],"type":"string"},"projectId":{"type":"string","description":"Required when scopeLevel is project. Ignored for tenant-scope creates.","format":"uuid"}},"required":["name","scopeLevel"]},"CreateSkillTaxonomyTermBodyDto":{"type":"object","properties":{"termIdentity":{"type":"string","minLength":1,"maxLength":200},"code":{"type":"string","minLength":1,"maxLength":120},"displayLabel":{"type":"string","minLength":1,"maxLength":120},"labels":{"type":"object","additionalProperties":{"type":"string"}},"parentTermIdentity":{"type":"string","nullable":true},"assignable":{"type":"boolean"},"definition":{"type":"string","maxLength":4000},"positiveExamples":{"type":"array","items":{"type":"string"}},"negativeExamples":{"type":"array","items":{"type":"string"}},"enabled":{"type":"boolean"},"status":{"enum":["active","deprecated","retired"],"type":"string"},"successorTermIdentity":{"type":"string","nullable":true}}},"CreateSplitPlanBodyDto":{"type":"object","properties":{"strategy":{"type":"string"},"splitSalt":{"type":"string"},"ratios":{"$ref":"#/components/schemas/SplitRatiosBodyDto"},"stratifyBy":{"type":"array","items":{"type":"string"},"enum":["environment","operatorId","task"]}},"required":["splitSalt"]},"CreateStorageReconciliationJobBodyDto":{"type":"object","properties":{"bucketId":{"type":"string","nullable":true,"format":"uuid"},"idempotencyKey":{"type":"string","nullable":true}}},"CreateTeamDataFormatBodyDto":{"type":"object","properties":{"dataKind":{"type":"string","enum":["robot","human"]},"slug":{"type":"string","description":"`x-<name>`: unique per team and never changed afterwards."},"card":{"type":"object","additionalProperties":true},"converter":{"type":"object","additionalProperties":true}},"required":["dataKind","slug"]},"CreateTeamDataFormatSampleRunBodyDto":{"type":"object","properties":{"recordingId":{"type":"string","format":"uuid"}},"required":["recordingId"]},"CreateTenantBodyDto":{"type":"object","properties":{"name":{"type":"string","description":"Display name for the new tenant."},"storageKey":{"type":"string","description":"Optional storage naming identity (1–20 ASCII letters/digits). Server trims and lowercases to [a-z0-9]{1,20}. Omitted → server generates a 20-char key. Immutable after create. Do not send COS appId or physical bucket names.","minLength":1,"maxLength":20,"pattern":"^[A-Za-z0-9]{1,20}$"}},"required":["name"]},"CreateTenantDeletionRequestBodyDto":{"type":"object","properties":{"clientToken":{"type":"string","nullable":true}}},"CreateTenantInvitationBodyDto":{"type":"object","properties":{"email":{"type":"string","description":"Invitee email. Must include a domain with a real TLD (rejects qa-probe@bad).","example":"user+tag@example.com"},"role":{"enum":["owner","admin","researcher","billing_admin","viewer"],"type":"string"},"expiresInDays":{"type":"number","minimum":1,"maximum":7,"description":"Invitation lifetime in days. Omitted defaults to 7 (ADR 0019). Allowed range 1–7."},"projectGrants":{"description":"Project roles applied when the invitee accepts (SCHEMA §10). Collector grants may include orderId and taskId.","type":"array","items":{"$ref":"#/components/schemas/InvitationProjectGrantBodyDto"}}},"required":["email","role"]},"CreateTenantOffboardingRequestBodyDto":{"type":"object","properties":{"reason":{"type":"string","nullable":true},"exportWindowDays":{"type":"number","minimum":1,"maximum":365},"retentionDays":{"type":"number","minimum":1,"maximum":730}}},"CreateTenantPersonalDataErasureBodyDto":{"type":"object","properties":{"subjectUserId":{"type":"string","format":"uuid"}},"required":["subjectUserId"]},"CreateTenantPersonalDataExportBodyDto":{"type":"object","properties":{"subjectUserId":{"type":"string","format":"uuid"}},"required":["subjectUserId"]},"CreateTenantResponseDataSwaggerDto":{"type":"object","properties":{"tenant":{"$ref":"#/components/schemas/TenantSummarySwaggerDto"},"membership":{"$ref":"#/components/schemas/MembershipSummarySwaggerDto"}},"required":["tenant","membership"]},"CreateTenantResponseDto":{"type":"object","properties":{"tenant":{"$ref":"#/components/schemas/TenantSummaryDto"},"membership":{"$ref":"#/components/schemas/MembershipSummaryDto"}},"required":["tenant","membership"]},"CreateTenantResponseEnvelopeSwaggerDto":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CreateTenantResponseDataSwaggerDto"},"meta":{"type":"object","additionalProperties":true,"example":{"requestId":"018f0000-0000-7000-8000-0000000000aa"}}},"required":["data","meta"]},"CreateTenantSecretBodyDto":{"type":"object","properties":{"name":{"type":"string","pattern":"^[A-Z][A-Z0-9_]{0,63}$"},"value":{"type":"string","minLength":1}},"required":["name","value"]},"CreateTenantSsoConnectionRequestDto":{"type":"object","properties":{"name":{"type":"string"},"protocol":{"type":"string","enum":["oidc","saml"]},"issuer":{"type":"string"},"clientId":{"type":"string"},"clientSecret":{"type":"string"},"secretRef":{"type":"string"},"authorizationEndpoint":{"type":"string"},"tokenEndpoint":{"type":"string"},"jwksUri":{"type":"string"},"samlEntityId":{"type":"string"},"samlAcsUrl":{"type":"string"},"samlMetadataUrl":{"type":"string"},"samlCertificate":{"type":"string"}},"required":["name","protocol"]},"CreateTrainingJobBodyDto":{"type":"object","properties":{"projectId":{"type":"string","format":"uuid"},"trainingArtifactId":{"type":"string","nullable":true,"format":"uuid"},"modelImageRevisionId":{"type":"string","nullable":true,"format":"uuid"},"modelImageCode":{"type":"string","nullable":true,"maxLength":128},"input":{"nullable":true,"type":"object","allOf":[{"$ref":"#/components/schemas/TrainingJobHuggingFaceInputBodyDto"}]},"computeProfileCode":{"type":"string","nullable":true,"description":"When omitted, API auto-selects the smallest fitting ComputeProfile.","maxLength":128},"trainSpec":{"type":"object","additionalProperties":true,"nullable":true},"resumeFromCheckpointArtifactId":{"type":"string","nullable":true,"format":"uuid"}},"required":["projectId"]},"CreateUploadBatchBodyDto":{"type":"object","properties":{"dataSource":{"type":"string","nullable":true,"description":"Optional recording source facet. Only ego_human is accepted when present. Omit for robot recordings. Literal ego_human (underscore); ego-human is rejected."},"dataFormat":{"type":"string","nullable":true},"sourceKind":{"enum":["human","robot","umi"],"type":"string"},"recordingShape":{"enum":["continuous","single_task","presegmented"],"type":"string"},"vendorSchema":{"type":"string","nullable":true},"taskId":{"type":"string","nullable":true},"task":{"type":"string","nullable":true,"description":"Robot task text; wins over the project default (FV-09)."},"durationS":{"type":"number","nullable":true},"sourceEpisodes":{"type":"array","items":{"$ref":"#/components/schemas/ImportSourceEpisodeBodyDto"}},"captureSessions":{"type":"array","items":{"$ref":"#/components/schemas/UploadFileGroupCaptureSessionBodyDto"}},"captureLabels":{"type":"object","additionalProperties":{"type":"object","properties":{"tags":{"type":"array","items":{"type":"string"}},"scene":{"type":"string","nullable":true},"taskDescription":{"type":"string","nullable":true}}},"description":"Labels per planned recording, keyed by plan dataset key. Shape and size\nare checked by the service with RECORDING_CAPTURE_LABELS_* codes."},"sampleForFormatId":{"type":"string","description":"Upload a test sample for the draft of this team data format (FV-20c). The\nsample is only used for that draft's sample runs; it is never listed,\ncounted, versioned or exported. Needs `algorithm:write` and sourceType\n`team-format`.","format":"uuid"},"projectId":{"type":"string","format":"uuid"},"sourceType":{"type":"string"},"metadata":{"type":"object","additionalProperties":true},"manifestFiles":{"type":"array","items":{"$ref":"#/components/schemas/CreateUploadSessionFileBodyDto"}},"groupingOverrides":{"type":"array","items":{"$ref":"#/components/schemas/UploadGroupingOverrideBodyDto"}}},"required":["projectId","sourceType"]},"CreateUploadBatchResponseDto":{"type":"object","properties":{"batch":{"$ref":"#/components/schemas/UploadBatchSummaryDto"},"datasetPlan":{"$ref":"#/components/schemas/UploadDatasetPlanDto","nullable":true}},"required":["batch","datasetPlan"]},"CreateUploadSessionFileBodyDto":{"type":"object","properties":{"role":{"nullable":true,"enum":["calibration","mapping","media"],"type":"string"},"deviceMeta":{"type":"object","additionalProperties":true,"nullable":true},"originalFilename":{"type":"string"},"relativePath":{"type":"string"},"contentType":{"type":"string","nullable":true},"sizeBytes":{"type":"number","minimum":0},"checksumExpected":{"type":"string","nullable":true}},"required":["originalFilename","relativePath","sizeBytes"]},"CreateUploadSessionsBodyDto":{"type":"object","properties":{"uploadBatchId":{"type":"string","format":"uuid"},"storageBucketId":{"type":"string","nullable":true,"format":"uuid"},"files":{"type":"array","items":{"$ref":"#/components/schemas/CreateUploadSessionFileBodyDto"}}},"required":["uploadBatchId","files"]},"CreateUploadSessionsDataSwaggerDto":{"type":"object","properties":{"sessions":{"type":"array","items":{"$ref":"#/components/schemas/UploadSessionSummarySwaggerDto"}}},"required":["sessions"]},"CreateUploadSessionsResponseDto":{"type":"object","properties":{"sessions":{"type":"array","items":{"$ref":"#/components/schemas/UploadSessionSummaryDto"}}},"required":["sessions"]},"CreateUploadSessionsResponseSwaggerDto":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CreateUploadSessionsDataSwaggerDto"}},"required":["data"]},"CreateUsageEstimateBodyDto":{"type":"object","properties":{"descriptor":{"enum":["upload_plan","workflow_run","materialize","export","training","evaluation","try","endpoint_hour"],"type":"string"},"uploadPlanId":{"type":"string","format":"uuid"},"workflowRevisionId":{"type":"string","format":"uuid"},"algorithmRevisionId":{"type":"string","format":"uuid"},"itemCount":{"type":"number","minimum":1},"recordedSeconds":{"type":"number","minimum":0},"projectVersionId":{"type":"string","format":"uuid"},"format":{"type":"string"},"options":{"type":"object","additionalProperties":true},"modelImageRevisionId":{"type":"string","format":"uuid"},"flavor":{"type":"string"},"steps":{"type":"number","minimum":1},"modelVersionId":{"type":"string","format":"uuid"},"split":{"type":"string"},"episodeId":{"type":"string","format":"uuid"}},"required":["descriptor"]},"CreateUserImportBodyDto":{"type":"object","properties":{"rows":{"minItems":1,"maxItems":200,"type":"array","items":{"$ref":"#/components/schemas/UserImportRowBodyDto"}}},"required":["rows"]},"CreateVersionExportBodyDto":{"type":"object","properties":{"format":{"enum":["lerobot-v3","lerobot-v21","original","mp4-json","rlds","hdf5-robomimic"],"type":"string"},"options":{"$ref":"#/components/schemas/VersionExportOptionsBodyDto"}},"required":["format"]},"CreateVersionExportDownloadBodyDto":{"type":"object","properties":{"pageSize":{"type":"number","minimum":1},"pageToken":{"type":"string"},"expiresInSeconds":{"type":"number","minimum":300}}},"CreateVersionTrainingBodyDto":{"type":"object","properties":{"policy":{"enum":["act","diffusion","smolvla","pi0_lora","pi05_lora","groot","wall_oss"],"type":"string"},"computeFlavor":{"type":"string"},"trainingSteps":{"type":"number","minimum":1},"preset":{"enum":["quick","standard","long"],"type":"string"},"advanced":{"$ref":"#/components/schemas/VersionTrainingAdvancedBodyDto"}},"required":["policy","computeFlavor"]},"CreateWebhookEndpointBodyDto":{"type":"object","properties":{"url":{"type":"string","minLength":1,"maxLength":2048},"description":{"type":"string","nullable":true,"maxLength":500},"eventTypes":{"type":"array","items":{"type":"string"}},"projectId":{"type":"string","nullable":true,"format":"uuid"}},"required":["url","eventTypes"]},"CreateWorkflowDefinitionBodyDto":{"type":"object","properties":{"spec":{"type":"object","additionalProperties":true},"layout":{"type":"object","additionalProperties":true},"description":{"type":"string"},"projectId":{"type":"string","format":"uuid"}},"required":["spec"]},"CreateWorkflowDefinitionQueryDto":{"type":"object","properties":{"projectId":{"type":"string","format":"uuid","nullable":true}}},"CreateWorkflowRevisionBodyDto":{"type":"object","properties":{"spec":{"type":"object","additionalProperties":true},"layout":{"type":"object","additionalProperties":true},"basedOnRevision":{"type":"integer","minimum":1}},"required":["spec","basedOnRevision"]},"CreateWorkflowRunBodyDto":{"type":"object","properties":{"workflowDefinitionId":{"type":"string","format":"uuid","nullable":true},"workflowRevisionId":{"type":"string","format":"uuid","nullable":true},"jobType":{"type":"string"},"datasetId":{"type":"string","format":"uuid","nullable":true},"datasetVersionId":{"type":"string","format":"uuid","nullable":true},"uploadBatchId":{"type":"string","format":"uuid","nullable":true},"spec":{"type":"object","additionalProperties":true,"nullable":true},"triggerSource":{"type":"string","nullable":true}},"required":["jobType"]},"CredentialsDto":{"type":"object","properties":{"accessKeyId":{"type":"string"},"secretAccessKey":{"type":"string"}},"required":["accessKeyId","secretAccessKey"]},"CurrentTenantMembershipDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"user":{"$ref":"#/components/schemas/UserSummaryDto"},"role":{"type":"string","enum":["owner","admin","researcher","billing_admin","viewer"]},"status":{"type":"string"},"joinedAt":{"type":"string"},"invitedAt":{"type":"string","nullable":true},"acceptedAt":{"type":"string","nullable":true},"invitedByUserId":{"type":"string","nullable":true},"expiresAt":{"type":"string","nullable":true},"permissionsOverlay":{"$ref":"#/components/schemas/PermissionOverlayDto","nullable":true},"effectivePermissions":{"$ref":"#/components/schemas/EffectivePermissionsSummaryDto"}},"required":["id","tenantId","user","role","status","joinedAt","invitedAt","acceptedAt","invitedByUserId","expiresAt"]},"CurrentUserSessionDto":{"type":"object","properties":{"id":{"type":"string"},"ipAddress":{"type":"string","nullable":true},"userAgent":{"type":"string","nullable":true},"createdAt":{"type":"string"},"lastActiveAt":{"type":"string","nullable":true},"expiresAt":{"type":"string"},"revokedAt":{"type":"string","nullable":true},"currentMembershipId":{"type":"string","nullable":true},"isCurrent":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"status":{"type":"string","enum":["expired","revoked","active"]}},"required":["id","ipAddress","userAgent","createdAt","lastActiveAt","expiresAt","revokedAt","currentMembershipId","isCurrent","status"]},"DashboardMetricsDto":{"type":"object","properties":{"projectCount":{"type":"number"},"datasetCount":{"type":"number"},"runningQualityInspectionJobs":{"type":"number"},"attentionQualityInspectionJobs":{"type":"number"}},"required":["projectCount","datasetCount","runningQualityInspectionJobs","attentionQualityInspectionJobs"]},"DashboardMetricsSummaryDto":{"type":"object","properties":{"metrics":{"$ref":"#/components/schemas/DashboardMetricsDto"}},"required":["metrics"]},"DashboardStatsDataKindDto":{"type":"object","properties":{"dataKind":{"type":"string","enum":["human","robot","video"]},"projects":{"type":"number"},"recordings":{"type":"number"},"episodes":{"type":"number"}},"required":["dataKind","projects","recordings","episodes"]},"DashboardStatsDto":{"type":"object","properties":{"range":{"type":"string","enum":["7d","30d","90d"]},"bucket":{"type":"string","enum":["day","week"]},"periodStart":{"type":"string"},"periodEnd":{"type":"string"},"kpis":{"type":"object","properties":{"projects":{"$ref":"#/components/schemas/DashboardStatsKpiDto"},"recordings":{"$ref":"#/components/schemas/DashboardStatsKpiDto"},"episodes":{"$ref":"#/components/schemas/DashboardStatsKpiDto"},"projectVersions":{"$ref":"#/components/schemas/DashboardStatsKpiDto"},"dataDuration":{"$ref":"#/components/schemas/DashboardStatsDurationKpiDto"}},"required":["projects","recordings","episodes","projectVersions","dataDuration"]},"series":{"type":"array","items":{"$ref":"#/components/schemas/DashboardStatsSeriesBucketDto"}},"byDataKind":{"type":"array","items":{"$ref":"#/components/schemas/DashboardStatsDataKindDto"}},"workflowRuns":{"$ref":"#/components/schemas/DashboardStatsWorkflowRunsDto"},"quality":{"$ref":"#/components/schemas/DashboardStatsQualityDto"},"projects":{"type":"array","items":{"$ref":"#/components/schemas/DashboardStatsProjectDto"}}},"required":["range","bucket","periodStart","periodEnd","kpis","series","byDataKind","workflowRuns","quality","projects"]},"DashboardStatsDurationKpiDto":{"type":"object","properties":{"totalNs":{"type":"string"},"inPeriodNs":{"type":"string"},"previousPeriodNs":{"type":"string"}},"required":["totalNs","inPeriodNs","previousPeriodNs"]},"DashboardStatsKpiDto":{"type":"object","properties":{"total":{"type":"number"},"inPeriod":{"type":"number"},"previousPeriod":{"type":"number"}},"required":["total","inPeriod","previousPeriod"]},"DashboardStatsProjectDto":{"type":"object","properties":{"id":{"type":"string"},"slug":{"type":"string"},"name":{"type":"string"},"dataKind":{"type":"string","enum":["human","robot","video"]},"isSample":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"recordings":{"type":"number"},"episodes":{"type":"number"},"versions":{"type":"number"},"lastActivityAt":{"type":"string","nullable":true}},"required":["id","slug","name","dataKind","isSample","recordings","episodes","versions","lastActivityAt"]},"DashboardStatsQualityDto":{"type":"object","additionalProperties":true},"DashboardStatsQueryDto":{"type":"object","properties":{"range":{"enum":["7d","30d","90d"],"type":"string","nullable":true}}},"DashboardStatsSeriesBucketDto":{"type":"object","properties":{"bucketStart":{"type":"string"},"recordings":{"type":"number"},"episodes":{"type":"number"},"workflowRunsSucceeded":{"type":"number"},"workflowRunsWarnings":{"type":"number"},"workflowRunsFailed":{"type":"number"},"workflowRunsOther":{"type":"number"}},"required":["bucketStart","recordings","episodes","workflowRunsSucceeded","workflowRunsWarnings","workflowRunsFailed","workflowRunsOther"]},"DashboardStatsWorkflowRunsDto":{"type":"object","properties":{"succeeded":{"type":"number"},"warnings":{"type":"number"},"failed":{"type":"number"},"running":{"type":"number"},"other":{"type":"number"}},"required":["succeeded","warnings","failed","running","other"]},"DataContractCanonicalSchemaSpec":{"type":"object","properties":{"requiredFields":{"type":"array","items":{"type":"string"}},"fieldTypes":{"$ref":"#/components/schemas/DataContractFieldTypesSpec"},"allowExtraFields":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}}},"DataContractFeatureSpec":{"type":"object","properties":{"name":{"type":"string"},"required":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"dtype":{"type":"string"}},"required":["name"]},"DataContractFieldConstraintBodyDto":{"type":"object","properties":{"requiredFields":{"type":"array","items":{"type":"string"}},"fieldTypes":{"type":"object","additionalProperties":{"type":"string","enum":["string","number","boolean","object","array"]}},"allowExtraFields":{"type":"boolean"}}},"DataContractFieldTypesSpec":{"type":"object","additionalProperties":{"type":"string","enum":["string","number","boolean","object","array"]}},"DataContractMetadataEnvelopeSpec":{"type":"object","properties":{"requiredFields":{"type":"array","items":{"type":"string"}},"fieldTypes":{"$ref":"#/components/schemas/DataContractFieldTypesSpec"},"allowExtraFields":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}}},"DataContractRevisionSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string"},"contractId":{"type":"string"},"revision":{"type":"number"},"status":{"type":"string","enum":["draft","published","archived"]},"specJson":{"$ref":"#/components/schemas/DataContractSpecDto"},"blocking":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"publishedAt":{"type":"string","nullable":true},"archivedAt":{"type":"string","nullable":true},"createdAt":{"type":"string"}},"required":["id","tenantId","projectId","contractId","revision","status","specJson","blocking","publishedAt","archivedAt","createdAt"]},"DataContractSpecBodyDto":{"type":"object","properties":{"contractVersion":{"type":"string","example":"embodiflow-data-contract/v1"},"description":{"type":"string","nullable":true},"metadataEnvelope":{"nullable":true,"type":"object","allOf":[{"$ref":"#/components/schemas/DataContractFieldConstraintBodyDto"}]},"canonicalSchema":{"nullable":true,"type":"object","allOf":[{"$ref":"#/components/schemas/DataContractFieldConstraintBodyDto"}]},"topics":{"type":"array","nullable":true,"items":{"type":"object","properties":{"name":{"type":"string"},"required":{"type":"boolean"},"messageType":{"type":"string"}}}},"features":{"type":"array","nullable":true,"items":{"type":"object","properties":{"name":{"type":"string"},"required":{"type":"boolean"},"dtype":{"type":"string"}}}},"blocking":{"type":"boolean"}},"required":["contractVersion"]},"DataContractSpecDto":{"type":"object","properties":{"contractVersion":{"type":"string"},"description":{"type":"string","nullable":true},"metadataEnvelope":{"$ref":"#/components/schemas/DataContractMetadataEnvelopeSpec","nullable":true},"canonicalSchema":{"$ref":"#/components/schemas/DataContractCanonicalSchemaSpec","nullable":true},"topics":{"type":"array","items":{"$ref":"#/components/schemas/DataContractTopicSpec"},"nullable":true},"features":{"type":"array","items":{"$ref":"#/components/schemas/DataContractFeatureSpec"},"nullable":true},"blocking":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["contractVersion"]},"DataContractSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string"},"name":{"type":"string"},"slug":{"type":"string"},"status":{"type":"string","enum":["active","archived"]},"description":{"type":"string","nullable":true},"latestPublishedRevision":{"type":"number","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","tenantId","projectId","name","slug","status","description","latestPublishedRevision","createdAt","updatedAt"]},"DataContractTopicSpec":{"type":"object","properties":{"name":{"type":"string"},"required":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"messageType":{"type":"string"}},"required":["name"]},"DataFormatArtDto":{"type":"object","properties":{"kind":{"type":"string","enum":["illustration","logo"]},"url":{"type":"string"},"width":{"type":"number","nullable":true},"height":{"type":"number","nullable":true}},"required":["kind","url","width","height"]},"DataFormatDto":{"type":"object","properties":{"dataKind":{"type":"string","enum":["human","robot","video"]},"dataFormat":{"type":"string"},"scope":{"type":"string","enum":["team","platform"]},"group":{"type":"string","enum":["team","generic","vendor","promoted"]},"messageKey":{"type":"string","nullable":true},"title":{"type":"object","properties":{"en":{"type":"string"},"zh":{"type":"string"}},"required":["en","zh"],"nullable":true},"description":{"type":"object","properties":{"en":{"type":"string"},"zh":{"type":"string"}},"required":["en","zh"],"nullable":true},"fileHint":{"type":"array","items":{"type":"string"}},"art":{"$ref":"#/components/schemas/DataFormatArtDto"},"uploadSourceType":{"type":"string"},"selectable":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"unavailableReason":{"type":"string","enum":["coming_soon","capability_disabled"],"nullable":true},"requiresTaskSidecar":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"acceptedDetectorFormats":{"type":"array","items":{"type":"string"}},"fileRules":{"$ref":"#/components/schemas/DataFormatFileRules","nullable":true},"docsUrl":{"type":"string","nullable":true},"teamDataFormatId":{"type":"string","nullable":true}},"required":["dataKind","dataFormat","scope","group","messageKey","title","description","fileHint","art","uploadSourceType","selectable","unavailableReason","requiresTaskSidecar","acceptedDetectorFormats","fileRules","docsUrl","teamDataFormatId"]},"DataFormatFileRules":{"type":"object","properties":{"unit":{"type":"string","enum":["folder","file"]},"extensions":{"type":"array","items":{"type":"string"}},"requiredFiles":{"type":"array","items":{"type":"string"}}},"required":["unit","extensions","requiredFiles"]},"DataFormatsQueryDto":{"type":"object","properties":{"dataKind":{"enum":["human","robot","video"],"type":"string","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"DataResidencySwaggerDto":{"type":"object","properties":{"pinned":{"type":"boolean"},"crossBorderExport":{"type":"boolean"}},"required":["pinned","crossBorderExport"]},"DatasetCompositionProfileDocument":{"type":"object","properties":{"contractVersion":{"type":"string","enum":["embodiflow-composition-profile/v1"]},"profileId":{"type":"string"},"inputDigest":{"type":"string"},"datasetVersionId":{"type":"string"},"computedAt":{"type":"string"},"generatorVersion":{"type":"string"},"compositionSpecDigest":{"type":"string"},"itemSetMode":{"type":"string","enum":["accepted","all","all_and_accepted"]},"facets":{"$ref":"#/components/schemas/CompositionProfileFacets"}},"required":["contractVersion","profileId","inputDigest","datasetVersionId","computedAt","generatorVersion","compositionSpecDigest","itemSetMode","facets"]},"DatasetCompositionProfileEnvelopeDto":{"type":"object","properties":{"id":{"type":"string"},"datasetVersionId":{"type":"string"},"projectId":{"type":"string"},"datasetId":{"type":"string"},"status":{"type":"string"},"contractVersion":{"type":"string"},"inputDigest":{"type":"string"},"compositionSpecDigest":{"type":"string"},"datasetVersionDigest":{"type":"string"},"itemSetDigest":{"type":"string"},"annotationDigest":{"type":"string","nullable":true},"qualityDigest":{"type":"string","nullable":true},"skillTaxonomyDigest":{"type":"string","nullable":true},"referenceSetDigest":{"type":"string","nullable":true},"itemSetMode":{"type":"string","enum":["accepted","all","all_and_accepted"]},"generatorVersion":{"type":"string"},"computedAt":{"type":"string"},"createdAt":{"type":"string"},"workflowRunId":{"type":"string","nullable":true},"document":{"$ref":"#/components/schemas/DatasetCompositionProfileDocument"}},"required":["id","datasetVersionId","projectId","datasetId","status","contractVersion","inputDigest","compositionSpecDigest","datasetVersionDigest","itemSetDigest","annotationDigest","qualityDigest","skillTaxonomyDigest","referenceSetDigest","itemSetMode","generatorVersion","computedAt","createdAt","workflowRunId","document"]},"DatasetCompositionProfileListResponseDto":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/DatasetCompositionProfileSummaryDto"}},"nextPageToken":{"type":"string"},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"totalCount":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]}},"required":["data","meta"]},"DatasetCompositionProfileSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"datasetVersionId":{"type":"string"},"projectId":{"type":"string"},"datasetId":{"type":"string"},"status":{"type":"string"},"inputDigest":{"type":"string"},"itemSetMode":{"type":"string","enum":["accepted","all","all_and_accepted"]},"computedAt":{"type":"string"},"generatorVersion":{"type":"string"},"hasDrift":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"labelCoverageEpisodeFraction":{"type":"number","nullable":true},"trajectorySourceKind":{"type":"string","enum":["imu","action","mag","pose"],"nullable":true},"actionStatisticsStatus":{"type":"string","nullable":true},"referenceName":{"type":"string","nullable":true},"workflowRunId":{"type":"string","nullable":true}},"required":["id","datasetVersionId","projectId","datasetId","status","inputDigest","itemSetMode","computedAt","generatorVersion","hasDrift","labelCoverageEpisodeFraction","trajectorySourceKind","actionStatisticsStatus","referenceName","workflowRunId"]},"DatasetFrameSpatialAnnotationDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string"},"datasetId":{"type":"string"},"datasetVersionId":{"type":"string","nullable":true},"datasetVersionFileId":{"type":"string"},"frameIndex":{"type":"number"},"frameStampSec":{"type":"number","nullable":true},"frameStampNsec":{"type":"number","nullable":true},"timeReference":{"type":"string"},"datasetClassId":{"type":"string","nullable":true},"className":{"type":"string","nullable":true},"trackId":{"type":"string","nullable":true},"trackKey":{"type":"string","nullable":true},"bboxX":{"type":"number"},"bboxY":{"type":"number"},"bboxWidth":{"type":"number"},"bboxHeight":{"type":"number"},"occluded":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true},"truncated":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true},"reviewStatus":{"type":"string"},"status":{"type":"string"},"publishedSnapshotId":{"type":"string","nullable":true},"createdBy":{"type":"string","nullable":true},"updatedBy":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"deletedAt":{"type":"string","nullable":true},"attributesJson":{"$ref":"#/components/schemas/Record","nullable":true}},"required":["id","tenantId","projectId","datasetId","datasetVersionId","datasetVersionFileId","frameIndex","frameStampSec","frameStampNsec","timeReference","datasetClassId","className","trackId","trackKey","bboxX","bboxY","bboxWidth","bboxHeight","occluded","truncated","reviewStatus","status","publishedSnapshotId","createdBy","updatedBy","createdAt","updatedAt","deletedAt","attributesJson"]},"DatasetGovernanceTagDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string"},"datasetId":{"type":"string"},"datasetVersionId":{"type":"string"},"datasetVersionItemId":{"type":"string","nullable":true},"tagKey":{"type":"string"},"tagValue":{"type":"string"},"createdBy":{"type":"string","nullable":true},"updatedBy":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","tenantId","projectId","datasetId","datasetVersionId","datasetVersionItemId","tagKey","tagValue","createdBy","updatedBy","createdAt","updatedAt"]},"DatasetLineageGraphDto":{"type":"object","properties":{"nodes":{"type":"array","items":{"$ref":"#/components/schemas/LineageNodeDto"}},"edges":{"type":"array","items":{"$ref":"#/components/schemas/LineageEdgeDto"}}},"required":["nodes","edges"]},"DatasetPatchBodyDto":{"type":"object","properties":{"currentVersionId":{"type":"string","description":"Move the current-version pointer. Omit when attesting consent.","format":"uuid"},"consentAttested":{"type":"boolean","description":"Literal true records owner consent (ADR 0164). False/omitted does not\nwithdraw. Send this or currentVersionId, not both."}}},"DatasetStudioCapabilitiesDto":{"type":"object","properties":{"supportsVideoStudio":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"supportsAnnotationDrafts":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"supportsSnapshotPublish":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["supportsVideoStudio","supportsAnnotationDrafts","supportsSnapshotPublish"]},"DatasetStudioDraftSummaryDto":{"type":"object","properties":{"timeRangeAnnotationCount":{"type":"number"},"frameSpatialAnnotationCount":{"type":"number"}},"required":["timeRangeAnnotationCount","frameSpatialAnnotationCount"]},"DatasetStudioQueryDto":{"type":"object","properties":{"datasetVersionId":{"type":"string","format":"uuid","nullable":true}}},"DatasetStudioResponseDto":{"type":"object","properties":{"dataset":{"$ref":"#/components/schemas/DatasetSummaryDto"},"projectId":{"type":"string"},"projectType":{"type":"string"},"projectName":{"type":"string"},"currentDatasetVersionId":{"type":"string","nullable":true},"capabilities":{"$ref":"#/components/schemas/DatasetStudioCapabilitiesDto"},"videos":{"type":"array","items":{"$ref":"#/components/schemas/DatasetStudioVideoTrackDto"}},"studioMessage":{"type":"string","nullable":true},"draftSummary":{"$ref":"#/components/schemas/DatasetStudioDraftSummaryDto"},"timeRangeAnnotations":{"type":"array","items":{"$ref":"#/components/schemas/DatasetTimeRangeAnnotationDto"}},"frameSpatialAnnotations":{"type":"array","items":{"$ref":"#/components/schemas/DatasetFrameSpatialAnnotationDto"}}},"required":["dataset","projectId","projectType","projectName","currentDatasetVersionId","capabilities","videos","studioMessage","draftSummary","timeRangeAnnotations","frameSpatialAnnotations"]},"DatasetStudioVideoLightIndexDto":{"type":"object","properties":{"durationSec":{"type":"number","nullable":true},"width":{"type":"number","nullable":true},"height":{"type":"number","nullable":true},"fps":{"type":"number","nullable":true},"codec":{"type":"string","nullable":true},"container":{"type":"string","nullable":true},"thumbnailObjectId":{"type":"string","nullable":true},"timeOffsetMs":{"type":"number","nullable":true}},"required":["durationSec","width","height","fps","codec","container","thumbnailObjectId","timeOffsetMs"]},"DatasetStudioVideoTrackDto":{"type":"object","properties":{"datasetVersionFileId":{"type":"string"},"datasetVersionId":{"type":"string"},"logicalPath":{"type":"string"},"contentType":{"type":"string","nullable":true},"sizeBytes":{"type":"number","nullable":true},"channelName":{"type":"string","nullable":true},"sensorName":{"type":"string","nullable":true},"sequenceIndex":{"type":"number","nullable":true},"playUrl":{"type":"string","nullable":true},"playUrlExpiresAt":{"type":"string","nullable":true},"presignError":{"type":"string","nullable":true},"lightIndex":{"$ref":"#/components/schemas/DatasetStudioVideoLightIndexDto"}},"required":["datasetVersionFileId","datasetVersionId","logicalPath","contentType","sizeBytes","channelName","sensorName","sequenceIndex","playUrl","playUrlExpiresAt","presignError","lightIndex"]},"DatasetSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string"},"slug":{"type":"string"},"name":{"type":"string"},"description":{"type":"string","nullable":true},"datasetType":{"type":"string"},"sourceType":{"type":"string"},"dataSource":{"type":"string","nullable":true},"consentAttested":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"canAttestConsent":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"metadataSchema":{"type":"string","nullable":true},"status":{"type":"string"},"currentVersionId":{"type":"string","nullable":true},"versionCount":{"type":"number"},"currentVersion":{"$ref":"#/components/schemas/DatasetVersionSummaryDto","nullable":true},"qualityStatus":{"type":"string","enum":["failed","warning","error","unchecked","inspecting","passed"]},"lastQualityInspectionAt":{"type":"string","nullable":true},"recordingStatus":{"$ref":"#/components/schemas/RecordingStatusDto","nullable":true},"updatedAt":{"type":"string"},"createdAt":{"type":"string"}},"required":["id","tenantId","projectId","slug","name","description","datasetType","sourceType","status","currentVersionId","updatedAt","createdAt"]},"DatasetTimeRangeAnnotationDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string"},"datasetId":{"type":"string"},"datasetVersionId":{"type":"string","nullable":true},"annotationSchemaId":{"type":"string","nullable":true},"segmentKind":{"type":"string"},"startSec":{"type":"number"},"startNsec":{"type":"number"},"endSec":{"type":"number"},"endNsec":{"type":"number"},"timeReference":{"type":"string"},"title":{"type":"string","nullable":true},"naturalLanguageInstruction":{"type":"string","nullable":true},"success":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true},"score":{"type":"number","nullable":true},"failureReason":{"type":"string","nullable":true},"parentId":{"type":"string","nullable":true},"orderIndex":{"type":"number"},"reviewStatus":{"type":"string"},"status":{"type":"string"},"publishedSnapshotId":{"type":"string","nullable":true},"createdBy":{"type":"string","nullable":true},"updatedBy":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"deletedAt":{"type":"string","nullable":true},"attributesJson":{"$ref":"#/components/schemas/Record","nullable":true}},"required":["id","tenantId","projectId","datasetId","datasetVersionId","annotationSchemaId","segmentKind","startSec","startNsec","endSec","endNsec","timeReference","title","naturalLanguageInstruction","success","score","failureReason","parentId","orderIndex","reviewStatus","status","publishedSnapshotId","createdBy","updatedBy","createdAt","updatedAt","deletedAt","attributesJson"]},"DatasetVersionDeletionEligibilityDto":{"type":"object","properties":{"datasetVersionId":{"type":"string"},"datasetId":{"type":"string"},"projectId":{"type":"string"},"eligible":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"blockers":{"type":"array","items":{"oneOf":[{"$ref":"#/components/schemas/DeletionEligibilityLegalHoldBlockerDto"},{"$ref":"#/components/schemas/DeletionEligibilityLineageBlockerDto"},{"$ref":"#/components/schemas/DeletionEligibilityStorageReuseBlockerDto"},{"$ref":"#/components/schemas/DeletionEligibilityTrainingBlockerDto"}]}}},"required":["datasetVersionId","datasetId","projectId","eligible","blockers"]},"DatasetVersionDeletionEligibilityQueryDto":{"type":"object","properties":{"acceptUnverifiedDeletion":{"enum":["true","false","1","0"],"type":"string","nullable":true}}},"DatasetVersionDiffEntryDto":{"type":"object","properties":{"category":{"enum":["file","episode","metadata","quality"],"type":"string"},"changeType":{"enum":["added","removed","modified"],"type":"string"},"summary":{"type":"string","maxLength":200},"details":{"type":"object","additionalProperties":true}},"required":["category","changeType","summary"]},"DatasetVersionDiffEnvelopeDto":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DatasetVersionDiffResponseDto"}},"required":["data"]},"DatasetVersionDiffQueryDto":{"type":"object","properties":{"from":{"type":"string","format":"uuid"},"to":{"type":"string","format":"uuid"},"type":{"type":"string","nullable":true},"limit":{"type":"integer","nullable":true},"offset":{"type":"integer","nullable":true}},"required":["from","to"]},"DatasetVersionDiffResponseDto":{"type":"object","properties":{"fromId":{"type":"string","format":"uuid"},"toId":{"type":"string","format":"uuid"},"summary":{"$ref":"#/components/schemas/DatasetVersionDiffSummaryDto"},"diffs":{"type":"array","items":{"$ref":"#/components/schemas/DatasetVersionDiffEntryDto"}}},"required":["fromId","toId","summary","diffs"]},"DatasetVersionDiffSummaryDto":{"type":"object","properties":{"fileCount":{"type":"number","minimum":0},"episodeCount":{"type":"number","minimum":0},"metadataKeys":{"type":"array","items":{"type":"string"}},"qualityStatus":{"enum":["unchanged","improved","degraded","unknown"],"type":"string"}},"required":["fileCount","episodeCount","metadataKeys","qualityStatus"]},"DatasetVersionFileSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"datasetVersionId":{"type":"string"},"storageObjectId":{"type":"string"},"logicalPath":{"type":"string"},"fileRole":{"type":"string"},"contentType":{"type":"string","nullable":true},"sizeBytes":{"type":"number","nullable":true},"metadataProjectionJson":{"$ref":"#/components/schemas/Record","nullable":true},"createdAt":{"type":"string"},"qualityStatus":{"type":"string","enum":["failed","warning","error","unchecked","inspecting","passed"]}},"required":["id","datasetVersionId","storageObjectId","logicalPath","contentType","sizeBytes","createdAt"]},"DatasetVersionHealthDto":{"type":"object","properties":{"datasetVersionId":{"type":"string"},"datasetId":{"type":"string"},"projectId":{"type":"string"},"status":{"type":"string","enum":["unknown","blocked","ready","needs_review"]},"score":{"type":"number","nullable":true},"dimensions":{"type":"array","items":{"$ref":"#/components/schemas/HealthDimensionDto"}},"blockers":{"type":"array","items":{"$ref":"#/components/schemas/HealthBlockerDto"}},"recommendedNextAction":{"type":"string"},"computedAt":{"type":"string"},"freshnessStatus":{"type":"string","enum":["unknown","stale","fresh","recomputing"]},"evidenceUpdatedAt":{"type":"string","nullable":true},"isStale":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"staleReason":{"type":"string","nullable":true},"recomputeStatus":{"type":"string","enum":["in_progress","idle","available"]},"assetHealthStatus":{"type":"string","enum":["failed","warning","unknown","healthy","stale"],"nullable":true}},"required":["datasetVersionId","datasetId","projectId","status","score","dimensions","blockers","recommendedNextAction","computedAt","freshnessStatus","evidenceUpdatedAt","isStale","staleReason","recomputeStatus","assetHealthStatus"]},"DatasetVersionHealthFactsDto":{"type":"object","properties":{"status":{"type":"string","enum":["unknown","blocked","ready","needs_review"]},"primaryBlockerCode":{"type":"string","nullable":true},"openRepairCount":{"type":"number"},"observedAt":{"type":"string","nullable":true},"stale":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["status","openRepairCount","stale"]},"DatasetVersionItemSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"datasetVersionId":{"type":"string"},"datasetVersionFileId":{"type":"string","nullable":true},"sampleKey":{"type":"string"},"episodeIndex":{"type":"number","nullable":true},"split":{"type":"string","enum":["test","val","train","unset"]},"task":{"type":"string","nullable":true},"success":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true},"durationNs":{"type":"number","nullable":true},"frameCount":{"type":"number","nullable":true},"actionCount":{"type":"number","nullable":true},"provenanceJson":{"$ref":"#/components/schemas/Record","nullable":true},"sourceFileIds":{"type":"array","items":{"type":"string"},"nullable":true},"annotationCount":{"type":"number"},"metadata":{"$ref":"#/components/schemas/Record","nullable":true},"createdAt":{"type":"string"},"qualityStatus":{"type":"string","nullable":true},"excludedFromTraining":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"excludedReason":{"type":"string","nullable":true}},"required":["id","datasetVersionId","datasetVersionFileId","sampleKey","episodeIndex","split","task","success","durationNs","frameCount","actionCount","provenanceJson","sourceFileIds","annotationCount","metadata","createdAt"]},"DatasetVersionMetadataDto":{"type":"object","properties":{"datasetId":{"type":"string"},"datasetVersionId":{"type":"string"},"sourceType":{"type":"string"},"metadataType":{"type":"string","nullable":true},"sourceVariant":{"type":"string","nullable":true},"summary":{"$ref":"#/components/schemas/Record"},"extractionSummary":{"$ref":"#/components/schemas/Record","nullable":true},"supportMatrix":{"type":"array","items":{"$ref":"#/components/schemas/RosSourceSupportMatrixEntryDto"}},"studio":{"$ref":"#/components/schemas/DatasetVersionStudioReservationDto"},"files":{"type":"array","items":{"$ref":"#/components/schemas/DatasetVersionMetadataFileDto"}}},"required":["datasetId","datasetVersionId","sourceType","metadataType","sourceVariant","summary","extractionSummary","supportMatrix","studio","files"]},"DatasetVersionMetadataFileDto":{"type":"object","properties":{"datasetVersionFileId":{"type":"string","nullable":true},"logicalPath":{"type":"string"},"sourceType":{"type":"string"},"sourceVariant":{"type":"string","nullable":true},"projection":{"$ref":"#/components/schemas/Record","nullable":true}},"required":["logicalPath","sourceType","sourceVariant"]},"DatasetVersionOperationFactsDto":{"type":"object","properties":{"contractVersion":{"type":"string","enum":["embodiflow-recording-operation-facts/v1"]},"observedAt":{"type":"string"},"processing":{"$ref":"#/components/schemas/DatasetVersionProcessingFactsDto"},"health":{"$ref":"#/components/schemas/DatasetVersionHealthFactsDto"},"playback":{"$ref":"#/components/schemas/DatasetVersionPlaybackFactsDto"},"lastMeaningfulActivityAt":{"type":"string","nullable":true}},"required":["contractVersion","observedAt","processing","health","playback"]},"DatasetVersionPlaybackFactsDto":{"type":"object","properties":{"artifactAvailable":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"reasonCode":{"type":"string","nullable":true}},"required":["artifactAvailable"]},"DatasetVersionProcessingFactsDto":{"type":"object","properties":{"anyActive":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"upload":{"$ref":"#/components/schemas/DatasetVersionUploadProcessingFactsDto"},"workflow":{"$ref":"#/components/schemas/DatasetVersionWorkflowProcessingFactsDto"},"quality":{"$ref":"#/components/schemas/DatasetVersionQualityProcessingFactsDto"}},"required":["anyActive","upload","workflow","quality"]},"DatasetVersionProcessingGateDto":{"type":"object","properties":{"datasetId":{"type":"string"},"datasetVersionId":{"type":"string"},"projectId":{"type":"string"},"qualityStatus":{"type":"string","enum":["failed","warning","error","unchecked","inspecting","passed"]},"gateStatus":{"type":"string","enum":["warning","fail","pass"]},"canRun":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"templateStatus":{"type":"string","enum":["default","draft","missing","published"]},"workflowDefinitionId":{"type":"string","nullable":true},"workflowRevisionId":{"type":"string","nullable":true},"workflowRevision":{"type":"number","nullable":true},"reasons":{"type":"array","items":{"$ref":"#/components/schemas/ProcessingGateReasonDto"}},"stageSummaries":{"type":"array","items":{"$ref":"#/components/schemas/ProcessingTemplateStageSummaryDto"}}},"required":["datasetId","datasetVersionId","projectId","qualityStatus","gateStatus","canRun","templateStatus","workflowDefinitionId","workflowRevisionId","workflowRevision","reasons","stageSummaries"]},"DatasetVersionProcessingGateQueryDto":{"type":"object","properties":{"workflowDefinitionId":{"type":"string","format":"uuid","nullable":true}}},"DatasetVersionProvenanceSummaryDto":{"type":"object","properties":{"datasetVersionId":{"type":"string"},"projectId":{"type":"string"},"completeness":{"type":"string","enum":["missing","partial","complete"]},"episodeCount":{"type":"number"},"completeEpisodeCount":{"type":"number"},"partialEpisodeCount":{"type":"number"},"missingEpisodeCount":{"type":"number"},"missingFieldHistogram":{"$ref":"#/components/schemas/Partial"},"sampleEpisodes":{"type":"array","items":{"$ref":"#/components/schemas/EpisodeProvenanceDetailDto"}},"warnings":{"type":"array","items":{"type":"string"}}},"required":["datasetVersionId","projectId","completeness","episodeCount","completeEpisodeCount","partialEpisodeCount","missingEpisodeCount","missingFieldHistogram","sampleEpisodes","warnings"]},"DatasetVersionQualityFindingDto":{"type":"object","properties":{"scope":{"type":"string","enum":["version","file"]},"datasetVersionFileId":{"type":"string","nullable":true},"logicalPath":{"type":"string","nullable":true},"metric":{"type":"string"},"status":{"type":"string","enum":["failed","warning","passed"]},"message":{"type":"string"},"details":{"$ref":"#/components/schemas/Record","nullable":true}},"required":["scope","datasetVersionFileId","logicalPath","metric","status","message"]},"DatasetVersionQualityProcessingFactsDto":{"type":"object","properties":{"active":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"activeCount":{"type":"number"},"status":{"type":"string","enum":["failed","warning","error","unchecked","inspecting","passed"],"nullable":true},"workflowRunId":{"type":"string","nullable":true}},"required":["active","activeCount"]},"DatasetVersionQualityReportDto":{"type":"object","properties":{"datasetId":{"type":"string"},"datasetVersionId":{"type":"string"},"overallStatus":{"type":"string","enum":["failed","warning","unchecked","passed"]},"summary":{"$ref":"#/components/schemas/QualityInspectionReportSummaryDto"},"qualityReportArtifactId":{"type":"string","nullable":true},"latestWorkflowRunId":{"type":"string","nullable":true},"findings":{"type":"array","items":{"$ref":"#/components/schemas/DatasetVersionQualityFindingDto"}},"recommendedActions":{"type":"array","items":{"type":"string"}},"lastEvaluatedAt":{"type":"string","nullable":true}},"required":["datasetId","datasetVersionId","overallStatus","summary","qualityReportArtifactId","latestWorkflowRunId","findings","recommendedActions","lastEvaluatedAt"]},"DatasetVersionQualitySummaryDto":{"type":"object","properties":{"links":{"$ref":"#/components/schemas/DatasetVersionQualitySummaryLinksDto"},"datasetId":{"type":"string"},"datasetVersionId":{"type":"string"},"overallStatus":{"type":"string","enum":["failed","warning","unchecked","passed"]},"summary":{"$ref":"#/components/schemas/QualityInspectionReportSummaryDto"},"qualityReportArtifactId":{"type":"string","nullable":true},"latestWorkflowRunId":{"type":"string","nullable":true},"findings":{"type":"array","items":{"$ref":"#/components/schemas/DatasetVersionQualityFindingDto"}},"recommendedActions":{"type":"array","items":{"type":"string"}},"lastEvaluatedAt":{"type":"string","nullable":true}},"required":["links","datasetId","datasetVersionId","overallStatus","summary","qualityReportArtifactId","latestWorkflowRunId","findings","recommendedActions","lastEvaluatedAt"]},"DatasetVersionQualitySummaryLinksDto":{"type":"object","properties":{"quality":{"type":"string"},"jobs":{"type":"string"},"studio":{"type":"string"}},"required":["quality","jobs","studio"]},"DatasetVersionQueryAggregateBodyDto":{"type":"object","properties":{"fn":{"type":"string","enum":["count"]},"field":{"type":"string"}},"required":["fn"]},"DatasetVersionQueryBodyDto":{"type":"object","properties":{"datasetVersionId":{"type":"string","format":"uuid"},"expectedQueryIndexSha256":{"type":"string"},"granularity":{"type":"string","enum":["episode","frame"]},"episodeIndexIn":{"maxItems":1000,"type":"array","items":{"type":"number"}},"episodeIdIn":{"maxItems":1000,"type":"array","items":{"type":"string"}},"frameIndexMin":{"type":"number"},"frameIndexMax":{"type":"number"},"timestampNsMin":{"type":"string"},"timestampNsMax":{"type":"string"},"featurePredicates":{"maxItems":20,"type":"array","items":{"$ref":"#/components/schemas/DatasetVersionQueryPredicateBodyDto"}},"metadataEquals":{"type":"object","additionalProperties":true},"cameraNameIn":{"maxItems":50,"type":"array","items":{"type":"string"}},"fields":{"maxItems":50,"type":"array","items":{"type":"string"}},"limit":{"type":"number","minimum":1,"maximum":1000},"offset":{"type":"number","minimum":0},"orderBy":{"type":"string","enum":["episodeIndex","timestampNs","frameIndex"]},"orderDirection":{"type":"string","enum":["asc","desc"]},"aggregate":{"$ref":"#/components/schemas/DatasetVersionQueryAggregateBodyDto"}},"required":["datasetVersionId"]},"DatasetVersionQueryPredicateBodyDto":{"type":"object","properties":{"path":{"type":"string"},"op":{"type":"string","enum":["in","lt","lte","gt","gte","eq","neq"]},"value":{"type":"object","additionalProperties":true}},"required":["path","op","value"]},"DatasetVersionQueryResponseDto":{"type":"object","properties":{"datasetVersionId":{"type":"string"},"queryIndexSha256":{"type":"string"},"granularity":{"type":"string","enum":["frame","episode"]},"episodeStatisticsGranularity":{"type":"string","enum":["coarse"]},"rows":{"type":"array","items":{"$ref":"#/components/schemas/Record"}},"totalEstimate":{"type":"number","nullable":true},"truncated":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"videoRefs":{"type":"array","items":{"$ref":"#/components/schemas/DatasetVersionQueryVideoRefDto"}},"elapsedMs":{"type":"number"},"excludedCount":{"type":"number"}},"required":["datasetVersionId","queryIndexSha256","granularity","rows","truncated","elapsedMs"]},"DatasetVersionQueryVideoRefDto":{"type":"object","properties":{"episodeIndex":{"type":"number"},"cameraName":{"type":"string"},"storageObjectId":{"type":"string"},"logicalPath":{"type":"string"}},"required":["episodeIndex","cameraName","storageObjectId","logicalPath"]},"DatasetVersionSignedFileDto":{"type":"object","properties":{"logicalPath":{"type":"string"},"presignedUrl":{"type":"string"},"contentType":{"type":"string","nullable":true},"sizeBytes":{"type":"number","nullable":true}},"required":["logicalPath","presignedUrl","contentType","sizeBytes"]},"DatasetVersionSignedFilesDto":{"type":"object","properties":{"datasetVersionId":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/DatasetVersionSignedFileDto"}},"expiresAt":{"type":"string"}},"required":["datasetVersionId","files","expiresAt"]},"DatasetVersionStudioReservationDto":{"type":"object","properties":{"status":{"type":"string","enum":["not-applicable","reserved-external"]},"launchUrl":{"type":"string","nullable":true},"returnUrl":{"type":"string","nullable":true},"message":{"type":"string","nullable":true}},"required":["status","launchUrl","returnUrl","message"]},"DatasetVersionSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"datasetId":{"type":"string"},"version":{"type":"number"},"versionName":{"type":"string","nullable":true},"description":{"type":"string","nullable":true},"status":{"type":"string"},"manifestVersion":{"type":"number"},"metadataType":{"type":"string","nullable":true},"codebaseVersion":{"type":"string","nullable":true},"episodeCount":{"type":"number","nullable":true},"featureCount":{"type":"number","nullable":true},"fps":{"type":"number","nullable":true},"topicCount":{"type":"number","nullable":true},"frameCount":{"type":"number","nullable":true},"startTimeNs":{"type":"number","nullable":true},"endTimeNs":{"type":"number","nullable":true},"metadataProjectionJson":{"$ref":"#/components/schemas/Record","nullable":true},"contractVersion":{"type":"string","nullable":true},"provenanceCompleteness":{"type":"string","enum":["missing","partial","complete"],"nullable":true},"featureKeys":{"type":"array","items":{"type":"string"},"nullable":true},"itemCount":{"type":"number"},"totalBytes":{"type":"number","nullable":true},"finalizedAt":{"type":"string","nullable":true},"createdAt":{"type":"string"},"qualityStatus":{"type":"string","enum":["failed","warning","error","unchecked","inspecting","passed"]},"visibilityStatus":{"type":"string","enum":["active","soft_hidden"]},"splitStrategy":{"type":"string","nullable":true},"splitConfigJson":{"$ref":"#/components/schemas/Record","nullable":true},"operationFacts":{"$ref":"#/components/schemas/DatasetVersionOperationFactsDto"}},"required":["id","datasetId","version","versionName","description","status","itemCount","totalBytes","finalizedAt","createdAt"]},"DatasetVersionTopicDto":{"type":"object","properties":{"datasetVersionFileId":{"type":"string","nullable":true},"logicalPath":{"type":"string","nullable":true},"topic":{"type":"string"},"messageType":{"type":"string","nullable":true},"messageEncoding":{"type":"string","nullable":true},"messageCount":{"type":"number","nullable":true},"firstLogTimeNs":{"type":"number","nullable":true},"lastLogTimeNs":{"type":"number","nullable":true},"durationNs":{"type":"number","nullable":true},"avgHz":{"type":"number","nullable":true},"sourceVariant":{"type":"string","nullable":true},"qualityFindings":{"type":"array","items":{"$ref":"#/components/schemas/Record"},"nullable":true}},"required":["logicalPath","topic","messageType","messageEncoding","messageCount","firstLogTimeNs","lastLogTimeNs","durationNs","avgHz","sourceVariant"]},"DatasetVersionTrainingUsageItemDto":{"type":"object","properties":{"trainingJobId":{"type":"string"},"projectId":{"type":"string"},"status":{"type":"string"},"registeredModelVersionId":{"type":"string","nullable":true},"modelVersion":{"$ref":"#/components/schemas/ModelVersionSummaryDto","nullable":true},"createdAt":{"type":"string"}},"required":["trainingJobId","projectId","status","registeredModelVersionId","modelVersion","createdAt"]},"DatasetVersionUploadProcessingFactsDto":{"type":"object","properties":{"active":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"activeCount":{"type":"number"},"status":{"type":"string","nullable":true},"uploadBatchId":{"type":"string","nullable":true}},"required":["active","activeCount"]},"DatasetVersionWorkflowProcessingFactsDto":{"type":"object","properties":{"active":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"activeCount":{"type":"number"},"status":{"type":"string","enum":["queued","running","succeeded","failed","cancelled","waiting_approval","starting","paused"],"nullable":true},"workflowRunId":{"type":"string","nullable":true}},"required":["active","activeCount"]},"DeletionEligibilityLegalHoldBlockerDto":{"type":"object","properties":{"kind":{"type":"string","enum":["legal_hold"]},"legalHoldId":{"type":"string"},"scopeType":{"enum":["tenant","project","dataset","datasetVersion","storageObject"],"type":"string"},"scopeId":{"type":"string","nullable":true},"reason":{"type":"string"},"placedAt":{"type":"string"}},"required":["kind","legalHoldId","scopeType","scopeId","reason","placedAt"]},"DeletionEligibilityLineageBlockerDto":{"type":"object","properties":{"kind":{"type":"string","enum":["lineage"]},"edgeId":{"type":"string"},"edgeKind":{"type":"string"},"fromObjectId":{"type":"string"},"toObjectId":{"type":"string"},"message":{"type":"string"}},"required":["kind","edgeId","edgeKind","fromObjectId","toObjectId","message"]},"DeletionEligibilityStorageReuseBlockerDto":{"type":"object","properties":{"kind":{"type":"string","enum":["storage_object_reuse"]},"storageObjectId":{"type":"string"},"referenceCount":{"type":"number"},"otherDatasetVersionIds":{"type":"array","items":{"type":"string"}},"message":{"type":"string"}},"required":["kind","storageObjectId","referenceCount","otherDatasetVersionIds","message"]},"DeletionEligibilityTrainingBlockerDto":{"type":"object","properties":{"kind":{"type":"string","enum":["training"]},"trainingJobId":{"type":"string"},"registeredModelVersionId":{"type":"string","nullable":true},"reason":{"type":"string","enum":["trained_on","unknown_provenance"]},"message":{"type":"string"}},"required":["kind","trainingJobId","registeredModelVersionId","reason","message"]},"DenyCliLoginBodyDto":{"type":"object","properties":{"browserSecret":{"type":"string","minLength":16}},"required":["browserSecret"]},"DeploymentCapabilitiesDataSwaggerDto":{"type":"object","properties":{"deploymentClass":{"type":"string","enum":["local","saas","onprem"]},"capabilities":{"$ref":"#/components/schemas/RuntimeCapabilitiesSwaggerDto"}},"required":["deploymentClass","capabilities"]},"DeploymentCapabilitiesDto":{"type":"object","properties":{"deploymentClass":{"type":"string","enum":["local","saas","onprem"]},"capabilities":{"type":"object","properties":{"selfServeSignup":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"invitationSignup":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"paymentProvider":{"type":"string","enum":["none"]},"licenseMode":{"type":"string","enum":["signed-file","platform-signed"]},"licenseState":{"type":"string","enum":["valid","grace","expired"]},"regionSelection":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"storageClassDefault":{"type":"string","enum":["shared","dedicated"]},"objectStorageProvider":{"type":"string","enum":["rustfs","s3","cos"]},"ingressMode":{"type":"string","enum":["ingress","gateway-api"]},"trainingProviders":{"type":"array","items":{"type":"string"},"enum":["kubernetes","thpc"]},"telemetryEgress":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"transactionalEmail":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"platformAdminConsole":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"redisAvailabilityClass":{"type":"string","enum":["builtin-single","managed","external-ha"]},"dataResidency":{"type":"object","properties":{"pinned":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"crossBorderExport":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["pinned","crossBorderExport"]},"edgeInference":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"inferenceWireProtocols":{"type":"array","items":{"type":"string"},"enum":["openpi-ws","lerobot-grpc"]},"egoHumanSource":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"huggingFaceImport":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"algorithmImagePush":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"algorithmCloudBuild":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"tlsMode":{"type":"string","enum":["private-ca","provided"]}},"required":["selfServeSignup","invitationSignup","paymentProvider","licenseMode","licenseState","regionSelection","storageClassDefault","objectStorageProvider","ingressMode","trainingProviders","telemetryEgress","transactionalEmail","platformAdminConsole","redisAvailabilityClass","dataResidency","edgeInference","inferenceWireProtocols","egoHumanSource","huggingFaceImport","algorithmImagePush","algorithmCloudBuild","tlsMode"]}},"required":["deploymentClass","capabilities"]},"DeploymentCapabilitiesEnvelopeSwaggerDto":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DeploymentCapabilitiesDataSwaggerDto"},"meta":{"type":"object"}},"required":["data","meta"]},"DeploymentPackageSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string"},"sourceArtifactId":{"type":"string"},"sourceType":{"type":"string"},"status":{"type":"string"},"packageArtifactId":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","tenantId","projectId","sourceArtifactId","sourceType","status","packageArtifactId","createdAt","updatedAt"]},"DerivedDatasetVersionResultDto":{"type":"object","properties":{"datasetId":{"type":"string"},"sourceDatasetVersionId":{"type":"string"},"derivedDatasetVersionId":{"type":"string"},"outputSourceType":{"type":"string"},"artifactId":{"type":"string","nullable":true},"recipe":{"$ref":"#/components/schemas/Record","nullable":true}},"required":["datasetId","sourceDatasetVersionId","derivedDatasetVersionId","outputSourceType","artifactId","recipe"]},"DeterministicSplitConfigDto":{"type":"object","properties":{"strategy":{"type":"string","enum":["hash_mod"]},"splitSalt":{"type":"string"},"ratios":{"$ref":"#/components/schemas/SplitRatiosDto"},"stratifyBy":{"type":"array","items":{"type":"string"},"nullable":true,"enum":["task","operatorId","environment"]}},"required":["strategy","splitSalt","ratios"]},"DockerRegistryTokenQueryDto":{"type":"object","properties":{"service":{"type":"string","nullable":true},"scope":{"type":"string","nullable":true}}},"DockerRegistryTokenResponseDto":{"type":"object","properties":{"token":{"type":"string"},"access_token":{"type":"string"},"expires_in":{"type":"number"},"issued_at":{"type":"string"}},"required":["token","access_token","expires_in","issued_at"]},"DownloadPresignedGetUrlItemDto":{"type":"object","properties":{"logicalPath":{"type":"string"},"getUrl":{"type":"string"},"expiresAt":{"type":"string"},"checksum":{"type":"string","nullable":true},"sizeBytes":{"type":"number","nullable":true}},"required":["logicalPath","getUrl","expiresAt"]},"DownloadSessionSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"scopeType":{"type":"string"},"scopeId":{"type":"string"},"datasetVersionId":{"type":"string","nullable":true},"artifactId":{"type":"string","nullable":true},"storageBucketId":{"type":"string","nullable":true},"manifestObjectId":{"type":"string","nullable":true},"objectPrefix":{"type":"string","nullable":true},"accessMode":{"type":"string"},"deliveryMode":{"type":"string"},"status":{"type":"string"},"expiresAt":{"type":"string"},"lastUsedAt":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","tenantId","scopeType","scopeId","datasetVersionId","artifactId","storageBucketId","manifestObjectId","objectPrefix","accessMode","deliveryMode","status","expiresAt","lastUsedAt","createdAt","updatedAt"]},"DuplicateCollectionOrderBodyDto":{"type":"object","properties":{"orderNumber":{"type":"string","minLength":1,"maxLength":128},"title":{"type":"string","maxLength":200}},"required":["orderNumber"]},"DuplicatePipelineDefinitionToProjectBodyDto":{"type":"object","properties":{"projectId":{"type":"string","format":"uuid"},"name":{"type":"string","nullable":true},"code":{"type":"string","nullable":true}},"required":["projectId"]},"EdgeBundlePullDto":{"type":"object","properties":{"bundleObjectPrefix":{"type":"string","nullable":true},"downloadSessionId":{"type":"string","nullable":true},"sessionToken":{"type":"string","nullable":true},"expiresAt":{"type":"string","nullable":true},"presignedUrls":{"type":"array","items":{"type":"string"}}},"required":["bundleObjectPrefix","downloadSessionId","sessionToken","expiresAt","presignedUrls"]},"EdgeHostRequirementsDto":{"type":"object","properties":{"targetArch":{"type":"string","enum":["x86-cuda","jetson-jp6","cpu"]},"gpuRuntime":{"type":"string"},"dockerGpuFlag":{"type":"string","nullable":true},"minGpuMemoryGb":{"type":"number"},"notes":{"type":"array","items":{"type":"string"}}},"required":["targetArch","gpuRuntime","dockerGpuFlag","minGpuMemoryGb","notes"]},"EdgeInferencePackageDto":{"type":"object","properties":{"schemaVersion":{"type":"string","enum":["embodiflow-edge-inference-package/v1"]},"modelVersionId":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string"},"embodimentProfileId":{"type":"string"},"embodimentCode":{"type":"string"},"mode":{"type":"string","enum":["local","remote_ws"]},"weightUrls":{"type":"array","items":{"type":"string"}},"runtimeImage":{"type":"string","nullable":true},"edgeConfig":{"$ref":"#/components/schemas/Record"},"runCommand":{"type":"string"},"docLinks":{"$ref":"#/components/schemas/Record"},"generatedAt":{"type":"string"},"expiresAt":{"type":"string"},"targetArch":{"type":"string","enum":["x86-cuda","jetson-jp6","cpu"]},"wires":{"type":"array","items":{"$ref":"#/components/schemas/EdgeWireEndpointDto"}},"hostRequirements":{"$ref":"#/components/schemas/EdgeHostRequirementsDto"},"bundlePull":{"$ref":"#/components/schemas/EdgeBundlePullDto"},"securityNotice":{"type":"string","nullable":true}},"required":["schemaVersion","modelVersionId","tenantId","projectId","embodimentProfileId","embodimentCode","mode","weightUrls","runtimeImage","edgeConfig","runCommand","docLinks","generatedAt","expiresAt","targetArch","wires","hostRequirements","bundlePull","securityNotice"]},"EdgeWireEndpointDto":{"type":"object","properties":{"protocol":{"type":"string","enum":["openpi-ws","lerobot-grpc"]},"port":{"type":"number"},"plaintext":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["protocol","port","plaintext"]},"EffectivePermissionsSummaryDto":{"type":"object","properties":{"rolePermissions":{"type":"array","items":{"type":"string"},"enum":["project:read","project:write","project:manage","member:read","member:manage","dataset:read","dataset:write","annotation:read","annotation:write","annotation:review","annotation-job:manage","upload:read","upload:write","collection:manage","collection:deliver","workflow:read","workflow:run","workflow:manage","approval:read","approval:decide","algorithm:read","algorithm:write","export:read","export:write","training:read","training:write","quality:read","quality:write","recipe:read","recipe:manage","skill-taxonomy:manage","task:read","task:write","deployment:read","deployment:write","model-image:read","model-image:write","model-version:read","model-version:write","inference-deployment:read","inference-deployment:write","analytics:read","vision:annotate","tenant:read","tenant:manage","billing:read","billing:write","apikey:read","apikey:write","apikey:manage","audit:read"]},"grants":{"type":"array","items":{"type":"string"},"enum":["project:read","project:write","project:manage","member:read","member:manage","dataset:read","dataset:write","annotation:read","annotation:write","annotation:review","annotation-job:manage","upload:read","upload:write","collection:manage","collection:deliver","workflow:read","workflow:run","workflow:manage","approval:read","approval:decide","algorithm:read","algorithm:write","export:read","export:write","training:read","training:write","quality:read","quality:write","recipe:read","recipe:manage","skill-taxonomy:manage","task:read","task:write","deployment:read","deployment:write","model-image:read","model-image:write","model-version:read","model-version:write","inference-deployment:read","inference-deployment:write","analytics:read","vision:annotate","tenant:read","tenant:manage","billing:read","billing:write","apikey:read","apikey:write","apikey:manage","audit:read"]},"denies":{"type":"array","items":{"type":"string"},"enum":["project:read","project:write","project:manage","member:read","member:manage","dataset:read","dataset:write","annotation:read","annotation:write","annotation:review","annotation-job:manage","upload:read","upload:write","collection:manage","collection:deliver","workflow:read","workflow:run","workflow:manage","approval:read","approval:decide","algorithm:read","algorithm:write","export:read","export:write","training:read","training:write","quality:read","quality:write","recipe:read","recipe:manage","skill-taxonomy:manage","task:read","task:write","deployment:read","deployment:write","model-image:read","model-image:write","model-version:read","model-version:write","inference-deployment:read","inference-deployment:write","analytics:read","vision:annotate","tenant:read","tenant:manage","billing:read","billing:write","apikey:read","apikey:write","apikey:manage","audit:read"]},"effective":{"type":"array","items":{"type":"string"},"enum":["project:read","project:write","project:manage","member:read","member:manage","dataset:read","dataset:write","annotation:read","annotation:write","annotation:review","annotation-job:manage","upload:read","upload:write","collection:manage","collection:deliver","workflow:read","workflow:run","workflow:manage","approval:read","approval:decide","algorithm:read","algorithm:write","export:read","export:write","training:read","training:write","quality:read","quality:write","recipe:read","recipe:manage","skill-taxonomy:manage","task:read","task:write","deployment:read","deployment:write","model-image:read","model-image:write","model-version:read","model-version:write","inference-deployment:read","inference-deployment:write","analytics:read","vision:annotate","tenant:read","tenant:manage","billing:read","billing:write","apikey:read","apikey:write","apikey:manage","audit:read"]}},"required":["rolePermissions","grants","denies","effective"]},"EmailRegistrationBodyDto":{"type":"object","properties":{"email":{"type":"string","format":"email"},"password":{"type":"string"},"displayName":{"type":"string","nullable":true}},"required":["email","password"]},"EmbodimentProfileSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"ownerType":{"type":"string","enum":["tenant","system"]},"tenantId":{"type":"string","nullable":true},"code":{"type":"string"},"displayName":{"type":"string"},"description":{"type":"string","nullable":true},"actionDim":{"type":"number"},"obsSpace":{"type":"string"},"actionSpace":{"type":"string"},"actuatorGroups":{"type":"object","additionalProperties":true},"cameras":{"type":"object","additionalProperties":true},"kinematics":{"type":"object","additionalProperties":true},"defaultStrategyKey":{"type":"string"},"supportedTransports":{"type":"object","additionalProperties":true},"preferredWireProtocols":{"type":"object","additionalProperties":true},"metadata":{"$ref":"#/components/schemas/Record","nullable":true},"publishedAt":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","ownerType","tenantId","code","displayName","description","actionDim","obsSpace","actionSpace","actuatorGroups","cameras","kinematics","defaultStrategyKey","supportedTransports","preferredWireProtocols","metadata","publishedAt","createdAt","updatedAt"]},"EmptyPageQueryDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"EpisodeDetailDto":{"type":"object","properties":{"preview":{"$ref":"#/components/schemas/EpisodePreviewDto"},"episodeId":{"type":"string"},"recordingId":{"type":"string"},"recordingName":{"type":"string"},"startNs":{"type":"number"},"endNs":{"type":"number"},"durationNs":{"type":"number"},"cameraKeys":{"type":"array","items":{"type":"string"}},"posterUrl":{"type":"string","nullable":true},"task":{"type":"object","properties":{"en":{"type":"string","nullable":true},"zh":{"type":"string","nullable":true}},"nullable":true},"outcome":{"type":"string","nullable":true},"subtaskCount":{"type":"number"},"tags":{"type":"array","items":{"type":"string"}},"attributes":{"$ref":"#/components/schemas/Record"},"splitTag":{"type":"string","nullable":true},"labelState":{"type":"string"},"verdict":{"type":"string","enum":["warning","fail","incomplete","pass","not_checked"]},"verdictReason":{"type":"string","nullable":true},"issueCount":{"type":"number"},"collector":{"nullable":true},"headRevisionId":{"type":"string","nullable":true},"confidence":{"type":"number","nullable":true},"excluded":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"provenance":{"type":"string","enum":["human","ai_proposed"]},"reviewed":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"semanticScore":{"type":"number"}},"required":["preview","episodeId","recordingId","recordingName","startNs","endNs","durationNs","cameraKeys","posterUrl","task","outcome","subtaskCount","tags","attributes","splitTag","labelState","verdict","verdictReason","issueCount","collector","headRevisionId","confidence","excluded","provenance","reviewed"]},"EpisodeExclusionResponseDto":{"type":"object","properties":{"datasetVersionId":{"type":"string"},"action":{"type":"string","enum":["exclude","restore"]},"requestedCount":{"type":"number"},"changedCount":{"type":"number"},"reason":{"type":"string"},"items":{"type":"array","items":{"$ref":"#/components/schemas/EpisodeExclusionResultItemDto"}},"idempotentReuse":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["datasetVersionId","action","requestedCount","changedCount","reason","items"]},"EpisodeExclusionResultItemDto":{"type":"object","properties":{"datasetVersionItemId":{"type":"string"},"sampleKey":{"type":"string"},"episodeIndex":{"type":"number","nullable":true},"excludedFromTraining":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"excludedReason":{"type":"string","nullable":true},"changed":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["datasetVersionItemId","sampleKey","episodeIndex","excludedFromTraining","excludedReason","changed"]},"EpisodeListRowDto":{"type":"object","properties":{"episodeId":{"type":"string"},"recordingId":{"type":"string"},"recordingName":{"type":"string"},"startNs":{"type":"number"},"endNs":{"type":"number"},"durationNs":{"type":"number"},"cameraKeys":{"type":"array","items":{"type":"string"}},"posterUrl":{"type":"string","nullable":true},"task":{"type":"object","properties":{"en":{"type":"string","nullable":true},"zh":{"type":"string","nullable":true}},"nullable":true},"outcome":{"type":"string","nullable":true},"subtaskCount":{"type":"number"},"tags":{"type":"array","items":{"type":"string"}},"attributes":{"$ref":"#/components/schemas/Record"},"splitTag":{"type":"string","nullable":true},"labelState":{"type":"string"},"verdict":{"type":"string","enum":["warning","fail","incomplete","pass","not_checked"]},"verdictReason":{"type":"string","nullable":true},"issueCount":{"type":"number"},"collector":{"nullable":true},"headRevisionId":{"type":"string","nullable":true},"confidence":{"type":"number","nullable":true},"excluded":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"provenance":{"type":"string","enum":["human","ai_proposed"]},"reviewed":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"semanticScore":{"type":"number"}},"required":["episodeId","recordingId","recordingName","startNs","endNs","durationNs","cameraKeys","posterUrl","task","outcome","subtaskCount","tags","attributes","splitTag","labelState","verdict","verdictReason","issueCount","collector","headRevisionId","confidence","excluded","provenance","reviewed"]},"EpisodeOperationsBodyDto":{"type":"object","properties":{"selection":{"type":"object","additionalProperties":true},"operations":{"type":"array","items":{"type":"object"}},"annotationJobId":{"type":"string","format":"uuid"}},"required":["selection","operations"]},"EpisodeOperationsResult":{"type":"object","properties":{"matched":{"type":"number"},"updated":{"type":"number"},"skipped":{"$ref":"#/components/schemas/EpisodeOperationsSkipped"},"revisionIds":{"type":"array","items":{"type":"string"}}},"required":["matched","updated","skipped"]},"EpisodeOperationsSkipped":{"type":"object","properties":{"conflict":{"type":"number"},"deleted":{"type":"number"},"overlap":{"type":"number"}},"required":["conflict","deleted","overlap"]},"EpisodePreviewDto":{"type":"object","properties":{"videoUrl":{"type":"string","nullable":true},"startSeconds":{"type":"number"}},"required":["videoUrl","startSeconds"]},"EpisodeProvenanceDetailDto":{"type":"object","properties":{"episodeKey":{"type":"string"},"episodeId":{"type":"string","nullable":true},"completeness":{"type":"string","enum":["missing","partial","complete"]},"missingFields":{"type":"array","items":{"type":"string"},"enum":["episodeId","collectionCellId","siteId","operatorId","hardwareConfigVersion","calibrationTimestamp","clockSyncRef","annotationWorkflowVersion","filterFlags","sourceCodebaseVersion"]},"presentFields":{"type":"array","items":{"type":"string"},"enum":["episodeId","collectionCellId","siteId","operatorId","hardwareConfigVersion","calibrationTimestamp","clockSyncRef","annotationWorkflowVersion","filterFlags","sourceCodebaseVersion"]}},"required":["episodeKey","episodeId","completeness","missingFields","presentFields"]},"EpisodeRevisionDto":{"type":"object","properties":{"id":{"type":"string"},"episodeId":{"type":"string"},"parentRevisionId":{"type":"string","nullable":true},"startNs":{"type":"number"},"endNs":{"type":"number"},"durationNs":{"type":"number"},"task":{"type":"object","properties":{"en":{"type":"string","nullable":true},"zh":{"type":"string","nullable":true}},"nullable":true},"outcome":{"type":"string","nullable":true},"subtaskCount":{"type":"number"},"subtasks":{"type":"array","items":{"type":"object","properties":{"startNs":{"type":"number"},"endNs":{"type":"number"},"description":{"type":"object","properties":{"en":{"type":"string","nullable":true},"zh":{"type":"string","nullable":true}}},"skillTermId":{"type":"string","nullable":true},"relevance":{"type":"string","enum":["optional","essential","irrelevant"],"nullable":true},"outcome":{"type":"string","enum":["success","failure","partial"],"nullable":true}},"required":["startNs","endNs","description"]}},"tags":{"type":"array","items":{"type":"string"}},"attributes":{"$ref":"#/components/schemas/Record"},"splitTag":{"type":"string","nullable":true},"excluded":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"deleted":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"state":{"type":"string"},"source":{"type":"string"},"confidence":{"type":"number","nullable":true},"actorUserId":{"type":"string","nullable":true},"comment":{"type":"string","nullable":true},"commentAtNs":{"type":"number","nullable":true},"createdAt":{"type":"string"}},"required":["id","episodeId","parentRevisionId","startNs","endNs","durationNs","task","outcome","subtaskCount","subtasks","tags","attributes","splitTag","excluded","deleted","state","source","confidence","actorUserId","comment","commentAtNs","createdAt"]},"EpisodeSearchStatusDto":{"type":"object","properties":{"enabled":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"indexedCount":{"type":"number"},"notIndexedCount":{"type":"number"}},"required":["enabled","indexedCount","notIndexedCount"]},"ErrorCode":{"type":"string","description":"Stable public error code (ADR 0156 W3). Internal, Operator, and PlatformAdmin codes are omitted.","enum":["ACCESS_REVIEW_FORBIDDEN","ACTIVATION_REQUIRED","ALGORITHM_BUILD_CONTEXT_TOO_LARGE","ALGORITHM_BUILD_FAILED","ALGORITHM_CLOUD_BUILD_UNAVAILABLE","ALGORITHM_DEFINITION_NOT_FOUND","ALGORITHM_FILE_VERSION_UNSUPPORTED","ALGORITHM_GOVERNANCE_GATE_BLOCKED","ALGORITHM_IMAGE_COMMAND_MISSING","ALGORITHM_IMAGE_COMMAND_UNREACHABLE","ALGORITHM_IMAGE_DIGEST_REQUIRED","ALGORITHM_IMAGE_PUSH_UNAVAILABLE","ALGORITHM_IMAGE_REF_FORBIDDEN","ALGORITHM_INPUT_FORMAT_UNKNOWN","ALGORITHM_KIND_PROFILE_MISMATCH","ALGORITHM_PULL_SECRET_INVALID","ALGORITHM_PYTHON_ENTRYPOINT_MISSING","ALGORITHM_PYTHON_REQUIREMENTS_TOO_MANY","ALGORITHM_PYTHON_REQUIREMENT_DUPLICATE","ALGORITHM_PYTHON_REQUIREMENT_INVALID","ALGORITHM_PYTHON_SOURCE_INVALID","ALGORITHM_PYTHON_SOURCE_MISSING","ALGORITHM_PYTHON_SOURCE_TOO_LARGE","ALGORITHM_REVISION_NOT_EXECUTABLE","ALGORITHM_REVISION_NOT_FOUND","ALGORITHM_REVISION_REVOKED","ALGORITHM_SAMPLE_RUN_GPU_UNSUPPORTED","ALGORITHM_SAMPLE_RUN_INPUT_NOT_READY","ALGORITHM_SAMPLE_RUN_INPUT_TOO_LARGE","ALGORITHM_SAMPLE_RUN_LIMIT","ALGORITHM_SAMPLE_RUN_NOT_FOUND","ALGORITHM_SAMPLE_RUN_PARAMS_UNSUPPORTED","ALGORITHM_SAMPLE_RUN_RECORDINGS_INVALID","ALGORITHM_SAMPLE_RUN_SOURCE_UNSUPPORTED","ALGORITHM_SAMPLE_RUN_STAGE_TOKEN_INVALID","ALGORITHM_SAMPLE_RUN_UNAVAILABLE","ALGORITHM_SOURCE_FIELDS_CONFLICT","ALGORITHM_VERSION_BELOW_SUGGESTED","ALGORITHM_VERSION_DISABLED","ALGORITHM_VERSION_EXISTS","ANNOTATION_CLAIM_EMPTY","ANNOTATION_COMPLETION_INCOMPLETE","ANNOTATION_COMPLETION_STALE","ANNOTATION_ITEM_HAS_SUGGESTIONS","ANNOTATION_ITEM_NOT_FOUND","ANNOTATION_JOB_NOT_FOUND","ANNOTATION_JOB_NOT_OPEN","ANNOTATION_SELF_REVIEW_FORBIDDEN","ANNOTATION_SNAPSHOT_NOT_FOUND","ANNOTATION_TASK_NOT_FOUND","ARTIFACT_NOT_FOUND","ASSET_BACKFILL_NOT_FOUND","ASSET_NOT_FOUND","ASSET_PROJECT_MISMATCH","ASSET_TENANT_MISMATCH","ASSET_TYPE_UNSUPPORTED","ASSET_VALIDATION_ERROR","ASSIGNEE_NOT_IN_PROJECT","AUDIO_UNSUPPORTED","AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","BASE_SNAPSHOT_NOT_FOUND","BILLING_BLOCKED","BILLING_STATE_TRANSITION_INVALID","BUDGET_HARD_STOP_REACHED","CANNOT_MODIFY_OWNER","CATALOG_INVALID_METADATA_KEY","CATALOG_INVALID_SORT_FIELD","CATALOG_SEARCH_DSL_INVALID","CATALOG_SEARCH_EXPRESSION_TOO_DEEP","CATALOG_SEARCH_EXPRESSION_TOO_LARGE","CATALOG_SEARCH_FIELD_NOT_ALLOWED","CATALOG_SEARCH_INDEX_NOT_READY","CATALOG_SEARCH_OPERATOR_NOT_ALLOWED","CATALOG_SEARCH_SCHEMA_UNAVAILABLE","CATALOG_SEARCH_SEMANTIC_NOT_READY","CATALOG_SEARCH_VALIDATION_ERROR","CATALOG_VALIDATION_ERROR","CHECKPOINT_NOT_COMPLETE","CHECKPOINT_NOT_FOUND","CLI_LOGIN_ALREADY_CONSUMED","CLI_LOGIN_EXPIRED","CLI_LOGIN_INVALID_BROWSER_SECRET","CLI_LOGIN_INVALID_POLL_SECRET","CLI_LOGIN_MEMBERSHIP_INVALID","CLI_LOGIN_NOT_APPROVED","CLI_LOGIN_NOT_FOUND","CLI_LOGIN_NOT_PENDING","COLLECTION_ASSIGNMENT_CSV_LIMIT","COLLECTION_ASSIGNMENT_NOT_COLLECTOR","COLLECTION_ASSIGNMENT_NOT_FOUND","COLLECTION_CONSENT_NOT_FOUND","COLLECTION_CONSENT_REQUIRED","COLLECTION_DELIVERY_ACCEPTANCE_REASON_REQUIRED","COLLECTION_DELIVERY_ACCEPTANCE_WAIVER_REQUIRED","COLLECTION_DELIVERY_ALREADY_TERMINAL","COLLECTION_DELIVERY_BANNED_ROOT_NAME","COLLECTION_DELIVERY_BANNED_SOURCE_METADATA_ROOT","COLLECTION_DELIVERY_BATCH_NOT_FOUND","COLLECTION_DELIVERY_INVALID_SHAPE","COLLECTION_DELIVERY_ORDER_NOT_ACCEPTING","COLLECTION_DELIVERY_ORDER_NOT_FOUND","COLLECTION_DELIVERY_REPLACEMENT_NOT_ALLOWED","COLLECTION_DELIVERY_SKILL_TARGET_NOT_TERM_IDENTITY","COLLECTION_DELIVERY_SKILL_TARGET_USED_BINDING_IDENTITY","COLLECTION_DELIVERY_SUBMIT_NOT_ALLOWED","COLLECTION_DELIVERY_UNKNOWN_BATCH_STATE","COLLECTION_DELIVERY_UNKNOWN_ORDER_STATE","COLLECTION_DELIVERY_VERSION_REQUIRED","COLLECTION_DELIVERY_WORKFLOW_NOT_SEEDED","COLLECTION_MEDIA_LIMIT","COLLECTION_OPENING_NO_CONSENT","COLLECTION_OPENING_NO_QUOTA","COLLECTION_OPENING_NO_TASK","COLLECTION_ORDER_NOT_DRAFT","COLLECTION_QUOTA_CAP_REACHED","COLLECTION_QUOTA_NOT_FOUND","COLLECTION_REVIEW_REASON_REQUIRED","COLLECTION_SCENE_NOT_FOUND","COLLECTION_SPECIFICATION_FROZEN","COLLECTION_SPECIFICATION_INVALID","COLLECTION_SUBMISSION_NOT_FOUND","COLLECTION_SUBMISSION_NOT_IN_REVIEW","COLLECTION_TASK_NOT_FOUND","COLLECTION_TEMPLATE_NOT_FOUND","COMPOSITION_CANONICAL_OUTPUTS_MISSING","COMPOSITION_EXTRACTOR_UNSUPPORTED","COMPOSITION_IDEMPOTENCY_KEY_REQUIRED","COMPOSITION_PROFILES_NOT_COMPARABLE","COMPOSITION_PROFILE_IN_PROGRESS","COMPOSITION_PROFILE_NOT_FOUND","COMPOSITION_PROFILE_VALIDATION_ERROR","COMPOSITION_REFERENCE_NOT_FOUND","COMPUTE_PROFILE_INACTIVE","COMPUTE_PROFILE_NOT_FOUND","CONTAINER_RUN_NOT_FOUND","CSRF_INVALID","CSRF_TOKEN_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","CURRENT_SESSION_NOT_REVOCABLE","DATASET_EXPORT_JOB_NOT_FOUND","DATASET_MIXTURE_EVALUATION_READINESS_BLOCKED","DATASET_MIXTURE_INPUT_FORBIDDEN","DATASET_MIXTURE_INPUT_NOT_FOUND","DATASET_MIXTURE_NOT_FOUND","DATASET_MIXTURE_RECIPE_INVALID","DATASET_MIXTURE_STATE_CONFLICT","DATASET_NOT_FOUND","DATASET_PERSIST_RUN_REQUIRED","DATASET_REF_AMBIGUOUS","DATASET_VERSION_CONTRACT_BLOCKED","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_MANIFEST_MISSING","DATASET_VERSION_METADATA_MISSING","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_FOUND","DATASET_VERSION_NOT_QUERYABLE","DATASET_VERSION_NOT_SOFT_HIDDEN","DATASET_VERSION_QUALITY_BLOCKED","DATASET_VERSION_STATS_STALE","DATA_CONTRACT_NOT_FOUND","DATA_CONTRACT_REVISION_IMMUTABLE","DATA_CONTRACT_REVISION_NOT_FOUND","DATA_CONTRACT_REVISION_NOT_PUBLISHED","DATA_CONTRACT_VALIDATION_ERROR","DATA_FORMAT_CONVERTER_UNUSABLE","DATA_FORMAT_INVALID","DATA_FORMAT_NOT_FOUND","DATA_FORMAT_NOT_PUBLISHED","DATA_FORMAT_PRIVACY_RELAX_FORBIDDEN","DATA_FORMAT_PUBLISH_CONFLICT","DATA_FORMAT_RAW_READ_DENIED","DATA_FORMAT_SAMPLE_EXTENSION_UNSUPPORTED","DATA_FORMAT_SAMPLE_LIMIT","DATA_FORMAT_SAMPLE_NOT_DRAFT","DATA_FORMAT_SAMPLE_PROJECT_MISMATCH","DATA_FORMAT_SAMPLE_RUN_REQUIRED","DATA_FORMAT_SAMPLE_UPLOAD_FORBIDDEN","DATA_FORMAT_SLUG_INVALID","DATA_FORMAT_SLUG_TAKEN","DELETION_BLOCKED_BY_ACTIVE_WORK","DEPLOYMENT_PACKAGE_NOT_FOUND","DEPLOYMENT_PROFILE_UNAVAILABLE","DESTINATION_NOT_ALLOWED","DIFF_NOT_READY","DOWNLOAD_SESSION_NOT_FOUND","DUPLICATE_TAG_KEY","EDGE_INFERENCE_DISABLED","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EGO_HUMAN_PROCESSOR_DIGEST_REQUIRED","EGO_HUMAN_SOURCE_DISABLED","EMAIL_ALREADY_REGISTERED","EMBODIMENT_INCOMPATIBLE","EMBODIMENT_NOT_FOUND","EMBODIMENT_NOT_PUBLISHED","EMPTY_UPLOAD_MANIFEST","ENCRYPTION_KEY_MISSING","ENDPOINT_LIMIT_EXCEEDED","EPISODE_LANGUAGE_NOT_ENABLED","EPISODE_NOT_FOUND","EPISODE_NOT_INDEXED","EPISODE_REVISION_CONFLICT","EVALUATION_FEATURE_SCHEMA_MISMATCH","EVALUATION_SPLIT_EMPTY","EXPORT_ALREADY_FINALIZED","EXPORT_BLOCKED_BY_PII_POLICY","EXPORT_EPISODE_TASK_MISSING","EXPORT_FORMAT_UNSUPPORTED","EXPORT_MEMBER_RESULT_MISSING","EXPORT_NOT_FOUND","EXPORT_OPTION_UNSUPPORTED","EXPORT_STORAGE_UNAVAILABLE","EXPORT_VERSION_DIGEST_MISSING","EXPORT_WORKFLOW_UNAVAILABLE","FEATURE_NAMESPACE_VIOLATION","FORBIDDEN","FORMAT_ADAPTER_UNAVAILABLE","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GOVERNANCE_TAG_NOT_FOUND","GROUPED_DATASET_SCALE","HANDLE_INVALID","HANDLE_TAKEN","HUGGING_FACE_IMPORT_DISABLED","IDEMPOTENCY_CONFLICT","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMAGE_ARCH_UNSUPPORTED","IMAGE_FAMILY_UNSUPPORTED","IMAGE_GPU_MEMORY_INSUFFICIENT","IMAGE_REVISION_NOT_EXECUTABLE","IMAGE_REVISION_NOT_FOUND","IMAGE_REVISION_NOT_PUBLISHED","IMAGE_WIRE_UNSUPPORTED","IMPORTED_CHECKPOINT_INCOMPLETE","IMPORTED_CHECKPOINT_INVALID_PATH","IMPORTED_CHECKPOINT_NOT_FOUND","IMPORT_BINDING_FROZEN","IMPORT_EXECUTION_FAILED","IMPORT_FORMAT_AMBIGUOUS","IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_CHANGED","IMPORT_SOURCE_IDENTITY_UNSUPPORTED","IMPORT_SOURCE_NOT_FOUND","IMPORT_VALIDATION_FAILED","INFERENCE_DEPLOYMENT_NOT_FOUND","INFERENCE_DEPLOYMENT_NOT_RUNNING","INFERENCE_ENDPOINT_NOT_EXPOSED","INITIAL_PASSWORD_EXPIRED","INITIAL_PASSWORD_REQUIRED","INSTANCE_ATTESTATION_KEY_MISSING","INSTANCE_ATTESTATION_LICENSE_UNAVAILABLE","INVALID_CREDENTIALS","INVALID_INPUT","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","INVALID_STATUS_TRANSITION","INVITATION_ALREADY_ACCEPTED","INVITATION_EMAIL_MISMATCH","INVITATION_EXPIRED","INVITATION_INVALID","INVITATION_NOT_FOUND","INVITATION_REVOKED","INVOICE_SNAPSHOT_ALREADY_EXISTS","ITEM_NOT_IN_VERSION","LAST_OWNER_PROTECTION","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_PLATFORM_AUTHORITY","LEGAL_HOLD_SCOPE_INVALID","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","LICENSE_SEAT_LIMIT","LICENSE_TENANT_LIMIT","LINEAGE_FILTER_REQUIRED","LINEAGE_NODE_NOT_FOUND","MEMBERSHIP_DISABLED","MEMBERSHIP_EXPIRED","MEMBERSHIP_NOT_FOUND","MFA_CHALLENGE_INVALID","MFA_ENROLLMENT_REQUIRED","MFA_REQUIRED","MODEL_BUNDLE_JOB_NOT_FOUND","MODEL_BUNDLE_JOB_NOT_RUNNING","MODEL_BUNDLE_OBJECTS_REQUIRED","MODEL_BUNDLE_PREFIX_INVALID","MODEL_BUNDLE_PREFIX_REQUIRED","MODEL_BUNDLE_STORAGE_UNAVAILABLE","MODEL_COMPARISON_INCOMPLETE","MODEL_IMAGE_DEFINITION_NOT_FOUND","MODEL_IMAGE_REVISION_NOT_EXECUTABLE","MODEL_IMAGE_REVISION_NOT_FOUND","MODEL_IMAGE_REVISION_NOT_PUBLISHED","MODEL_IMAGE_REVISION_REVOKED","MODEL_IMAGE_SELF_REVIEW_FORBIDDEN","MODEL_VERSION_INVALID_STATUS","MODEL_VERSION_NOT_FOUND","MODEL_VERSION_NOT_READY","NOT_FOUND","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_PROVIDER_NOT_CONFIGURED","OAUTH_STATE_INVALID","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","OFFBOARDING_REQUEST_NOT_FOUND","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_RATE_LIMITED","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","PAYLOAD_TOO_LARGE","PERMISSION_DENIED","PERMISSION_NOT_DECLARED","PIPELINE_BINDING_ALREADY_EXISTS","PIPELINE_BINDING_NOT_FOUND","PLATFORM_MAINTENANCE_READ_ONLY","PRECONDITION_FAILED","PRECONDITION_REQUIRED","PRIVACY_GATE_UNRESOLVED","PRIVACY_QC_ERROR","PRIVACY_QC_FAILED","PRIVACY_QC_NOT_EVALUATED","PROJECT_ACCESS_DENIED","PROJECT_DATA_FORMAT_LOCKED","PROJECT_MEMBERSHIP_EXPIRED","PROJECT_NAME_INVALID","PROJECT_NOT_FOUND","PROJECT_VERSION_NOT_FOUND","PROVENANCE_NOT_AVAILABLE","PROVENANCE_SCHEMA_INVALID","QUALITY_CHECK_PARAM_INVALID","QUALITY_CHECK_UNKNOWN","QUALITY_IDEMPOTENCY_KEY_REQUIRED","QUALITY_POLICY_CREATE_RACE_CONFLICT","QUALITY_POLICY_LEGACY_SPEC","QUALITY_POLICY_SCOPE_CONFLICT","QUALITY_RULE_SET_NOT_FOUND","QUERY_DSL_INVALID","QUERY_EXECUTOR_UNAVAILABLE","QUERY_FIELD_NOT_ALLOWED","QUERY_INDEX_BUILDING","QUERY_INDEX_FAILED","QUERY_INDEX_NOT_BUILT","QUERY_INDEX_NOT_READY","QUERY_INDEX_STALE","QUERY_OBJECT_ACCESS_UNAVAILABLE","QUERY_OBJECT_SCOPE_INVALID","QUERY_ROW_LIMIT_EXCEEDED","QUERY_TIMEOUT","RATE_LIMITED","RECONCILIATION_ALREADY_RUNNING","RECORDING_CAPTURE_LABELS_INVALID","RECORDING_CAPTURE_LABELS_TOO_LARGE","RECORDING_FORMAT_NOT_ACCEPTED","RECORDING_FORMAT_SAMPLE_NOT_ADMITTED","RECORDING_NOT_FOUND","REGISTRATION_INVITATION_EXPIRED","REPAIR_TASK_NOT_FOUND","REPRO_BUNDLE_INPUT_FORBIDDEN","REPRO_BUNDLE_INPUT_NOT_FOUND","REPRO_BUNDLE_RECIPE_INVALID","REPRO_BUNDLE_SPLIT_MISSING","REQUEST_TIMEOUT","RESOURCE_NOT_FOUND","RETENTION_WINDOW_NOT_ELAPSED","REVIEW_TASK_CLOSED","REVIEW_TASK_NOT_FOUND","RIG_PROFILE_DRAFT_INCOMPLETE","RIG_PROFILE_DRAFT_UNREADABLE","RIG_PROFILE_INVALID","RIG_PROFILE_NAME_TAKEN","RIG_PROFILE_NOT_FOUND","RIG_PROFILE_PUBLISH_CONFLICT","RIG_PROFILE_RAW_READ_DENIED","RIG_PROFILE_SOURCE_UNSUPPORTED","SAMPLE_NOT_FOUND","SAMPLE_PROJECT_READ_ONLY","SAMPLE_PROVISION_FORBIDDEN","SAMPLE_SELECTION_NOT_FOUND","SAMPLE_TEMPLATE_UNAVAILABLE","SAVED_VIEW_NAME_TAKEN","SAVED_VIEW_NOT_FOUND","SDK_ARTIFACT_UNKNOWN","SECRET_NOT_FOUND","SEMANTIC_SEARCH_UNAVAILABLE","SERVICE_ACTION_FORBIDDEN","SESSION_EXPIRED","SESSION_NOT_FOUND","SIGNUP_DISABLED","SKILL_TAXONOMY_CONFLICT","SKILL_TAXONOMY_COVERAGE_FLOOR_NOT_DISABLEABLE","SKILL_TAXONOMY_FORBIDDEN","SKILL_TAXONOMY_IDEMPOTENCY_KEY_REQUIRED","SKILL_TAXONOMY_INVALID_SCOPE","SKILL_TAXONOMY_INVALID_STATUS","SKILL_TAXONOMY_LABEL_EN_MISSING","SKILL_TAXONOMY_LABEL_ZH_MISSING","SKILL_TAXONOMY_NOT_DRAFT","SKILL_TAXONOMY_NOT_FOUND","SKILL_TAXONOMY_PLATFORM_CODE_REUSED","SKILL_TAXONOMY_PLATFORM_IDENTITY_SHADOWED","SKILL_TAXONOMY_PROJECT_ID_REQUIRED","SKILL_TAXONOMY_TERM_NOT_FOUND","SKILL_TAXONOMY_VALIDATION_ERROR","SLUG_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","SNAPSHOT_ROW_IMMUTABLE","SPLIT_CONFIG_IMMUTABLE","SPLIT_CONFIG_INVALID","SPLIT_NOT_REPRODUCIBLE","SSO_NOT_CONFIGURED","SSO_PROVIDER_UNAVAILABLE","STORAGE_BUCKET_ALREADY_EXISTS","STORAGE_NOT_READY","STORAGE_OBJECT_NOT_FOUND","STORAGE_PROVIDER_NOT_CONFIGURED","STORAGE_PROVISIONING_FAILED","STORAGE_QUOTA_EXCEEDED","STORAGE_RECONCILIATION_ALREADY_RUNNING","STORAGE_RECONCILIATION_JOB_NOT_FOUND","STORAGE_RECONCILIATION_PROVIDER_UNAVAILABLE","STORAGE_REGION_NOT_AVAILABLE","STUB_EXECUTOR_FORBIDDEN","SUBJECT_ERASURE_DISABLED","SUBJECT_NOT_IN_TENANT","SUBJECT_PSEUDONYM_SECRET_MISSING","SUBSCRIPTION_NOT_FOUND","TENANT_CONTEXT_MISMATCH","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_FOUND","TENANT_DELETION_JOB_NOT_RETRYABLE","TENANT_FROZEN","TENANT_NOT_FOUND","TENANT_NOT_OFFBOARDING","TENANT_READ_ONLY","TENANT_REQUIRED","TENANT_SCOPE_DENIED","TENANT_SLUG_CONFLICT","TENANT_STORAGE_KEY_CONFLICT","TIME_RANGE_ANNOTATION_NOT_FOUND","TOKEN_EXPIRED","TOKEN_MALFORMED","TOKEN_NOT_FOUND","TOKEN_REVOKED","TRAINING_ACTION_MISSING","TRAINING_ARTIFACT_NOT_FINALIZED","TRAINING_ARTIFACT_NOT_FOUND","TRAINING_ARTIFACT_UNSUPPORTED_TYPE","TRAINING_ARTIFACT_WRONG_PROJECT","TRAINING_ATTEMPT_NOT_FOUND","TRAINING_CANCEL_CONFLICT","TRAINING_ENTITLEMENT_DENIED","TRAINING_FINALIZATION_INCOMPLETE","TRAINING_FLAVOR_TOO_SMALL","TRAINING_FORBIDDEN_INFRA_FIELD","TRAINING_IDEMPOTENCY_KEY_CONFLICT","TRAINING_IDEMPOTENCY_KEY_REQUIRED","TRAINING_INVALID_STATE_TRANSITION","TRAINING_JOB_HAS_NO_OUTPUT_ARTIFACT","TRAINING_JOB_NOT_ACTIVE","TRAINING_JOB_NOT_COMPLETED","TRAINING_JOB_NOT_FOUND","TRAINING_LEASE_CONFLICT","TRAINING_LEASE_NOT_HELD","TRAINING_NEEDS_TASK","TRAINING_NON_TERMINAL_ATTEMPT_EXISTS","TRAINING_OBSERVATION_VERSION_CONFLICT","TRAINING_PLACEMENT_UNAVAILABLE","TRAINING_PROVENANCE_UNRESOLVABLE","TRAINING_PROVIDER_BINDING_CONFLICT","TRAINING_RECIPE_ACTION_SEMANTICS_INCOMPATIBLE","TRAINING_RECIPE_ACTION_SEMANTICS_UNAVAILABLE","TRAINING_RECIPE_DURATION_UNAVAILABLE","TRAINING_RECIPE_IDEMPOTENCY_KEY_REQUIRED","TRAINING_RECIPE_INVALID","TRAINING_RECIPE_LEGAL_HOLD_BLOCKED","TRAINING_RECIPE_NOT_FOUND","TRAINING_RECIPE_PROPORTION_INVALID","TRAINING_RECIPE_QUALITY_THRESHOLD_UNAVAILABLE","TRAINING_RECIPE_RANGE_EXPORT_UNSUPPORTED","TRAINING_RECIPE_REQUIRED_FEATURE_MISSING","TRAINING_RECIPE_RESOLUTION_EMPTY","TRAINING_RECIPE_SNAPSHOT_MISMATCH","TRAINING_RECIPE_STATE_CONFLICT","TRAINING_RECIPE_TAXONOMY_UNAVAILABLE","TRAINING_RETRY_CONFLICT","TRAINING_TENANT_FROZEN","TRAINING_VALIDATION_ERROR","TRAIN_SPEC_INVALID","TRASH_ITEM_IN_USE","TRASH_PARENT_DELETED","UNAUTHORIZED","UNCLASSIFIED_FILES","UNKNOWN_EVENT_TYPE","UNSUPPORTED_FILE_EXTENSION","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_BATCH_NOT_FOUND","UPLOAD_DEVICE_META_TOO_LARGE","UPLOAD_HUMAN_DEVICE_META_MISSING","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_PROCESSING_UNAVAILABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED","UPLOAD_SESSION_EXPIRED","UPLOAD_SESSION_NOT_FOUND","UPLOAD_STEREO_CALIBRATION_MISSING","UPLOAD_TASK_MISSING","USAGE_ATTESTATION_PERIOD_INVALID","USAGE_LIMIT_ABOVE_CEILING","USAGE_SUMMARY_FORBIDDEN","USAGE_SUMMARY_SCOPE_INVALID","USER_ALREADY_MEMBER","USER_DISABLED","USER_NOTIFICATION_NOT_FOUND","VALIDATION_ERROR","VENDOR_SCHEMA_UNDECLARED","VERSION_ALIAS_RESERVED","VERSION_ALREADY_EXISTS","VERSION_CAPTURE_SESSION_SPLIT_MISMATCH","VERSION_DATA_CONTRACT_INCOMPLETE","VERSION_DATA_CONTRACT_MISMATCH","VERSION_IN_TRASH","VERSION_MIXED_FEATURE_SCHEMA","VERSION_SPLIT_TAG_MISSING","VIDEO_LAYOUT_AMBIGUOUS","VLM_NOT_CONFIGURED","WAIVE_REASON_REQUIRED","WEBAUTHN_NOT_CONFIGURED","WEBHOOK_DELIVERY_INVALID_TIME_RANGE","WEBHOOK_DELIVERY_IN_FLIGHT","WEBHOOK_DELIVERY_NOT_FOUND","WEBHOOK_DELIVERY_TIME_RANGE_REQUIRED","WEBHOOK_DELIVERY_WINDOW_TOO_LARGE","WEBHOOK_ENDPOINT_DISABLED","WEBHOOK_ENDPOINT_NOT_FOUND","WEBHOOK_PING_RATE_LIMITED","WIRE_PROTOCOL_NOT_PERMITTED","WORKFLOW_ALGORITHM_UNRESOLVED","WORKFLOW_CONCURRENCY_LIMIT","WORKFLOW_DEFINITION_CODE_CONFLICT","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED","WORKFLOW_INPUT_NOT_STAGED","WORKFLOW_INPUT_SCOPE_MISMATCH","WORKFLOW_INPUT_UNWIRED","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_QUOTA_EXCEEDED","WORKFLOW_RAW_CODE_AUTHORITY_DENIED","WORKFLOW_REQUIREMENT_UNMET","WORKFLOW_RERUN_NOT_ALLOWED","WORKFLOW_REVIEW_ALREADY_DECIDED","WORKFLOW_REVISION_NOT_FOUND","WORKFLOW_RUN_NOT_FOUND","WORKFLOW_RUN_STATE_CONFLICT","WORKFLOW_RUN_TOO_LARGE","WORKFLOW_SECRET_NAME_RESERVED","WORKFLOW_SELECTION_EMPTY","WORKFLOW_SPEC_INVALID","WORKFLOW_STEP_LOCKED","WORKFLOW_YAML_INVALID"]},"ExplainabilityBackfillSnapshotDto":{"type":"object","properties":{"backfillId":{"type":"string"},"status":{"type":"string","enum":["running","succeeded","failed","cancelled","requested","planning","partially-failed"]},"sourceDatasetVersionId":{"type":"string"},"outputDatasetVersionId":{"type":"string","nullable":true},"progressLabel":{"type":"string"},"detailHref":{"type":"string"},"outputNote":{"type":"string"}},"required":["backfillId","status","sourceDatasetVersionId","outputDatasetVersionId","progressLabel","detailHref","outputNote"]},"ExplainabilityBlockingCheckDto":{"type":"object","properties":{"checkCode":{"type":"string"},"severity":{"type":"string"},"blocking":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"status":{"type":"string"},"message":{"type":"string","nullable":true}},"required":["checkCode","severity","blocking","status"]},"ExplainabilityEvidenceLinksDto":{"type":"object","properties":{"workflowRunHref":{"type":"string","nullable":true},"versionHref":{"type":"string","nullable":true},"catalogAssetHref":{"type":"string","nullable":true},"checksHref":{"type":"string","nullable":true},"lineageHref":{"type":"string","nullable":true},"backfillHref":{"type":"string","nullable":true},"logsAnchor":{"type":"string","nullable":true}}},"ExplainabilityFailingNodeDto":{"type":"object","properties":{"nodeRunId":{"type":"string"},"stepKey":{"type":"string"},"stepType":{"type":"string"},"status":{"type":"string"},"failureSummary":{"type":"string","nullable":true},"attempt":{"type":"number"},"rerunEligible":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"rerunUnavailableReason":{"type":"string","nullable":true},"inspectorHref":{"type":"string","nullable":true}},"required":["nodeRunId","stepKey","stepType","status","failureSummary","attempt","rerunEligible"]},"ExplainabilityHandoffImpactDto":{"type":"object","properties":{"blocksExport":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"blocksTrainingHandoff":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"summary":{"type":"string"}},"required":["blocksExport","blocksTrainingHandoff","summary"]},"ExplainabilityLocatorDto":{"type":"object","properties":{"kind":{"type":"string","enum":["requestId","workflowRunId","nodeRunId","assetBackfillId","datasetVersionId"]},"id":{"type":"string"},"label":{"type":"string","nullable":true},"href":{"type":"string","nullable":true}},"required":["kind","id"]},"ExplainabilityNextActionDto":{"type":"object","properties":{"kind":{"type":"string","enum":["none","open-logs","open-run","open-version","open-asset","open-checks","open-lineage","open-backfill","rerun-node","wait"]},"label":{"type":"string"},"href":{"type":"string","nullable":true},"unavailableReason":{"type":"string","nullable":true}},"required":["kind","label"]},"FailureReasonDto":{"type":"object","properties":{"code":{"type":"string"},"reason":{"type":"string"},"stepId":{"type":"string","nullable":true},"stepName":{"type":"string","nullable":true},"stepAlgorithm":{"$ref":"#/components/schemas/StepAlgorithmRef","nullable":true},"stepRunId":{"type":"string","nullable":true},"runId":{"type":"string","nullable":true},"stepErrorCode":{"type":"string","nullable":true}},"required":["code","reason","stepId","stepName","stepAlgorithm","stepRunId","runId"]},"FailureReasonSwaggerDto":{"type":"object","properties":{"code":{"type":"string","description":"Stable named code, e.g. STEP_IMAGE_UNAVAILABLE, RECORDING_FORMAT_NOT_ACCEPTED, UPLOAD_TRANSFER_FAILED"},"reason":{"type":"string","description":"Curated English reason chosen by code. Never raw internal error text."},"stepId":{"type":"string","nullable":true},"stepName":{"type":"string","nullable":true},"stepRunId":{"type":"string","nullable":true,"format":"uuid"},"stepAlgorithm":{"type":"object","nullable":true,"description":"The algorithm the failing step run executed: { slug, title, official }. The run page names the step by it."},"runId":{"type":"string","nullable":true,"format":"uuid"},"stepErrorCode":{"type":"string","nullable":true,"description":"The failed step's own registered error code, when it named one (catalog copy applies)."}},"required":["code","reason","stepId","stepName","stepRunId","stepAlgorithm","runId"]},"FeatureEntitlementSummaryDto":{"type":"object","properties":{"featureCode":{"type":"string"},"limitType":{"type":"string"},"limitValue":{"type":"string","nullable":true},"linkedMeterCode":{"type":"string","nullable":true},"usedInPeriod":{"type":"string","nullable":true},"remainingInPeriod":{"type":"string","nullable":true}},"required":["featureCode","limitType","limitValue"]},"FieldEnabledDto":{"type":"object","properties":{"enabled":{"type":"boolean"}},"required":["enabled"]},"FirstValueStateDto":{"type":"object","properties":{"state":{"type":"string","enum":["in_progress","not_started","choosing_path","first_value_reached","dismissed"]},"path":{"type":"string","enum":["sample","real"],"nullable":true},"sampleProjectId":{"type":"string","nullable":true},"reachedDatasetVersionId":{"type":"string","nullable":true},"dismissedAt":{"type":"string","nullable":true},"firstValueReachedAt":{"type":"string","nullable":true},"nonSampleProjectCount":{"type":"number"},"canCreateProject":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"shouldShowChooser":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["state","path","sampleProjectId","reachedDatasetVersionId","dismissedAt","firstValueReachedAt","nonSampleProjectCount","canCreateProject","shouldShowChooser"]},"FlowEstimate":{"type":"object","properties":{"cpuSeconds":{"type":"number"},"gpuSeconds":{"type":"number"},"storageBytes":{"type":"number"},"durationSeconds":{"type":"number"},"costMinor":{"type":"number"},"currency":{"type":"string","enum":["usd"]}},"required":["cpuSeconds","gpuSeconds","storageBytes","durationSeconds","costMinor","currency"]},"FlowRunSummary":{"type":"object","properties":{"id":{"type":"string"},"status":{"type":"string"},"mode":{"type":"string"},"trigger":{"type":"string"},"recordingCount":{"type":"number"},"estimate":{"$ref":"#/components/schemas/FlowEstimate"},"skipped":{"type":"array","items":{"type":"object","properties":{"recordingId":{"type":"string"},"reason":{"type":"string"}},"required":["recordingId","reason"]}}},"required":["id","status","mode","trigger","recordingCount","estimate"]},"FrozenFeatureSchema":{"type":"object","properties":{"fps":{"type":"number","nullable":true},"cameraKeys":{"type":"array","items":{"type":"string"}},"features":{"$ref":"#/components/schemas/Record"}},"required":["fps","cameraKeys","features"]},"GetModelEvaluationQueryDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"GetTenantStorageSummaryQueryDto":{"type":"object","properties":{"refresh":{"type":"boolean","nullable":true}}},"GetVersionCitationQueryDto":{"type":"object","properties":{"format":{"enum":["bibtex","text","cff"],"type":"string","nullable":true}}},"GitSourceDto":{"type":"object","properties":{"url":{"type":"string"},"ref":{"type":"string"},"secretName":{"type":"string"}},"required":["url","ref"]},"GpuClassProfileDto":{"type":"object","properties":{"code":{"type":"string"},"displayName":{"type":"string"},"vendor":{"type":"string","nullable":true},"memoryGb":{"type":"number"},"nodeSelector":{"$ref":"#/components/schemas/Record"},"tolerations":{"type":"array","items":{"$ref":"#/components/schemas/GpuTolerationDto"},"nullable":true},"runtimeClassName":{"type":"string","nullable":true},"isActive":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["code","displayName","memoryGb","nodeSelector","isActive"]},"GpuTolerationDto":{"type":"object","properties":{"key":{"type":"string"},"operator":{"type":"string"},"value":{"type":"string"},"effect":{"type":"string"}},"required":["key"]},"HealthBlockerDto":{"type":"object","properties":{"id":{"type":"string"},"dimensionId":{"type":"string","enum":["quality","completeness","annotation_readiness","distribution","split_safety","provenance","workflow_health","export_readiness","policy_readiness"]},"severity":{"type":"string","enum":["warning","info","blocking"]},"code":{"type":"string"},"message":{"type":"string"},"waived":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"waiveReason":{"type":"string","nullable":true},"waivedAt":{"type":"string","nullable":true},"waivedByDisplayName":{"type":"string","nullable":true},"waiverNeedsReview":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"evidenceLinks":{"type":"array","items":{"$ref":"#/components/schemas/HealthEvidenceLinkDto"}},"linkedRepairTaskId":{"type":"string","nullable":true},"linkedRepairTaskStatus":{"type":"string","enum":["in_progress","open","resolved","waived"],"nullable":true}},"required":["id","dimensionId","severity","code","message"]},"HealthDimensionDto":{"type":"object","properties":{"id":{"type":"string","enum":["quality","completeness","annotation_readiness","distribution","split_safety","provenance","workflow_health","export_readiness","policy_readiness"]},"status":{"type":"string","enum":["warning","unknown","blocking","pass","waived"]},"message":{"type":"string"},"recommendedAction":{"type":"string","nullable":true},"evidenceLinks":{"type":"array","items":{"$ref":"#/components/schemas/HealthEvidenceLinkDto"}}},"required":["id","status","message"]},"HealthEvidenceLinkDto":{"type":"object","properties":{"kind":{"type":"string","enum":["workflow-run","export-job","policy","check-result","annotation-task","review-task","catalog-asset"]},"id":{"type":"string"},"label":{"type":"string","nullable":true},"href":{"type":"string","nullable":true}},"required":["kind","id"]},"HealthRecomputeRequestResponseDto":{"type":"object","properties":{"id":{"type":"string"},"datasetVersionId":{"type":"string"},"status":{"type":"string","enum":["completed","deduplicated"]},"deduplicated":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"health":{"$ref":"#/components/schemas/DatasetVersionHealthDto"},"createdAt":{"type":"string"}},"required":["id","datasetVersionId","status","deduplicated","health","createdAt"]},"ImportAutoAnnotateDraftBodyDto":{"type":"object","properties":{"datasetVersionId":{"type":"string","format":"uuid"},"publishMode":{"type":"string","enum":["require_review","auto_publish"]},"items":{"type":"array","items":{"$ref":"#/components/schemas/ImportAutoAnnotateItemDto"}}},"required":["datasetVersionId","items"]},"ImportAutoAnnotateItemDto":{"type":"object","properties":{"segmentKind":{"type":"string","enum":["action","segment","event","phase","quality-issue","task","subtask","skill"]},"timeReference":{"type":"string"},"startSec":{"type":"number"},"startNsec":{"type":"number","minimum":0,"maximum":999999999},"endSec":{"type":"number"},"endNsec":{"type":"number","minimum":0,"maximum":999999999},"title":{"type":"string","nullable":true},"naturalLanguageInstruction":{"type":"string","nullable":true},"reviewStatus":{"type":"string"},"attributesJson":{"type":"object","additionalProperties":true,"nullable":true}},"required":["segmentKind","startSec","endSec"]},"ImportModelVersionBodyDto":{"type":"object","properties":{"name":{"type":"string"},"handle":{"type":"string"},"modelImageDefinitionId":{"type":"string","nullable":true,"format":"uuid"},"artifactId":{"type":"string","format":"uuid"},"policyFamily":{"type":"string","enum":["act","smolvla","diffusion","pi0","pi05","openpi-jax","mock"]},"trainConfigName":{"type":"string","nullable":true},"jointOrder":{"type":"array","items":{"type":"string"}},"compatibleEmbodimentCodes":{"type":"array","items":{"type":"string"}},"actionDim":{"type":"number","minimum":1},"chunkSize":{"type":"number","minimum":1},"minGpuMemoryGb":{"type":"number","minimum":0},"wireProtocols":{"type":"array","minItems":1,"items":{"type":"string"},"enum":["openpi-ws","lerobot-grpc"]},"paramsSnapshot":{"type":"object","additionalProperties":true,"nullable":true}},"required":["name","artifactId","policyFamily"]},"ImportSourceEpisodeBodyDto":{"type":"object","properties":{"taskId":{"type":"string","nullable":true},"label":{"type":"string","nullable":true},"id":{"type":"string"},"startS":{"type":"number"},"endS":{"type":"number"}},"required":["id","startS","endS"]},"ImportedCheckpointFileUploadDto":{"type":"object","properties":{"relativePath":{"type":"string"},"objectKey":{"type":"string"},"uploadUrl":{"type":"string"},"headers":{"$ref":"#/components/schemas/Record"}},"required":["relativePath","objectKey","uploadUrl","headers"]},"ImportedCheckpointSummaryDto":{"type":"object","properties":{"artifactId":{"type":"string"},"projectId":{"type":"string"},"status":{"type":"string","enum":["pending","complete"]},"objectPrefix":{"type":"string"},"relativePaths":{"type":"array","items":{"type":"string"}},"files":{"type":"array","items":{"$ref":"#/components/schemas/ImportedCheckpointFileUploadDto"}}},"required":["artifactId","projectId","status","objectPrefix","relativePaths","files"]},"InferenceConnectionResponseDto":{"type":"object","properties":{"inferenceDeploymentId":{"type":"string"},"wires":{"type":"array","items":{"$ref":"#/components/schemas/InferenceConnectionWireDto"}},"token":{"type":"string","nullable":true},"issuedAt":{"type":"string"},"expiresAt":{"type":"string","nullable":true},"unmodifiedClientGuidance":{"type":"string"}},"required":["inferenceDeploymentId","wires","token","issuedAt","expiresAt","unmodifiedClientGuidance"]},"InferenceConnectionWireDto":{"type":"object","properties":{"protocol":{"type":"string","enum":["openpi-ws","lerobot-grpc"]},"target":{"type":"string"},"tls":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["protocol","target","tls"]},"InferenceDeploymentSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string"},"modelVersionId":{"type":"string"},"inferenceImageRevisionId":{"type":"string"},"gpuClassCode":{"type":"string","nullable":true},"gpuCount":{"type":"number"},"mode":{"type":"string","enum":["online","offline-package"]},"status":{"type":"string","enum":["pending","running","failed","deploying","stopping","stopped"]},"replicas":{"type":"number"},"lastErrorMessage":{"type":"string","nullable":true},"startedAt":{"type":"string","nullable":true},"stoppedAt":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","tenantId","projectId","modelVersionId","inferenceImageRevisionId","gpuClassCode","gpuCount","mode","status","replicas","lastErrorMessage","startedAt","stoppedAt","createdAt","updatedAt"]},"InvalidateOtherSessionsResponseDto":{"type":"object","properties":{"revokedCount":{"type":"number"}},"required":["revokedCount"]},"InvitationProjectGrantBodyDto":{"type":"object","properties":{"projectId":{"type":"string","format":"uuid"},"role":{"enum":["owner","editor","reviewer","labeler","viewer","uploader","data_supplier"],"type":"string"},"orderId":{"type":"string","format":"uuid"},"taskId":{"type":"string","format":"uuid"}},"required":["projectId","role"]},"InviteCollectionCollectorsBodyDto":{"type":"object","properties":{"email":{"type":"string","format":"email"},"emails":{"type":"array","items":{"type":"string","format":"email"}},"csvText":{"type":"string","maxLength":64000},"taskId":{"type":"string","nullable":true,"format":"uuid"}}},"InviteCollectionCollectorsResultDto":{"type":"object","properties":{"assigned":{"type":"array","items":{"$ref":"#/components/schemas/CollectionAssignmentDto"}},"invited":{"type":"array","items":{"type":"object","properties":{"email":{"type":"string"},"invitationId":{"type":"string"}},"required":["email","invitationId"]}}},"required":["assigned","invited"]},"InvoiceSnapshotDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"subscriptionId":{"type":"string","nullable":true},"billingPeriodStart":{"type":"string"},"billingPeriodEnd":{"type":"string"},"currency":{"type":"string"},"totalAmountMinor":{"type":"number"},"lineItems":{"type":"array","items":{"$ref":"#/components/schemas/InvoiceSnapshotLineItemDto"}},"status":{"type":"string"},"generatedAt":{"type":"string"}},"required":["id","tenantId","subscriptionId","billingPeriodStart","billingPeriodEnd","currency","totalAmountMinor","lineItems","status","generatedAt"]},"InvoiceSnapshotLineItemDto":{"type":"object","properties":{"kind":{"type":"string","enum":["subscription","usage_overage"]},"billingComponent":{"type":"string"},"meterCode":{"type":"string","nullable":true},"description":{"type":"string"},"quantity":{"type":"string"},"includedQuantity":{"type":"string","nullable":true},"overageQuantity":{"type":"string"},"unitAmountMinor":{"type":"number"},"amountMinor":{"type":"number"},"currency":{"type":"string"},"pricingRuleId":{"type":"string"}},"required":["kind","billingComponent","description","quantity","includedQuantity","overageQuantity","unitAmountMinor","amountMinor","currency","pricingRuleId"]},"InvokeInferenceDeploymentBodyDto":{"type":"object","properties":{"input":{"type":"object","additionalProperties":true}},"required":["input"]},"InvokeInferenceDeploymentResponseDto":{"type":"object","properties":{"output":{"$ref":"#/components/schemas/Record"}},"required":["output"]},"JsonArray":{"type":"object","properties":{"length":{"type":"number"}},"required":["length"]},"JsonObject":{"type":"object","additionalProperties":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]},{"$ref":"#/components/schemas/JsonObject"},{"$ref":"#/components/schemas/JsonArray"}],"nullable":true}},"KeyframeBoxesDto":{"type":"object","properties":{"enabled":{"type":"boolean","enum":[false]}},"required":["enabled"]},"LegalHoldSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"scopeType":{"enum":["tenant","project","dataset","datasetVersion","storageObject"],"type":"string"},"scopeId":{"type":"string","nullable":true},"reason":{"type":"string"},"placedBy":{"type":"string"},"placedAt":{"type":"string"},"releasedBy":{"type":"string","nullable":true},"releasedAt":{"type":"string","nullable":true},"authority":{"enum":["tenant","platform"],"type":"string"},"status":{"enum":["active","released"],"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","tenantId","scopeType","scopeId","reason","placedBy","placedAt","releasedBy","releasedAt","authority","status","createdAt","updatedAt"]},"LineageEdgeDto":{"type":"object","properties":{"id":{"type":"string"},"source":{"type":"string"},"target":{"type":"string"}},"required":["id","source","target"]},"LineageEdgeSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"fromObjectId":{"type":"string"},"toObjectId":{"type":"string"},"edgeKind":{"type":"string"},"workflowRunId":{"type":"string","nullable":true},"metadata":{"$ref":"#/components/schemas/Record","nullable":true},"createdAt":{"type":"string"}},"required":["id","tenantId","fromObjectId","toObjectId","edgeKind","workflowRunId","metadata","createdAt"]},"LineageNodeDto":{"type":"object","properties":{"id":{"type":"string"},"kind":{"type":"string"},"label":{"type":"string"},"metadata":{"$ref":"#/components/schemas/Record"}},"required":["id","kind","label"]},"LineageNodeGraphDto":{"type":"object","properties":{"rootType":{"type":"string"},"rootId":{"type":"string"},"nodes":{"type":"array","items":{"$ref":"#/components/schemas/LineageStorageObjectNodeDto"}},"edges":{"type":"array","items":{"$ref":"#/components/schemas/LineageEdgeSummaryDto"}},"truncated":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["rootType","rootId","nodes","edges","truncated"]},"LineageStorageObjectNodeDto":{"type":"object","properties":{"id":{"type":"string"},"storageTier":{"type":"string","nullable":true},"objectKey":{"type":"string"},"checksum":{"type":"string","nullable":true}},"required":["id","storageTier","objectKey","checksum"]},"LineageTraversalQueryDto":{"type":"object","properties":{"depth":{"type":"integer","nullable":true},"limit":{"type":"integer","nullable":true}}},"LinkCollectionUploadBatchBodyDto":{"type":"object","properties":{"uploadBatchId":{"type":"string","format":"uuid"}},"required":["uploadBatchId"]},"ListActivityEnvelopeDto":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ActivityItemSwaggerDto"}}},"required":["data"]},"ListActivityQueryDto":{"type":"object","properties":{"state":{"enum":["running","recent"],"type":"string","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListActivityResult":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ActivityItemDto"}},"nextPageToken":{"type":"string"},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"},"totalCount":{"type":"number"},"truncated":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["pageSize"]}},"required":["data"]},"ListAlgorithmBuildsQueryDtoImpl":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListAlgorithmDefinitionsQueryDto":{"type":"object","properties":{"sortBy":{"type":"string","nullable":true},"sortOrder":{"enum":["asc","desc"],"type":"string","nullable":true},"projectId":{"type":"string","format":"uuid","nullable":true},"status":{"type":"string","nullable":true},"ownerType":{"type":"string","nullable":true},"category":{"type":"string","nullable":true},"q":{"type":"string","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListAlgorithmRevisionsQueryDto":{"type":"object","properties":{"sortBy":{"type":"string","nullable":true},"sortOrder":{"enum":["asc","desc"],"type":"string","nullable":true},"reviewStatus":{"type":"string","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListAlgorithmVersionsQueryDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListAlgorithmsQueryDto":{"type":"object","properties":{"q":{"type":"string","nullable":true},"ownerType":{"type":"string","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListAnnotationDraftsQueryDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true},"includeDeleted":{"type":"boolean","nullable":true}}},"ListAnnotationJobsQueryDto":{"type":"object","properties":{"status":{"type":"string","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListAnnotationTasksQueryDto":{"type":"object","properties":{"projectId":{"type":"string","format":"uuid","nullable":true},"datasetVersionId":{"type":"string","format":"uuid","nullable":true},"status":{"type":"string","nullable":true},"assigneeProjectMembershipId":{"type":"string","format":"uuid","nullable":true},"unassigned":{"type":"boolean","nullable":true},"overdue":{"type":"boolean","nullable":true},"q":{"type":"string","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListApiKeysQueryDto":{"type":"object","properties":{"scope":{"enum":["self","tenant"],"type":"string","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListArtifactsQueryDto":{"type":"object","properties":{"sortBy":{"type":"string","nullable":true},"sortOrder":{"enum":["asc","desc"],"type":"string","nullable":true},"projectId":{"type":"string","format":"uuid","nullable":true},"artifactType":{"type":"string","nullable":true},"ownerType":{"type":"string","nullable":true},"ownerId":{"type":"string","format":"uuid","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListAuditLogQueryDto":{"type":"object","properties":{"from":{"type":"string","format":"date-time","nullable":true},"to":{"type":"string","format":"date-time","nullable":true},"actor":{"type":"string","nullable":true},"actorType":{"type":"string","nullable":true},"action":{"type":"string","nullable":true},"resourceType":{"type":"string","nullable":true},"resourceId":{"type":"string","format":"uuid","nullable":true},"requestId":{"type":"string","format":"uuid","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListCaptureSessionsQueryDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListCatalogAssetsQueryDto":{"type":"object","properties":{"projectId":{"type":"string","format":"uuid","nullable":true},"assetType":{"enum":["dataset-version","artifact","dataset-mixture"],"type":"string","nullable":true},"sourceType":{"type":"string","nullable":true},"qualityStatus":{"type":"string","nullable":true},"healthStatus":{"enum":["unknown","healthy","warning","failed","stale"],"type":"string","nullable":true},"governanceTagKey":{"type":"string","nullable":true},"governanceTagValue":{"type":"string","nullable":true},"ownerId":{"type":"string","format":"uuid","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListCatalogDatasetVersionsQueryDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true},"sortBy":{"enum":["updatedAt","createdAt","version"],"type":"string","nullable":true},"sortOrder":{"enum":["asc","desc"],"type":"string","nullable":true},"projectId":{"type":"string","format":"uuid","nullable":true},"datasetId":{"type":"string","format":"uuid","nullable":true},"sourceType":{"type":"string","nullable":true},"dataSource":{"enum":["ego_human"],"type":"string","nullable":true},"metadataType":{"type":"string","nullable":true},"qualityStatus":{"type":"string","nullable":true},"status":{"type":"string","nullable":true},"fpsMin":{"type":"number","nullable":true},"fpsMax":{"type":"number","nullable":true},"episodeCountMin":{"type":"integer","nullable":true},"episodeCountMax":{"type":"integer","nullable":true},"frameCountMin":{"type":"integer","nullable":true},"frameCountMax":{"type":"integer","nullable":true},"startTimeNsMin":{"type":"number","nullable":true},"startTimeNsMax":{"type":"number","nullable":true},"endTimeNsMin":{"type":"number","nullable":true},"endTimeNsMax":{"type":"number","nullable":true},"metadataKey":{"enum":["profile","task","robotType","cameraCount","fpsBucket"],"type":"string","nullable":true},"metadataEquals":{"type":"string","nullable":true},"includeSoftHidden":{"type":"boolean","nullable":true}}},"ListCatalogFacetsQueryDto":{"type":"object","properties":{"projectId":{"type":"string","format":"uuid","nullable":true},"datasetId":{"type":"string","format":"uuid","nullable":true},"sourceType":{"type":"string","nullable":true},"dataSource":{"enum":["ego_human"],"type":"string","nullable":true},"metadataType":{"type":"string","nullable":true},"qualityStatus":{"type":"string","nullable":true},"status":{"type":"string","nullable":true},"fpsMin":{"type":"number","nullable":true},"fpsMax":{"type":"number","nullable":true},"episodeCountMin":{"type":"integer","nullable":true},"episodeCountMax":{"type":"integer","nullable":true},"frameCountMin":{"type":"integer","nullable":true},"frameCountMax":{"type":"integer","nullable":true},"startTimeNsMin":{"type":"number","nullable":true},"startTimeNsMax":{"type":"number","nullable":true},"endTimeNsMin":{"type":"number","nullable":true},"endTimeNsMax":{"type":"number","nullable":true},"metadataKey":{"enum":["profile","task","robotType","cameraCount","fpsBucket"],"type":"string","nullable":true},"metadataEquals":{"type":"string","nullable":true},"includeSoftHidden":{"type":"boolean","nullable":true}}},"ListCollectionDeliveryBatchesQueryDto":{"type":"object","properties":{"projectId":{"type":"string","format":"uuid","nullable":true},"collectionOrderId":{"type":"string","format":"uuid","nullable":true},"status":{"enum":["draft","uploading","submitted","under_review","accepted","partially_accepted","rejected","cancelled"],"type":"string","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListCollectionOrdersQueryDto":{"type":"object","properties":{"status":{"enum":["draft","open","in_progress","fulfilled","cancelled","closed"],"type":"string","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListCollectionSubmissionsQueryDtoImpl":{"type":"object","properties":{"decision":{"enum":["pending","accepted_auto","in_review","accepted","rejected"],"type":"string","nullable":true},"taskId":{"type":"string","format":"uuid","nullable":true},"collectorMembershipId":{"type":"string","format":"uuid","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListCompositionProfileFindingsQueryDto":{"type":"object","properties":{"status":{"type":"string","nullable":true},"blocking":{"type":"boolean","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListCompositionProfilesQueryDto":{"type":"object","properties":{"status":{"enum":["ready","not_evaluated","error"],"type":"string","nullable":true},"itemSetMode":{"enum":["all","accepted","all_and_accepted"],"type":"string","nullable":true},"hasDrift":{"enum":["true","false"],"type":"string","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListComputeProfilesQueryDto":{"type":"object","properties":{"forModelImageRevisionId":{"type":"string","format":"uuid","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListCurrentTenantMembershipsQueryDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true},"sortBy":{"type":"string","nullable":true},"sortOrder":{"enum":["asc","desc"],"type":"string","nullable":true},"q":{"type":"string","nullable":true},"status":{"enum":["active","disabled","expired","removed"],"type":"string","nullable":true},"role":{"enum":["owner","admin","researcher","billing_admin","viewer"],"type":"string","nullable":true}}},"ListCurrentUserSessionsQueryDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListDataContractsQueryDto":{"type":"object","properties":{"status":{"type":"string","nullable":true},"pageSize":{"type":"number","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListDatasetVersionTrainingUsageQueryDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListDeploymentPackagesQueryDto":{"type":"object","properties":{"sortBy":{"type":"string","nullable":true},"sortOrder":{"enum":["asc","desc"],"type":"string","nullable":true},"projectId":{"type":"string","format":"uuid","nullable":true},"status":{"type":"string","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListDownloadSessionsQueryDto":{"type":"object","properties":{"sortBy":{"type":"string","nullable":true},"sortOrder":{"enum":["asc","desc"],"type":"string","nullable":true},"status":{"type":"string","nullable":true},"artifactId":{"type":"string","format":"uuid","nullable":true},"datasetVersionId":{"type":"string","format":"uuid","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListEmbodimentProfilesQueryDto":{"type":"object","properties":{"code":{"type":"string","nullable":true},"publishedOnly":{"type":"boolean","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListEpisodesQueryDto":{"type":"object","properties":{"verdict":{"enum":["fail","warning","incomplete","pass","not_checked"],"type":"string","nullable":true},"failingCheck":{"type":"string","nullable":true},"recordingId":{"type":"string","format":"uuid","nullable":true},"collectionOrderId":{"type":"string","format":"uuid","nullable":true},"collectionTaskId":{"type":"string","format":"uuid","nullable":true},"collectorId":{"type":"string","format":"uuid","nullable":true},"uploadedAfter":{"type":"string","format":"date-time","nullable":true},"uploadedBefore":{"type":"string","format":"date-time","nullable":true},"task":{"type":"string","nullable":true},"taskExact":{"type":"string","nullable":true},"taskMissing":{"type":"boolean","nullable":true},"outcome":{"enum":["success","failure","partial"],"type":"string","nullable":true},"tag":{"type":"string","nullable":true},"attribute":{"type":"string","nullable":true},"splitTag":{"enum":["train","val","test"],"type":"string","nullable":true},"versionSplit":{"enum":["train","val","test"],"type":"string","nullable":true},"durationMin":{"type":"number","nullable":true},"durationMax":{"type":"number","nullable":true},"durationMaxExclusive":{"type":"number","nullable":true},"subtaskCountMin":{"type":"integer","nullable":true},"subtaskCountMax":{"type":"integer","nullable":true},"subtaskCountMaxExclusive":{"type":"integer","nullable":true},"cameraCountMin":{"type":"integer","nullable":true},"cameraCountMax":{"type":"integer","nullable":true},"cameraCountMaxExclusive":{"type":"integer","nullable":true},"fpsMin":{"type":"number","nullable":true},"fpsMax":{"type":"number","nullable":true},"fpsMaxExclusive":{"type":"number","nullable":true},"idleFractionMin":{"type":"number","nullable":true},"idleFractionMax":{"type":"number","nullable":true},"idleFractionMaxExclusive":{"type":"number","nullable":true},"sceneId":{"type":"string","format":"uuid","nullable":true},"labelState":{"enum":["suggested","labeled","approved","rejected"],"type":"string","nullable":true},"hasSubtasks":{"type":"boolean","nullable":true},"annotationJobId":{"type":"string","format":"uuid","nullable":true},"selectionRunId":{"type":"string","format":"uuid","nullable":true},"q":{"type":"string","nullable":true},"sort":{"enum":["upload_date","duration","verdict","recording_name"],"type":"string","nullable":true},"order":{"enum":["asc","desc"],"type":"string","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListInferenceDeploymentsQueryDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true},"sortBy":{"type":"string","nullable":true},"sortOrder":{"enum":["asc","desc"],"type":"string","nullable":true},"projectId":{"type":"string","format":"uuid","nullable":true},"status":{"enum":["pending","deploying","running","stopping","stopped","failed"],"type":"string","nullable":true},"modelVersionId":{"type":"string","format":"uuid","nullable":true},"q":{"type":"string","nullable":true}}},"ListInvoiceSnapshotsQueryDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListLegalHoldsQueryDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true},"status":{"enum":["active","released"],"type":"string","nullable":true},"scopeType":{"enum":["tenant","project","dataset","datasetVersion","storageObject"],"type":"string","nullable":true},"scopeId":{"type":"string","format":"uuid","nullable":true}}},"ListLineageEdgesQueryDto":{"type":"object","properties":{"fromObjectId":{"type":"string","format":"uuid","nullable":true},"toObjectId":{"type":"string","format":"uuid","nullable":true},"edgeKind":{"type":"string","nullable":true},"workflowRunId":{"type":"string","format":"uuid","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListMeDeliveryBatchesQueryDto":{"type":"object","properties":{"projectId":{"type":"string","format":"uuid","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListModelEvaluationsQueryDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListModelImageDefinitionsQueryDto":{"type":"object","properties":{"sortBy":{"type":"string","nullable":true},"sortOrder":{"enum":["asc","desc"],"type":"string","nullable":true},"projectId":{"type":"string","format":"uuid","nullable":true},"status":{"type":"string","nullable":true},"imageKind":{"enum":["training","inference"],"type":"string","nullable":true},"ownerType":{"type":"string","nullable":true},"category":{"type":"string","nullable":true},"q":{"type":"string","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListModelImageRevisionsQueryDto":{"type":"object","properties":{"sortBy":{"type":"string","nullable":true},"sortOrder":{"enum":["asc","desc"],"type":"string","nullable":true},"projectId":{"type":"string","nullable":true},"reviewStatus":{"type":"string","nullable":true},"publishedOnly":{"type":"boolean","nullable":true},"q":{"type":"string","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListModelLiveCheckpointsQueryDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListModelLiveLogsQueryDto":{"type":"object","properties":{"lineCursor":{"type":"string","nullable":true}}},"ListModelLiveMetricsQueryDto":{"type":"object","properties":{"series":{"type":"string","nullable":true},"since":{"type":"integer","nullable":true},"maxPoints":{"type":"integer","nullable":true}}},"ListModelVersionsQueryDto":{"type":"object","properties":{"pageSize":{"type":"object","properties":{"toExponential":{"type":"string"},"toFixed":{"type":"string"},"toPrecision":{"type":"string"},"toString":{"type":"string"},"valueOf":{"type":"string"},"toLocaleString":{"type":"string"}},"required":["toExponential","toFixed","toPrecision","toString","valueOf","toLocaleString"],"nullable":true},"pageToken":{"type":"string","nullable":true},"sortBy":{"type":"string","nullable":true},"sortOrder":{"enum":["asc","desc"],"type":"string","nullable":true},"projectId":{"type":"string","format":"uuid","nullable":true},"status":{"enum":["draft","registered","archived"],"type":"string","nullable":true},"modelImageDefinitionId":{"type":"string","format":"uuid","nullable":true},"q":{"type":"string","nullable":true}}},"ListProjectDatasetsQueryDto":{"type":"object","properties":{"sortBy":{"type":"string","nullable":true},"sortOrder":{"enum":["asc","desc"],"type":"string","nullable":true},"status":{"type":"string","nullable":true},"datasetType":{"type":"string","nullable":true},"sourceType":{"type":"string","nullable":true},"metadataSchema":{"type":"string","nullable":true},"metadataKey":{"type":"string","nullable":true},"metadataEquals":{"type":"string","nullable":true},"q":{"type":"string","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListProjectMembersQueryDto":{"type":"object","properties":{"sortBy":{"type":"string","nullable":true},"sortOrder":{"enum":["asc","desc"],"type":"string","nullable":true},"q":{"type":"string","nullable":true},"status":{"type":"string","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListProjectUploadBatchesQueryDto":{"type":"object","properties":{"sortBy":{"type":"string","nullable":true},"sortOrder":{"enum":["asc","desc"],"type":"string","nullable":true},"status":{"type":"string","nullable":true},"sourceType":{"type":"string","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListProjectVersionEpisodesQueryDto":{"type":"object","properties":{"split":{"enum":["train","val","test"],"type":"string","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListProjectVersionsQueryDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListProjectWorkflowBindingsQueryDto":{"type":"object","properties":{"isActive":{"type":"boolean","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListProjectsQueryDto":{"type":"object","properties":{"sortBy":{"type":"string","nullable":true},"sortOrder":{"enum":["asc","desc"],"type":"string","nullable":true},"visibility":{"type":"string","nullable":true},"status":{"type":"string","nullable":true},"q":{"type":"string","nullable":true},"slug":{"type":"string","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListQualityBaselinesQueryDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListQualityFindingsQueryDto":{"type":"object","properties":{"status":{"enum":["pass","warn","fail","error","not_evaluated","not_applicable"],"type":"string","nullable":true},"family":{"enum":["structure","temporal","clock","sync","alignment","topic","modality","semantics","lerobot","video","stats","action","state","units","episode","consistency","dataset","portability","visual","privacy","human"],"type":"string","nullable":true},"severity":{"enum":["info","warning","error"],"type":"string","nullable":true},"blocking":{"type":"boolean","nullable":true},"scopeType":{"enum":["version","file","episode","recording","topic","feature","interval"],"type":"string","nullable":true},"checkId":{"type":"string","nullable":true},"runId":{"type":"string","format":"uuid","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListQualityIssuesQueryDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListRecentProjectsQueryDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListRecentQualityJobsQueryDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListRecordingsQueryDto":{"type":"object","properties":{"q":{"type":"string","nullable":true},"lifecycle":{"enum":["empty","uploading","processing","ready","failed","stalled"],"type":"string","nullable":true},"privacyState":{"enum":["pending","anonymized","refused"],"type":"string","nullable":true},"segmentationState":{"enum":["not_segmented","proposed","reviewed"],"type":"string","nullable":true},"source":{"enum":["upload","collection","hub_import"],"type":"string","nullable":true},"collectorId":{"type":"string","format":"uuid","nullable":true},"episodeCountMin":{"type":"integer","nullable":true},"episodeCountMax":{"type":"integer","nullable":true},"episodeCountMaxExclusive":{"type":"integer","nullable":true},"uploadedAfter":{"type":"string","format":"date-time","nullable":true},"uploadedBefore":{"type":"string","format":"date-time","nullable":true},"selectionRunId":{"type":"string","format":"uuid","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListRepairTasksQueryDto":{"type":"object","properties":{"projectId":{"type":"string","format":"uuid","nullable":true},"status":{"type":"string","nullable":true},"severity":{"type":"string","nullable":true},"sourceType":{"type":"string","nullable":true},"datasetVersionId":{"type":"string","format":"uuid","nullable":true},"assigneeProjectMembershipId":{"type":"string","format":"uuid","nullable":true},"unassigned":{"type":"boolean","nullable":true},"overdue":{"type":"boolean","nullable":true},"q":{"type":"string","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TenantSecretDto"}},"nextPageToken":{"type":"string"},"meta":{"$ref":"#/components/schemas/ListResponseMeta","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]},"ListResponseMeta":{"type":"object","properties":{"pageSize":{"type":"number"},"totalCount":{"type":"number"},"truncated":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"requestId":{"type":"string"}},"required":["pageSize"]},"ListReviewTasksQueryDto":{"type":"object","properties":{"projectId":{"type":"string","format":"uuid","nullable":true},"datasetVersionId":{"type":"string","format":"uuid","nullable":true},"status":{"type":"string","nullable":true},"reviewerProjectMembershipId":{"type":"string","format":"uuid","nullable":true},"unassigned":{"type":"boolean","nullable":true},"overdue":{"type":"boolean","nullable":true},"q":{"type":"string","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListRigProfilesQueryDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListSavedViewsQueryDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListSkillTaxonomyTermsQueryDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListStorageReconciliationJobsQueryBodyDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true},"status":{"enum":["queued","running","succeeded","failed"],"type":"string","nullable":true}}},"ListTeamDataFormatsQueryDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListTeamWorkflowRunsQueryDto":{"type":"object","properties":{"status":{"type":"string","nullable":true},"projectId":{"type":"string","format":"uuid","nullable":true},"definitionId":{"type":"string","format":"uuid","nullable":true},"trigger":{"type":"string","nullable":true},"createdAfter":{"type":"string","format":"date-time","nullable":true},"createdBefore":{"type":"string","format":"date-time","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListTenantInvitationsQueryDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true},"sortBy":{"type":"string","nullable":true},"sortOrder":{"enum":["asc","desc"],"type":"string","nullable":true},"status":{"enum":["pending","accepted","expired","revoked"],"type":"string","nullable":true},"email":{"type":"string","nullable":true}}},"ListTenantSecretsQueryDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListTrainingAttemptMetricsQueryDto":{"type":"object","properties":{"fromStep":{"type":"integer","nullable":true},"toStep":{"type":"integer","nullable":true},"stride":{"type":"integer","nullable":true},"limit":{"type":"integer","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListTrainingAttemptsQueryDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListTrainingJobsQueryDto":{"type":"object","properties":{"sortBy":{"type":"string","nullable":true},"sortOrder":{"enum":["asc","desc"],"type":"string","nullable":true},"projectId":{"type":"string","format":"uuid","nullable":true},"status":{"type":"string","nullable":true},"q":{"type":"string","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListTrashQueryBodyDto":{"type":"object","properties":{"type":{"enum":["project","recording","episode","version","model"],"type":"string","nullable":true},"projectId":{"type":"string","format":"uuid","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListUsageLedgerQueryDto":{"type":"object","properties":{"meterCode":{"type":"string","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListUserNotificationsQueryDto":{"type":"object","properties":{"unreadOnly":{"type":"boolean","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListVersionAliasesQueryDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListVersionExportsQueryDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListVersionFilesQueryDto":{"type":"object","properties":{"sortBy":{"type":"string","nullable":true},"sortOrder":{"enum":["asc","desc"],"type":"string","nullable":true},"fileRole":{"type":"string","nullable":true},"sensorName":{"type":"string","nullable":true},"split":{"type":"string","nullable":true},"metadataKey":{"type":"string","nullable":true},"metadataEquals":{"type":"string","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListVersionItemsQueryDto":{"type":"object","properties":{"sortBy":{"type":"string","nullable":true},"sortOrder":{"enum":["asc","desc"],"type":"string","nullable":true},"split":{"type":"string","nullable":true},"episodeIndex":{"type":"integer","nullable":true},"includeExcluded":{"type":"boolean","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListVersionsQueryDto":{"type":"object","properties":{"sortBy":{"type":"string","nullable":true},"sortOrder":{"enum":["asc","desc"],"type":"string","nullable":true},"status":{"type":"string","nullable":true},"metadataType":{"type":"string","nullable":true},"codebaseVersion":{"type":"string","nullable":true},"fpsMin":{"type":"number","nullable":true},"fpsMax":{"type":"number","nullable":true},"startTimeNsMin":{"type":"number","nullable":true},"startTimeNsMax":{"type":"number","nullable":true},"endTimeNsMin":{"type":"number","nullable":true},"endTimeNsMax":{"type":"number","nullable":true},"metadataKey":{"type":"string","nullable":true},"metadataEquals":{"type":"string","nullable":true},"includeSoftHidden":{"type":"boolean","nullable":true},"q":{"type":"string","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListWebhookDeliveriesQueryDto":{"type":"object","properties":{"from":{"type":"string","format":"date-time","nullable":true},"to":{"type":"string","format":"date-time","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListWebhookEndpointsQueryDto":{"type":"object","properties":{"projectId":{"type":"string","format":"uuid","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"ListWorkflowDefinitionsQueryDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true},"sortBy":{"type":"string","nullable":true},"sortOrder":{"enum":["asc","desc"],"type":"string","nullable":true},"projectId":{"type":"string","format":"uuid","nullable":true},"status":{"type":"string","nullable":true},"taskType":{"type":"string","nullable":true},"applicableProjectType":{"type":"string","nullable":true},"ownerType":{"type":"string","nullable":true},"visibility":{"enum":["private","tenant-shared"],"type":"string","nullable":true},"q":{"type":"string","nullable":true}}},"ListWorkflowRevisionsQueryDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true},"sortBy":{"type":"string","nullable":true},"sortOrder":{"enum":["asc","desc"],"type":"string","nullable":true},"status":{"type":"string","nullable":true}}},"ListWorkflowRunContainerRunsDto":{"type":"object","properties":{"containerRuns":{"type":"array","items":{"$ref":"#/components/schemas/ContainerRunSummaryDto"}},"truncated":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["containerRuns","truncated"]},"ListWorkflowRunsQueryDto":{"type":"object","properties":{"sortBy":{"type":"string","nullable":true},"sortOrder":{"enum":["asc","desc"],"type":"string","nullable":true},"status":{"type":"string","nullable":true},"jobType":{"type":"string","nullable":true},"datasetId":{"type":"string","format":"uuid","nullable":true},"recordingId":{"type":"string","format":"uuid","nullable":true},"datasetVersionId":{"type":"string","format":"uuid","nullable":true},"uploadBatchId":{"type":"string","format":"uuid","nullable":true},"workflowDefinitionId":{"type":"string","format":"uuid","nullable":true},"projectId":{"type":"string","format":"uuid","nullable":true},"triggerSource":{"type":"string","nullable":true},"selectionRunId":{"type":"string","format":"uuid","nullable":true},"q":{"type":"string","nullable":true},"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"LocalizedTextDto":{"type":"object","properties":{"en":{"type":"string"},"zh":{"type":"string"}}},"MeDto":{"type":"object","properties":{"id":{"type":"string"},"handle":{"type":"string"},"email":{"type":"string","nullable":true},"displayName":{"type":"string","nullable":true},"avatarUrl":{"type":"string","nullable":true},"status":{"type":"string"}},"required":["id","handle","email","displayName","avatarUrl","status"]},"MembershipSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"tenant":{"$ref":"#/components/schemas/TenantSummaryDto"},"role":{"type":"string"},"status":{"type":"string"},"joinedAt":{"type":"string"}},"required":["id","tenantId","tenant","role","status","joinedAt"]},"MembershipSummarySwaggerDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"tenantId":{"type":"string","format":"uuid"},"tenant":{"$ref":"#/components/schemas/TenantSummarySwaggerDto"},"role":{"type":"string"},"status":{"type":"string"},"joinedAt":{"type":"string"}},"required":["id","tenantId","tenant","role","status","joinedAt"]},"MfaChallengeConfirmRequestDto":{"type":"object","properties":{"mfaChallengeToken":{"type":"string"},"code":{"type":"string"},"factor":{"type":"string","enum":["totp","recovery"]}},"required":["mfaChallengeToken","factor"]},"ModelImageDefinitionSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string","nullable":true},"projectId":{"type":"string","nullable":true},"code":{"type":"string"},"name":{"type":"string"},"description":{"type":"string","nullable":true},"imageKind":{"type":"string","enum":["training","inference"]},"status":{"type":"string"},"ownerType":{"type":"string"},"systemSlug":{"type":"string","nullable":true},"category":{"type":"string","nullable":true},"tags":{"type":"array","items":{"type":"string"}},"thumbnailUrl":{"type":"string","nullable":true},"documentationUrl":{"type":"string","nullable":true},"latestRevisionId":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"modelFamily":{"type":"string","nullable":true},"framework":{"type":"string","nullable":true},"frameworkKind":{"type":"string","enum":["official","convenience"],"nullable":true},"isOfficialDefault":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true}},"required":["id","tenantId","projectId","code","name","description","imageKind","status","ownerType","systemSlug","category","tags","thumbnailUrl","documentationUrl","latestRevisionId","createdAt","updatedAt"]},"ModelImageRevisionSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string","nullable":true},"projectId":{"type":"string","nullable":true},"modelImageDefinitionId":{"type":"string"},"revision":{"type":"number"},"imageRef":{"type":"string"},"runnerContractVersion":{"type":"string"},"paramSchema":{"$ref":"#/components/schemas/Record","nullable":true},"outputSchema":{"$ref":"#/components/schemas/Record","nullable":true},"resourceDefaults":{"$ref":"#/components/schemas/Record","nullable":true},"minGpuMemoryGb":{"type":"number","nullable":true},"recommendedGpuMemoryGb":{"type":"number","nullable":true},"maxGpuCount":{"type":"number"},"supportsMultiGpu":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"frameworkTags":{"type":"array","items":{"type":"string"}},"reviewStatus":{"type":"string"},"reviewNotes":{"type":"string","nullable":true},"imageDigest":{"type":"string","nullable":true},"sbomStatus":{"type":"string"},"signatureStatus":{"type":"string"},"conformanceStatus":{"type":"string"},"conformanceSummary":{"$ref":"#/components/schemas/Record","nullable":true},"baseWeightSource":{"type":"string","nullable":true},"baseWeightLicense":{"type":"string","nullable":true},"baseWeightContentHash":{"type":"string","nullable":true},"requestedEgressDomains":{"type":"array","items":{"type":"string"}},"approvedEgressDomains":{"type":"array","items":{"type":"string"}},"reviewedBy":{"type":"string","nullable":true},"reviewedAt":{"type":"string","nullable":true},"revokedAt":{"type":"string","nullable":true},"revokeReason":{"type":"string","nullable":true},"publishedAt":{"type":"string","nullable":true},"registeredAt":{"type":"string","nullable":true},"createdAt":{"type":"string"},"modelFamily":{"type":"string","nullable":true},"framework":{"type":"string","nullable":true},"frameworkKind":{"type":"string","enum":["official","convenience"],"nullable":true},"isOfficialDefault":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true}},"required":["id","tenantId","projectId","modelImageDefinitionId","revision","imageRef","runnerContractVersion","paramSchema","outputSchema","resourceDefaults","minGpuMemoryGb","recommendedGpuMemoryGb","maxGpuCount","supportsMultiGpu","frameworkTags","reviewStatus","reviewNotes","imageDigest","sbomStatus","signatureStatus","conformanceStatus","conformanceSummary","baseWeightSource","baseWeightLicense","baseWeightContentHash","requestedEgressDomains","approvedEgressDomains","reviewedBy","reviewedAt","revokedAt","revokeReason","publishedAt","registeredAt","createdAt"]},"ModelLiveMetricSample":{"type":"object","properties":{"step":{"type":"number"},"value":{"type":"number"},"recordedAt":{"type":"string"}},"required":["step","value","recordedAt"]},"ModelLiveMetricSeriesDto":{"type":"object","properties":{"series":{"type":"string","enum":["loss","val_loss","lr","grad_norm","gpu_util","samples_per_s"]},"points":{"type":"array","items":{"$ref":"#/components/schemas/ModelLiveMetricSample"}},"notReportedReason":{"type":"string","enum":["not_reported_by_this_policy"]}},"required":["series","points"]},"ModelLiveMetricsDto":{"type":"object","properties":{"modelId":{"type":"string"},"trainingJobId":{"type":"string"},"attemptId":{"type":"string","nullable":true},"status":{"type":"string"},"attemptState":{"type":"string","nullable":true},"reasonCode":{"type":"string","nullable":true},"reasonDetail":{"type":"string","nullable":true},"latestStep":{"type":"number","nullable":true},"targetSteps":{"type":"number","nullable":true},"etaSeconds":{"type":"number","nullable":true},"runningCost":{"$ref":"#/components/schemas/ModelLiveRunningCostDto"},"series":{"type":"array","items":{"$ref":"#/components/schemas/ModelLiveMetricSeriesDto"}},"since":{"type":"number"},"maxPoints":{"type":"number"},"trainAgain":{"$ref":"#/components/schemas/ModelLiveTrainAgainDto","nullable":true}},"required":["modelId","trainingJobId","attemptId","status","attemptState","reasonCode","reasonDetail","latestStep","targetSteps","etaSeconds","runningCost","series","since","maxPoints","trainAgain"]},"ModelLiveMetricsEnvelopeSwaggerDto":{"type":"object","properties":{"data":{"type":"object","additionalProperties":true}},"required":["data"]},"ModelLiveRunningCostDto":{"type":"object","properties":{"label":{"type":"string","enum":["estimate"]},"price":{"$ref":"#/components/schemas/UsageEstimatePriceDto","nullable":true},"elapsedSeconds":{"type":"number"},"gpuCount":{"type":"number"}},"required":["label","price","elapsedSeconds","gpuCount"]},"ModelLiveTrainAgainDto":{"type":"object","properties":{"projectId":{"type":"string"},"versionId":{"type":"string","nullable":true},"versionNumber":{"type":"number","nullable":true},"policy":{"type":"string","nullable":true},"computeFlavor":{"type":"string","nullable":true},"trainingSteps":{"type":"number","nullable":true}},"required":["projectId","versionId","versionNumber","policy","computeFlavor","trainingSteps"]},"ModelVersionSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string"},"modelImageDefinitionId":{"type":"string","nullable":true},"name":{"type":"string"},"sourceType":{"type":"string","enum":["trained","imported"]},"sourceTrainingJobId":{"type":"string","nullable":true},"artifactId":{"type":"string","nullable":true},"status":{"type":"string","enum":["draft","archived","registered"]},"paramsSnapshot":{"$ref":"#/components/schemas/Record","nullable":true},"evalMetrics":{"$ref":"#/components/schemas/Record","nullable":true},"compatibleEmbodimentCodes":{"type":"array","items":{"type":"string"}},"policyFamily":{"type":"string","nullable":true},"wireProtocols":{"type":"array","items":{"type":"string"}},"bundleStatus":{"type":"string"},"bundleFailureCode":{"type":"string","nullable":true},"registeredAt":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","tenantId","projectId","modelImageDefinitionId","name","sourceType","sourceTrainingJobId","artifactId","status","paramsSnapshot","evalMetrics","compatibleEmbodimentCodes","policyFamily","wireProtocols","bundleStatus","bundleFailureCode","registeredAt","createdAt","updatedAt"]},"NotificationPreferenceItemBodyDto":{"type":"object","properties":{"category":{"enum":["training","export","annotation","collection","workflow","billing","evaluation","erasure","algorithm"],"type":"string"},"inApp":{"type":"boolean"},"email":{"type":"boolean"}},"required":["category","inApp","email"]},"NotificationPreferenceItemDto":{"type":"object","properties":{"category":{"type":"string","enum":["export","workflow","training","evaluation","algorithm","annotation","collection","billing","erasure"]},"inApp":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"email":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["category","inApp","email"]},"NotificationPreferencesDto":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/NotificationPreferenceItemDto"}}},"required":["items"]},"NotificationPreferencesEnvelopeDto":{"type":"object","properties":{"data":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/NotificationPreferenceItemBodyDto"}}}}},"required":["data"]},"OauthCallbackQueryDto":{"type":"object","properties":{"code":{"type":"string","nullable":true},"state":{"type":"string","nullable":true},"error":{"type":"string","nullable":true},"error_description":{"type":"string","nullable":true},"error_uri":{"type":"string","nullable":true},"scope":{"type":"string","nullable":true},"authuser":{"type":"string","nullable":true},"prompt":{"type":"string","nullable":true},"hd":{"type":"string","nullable":true}}},"OauthReturnToQueryDto":{"type":"object","properties":{"returnTo":{"type":"string","nullable":true}}},"Object":{"type":"object","properties":{}},"ObjectImportAttemptBinding":{"type":"object","properties":{"groupKey":{"type":"string"},"dataFormat":{"type":"string","nullable":true},"profile":{"$ref":"#/components/schemas/ObjectImportAttemptProfileBinding","nullable":true},"objectKeys":{"type":"array","items":{"type":"string"}},"unresolvedCode":{"type":"string","nullable":true}},"required":["groupKey","dataFormat","profile","objectKeys","unresolvedCode"]},"ObjectImportAttemptProfileBinding":{"type":"object","properties":{"sourceKind":{"type":"string"},"recordingShape":{"type":"string"},"privacyRequirement":{"type":"string"}},"required":["sourceKind","recordingShape","privacyRequirement"]},"ObjectImportFrozenObject":{"type":"object","properties":{"key":{"type":"string"},"size":{"type":"number"},"etag":{"type":"string","nullable":true},"versionId":{"type":"string","nullable":true},"lastModified":{"type":"string","nullable":true},"checksumAlgorithm":{"type":"string","nullable":true},"checksumValue":{"type":"string","nullable":true}},"required":["key","size","etag","lastModified"]},"OnboardingSampleDto":{"type":"object","properties":{"id":{"type":"string"},"projectId":{"type":"string","nullable":true},"templateId":{"type":"string"},"templateVersion":{"type":"string"},"status":{"type":"string","enum":["failed","ready","provisioning","deleted"]},"errorCode":{"type":"string","enum":["SAMPLE_TEMPLATE_UNAVAILABLE","SAMPLE_PROJECT_READ_ONLY","SAMPLE_PROVISION_FORBIDDEN","SAMPLE_NOT_FOUND"],"nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","projectId","templateId","templateVersion","status","errorCode","createdAt","updatedAt"]},"OutdatedRecording":{"type":"object","properties":{"recordingId":{"type":"string"},"reason":{"type":"string","enum":["missing","standardizer_version_changed","data_version_changed"]},"from":{"type":"string"},"to":{"type":"string"}},"required":["recordingId","reason"]},"PageQueryDto":{"type":"object","properties":{"pageSize":{"type":"integer","nullable":true},"pageToken":{"type":"string","nullable":true}}},"PartUrlItemDto":{"type":"object","properties":{"partNumber":{"type":"number"},"uploadUrl":{"type":"string"},"expiresAt":{"type":"string"}},"required":["partNumber","uploadUrl","expiresAt"]},"PartUrlRequestPartBodyDto":{"type":"object","properties":{"partNumber":{"type":"number","minimum":1},"sizeBytes":{"type":"number","minimum":0}},"required":["partNumber","sizeBytes"]},"PartUrlsBodyDto":{"type":"object","properties":{"parts":{"type":"array","items":{"$ref":"#/components/schemas/PartUrlRequestPartBodyDto"}}},"required":["parts"]},"PartUrlsResponseDto":{"type":"object","properties":{"urls":{"type":"array","items":{"$ref":"#/components/schemas/PartUrlItemDto"}}},"required":["urls"]},"Partial":{"type":"object","additionalProperties":true},"PasswordResetConfirmationBodyDto":{"type":"object","properties":{"email":{"type":"string","format":"email"},"token":{"type":"string"},"otpCode":{"type":"string","deprecated":true},"password":{"type":"string"}},"required":["email","password"]},"PasswordResetConfirmationResponseDto":{"type":"object","properties":{"reset":{"type":"boolean","enum":[true]}},"required":["reset"]},"PasswordResetRequestBodyDto":{"type":"object","properties":{"email":{"type":"string","format":"email"}},"required":["email"]},"PasswordResetRequestedDto":{"type":"object","properties":{"message":{"type":"string"},"debugOtp":{"type":"string"}},"required":["message"]},"PatchAlgorithmVersionBodyDto":{"type":"object","properties":{"deprecated":{"type":"boolean"},"disabled":{"type":"boolean"}}},"PatchAnnotationJobBodyDto":{"type":"object","properties":{"name":{"type":"string"},"instructionsMd":{"type":"string","nullable":true},"exampleEpisodeId":{"type":"string","nullable":true},"fieldsJson":{"type":"array","items":{"type":"string"}},"reviewerMembershipId":{"type":"string","nullable":true},"dueAt":{"type":"string","nullable":true}}},"PatchAnnotationTaskBodyDto":{"type":"object","properties":{"status":{"enum":["pending","in_progress","completed"],"type":"string","nullable":true},"assigneeProjectMembershipId":{"type":"string","format":"uuid","nullable":true},"dueAt":{"type":"string","nullable":true}}},"PatchCollectionDeliveryBatchBodyDto":{"type":"object","properties":{"sourceMetadata":{"type":"object","additionalProperties":true,"nullable":true},"declaredContent":{"type":"object","additionalProperties":true,"nullable":true},"status":{"type":"string","enum":["cancelled"]}}},"PatchCollectionOrderBodyDto":{"type":"object","properties":{"title":{"type":"string","minLength":1,"maxLength":200},"description":{"type":"string","nullable":true},"acceptanceRules":{"type":"object","additionalProperties":true},"segmentationJobId":{"type":"string","nullable":true,"format":"uuid"},"deadlineAt":{"type":"string","nullable":true}}},"PatchCollectionQuotaBodyDto":{"type":"object","properties":{"sceneId":{"type":"string","nullable":true,"format":"uuid"},"targetHours":{"type":"number","nullable":true},"targetSubmissions":{"type":"number","nullable":true},"perCollectorCap":{"type":"number","nullable":true}}},"PatchCollectionSceneBodyDto":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"description":{"type":"string","nullable":true}}},"PatchCollectionTaskBodyDto":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"instructionJson":{"$ref":"#/components/schemas/CollectionInstructionBodyDto"},"startCondition":{"type":"string","minLength":1},"endCondition":{"type":"string","minLength":1},"allowedVariation":{"type":"string","nullable":true},"durationMinS":{"type":"number","nullable":true},"durationMaxS":{"type":"number","nullable":true},"requiredCameras":{"type":"array","items":{"type":"string"},"enum":["head","head_left","head_right","wrist_left","wrist_right","chest","third_person","top","depth","other"]},"requiredModalities":{"type":"array","items":{"type":"string"},"enum":["imu","hand_pose","head_pose","depth"]},"minHandsVisible":{"type":"number","nullable":true,"minimum":0,"maximum":1},"recordingMode":{"enum":["continuous","single_task"],"type":"string"},"orderIndex":{"type":"number","minimum":0}}},"PatchDatasetFrameSpatialAnnotationBodyDto":{"type":"object","properties":{"datasetVersionId":{"type":"string","nullable":true,"format":"uuid"},"datasetVersionFileId":{"type":"string","format":"uuid"},"frameIndex":{"type":"number","minimum":0},"frameStampSec":{"type":"number","nullable":true,"minimum":-9007199254740991,"maximum":9007199254740991},"frameStampNsec":{"type":"number","nullable":true,"minimum":0,"maximum":999999999},"timeReference":{"type":"string"},"datasetClassId":{"type":"string","nullable":true,"format":"uuid"},"className":{"type":"string","nullable":true},"trackId":{"type":"string","nullable":true},"trackKey":{"type":"string","nullable":true},"bboxX":{"type":"number"},"bboxY":{"type":"number"},"bboxWidth":{"type":"number"},"bboxHeight":{"type":"number"},"occluded":{"type":"boolean","nullable":true},"truncated":{"type":"boolean","nullable":true},"reviewStatus":{"type":"string"},"status":{"type":"string"},"attributesJson":{"type":"object","additionalProperties":true,"nullable":true}}},"PatchDatasetGovernanceTagBodyDto":{"type":"object","properties":{"tagValue":{"type":"string","minLength":1,"maxLength":256}}},"PatchDatasetTimeRangeAnnotationBodyDto":{"type":"object","properties":{"datasetVersionId":{"type":"string","nullable":true,"format":"uuid"},"annotationSchemaId":{"type":"string","nullable":true,"format":"uuid"},"segmentKind":{"type":"string","enum":["action","segment","event","phase","quality-issue","task","subtask","skill"]},"startSec":{"type":"number","minimum":-9007199254740991,"maximum":9007199254740991},"startNsec":{"type":"number","minimum":0,"maximum":999999999},"endSec":{"type":"number","minimum":-9007199254740991,"maximum":9007199254740991},"endNsec":{"type":"number","minimum":0,"maximum":999999999},"timeReference":{"type":"string"},"title":{"type":"string","nullable":true},"naturalLanguageInstruction":{"type":"string","nullable":true},"success":{"type":"boolean","nullable":true},"score":{"type":"number","nullable":true},"failureReason":{"type":"string","nullable":true},"parentId":{"type":"string","nullable":true,"format":"uuid"},"orderIndex":{"type":"number"},"reviewStatus":{"type":"string"},"status":{"type":"string"},"attributesJson":{"type":"object","additionalProperties":true,"nullable":true}}},"PatchFirstValueStateRequestDto":{"type":"object","properties":{"action":{"type":"string","enum":["resume","dismiss","mark_milestone"]},"path":{"type":"string","enum":["sample","real"]},"reachedDatasetVersionId":{"type":"string"}},"required":["action"]},"PatchMeBodyDto":{"type":"object","properties":{"handle":{"type":"string","minLength":2,"maxLength":39}}},"PatchProjectBodyDto":{"type":"object","properties":{"dataFormat":{"type":"string","nullable":true,"enum":["mcap","rosbag1","rosbag2","lerobot","hdf5-embodiflow","hdf5-agilex","hdf5-realman","hdf5-dobot","video","bvh","aria-vrs","umi-gopro"],"description":"Optional import default hint; null clears it."},"name":{"type":"string","minLength":1,"maxLength":200},"description":{"type":"string","nullable":true},"slug":{"type":"string","minLength":1,"maxLength":96},"dataKind":{"type":"string","enum":["human","robot","video"]},"robotType":{"type":"string","nullable":true},"defaultFps":{"type":"number","nullable":true,"minimum":1},"defaultTask":{"type":"string","nullable":true,"maxLength":500},"requiresSegmentation":{"type":"boolean"}}},"PatchProjectVersionBodyDto":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"readmeMd":{"type":"string","nullable":true,"maxLength":20000},"licence":{"type":"string","nullable":true,"maxLength":2000}}},"PatchRecordingBodyDto":{"type":"object","properties":{"name":{"type":"string","minLength":1},"tags":{"type":"array","items":{"type":"string"}}}},"PatchRepairTaskBodyDto":{"type":"object","properties":{"status":{"type":"string","enum":["open","in_progress","resolved","waived"]},"assigneeProjectMembershipId":{"type":"string","nullable":true,"format":"uuid"},"resolution":{"type":"string","enum":["fixed","waived","duplicate","not_reproducible"]},"waiveReason":{"type":"string","nullable":true,"maxLength":2000},"dueAt":{"type":"string","nullable":true}}},"PatchReviewTaskBodyDto":{"type":"object","properties":{"status":{"type":"string","enum":["pending","in_progress","approved","rejected"]},"reviewerProjectMembershipId":{"type":"string","nullable":true,"format":"uuid"},"dueAt":{"type":"string","nullable":true}}},"PatchRigProfileDraftBodyDto":{"type":"object","properties":{"document":{"type":"object","additionalProperties":true}},"required":["document"]},"PatchSavedViewBodyDto":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":80},"filter":{"type":"object","additionalProperties":true},"shared":{"type":"boolean"}}},"PatchSkillTaxonomyBodyDto":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":120},"status":{"enum":["draft","published","archived"],"type":"string"}}},"PatchTeamBodyDto":{"type":"object","properties":{"handle":{"type":"string","minLength":2,"maxLength":39},"name":{"type":"string","minLength":1,"maxLength":200}}},"PatchTeamDataFormatBodyDto":{"type":"object","properties":{"card":{"type":"object","additionalProperties":true},"converter":{"type":"object","additionalProperties":true}}},"PatchWorkflowDefinitionBodyDto":{"type":"object","properties":{"name":{"type":"string"},"description":{"type":"string"}}},"PermissionOverlayBodyDto":{"type":"object","properties":{"grants":{"type":"array","uniqueItems":true,"items":{"type":"string"},"enum":["project:read","project:write","project:manage","member:read","member:manage","dataset:read","dataset:write","annotation:read","annotation:write","annotation:review","annotation-job:manage","upload:read","upload:write","collection:manage","collection:deliver","workflow:read","workflow:run","workflow:manage","approval:read","approval:decide","algorithm:read","algorithm:write","export:read","export:write","training:read","training:write","quality:read","quality:write","recipe:read","recipe:manage","skill-taxonomy:manage","task:read","task:write","deployment:read","deployment:write","model-image:read","model-image:write","model-version:read","model-version:write","inference-deployment:read","inference-deployment:write","analytics:read","vision:annotate","tenant:read","tenant:manage","billing:read","billing:write","apikey:read","apikey:write","apikey:manage","audit:read"]},"denies":{"type":"array","uniqueItems":true,"items":{"type":"string"},"enum":["project:read","project:write","project:manage","member:read","member:manage","dataset:read","dataset:write","annotation:read","annotation:write","annotation:review","annotation-job:manage","upload:read","upload:write","collection:manage","collection:deliver","workflow:read","workflow:run","workflow:manage","approval:read","approval:decide","algorithm:read","algorithm:write","export:read","export:write","training:read","training:write","quality:read","quality:write","recipe:read","recipe:manage","skill-taxonomy:manage","task:read","task:write","deployment:read","deployment:write","model-image:read","model-image:write","model-version:read","model-version:write","inference-deployment:read","inference-deployment:write","analytics:read","vision:annotate","tenant:read","tenant:manage","billing:read","billing:write","apikey:read","apikey:write","apikey:manage","audit:read"]}}},"PermissionOverlayDto":{"type":"object","properties":{"grants":{"type":"array","items":{"type":"string"},"enum":["project:read","project:write","project:manage","member:read","member:manage","dataset:read","dataset:write","annotation:read","annotation:write","annotation:review","annotation-job:manage","upload:read","upload:write","collection:manage","collection:deliver","workflow:read","workflow:run","workflow:manage","approval:read","approval:decide","algorithm:read","algorithm:write","export:read","export:write","training:read","training:write","quality:read","quality:write","recipe:read","recipe:manage","skill-taxonomy:manage","task:read","task:write","deployment:read","deployment:write","model-image:read","model-image:write","model-version:read","model-version:write","inference-deployment:read","inference-deployment:write","analytics:read","vision:annotate","tenant:read","tenant:manage","billing:read","billing:write","apikey:read","apikey:write","apikey:manage","audit:read"]},"denies":{"type":"array","items":{"type":"string"},"enum":["project:read","project:write","project:manage","member:read","member:manage","dataset:read","dataset:write","annotation:read","annotation:write","annotation:review","annotation-job:manage","upload:read","upload:write","collection:manage","collection:deliver","workflow:read","workflow:run","workflow:manage","approval:read","approval:decide","algorithm:read","algorithm:write","export:read","export:write","training:read","training:write","quality:read","quality:write","recipe:read","recipe:manage","skill-taxonomy:manage","task:read","task:write","deployment:read","deployment:write","model-image:read","model-image:write","model-version:read","model-version:write","inference-deployment:read","inference-deployment:write","analytics:read","vision:annotate","tenant:read","tenant:manage","billing:read","billing:write","apikey:read","apikey:write","apikey:manage","audit:read"]}}},"PersonalDataErasureDto":{"type":"object","properties":{"requestId":{"type":"string"},"tenantId":{"type":"string"},"subjectUserId":{"type":"string"},"pseudonym":{"type":"string"},"alreadyApplied":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"globalIdentityErased":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"globalIdentityRetainedReason":{"type":"string","nullable":true},"affectedTables":{"type":"array","items":{"type":"string"}},"erasureAuditId":{"type":"string"}},"required":["requestId","tenantId","subjectUserId","pseudonym","alreadyApplied","globalIdentityErased","globalIdentityRetainedReason","affectedTables","erasureAuditId"]},"PersonalDataExportDto":{"type":"object","properties":{"requestId":{"type":"string"},"tenantId":{"type":"string"},"subjectUserId":{"type":"string"},"generatedAt":{"type":"string"},"records":{"type":"array","items":{"$ref":"#/components/schemas/PersonalDataExportTableDto"}}},"required":["requestId","tenantId","subjectUserId","generatedAt","records"]},"PersonalDataExportTableDto":{"type":"object","properties":{"table":{"type":"string"},"rows":{"type":"array","items":{"$ref":"#/components/schemas/Record"}}},"required":["table","rows"]},"PlanSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"code":{"type":"string"},"name":{"type":"string"},"billingMode":{"type":"string"},"status":{"type":"string"}},"required":["id","code","name","billingMode","status"]},"PreprocessingBodyDto":{"type":"object","properties":{"fps":{"type":"number","nullable":true},"cameraKeys":{"nullable":true,"type":"array","items":{"type":"string"}},"trimIdle":{"type":"boolean"},"maxDurationS":{"type":"number","nullable":true},"padMs":{"type":"number","minimum":0}}},"PreviewProjectVersionBodyDto":{"type":"object","properties":{"selection":{"$ref":"#/components/schemas/SelectionBodyDto"},"name":{"type":"string","minLength":1,"maxLength":200},"split":{"$ref":"#/components/schemas/SplitConfigBodyDto"},"labelPolicy":{"enum":["current","approved_only"],"type":"string"},"includeFailing":{"type":"boolean"},"includeIncomplete":{"type":"boolean"},"preprocessing":{"$ref":"#/components/schemas/PreprocessingBodyDto"},"readmeMd":{"type":"string","nullable":true,"maxLength":20000},"licence":{"type":"string","nullable":true,"maxLength":2000}},"required":["selection","name"]},"PreviewQualityRuleSetBodyDto":{"type":"object","properties":{"datasetVersionId":{"type":"string","format":"uuid"},"ruleSetDraft":{"type":"object","additionalProperties":true}},"required":["datasetVersionId"]},"ProblemJson":{"type":"object","description":"RFC 7807 problem+json. `code` is a catalog ErrorCode; `status` matches the catalog entry.","required":["type","title","status","code","message","requestId"],"properties":{"type":{"type":"string","example":"https://api.embodiflow.com/errors/validation-error"},"title":{"type":"string"},"status":{"type":"integer"},"code":{"type":"string","enum":["ACCESS_REVIEW_FORBIDDEN","ACTIVATION_REQUIRED","ALGORITHM_BUILD_CONTEXT_TOO_LARGE","ALGORITHM_BUILD_FAILED","ALGORITHM_CLOUD_BUILD_UNAVAILABLE","ALGORITHM_DEFINITION_NOT_FOUND","ALGORITHM_FILE_VERSION_UNSUPPORTED","ALGORITHM_GOVERNANCE_GATE_BLOCKED","ALGORITHM_IMAGE_COMMAND_MISSING","ALGORITHM_IMAGE_COMMAND_UNREACHABLE","ALGORITHM_IMAGE_DIGEST_REQUIRED","ALGORITHM_IMAGE_PUSH_UNAVAILABLE","ALGORITHM_IMAGE_REF_FORBIDDEN","ALGORITHM_INPUT_FORMAT_UNKNOWN","ALGORITHM_KIND_PROFILE_MISMATCH","ALGORITHM_PULL_SECRET_INVALID","ALGORITHM_PYTHON_ENTRYPOINT_MISSING","ALGORITHM_PYTHON_REQUIREMENTS_TOO_MANY","ALGORITHM_PYTHON_REQUIREMENT_DUPLICATE","ALGORITHM_PYTHON_REQUIREMENT_INVALID","ALGORITHM_PYTHON_SOURCE_INVALID","ALGORITHM_PYTHON_SOURCE_MISSING","ALGORITHM_PYTHON_SOURCE_TOO_LARGE","ALGORITHM_REVISION_NOT_EXECUTABLE","ALGORITHM_REVISION_NOT_FOUND","ALGORITHM_REVISION_REVOKED","ALGORITHM_SAMPLE_RUN_GPU_UNSUPPORTED","ALGORITHM_SAMPLE_RUN_INPUT_NOT_READY","ALGORITHM_SAMPLE_RUN_INPUT_TOO_LARGE","ALGORITHM_SAMPLE_RUN_LIMIT","ALGORITHM_SAMPLE_RUN_NOT_FOUND","ALGORITHM_SAMPLE_RUN_PARAMS_UNSUPPORTED","ALGORITHM_SAMPLE_RUN_RECORDINGS_INVALID","ALGORITHM_SAMPLE_RUN_SOURCE_UNSUPPORTED","ALGORITHM_SAMPLE_RUN_STAGE_TOKEN_INVALID","ALGORITHM_SAMPLE_RUN_UNAVAILABLE","ALGORITHM_SOURCE_FIELDS_CONFLICT","ALGORITHM_VERSION_BELOW_SUGGESTED","ALGORITHM_VERSION_DISABLED","ALGORITHM_VERSION_EXISTS","ANNOTATION_CLAIM_EMPTY","ANNOTATION_COMPLETION_INCOMPLETE","ANNOTATION_COMPLETION_STALE","ANNOTATION_ITEM_HAS_SUGGESTIONS","ANNOTATION_ITEM_NOT_FOUND","ANNOTATION_JOB_NOT_FOUND","ANNOTATION_JOB_NOT_OPEN","ANNOTATION_SELF_REVIEW_FORBIDDEN","ANNOTATION_SNAPSHOT_NOT_FOUND","ANNOTATION_TASK_NOT_FOUND","ARTIFACT_NOT_FOUND","ASSET_BACKFILL_NOT_FOUND","ASSET_NOT_FOUND","ASSET_PROJECT_MISMATCH","ASSET_TENANT_MISMATCH","ASSET_TYPE_UNSUPPORTED","ASSET_VALIDATION_ERROR","ASSIGNEE_NOT_IN_PROJECT","AUDIO_UNSUPPORTED","AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","BASE_SNAPSHOT_NOT_FOUND","BILLING_BLOCKED","BILLING_STATE_TRANSITION_INVALID","BUDGET_HARD_STOP_REACHED","CANNOT_MODIFY_OWNER","CATALOG_INVALID_METADATA_KEY","CATALOG_INVALID_SORT_FIELD","CATALOG_SEARCH_DSL_INVALID","CATALOG_SEARCH_EXPRESSION_TOO_DEEP","CATALOG_SEARCH_EXPRESSION_TOO_LARGE","CATALOG_SEARCH_FIELD_NOT_ALLOWED","CATALOG_SEARCH_INDEX_NOT_READY","CATALOG_SEARCH_OPERATOR_NOT_ALLOWED","CATALOG_SEARCH_SCHEMA_UNAVAILABLE","CATALOG_SEARCH_SEMANTIC_NOT_READY","CATALOG_SEARCH_VALIDATION_ERROR","CATALOG_VALIDATION_ERROR","CHECKPOINT_NOT_COMPLETE","CHECKPOINT_NOT_FOUND","CLI_LOGIN_ALREADY_CONSUMED","CLI_LOGIN_EXPIRED","CLI_LOGIN_INVALID_BROWSER_SECRET","CLI_LOGIN_INVALID_POLL_SECRET","CLI_LOGIN_MEMBERSHIP_INVALID","CLI_LOGIN_NOT_APPROVED","CLI_LOGIN_NOT_FOUND","CLI_LOGIN_NOT_PENDING","COLLECTION_ASSIGNMENT_CSV_LIMIT","COLLECTION_ASSIGNMENT_NOT_COLLECTOR","COLLECTION_ASSIGNMENT_NOT_FOUND","COLLECTION_CONSENT_NOT_FOUND","COLLECTION_CONSENT_REQUIRED","COLLECTION_DELIVERY_ACCEPTANCE_REASON_REQUIRED","COLLECTION_DELIVERY_ACCEPTANCE_WAIVER_REQUIRED","COLLECTION_DELIVERY_ALREADY_TERMINAL","COLLECTION_DELIVERY_BANNED_ROOT_NAME","COLLECTION_DELIVERY_BANNED_SOURCE_METADATA_ROOT","COLLECTION_DELIVERY_BATCH_NOT_FOUND","COLLECTION_DELIVERY_INVALID_SHAPE","COLLECTION_DELIVERY_ORDER_NOT_ACCEPTING","COLLECTION_DELIVERY_ORDER_NOT_FOUND","COLLECTION_DELIVERY_REPLACEMENT_NOT_ALLOWED","COLLECTION_DELIVERY_SKILL_TARGET_NOT_TERM_IDENTITY","COLLECTION_DELIVERY_SKILL_TARGET_USED_BINDING_IDENTITY","COLLECTION_DELIVERY_SUBMIT_NOT_ALLOWED","COLLECTION_DELIVERY_UNKNOWN_BATCH_STATE","COLLECTION_DELIVERY_UNKNOWN_ORDER_STATE","COLLECTION_DELIVERY_VERSION_REQUIRED","COLLECTION_DELIVERY_WORKFLOW_NOT_SEEDED","COLLECTION_MEDIA_LIMIT","COLLECTION_OPENING_NO_CONSENT","COLLECTION_OPENING_NO_QUOTA","COLLECTION_OPENING_NO_TASK","COLLECTION_ORDER_NOT_DRAFT","COLLECTION_QUOTA_CAP_REACHED","COLLECTION_QUOTA_NOT_FOUND","COLLECTION_REVIEW_REASON_REQUIRED","COLLECTION_SCENE_NOT_FOUND","COLLECTION_SPECIFICATION_FROZEN","COLLECTION_SPECIFICATION_INVALID","COLLECTION_SUBMISSION_NOT_FOUND","COLLECTION_SUBMISSION_NOT_IN_REVIEW","COLLECTION_TASK_NOT_FOUND","COLLECTION_TEMPLATE_NOT_FOUND","COMPOSITION_CANONICAL_OUTPUTS_MISSING","COMPOSITION_EXTRACTOR_UNSUPPORTED","COMPOSITION_IDEMPOTENCY_KEY_REQUIRED","COMPOSITION_PROFILES_NOT_COMPARABLE","COMPOSITION_PROFILE_IN_PROGRESS","COMPOSITION_PROFILE_NOT_FOUND","COMPOSITION_PROFILE_VALIDATION_ERROR","COMPOSITION_REFERENCE_NOT_FOUND","COMPUTE_PROFILE_INACTIVE","COMPUTE_PROFILE_NOT_FOUND","CONTAINER_RUN_NOT_FOUND","CSRF_INVALID","CSRF_TOKEN_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","CURRENT_SESSION_NOT_REVOCABLE","DATASET_EXPORT_JOB_NOT_FOUND","DATASET_MIXTURE_EVALUATION_READINESS_BLOCKED","DATASET_MIXTURE_INPUT_FORBIDDEN","DATASET_MIXTURE_INPUT_NOT_FOUND","DATASET_MIXTURE_NOT_FOUND","DATASET_MIXTURE_RECIPE_INVALID","DATASET_MIXTURE_STATE_CONFLICT","DATASET_NOT_FOUND","DATASET_PERSIST_RUN_REQUIRED","DATASET_REF_AMBIGUOUS","DATASET_VERSION_CONTRACT_BLOCKED","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_MANIFEST_MISSING","DATASET_VERSION_METADATA_MISSING","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_FOUND","DATASET_VERSION_NOT_QUERYABLE","DATASET_VERSION_NOT_SOFT_HIDDEN","DATASET_VERSION_QUALITY_BLOCKED","DATASET_VERSION_STATS_STALE","DATA_CONTRACT_NOT_FOUND","DATA_CONTRACT_REVISION_IMMUTABLE","DATA_CONTRACT_REVISION_NOT_FOUND","DATA_CONTRACT_REVISION_NOT_PUBLISHED","DATA_CONTRACT_VALIDATION_ERROR","DATA_FORMAT_CONVERTER_UNUSABLE","DATA_FORMAT_INVALID","DATA_FORMAT_NOT_FOUND","DATA_FORMAT_NOT_PUBLISHED","DATA_FORMAT_PRIVACY_RELAX_FORBIDDEN","DATA_FORMAT_PUBLISH_CONFLICT","DATA_FORMAT_RAW_READ_DENIED","DATA_FORMAT_SAMPLE_EXTENSION_UNSUPPORTED","DATA_FORMAT_SAMPLE_LIMIT","DATA_FORMAT_SAMPLE_NOT_DRAFT","DATA_FORMAT_SAMPLE_PROJECT_MISMATCH","DATA_FORMAT_SAMPLE_RUN_REQUIRED","DATA_FORMAT_SAMPLE_UPLOAD_FORBIDDEN","DATA_FORMAT_SLUG_INVALID","DATA_FORMAT_SLUG_TAKEN","DELETION_BLOCKED_BY_ACTIVE_WORK","DEPLOYMENT_PACKAGE_NOT_FOUND","DEPLOYMENT_PROFILE_UNAVAILABLE","DESTINATION_NOT_ALLOWED","DIFF_NOT_READY","DOWNLOAD_SESSION_NOT_FOUND","DUPLICATE_TAG_KEY","EDGE_INFERENCE_DISABLED","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EGO_HUMAN_PROCESSOR_DIGEST_REQUIRED","EGO_HUMAN_SOURCE_DISABLED","EMAIL_ALREADY_REGISTERED","EMBODIMENT_INCOMPATIBLE","EMBODIMENT_NOT_FOUND","EMBODIMENT_NOT_PUBLISHED","EMPTY_UPLOAD_MANIFEST","ENCRYPTION_KEY_MISSING","ENDPOINT_LIMIT_EXCEEDED","EPISODE_LANGUAGE_NOT_ENABLED","EPISODE_NOT_FOUND","EPISODE_NOT_INDEXED","EPISODE_REVISION_CONFLICT","EVALUATION_FEATURE_SCHEMA_MISMATCH","EVALUATION_SPLIT_EMPTY","EXPORT_ALREADY_FINALIZED","EXPORT_BLOCKED_BY_PII_POLICY","EXPORT_EPISODE_TASK_MISSING","EXPORT_FORMAT_UNSUPPORTED","EXPORT_MEMBER_RESULT_MISSING","EXPORT_NOT_FOUND","EXPORT_OPTION_UNSUPPORTED","EXPORT_STORAGE_UNAVAILABLE","EXPORT_VERSION_DIGEST_MISSING","EXPORT_WORKFLOW_UNAVAILABLE","FEATURE_NAMESPACE_VIOLATION","FORBIDDEN","FORMAT_ADAPTER_UNAVAILABLE","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GOVERNANCE_TAG_NOT_FOUND","GROUPED_DATASET_SCALE","HANDLE_INVALID","HANDLE_TAKEN","HUGGING_FACE_IMPORT_DISABLED","IDEMPOTENCY_CONFLICT","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMAGE_ARCH_UNSUPPORTED","IMAGE_FAMILY_UNSUPPORTED","IMAGE_GPU_MEMORY_INSUFFICIENT","IMAGE_REVISION_NOT_EXECUTABLE","IMAGE_REVISION_NOT_FOUND","IMAGE_REVISION_NOT_PUBLISHED","IMAGE_WIRE_UNSUPPORTED","IMPORTED_CHECKPOINT_INCOMPLETE","IMPORTED_CHECKPOINT_INVALID_PATH","IMPORTED_CHECKPOINT_NOT_FOUND","IMPORT_BINDING_FROZEN","IMPORT_EXECUTION_FAILED","IMPORT_FORMAT_AMBIGUOUS","IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_CHANGED","IMPORT_SOURCE_IDENTITY_UNSUPPORTED","IMPORT_SOURCE_NOT_FOUND","IMPORT_VALIDATION_FAILED","INFERENCE_DEPLOYMENT_NOT_FOUND","INFERENCE_DEPLOYMENT_NOT_RUNNING","INFERENCE_ENDPOINT_NOT_EXPOSED","INITIAL_PASSWORD_EXPIRED","INITIAL_PASSWORD_REQUIRED","INSTANCE_ATTESTATION_KEY_MISSING","INSTANCE_ATTESTATION_LICENSE_UNAVAILABLE","INVALID_CREDENTIALS","INVALID_INPUT","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","INVALID_STATUS_TRANSITION","INVITATION_ALREADY_ACCEPTED","INVITATION_EMAIL_MISMATCH","INVITATION_EXPIRED","INVITATION_INVALID","INVITATION_NOT_FOUND","INVITATION_REVOKED","INVOICE_SNAPSHOT_ALREADY_EXISTS","ITEM_NOT_IN_VERSION","LAST_OWNER_PROTECTION","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_PLATFORM_AUTHORITY","LEGAL_HOLD_SCOPE_INVALID","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","LICENSE_SEAT_LIMIT","LICENSE_TENANT_LIMIT","LINEAGE_FILTER_REQUIRED","LINEAGE_NODE_NOT_FOUND","MEMBERSHIP_DISABLED","MEMBERSHIP_EXPIRED","MEMBERSHIP_NOT_FOUND","MFA_CHALLENGE_INVALID","MFA_ENROLLMENT_REQUIRED","MFA_REQUIRED","MODEL_BUNDLE_JOB_NOT_FOUND","MODEL_BUNDLE_JOB_NOT_RUNNING","MODEL_BUNDLE_OBJECTS_REQUIRED","MODEL_BUNDLE_PREFIX_INVALID","MODEL_BUNDLE_PREFIX_REQUIRED","MODEL_BUNDLE_STORAGE_UNAVAILABLE","MODEL_COMPARISON_INCOMPLETE","MODEL_IMAGE_DEFINITION_NOT_FOUND","MODEL_IMAGE_REVISION_NOT_EXECUTABLE","MODEL_IMAGE_REVISION_NOT_FOUND","MODEL_IMAGE_REVISION_NOT_PUBLISHED","MODEL_IMAGE_REVISION_REVOKED","MODEL_IMAGE_SELF_REVIEW_FORBIDDEN","MODEL_VERSION_INVALID_STATUS","MODEL_VERSION_NOT_FOUND","MODEL_VERSION_NOT_READY","NOT_FOUND","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_PROVIDER_NOT_CONFIGURED","OAUTH_STATE_INVALID","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","OFFBOARDING_REQUEST_NOT_FOUND","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_RATE_LIMITED","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","PAYLOAD_TOO_LARGE","PERMISSION_DENIED","PERMISSION_NOT_DECLARED","PIPELINE_BINDING_ALREADY_EXISTS","PIPELINE_BINDING_NOT_FOUND","PLATFORM_MAINTENANCE_READ_ONLY","PRECONDITION_FAILED","PRECONDITION_REQUIRED","PRIVACY_GATE_UNRESOLVED","PRIVACY_QC_ERROR","PRIVACY_QC_FAILED","PRIVACY_QC_NOT_EVALUATED","PROJECT_ACCESS_DENIED","PROJECT_DATA_FORMAT_LOCKED","PROJECT_MEMBERSHIP_EXPIRED","PROJECT_NAME_INVALID","PROJECT_NOT_FOUND","PROJECT_VERSION_NOT_FOUND","PROVENANCE_NOT_AVAILABLE","PROVENANCE_SCHEMA_INVALID","QUALITY_CHECK_PARAM_INVALID","QUALITY_CHECK_UNKNOWN","QUALITY_IDEMPOTENCY_KEY_REQUIRED","QUALITY_POLICY_CREATE_RACE_CONFLICT","QUALITY_POLICY_LEGACY_SPEC","QUALITY_POLICY_SCOPE_CONFLICT","QUALITY_RULE_SET_NOT_FOUND","QUERY_DSL_INVALID","QUERY_EXECUTOR_UNAVAILABLE","QUERY_FIELD_NOT_ALLOWED","QUERY_INDEX_BUILDING","QUERY_INDEX_FAILED","QUERY_INDEX_NOT_BUILT","QUERY_INDEX_NOT_READY","QUERY_INDEX_STALE","QUERY_OBJECT_ACCESS_UNAVAILABLE","QUERY_OBJECT_SCOPE_INVALID","QUERY_ROW_LIMIT_EXCEEDED","QUERY_TIMEOUT","RATE_LIMITED","RECONCILIATION_ALREADY_RUNNING","RECORDING_CAPTURE_LABELS_INVALID","RECORDING_CAPTURE_LABELS_TOO_LARGE","RECORDING_FORMAT_NOT_ACCEPTED","RECORDING_FORMAT_SAMPLE_NOT_ADMITTED","RECORDING_NOT_FOUND","REGISTRATION_INVITATION_EXPIRED","REPAIR_TASK_NOT_FOUND","REPRO_BUNDLE_INPUT_FORBIDDEN","REPRO_BUNDLE_INPUT_NOT_FOUND","REPRO_BUNDLE_RECIPE_INVALID","REPRO_BUNDLE_SPLIT_MISSING","REQUEST_TIMEOUT","RESOURCE_NOT_FOUND","RETENTION_WINDOW_NOT_ELAPSED","REVIEW_TASK_CLOSED","REVIEW_TASK_NOT_FOUND","RIG_PROFILE_DRAFT_INCOMPLETE","RIG_PROFILE_DRAFT_UNREADABLE","RIG_PROFILE_INVALID","RIG_PROFILE_NAME_TAKEN","RIG_PROFILE_NOT_FOUND","RIG_PROFILE_PUBLISH_CONFLICT","RIG_PROFILE_RAW_READ_DENIED","RIG_PROFILE_SOURCE_UNSUPPORTED","SAMPLE_NOT_FOUND","SAMPLE_PROJECT_READ_ONLY","SAMPLE_PROVISION_FORBIDDEN","SAMPLE_SELECTION_NOT_FOUND","SAMPLE_TEMPLATE_UNAVAILABLE","SAVED_VIEW_NAME_TAKEN","SAVED_VIEW_NOT_FOUND","SDK_ARTIFACT_UNKNOWN","SECRET_NOT_FOUND","SEMANTIC_SEARCH_UNAVAILABLE","SERVICE_ACTION_FORBIDDEN","SESSION_EXPIRED","SESSION_NOT_FOUND","SIGNUP_DISABLED","SKILL_TAXONOMY_CONFLICT","SKILL_TAXONOMY_COVERAGE_FLOOR_NOT_DISABLEABLE","SKILL_TAXONOMY_FORBIDDEN","SKILL_TAXONOMY_IDEMPOTENCY_KEY_REQUIRED","SKILL_TAXONOMY_INVALID_SCOPE","SKILL_TAXONOMY_INVALID_STATUS","SKILL_TAXONOMY_LABEL_EN_MISSING","SKILL_TAXONOMY_LABEL_ZH_MISSING","SKILL_TAXONOMY_NOT_DRAFT","SKILL_TAXONOMY_NOT_FOUND","SKILL_TAXONOMY_PLATFORM_CODE_REUSED","SKILL_TAXONOMY_PLATFORM_IDENTITY_SHADOWED","SKILL_TAXONOMY_PROJECT_ID_REQUIRED","SKILL_TAXONOMY_TERM_NOT_FOUND","SKILL_TAXONOMY_VALIDATION_ERROR","SLUG_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","SNAPSHOT_ROW_IMMUTABLE","SPLIT_CONFIG_IMMUTABLE","SPLIT_CONFIG_INVALID","SPLIT_NOT_REPRODUCIBLE","SSO_NOT_CONFIGURED","SSO_PROVIDER_UNAVAILABLE","STORAGE_BUCKET_ALREADY_EXISTS","STORAGE_NOT_READY","STORAGE_OBJECT_NOT_FOUND","STORAGE_PROVIDER_NOT_CONFIGURED","STORAGE_PROVISIONING_FAILED","STORAGE_QUOTA_EXCEEDED","STORAGE_RECONCILIATION_ALREADY_RUNNING","STORAGE_RECONCILIATION_JOB_NOT_FOUND","STORAGE_RECONCILIATION_PROVIDER_UNAVAILABLE","STORAGE_REGION_NOT_AVAILABLE","STUB_EXECUTOR_FORBIDDEN","SUBJECT_ERASURE_DISABLED","SUBJECT_NOT_IN_TENANT","SUBJECT_PSEUDONYM_SECRET_MISSING","SUBSCRIPTION_NOT_FOUND","TENANT_CONTEXT_MISMATCH","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_FOUND","TENANT_DELETION_JOB_NOT_RETRYABLE","TENANT_FROZEN","TENANT_NOT_FOUND","TENANT_NOT_OFFBOARDING","TENANT_READ_ONLY","TENANT_REQUIRED","TENANT_SCOPE_DENIED","TENANT_SLUG_CONFLICT","TENANT_STORAGE_KEY_CONFLICT","TIME_RANGE_ANNOTATION_NOT_FOUND","TOKEN_EXPIRED","TOKEN_MALFORMED","TOKEN_NOT_FOUND","TOKEN_REVOKED","TRAINING_ACTION_MISSING","TRAINING_ARTIFACT_NOT_FINALIZED","TRAINING_ARTIFACT_NOT_FOUND","TRAINING_ARTIFACT_UNSUPPORTED_TYPE","TRAINING_ARTIFACT_WRONG_PROJECT","TRAINING_ATTEMPT_NOT_FOUND","TRAINING_CANCEL_CONFLICT","TRAINING_ENTITLEMENT_DENIED","TRAINING_FINALIZATION_INCOMPLETE","TRAINING_FLAVOR_TOO_SMALL","TRAINING_FORBIDDEN_INFRA_FIELD","TRAINING_IDEMPOTENCY_KEY_CONFLICT","TRAINING_IDEMPOTENCY_KEY_REQUIRED","TRAINING_INVALID_STATE_TRANSITION","TRAINING_JOB_HAS_NO_OUTPUT_ARTIFACT","TRAINING_JOB_NOT_ACTIVE","TRAINING_JOB_NOT_COMPLETED","TRAINING_JOB_NOT_FOUND","TRAINING_LEASE_CONFLICT","TRAINING_LEASE_NOT_HELD","TRAINING_NEEDS_TASK","TRAINING_NON_TERMINAL_ATTEMPT_EXISTS","TRAINING_OBSERVATION_VERSION_CONFLICT","TRAINING_PLACEMENT_UNAVAILABLE","TRAINING_PROVENANCE_UNRESOLVABLE","TRAINING_PROVIDER_BINDING_CONFLICT","TRAINING_RECIPE_ACTION_SEMANTICS_INCOMPATIBLE","TRAINING_RECIPE_ACTION_SEMANTICS_UNAVAILABLE","TRAINING_RECIPE_DURATION_UNAVAILABLE","TRAINING_RECIPE_IDEMPOTENCY_KEY_REQUIRED","TRAINING_RECIPE_INVALID","TRAINING_RECIPE_LEGAL_HOLD_BLOCKED","TRAINING_RECIPE_NOT_FOUND","TRAINING_RECIPE_PROPORTION_INVALID","TRAINING_RECIPE_QUALITY_THRESHOLD_UNAVAILABLE","TRAINING_RECIPE_RANGE_EXPORT_UNSUPPORTED","TRAINING_RECIPE_REQUIRED_FEATURE_MISSING","TRAINING_RECIPE_RESOLUTION_EMPTY","TRAINING_RECIPE_SNAPSHOT_MISMATCH","TRAINING_RECIPE_STATE_CONFLICT","TRAINING_RECIPE_TAXONOMY_UNAVAILABLE","TRAINING_RETRY_CONFLICT","TRAINING_TENANT_FROZEN","TRAINING_VALIDATION_ERROR","TRAIN_SPEC_INVALID","TRASH_ITEM_IN_USE","TRASH_PARENT_DELETED","UNAUTHORIZED","UNCLASSIFIED_FILES","UNKNOWN_EVENT_TYPE","UNSUPPORTED_FILE_EXTENSION","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_BATCH_NOT_FOUND","UPLOAD_DEVICE_META_TOO_LARGE","UPLOAD_HUMAN_DEVICE_META_MISSING","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_PROCESSING_UNAVAILABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED","UPLOAD_SESSION_EXPIRED","UPLOAD_SESSION_NOT_FOUND","UPLOAD_STEREO_CALIBRATION_MISSING","UPLOAD_TASK_MISSING","USAGE_ATTESTATION_PERIOD_INVALID","USAGE_LIMIT_ABOVE_CEILING","USAGE_SUMMARY_FORBIDDEN","USAGE_SUMMARY_SCOPE_INVALID","USER_ALREADY_MEMBER","USER_DISABLED","USER_NOTIFICATION_NOT_FOUND","VALIDATION_ERROR","VENDOR_SCHEMA_UNDECLARED","VERSION_ALIAS_RESERVED","VERSION_ALREADY_EXISTS","VERSION_CAPTURE_SESSION_SPLIT_MISMATCH","VERSION_DATA_CONTRACT_INCOMPLETE","VERSION_DATA_CONTRACT_MISMATCH","VERSION_IN_TRASH","VERSION_MIXED_FEATURE_SCHEMA","VERSION_SPLIT_TAG_MISSING","VIDEO_LAYOUT_AMBIGUOUS","VLM_NOT_CONFIGURED","WAIVE_REASON_REQUIRED","WEBAUTHN_NOT_CONFIGURED","WEBHOOK_DELIVERY_INVALID_TIME_RANGE","WEBHOOK_DELIVERY_IN_FLIGHT","WEBHOOK_DELIVERY_NOT_FOUND","WEBHOOK_DELIVERY_TIME_RANGE_REQUIRED","WEBHOOK_DELIVERY_WINDOW_TOO_LARGE","WEBHOOK_ENDPOINT_DISABLED","WEBHOOK_ENDPOINT_NOT_FOUND","WEBHOOK_PING_RATE_LIMITED","WIRE_PROTOCOL_NOT_PERMITTED","WORKFLOW_ALGORITHM_UNRESOLVED","WORKFLOW_CONCURRENCY_LIMIT","WORKFLOW_DEFINITION_CODE_CONFLICT","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED","WORKFLOW_INPUT_NOT_STAGED","WORKFLOW_INPUT_SCOPE_MISMATCH","WORKFLOW_INPUT_UNWIRED","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_QUOTA_EXCEEDED","WORKFLOW_RAW_CODE_AUTHORITY_DENIED","WORKFLOW_REQUIREMENT_UNMET","WORKFLOW_RERUN_NOT_ALLOWED","WORKFLOW_REVIEW_ALREADY_DECIDED","WORKFLOW_REVISION_NOT_FOUND","WORKFLOW_RUN_NOT_FOUND","WORKFLOW_RUN_STATE_CONFLICT","WORKFLOW_RUN_TOO_LARGE","WORKFLOW_SECRET_NAME_RESERVED","WORKFLOW_SELECTION_EMPTY","WORKFLOW_SPEC_INVALID","WORKFLOW_STEP_LOCKED","WORKFLOW_YAML_INVALID"]},"message":{"type":"string"},"requestId":{"type":"string","format":"uuid"},"details":{"type":"array","items":{"type":"object","properties":{"field":{"type":"string"},"reason":{"type":"string"}}}},"extensions":{"type":"object","additionalProperties":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]}}}},"ProcessingGateReasonDto":{"type":"object","properties":{"code":{"type":"string"},"severity":{"type":"string","enum":["warning","info","fail"]},"message":{"type":"string"},"recommendedAction":{"type":"string","nullable":true}},"required":["code","severity","message"]},"ProcessingTemplateStageSummaryDto":{"type":"object","properties":{"stage":{"type":"string","enum":["export","quality","cleaning","annotation"]},"title":{"type":"string"},"description":{"type":"string","nullable":true},"enabledStepCount":{"type":"number"},"totalStepCount":{"type":"number"}},"required":["stage","title","description","enabledStepCount","totalStepCount"]},"ProjectAnalyticsAttentionVersionDto":{"type":"object","properties":{"datasetId":{"type":"string"},"datasetVersionId":{"type":"string"},"datasetName":{"type":"string"},"version":{"type":"number"},"sourceType":{"type":"string"},"qualityStatus":{"type":"string","enum":["failed","warning","error","unchecked","inspecting","passed"]},"topicCount":{"type":"number","nullable":true},"issueSummary":{"type":"string"},"latestWorkflowRunId":{"type":"string","nullable":true}},"required":["datasetId","datasetVersionId","datasetName","version","sourceType","qualityStatus","topicCount","issueSummary","latestWorkflowRunId"]},"ProjectAnalyticsDerivedVersionDto":{"type":"object","properties":{"datasetId":{"type":"string"},"datasetVersionId":{"type":"string"},"datasetName":{"type":"string"},"version":{"type":"number"},"sourceDatasetVersionId":{"type":"string","nullable":true},"outputSourceType":{"type":"string"},"createdAt":{"type":"string"}},"required":["datasetId","datasetVersionId","datasetName","version","sourceDatasetVersionId","outputSourceType","createdAt"]},"ProjectAnalyticsDto":{"type":"object","properties":{"uploadTrend":{"type":"array","items":{"$ref":"#/components/schemas/ProjectAnalyticsUploadTrendBucketDto"}},"storageOverview":{"type":"object","properties":{"totalBytes":{"type":"number"},"objectCount":{"type":"number"},"bySourceType":{"$ref":"#/components/schemas/Record"}},"required":["totalBytes","objectCount","bySourceType"]},"supportMatrix":{"type":"array","items":{"$ref":"#/components/schemas/RosSourceSupportMatrixEntryDto"}},"sourceTypeBreakdown":{"type":"array","items":{"$ref":"#/components/schemas/ProjectAnalyticsSourceTypeBreakdownDto"}},"issueSummary":{"type":"array","items":{"$ref":"#/components/schemas/ProjectAnalyticsIssueSummaryDto"}},"attentionVersions":{"type":"array","items":{"$ref":"#/components/schemas/ProjectAnalyticsAttentionVersionDto"}},"recentDerivedVersions":{"type":"array","items":{"$ref":"#/components/schemas/ProjectAnalyticsDerivedVersionDto"}},"qualityDistribution":{"type":"object","properties":{"passed":{"type":"number"},"warning":{"type":"number"},"failed":{"type":"number"},"unchecked":{"type":"number"},"inspecting":{"type":"number"}},"required":["passed","warning","failed","unchecked","inspecting"]}},"required":["uploadTrend","storageOverview","supportMatrix","sourceTypeBreakdown","issueSummary","attentionVersions","recentDerivedVersions","qualityDistribution"]},"ProjectAnalyticsIssueSummaryDto":{"type":"object","properties":{"code":{"type":"string"},"label":{"type":"string"},"severity":{"type":"string","enum":["failed","warning","info"]},"count":{"type":"number"}},"required":["code","label","severity","count"]},"ProjectAnalyticsSourceTypeBreakdownDto":{"type":"object","properties":{"sourceType":{"type":"string"},"datasetCount":{"type":"number"},"versionCount":{"type":"number"},"totalBytes":{"type":"number"}},"required":["sourceType","datasetCount","versionCount","totalBytes"]},"ProjectAnalyticsUploadTrendBucketDto":{"type":"object","properties":{"periodStart":{"type":"string"},"batchCount":{"type":"number"},"fileCount":{"type":"number"},"bytes":{"type":"number"}},"required":["periodStart","batchCount","fileCount","bytes"]},"ProjectCapabilitiesDto":{"type":"object","properties":{"canViewProject":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"canViewDatasets":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"canViewProcessing":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"canUploadData":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"canSubmitUploadBatch":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"canRunProcessing":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"canViewAnalytics":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"canEditProcessingTemplates":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"canPublishProcessingTemplates":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"canRollbackProcessingTemplates":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"canSetDefaultProcessingTemplate":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"canEditProjectSettings":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"canManageMembers":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"canArchiveProject":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"canDeleteProject":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["canViewProject","canViewDatasets","canViewProcessing","canUploadData","canSubmitUploadBatch","canRunProcessing","canViewAnalytics","canEditProcessingTemplates","canPublishProcessingTemplates","canRollbackProcessingTemplates","canSetDefaultProcessingTemplate","canEditProjectSettings","canManageMembers","canArchiveProject","canDeleteProject"]},"ProjectDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"slug":{"type":"string"},"name":{"type":"string"},"description":{"type":"string","nullable":true},"visibility":{"type":"string"},"status":{"type":"string"},"isSample":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"dataKind":{"type":"string","enum":["human","robot","video"]},"dataFormat":{"type":"string","nullable":true},"robotType":{"type":"string","nullable":true},"defaultFps":{"type":"number","nullable":true},"defaultTask":{"type":"string","nullable":true},"requiresSegmentation":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"lastAccessedAt":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"processing":{"$ref":"#/components/schemas/ProjectProcessingStatus"},"handle":{"type":"string"},"ref":{"type":"string"},"url":{"type":"string"}},"required":["id","tenantId","slug","name","description","visibility","status","isSample","dataKind","robotType","defaultFps","defaultTask","requiresSegmentation","lastAccessedAt","createdAt","updatedAt"]},"ProjectHealthOpenBlockerDto":{"type":"object","properties":{"repairTaskId":{"type":"string"},"title":{"type":"string","nullable":true},"severity":{"type":"string","enum":["warning","info","blocking"]},"status":{"type":"string","enum":["in_progress","open"]},"datasetId":{"type":"string","nullable":true},"datasetVersionId":{"type":"string","nullable":true},"dueAt":{"type":"string","nullable":true}},"required":["repairTaskId","title","severity","status","datasetId","datasetVersionId","dueAt"]},"ProjectHealthRollupDto":{"type":"object","properties":{"projectId":{"type":"string"},"status":{"type":"string","enum":["unknown","blocked","ready","needs_review"]},"openRepairTaskCount":{"type":"number"},"openBlockingTaskCount":{"type":"number"},"unassignedOpenTaskCount":{"type":"number"},"overdueOpenTaskCount":{"type":"number"},"waivedTaskCount":{"type":"number"},"waiverReviewCount":{"type":"number"},"unhealthyVersionCount":{"type":"number"},"latestUnhealthyVersions":{"type":"array","items":{"$ref":"#/components/schemas/ProjectHealthVersionSummaryDto"}},"latestOpenBlockers":{"type":"array","items":{"$ref":"#/components/schemas/ProjectHealthOpenBlockerDto"}},"recommendedNextAction":{"type":"string"},"computedAt":{"type":"string"},"rollupVersionLimit":{"type":"number"},"sampledVersionCount":{"type":"number"},"totalActiveVersionCount":{"type":"number"},"rollupLimited":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["projectId","status","openRepairTaskCount","openBlockingTaskCount","unassignedOpenTaskCount","overdueOpenTaskCount","waivedTaskCount","waiverReviewCount","unhealthyVersionCount","latestUnhealthyVersions","latestOpenBlockers","recommendedNextAction","computedAt","rollupVersionLimit","sampledVersionCount","totalActiveVersionCount","rollupLimited"]},"ProjectHealthVersionSummaryDto":{"type":"object","properties":{"datasetVersionId":{"type":"string"},"datasetId":{"type":"string"},"datasetName":{"type":"string","nullable":true},"version":{"type":"number"},"status":{"type":"string","enum":["unknown","blocked","ready","needs_review"]},"primaryBlocker":{"type":"string","nullable":true}},"required":["datasetVersionId","datasetId","datasetName","version","status","primaryBlocker"]},"ProjectImportAttemptConfirmationDto":{"type":"object","properties":{"attemptId":{"type":"string"},"status":{"type":"string","enum":["confirmed","resumed"]},"credentialDeadlineAt":{"type":"string"},"credentialStorage":{"type":"string","enum":["one-shot-cache"]},"credentialState":{"type":"string","enum":["expired","consumed","issued"]},"objects":{"type":"array","items":{"$ref":"#/components/schemas/ObjectImportFrozenObject"}},"bindings":{"type":"array","items":{"$ref":"#/components/schemas/ObjectImportAttemptBinding"}}},"required":["attemptId","status","credentialDeadlineAt","credentialStorage","credentialState","objects","bindings"]},"ProjectImportAttemptDto":{"type":"object","properties":{"attemptId":{"type":"string"},"credentialDeadlineAt":{"type":"string"},"credentialStorage":{"type":"string","enum":["one-shot-cache"]},"objects":{"type":"array","items":{"$ref":"#/components/schemas/ObjectImportFrozenObject"}},"bindings":{"type":"array","items":{"$ref":"#/components/schemas/ObjectImportAttemptBinding"}}},"required":["attemptId","credentialDeadlineAt","credentialStorage","objects","bindings"]},"ProjectImportJobDto":{"type":"object","properties":{"id":{"type":"string"},"projectId":{"type":"string"},"importSourceId":{"type":"string","nullable":true},"status":{"type":"string"},"conflictPolicy":{"type":"string"},"datasetId":{"type":"string","nullable":true},"summary":{"$ref":"#/components/schemas/ProjectImportJobSummaryDto","nullable":true},"errorMessage":{"type":"string","nullable":true},"startedAt":{"type":"string","nullable":true},"finishedAt":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","projectId","importSourceId","status","conflictPolicy","datasetId","summary","errorMessage","startedAt","finishedAt","createdAt","updatedAt"]},"ProjectImportJobSummaryDto":{"type":"object","properties":{"scannedObjectCount":{"type":"number"},"importedObjectCount":{"type":"number"},"skippedExistingCount":{"type":"number"},"failedCount":{"type":"number"}},"required":["scannedObjectCount","importedObjectCount","skippedExistingCount","failedCount"]},"ProjectImportSampleObjectDto":{"type":"object","properties":{"key":{"type":"string"},"sizeBytes":{"type":"number","nullable":true},"lastModified":{"type":"string","nullable":true}},"required":["key","sizeBytes","lastModified"]},"ProjectImportSourceDto":{"type":"object","properties":{"id":{"type":"string"},"projectId":{"type":"string"},"provider":{"type":"string"},"bucketName":{"type":"string"},"prefix":{"type":"string"},"region":{"type":"string","nullable":true},"displayName":{"type":"string","nullable":true},"status":{"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","projectId","provider","bucketName","prefix","region","displayName","status","createdAt","updatedAt"]},"ProjectImportValidationResultDto":{"type":"object","properties":{"status":{"type":"string"},"bucketReachable":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"prefixExists":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"estimatedObjectCount":{"type":"number"},"estimatedBytes":{"type":"number"},"truncated":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"sampleObjects":{"type":"array","items":{"$ref":"#/components/schemas/ProjectImportSampleObjectDto"}},"warnings":{"type":"array","items":{"type":"string"}},"attempt":{"$ref":"#/components/schemas/ProjectImportAttemptDto","nullable":true}},"required":["status","bucketReachable","prefixExists","estimatedObjectCount","estimatedBytes","truncated","sampleObjects","warnings"]},"ProjectMemberDto":{"type":"object","properties":{"projectMembershipId":{"type":"string"},"projectMembershipIds":{"type":"array","items":{"type":"string"}},"membershipId":{"type":"string"},"userId":{"type":"string"},"displayName":{"type":"string","nullable":true},"email":{"type":"string","nullable":true},"role":{"type":"string","enum":["owner","viewer","reviewer","editor","labeler","uploader","data_supplier"]},"roles":{"type":"array","items":{"type":"string"},"enum":["owner","viewer","reviewer","editor","labeler","uploader","data_supplier"]},"roleAssignments":{"type":"array","items":{"$ref":"#/components/schemas/ProjectRoleAssignmentDto"}},"roleSources":{"type":"array","items":{"type":"string"}},"status":{"type":"string"},"joinedAt":{"type":"string"},"lastAccessedAt":{"type":"string","nullable":true},"expiresAt":{"type":"string","nullable":true},"permissionsOverlay":{"$ref":"#/components/schemas/PermissionOverlayDto","nullable":true},"effectivePermissions":{"$ref":"#/components/schemas/EffectivePermissionsSummaryDto"},"capabilities":{"$ref":"#/components/schemas/ProjectCapabilitiesDto"}},"required":["projectMembershipId","membershipId","userId","displayName","email","role","roles","roleSources","status","joinedAt","lastAccessedAt"]},"ProjectOverviewDto":{"type":"object","properties":{"project":{"$ref":"#/components/schemas/ProjectSummaryDto"},"metrics":{"$ref":"#/components/schemas/ProjectOverviewMetricsDto"},"capabilities":{"$ref":"#/components/schemas/ProjectCapabilitiesDto"},"permissions":{"type":"array","items":{"type":"string"},"enum":["project:read","project:write","project:manage","member:read","member:manage","dataset:read","dataset:write","annotation:read","annotation:write","annotation:review","annotation-job:manage","upload:read","upload:write","collection:manage","collection:deliver","workflow:read","workflow:run","workflow:manage","approval:read","approval:decide","algorithm:read","algorithm:write","export:read","export:write","training:read","training:write","quality:read","quality:write","recipe:read","recipe:manage","skill-taxonomy:manage","task:read","task:write","deployment:read","deployment:write","model-image:read","model-image:write","model-version:read","model-version:write","inference-deployment:read","inference-deployment:write","analytics:read","vision:annotate","tenant:read","tenant:manage","billing:read","billing:write","apikey:read","apikey:write","apikey:manage","audit:read"]},"currentMembership":{"type":"object","properties":{"membershipId":{"type":"string"},"roles":{"type":"array","items":{"type":"string"},"enum":["owner","viewer","reviewer","editor","labeler","uploader","data_supplier"]},"roleSources":{"type":"array","items":{"type":"string"}}},"required":["membershipId","roles","roleSources"],"nullable":true}},"required":["project","metrics","capabilities","permissions","currentMembership"]},"ProjectOverviewMetricsDto":{"type":"object","properties":{"datasetCount":{"type":"number"},"fileCount":{"type":"number"},"storageBytes":{"type":"number"},"lastUploadAt":{"type":"string","nullable":true},"qualityIssueCount":{"type":"number"}},"required":["datasetCount","fileCount","storageBytes","lastUploadAt","qualityIssueCount"]},"ProjectPiiPolicyDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string"},"requiredBeforeExport":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"requireSpotCheckBeforeExport":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"detectors":{"type":"array","items":{"type":"string"}},"maskingMode":{"type":"string","enum":["blur","redact"]},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","tenantId","projectId","requiredBeforeExport","requireSpotCheckBeforeExport","detectors","maskingMode","createdAt","updatedAt"]},"ProjectProcessingStatus":{"type":"object","properties":{"state":{"type":"string","enum":["ready","not_applicable","unavailable"]},"code":{"type":"string","enum":["PROJECT_PROCESSING_UNAVAILABLE"],"nullable":true},"templateCode":{"type":"string","enum":["robot-standard","human-ego-standard"],"nullable":true},"reason":{"type":"string","enum":["algorithms_missing","template_unpublished"],"nullable":true},"missingAlgorithms":{"type":"array","items":{"type":"string"}}},"required":["state","code","templateCode","reason","missingAlgorithms"]},"ProjectRecordingPrivacyDto":{"type":"object","properties":{"projectId":{"type":"string"},"privacyRequirement":{"type":"string","enum":["required","not_required"]},"basis":{"type":"string","nullable":true},"setByUserId":{"type":"string","nullable":true},"setAt":{"type":"string","nullable":true}},"required":["projectId","privacyRequirement","basis","setByUserId","setAt"]},"ProjectRoleAssignmentDto":{"type":"object","properties":{"projectMembershipId":{"type":"string"},"role":{"type":"string","enum":["owner","viewer","reviewer","editor","labeler","uploader","data_supplier"]},"source":{"type":"string","nullable":true}},"required":["projectMembershipId","role","source"]},"ProjectSkillDto":{"type":"object","properties":{"termIdentity":{"type":"string"},"code":{"type":"string"},"displayLabel":{"type":"string"},"labels":{"type":"object","properties":{"en":{"type":"string"},"zh":{"type":"string"}}},"enabled":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["termIdentity","code","displayLabel","labels","enabled"]},"ProjectSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"slug":{"type":"string"},"name":{"type":"string"},"description":{"type":"string","nullable":true},"dataFormat":{"type":"string","nullable":true},"projectType":{"type":"string"},"projectSubtype":{"type":"string"},"visibility":{"type":"string"},"status":{"type":"string"},"isSample":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"lastAccessedAt":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","tenantId","slug","name","description","projectType","projectSubtype","visibility","status","isSample","lastAccessedAt","createdAt","updatedAt"]},"ProjectVersionDto":{"type":"object","properties":{"id":{"type":"string"},"projectId":{"type":"string"},"number":{"type":"number"},"name":{"type":"string"},"readmeMd":{"type":"string","nullable":true},"licence":{"type":"string","nullable":true},"split":{"type":"object","properties":{"strategy":{"type":"string","enum":["recording","manual","episode","collector","stratified_task"]},"ratios":{"type":"object","properties":{"train":{"type":"number"},"val":{"type":"number"},"test":{"type":"number"}},"required":["train","val","test"]},"seed":{"type":"number","nullable":true}},"required":["strategy","ratios"]},"preprocessing":{"type":"object","properties":{"fps":{"type":"number","nullable":true},"cameraKeys":{"type":"array","items":{"type":"string"},"nullable":true},"trimIdle":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true},"maxDurationS":{"type":"number","nullable":true},"padMs":{"type":"number","nullable":true}}},"featureSchema":{"$ref":"#/components/schemas/FrozenFeatureSchema"},"conventions":{"type":"object","properties":{"version":{"type":"string","enum":["embodiflow-data-conventions/v1"]},"frames":{"$ref":"#/components/schemas/Record"},"features":{"$ref":"#/components/schemas/Record"},"sourceClocks":{"$ref":"#/components/schemas/Record"},"stereoPairs":{"type":"array","items":{"type":"object","properties":{"left":{"type":"string"},"right":{"type":"string"},"baselineM":{"type":"number"},"source":{"type":"string","enum":["unknown","estimated","device"]}},"required":["left","right","baselineM","source"]},"nullable":true},"timeOffsets":{"$ref":"#/components/schemas/Record","nullable":true}},"required":["version","frames","features","sourceClocks"]},"labelPolicy":{"type":"string","enum":["current","approved_only"]},"episodeCount":{"type":"number"},"trainCount":{"type":"number"},"valCount":{"type":"number"},"testCount":{"type":"number"},"totalDurationNs":{"type":"number"},"digest":{"type":"string"},"dataContractDigest":{"type":"string","nullable":true},"ref":{"type":"string"},"url":{"type":"string"},"aliases":{"type":"array","items":{"type":"string"}},"createdAt":{"type":"string"},"createdByDisplayName":{"type":"string","nullable":true},"dataKind":{"type":"string","enum":["human","robot","video"]},"updatedAt":{"type":"string"},"rowVersion":{"type":"number"},"excluded":{"$ref":"#/components/schemas/ProjectVersionExcludedCounts"},"storage":{"$ref":"#/components/schemas/ProjectVersionStorageDto"}},"required":["id","projectId","number","name","readmeMd","licence","split","preprocessing","featureSchema","conventions","labelPolicy","episodeCount","trainCount","valCount","testCount","totalDurationNs","digest","dataContractDigest","ref","url","aliases","createdAt","createdByDisplayName","dataKind","updatedAt","rowVersion","excluded","storage"]},"ProjectVersionExcludedCounts":{"type":"object","properties":{"failing":{"type":"number"},"incomplete":{"type":"number"},"deleted":{"type":"number"},"notAnonymized":{"type":"number"},"noApprovedRevision":{"type":"number"},"excludedFlag":{"type":"number"}},"required":["failing","incomplete","deleted","notAnonymized","noApprovedRevision","excludedFlag"]},"ProjectVersionFeatureCoverageDto":{"type":"object","properties":{"feature":{"type":"string"},"presentCount":{"type":"number"},"missingCount":{"type":"number"},"missingRecordingIds":{"type":"array","items":{"type":"string"}}},"required":["feature","presentCount","missingCount","missingRecordingIds"]},"ProjectVersionPreviewDto":{"type":"object","properties":{"episodeCount":{"type":"number"},"unreviewedAiEpisodeCount":{"type":"number"},"trainCount":{"type":"number"},"valCount":{"type":"number"},"testCount":{"type":"number"},"totalDurationNs":{"type":"number"},"schemaGroups":{"type":"array","items":{"$ref":"#/components/schemas/VersionDataContractGroup"}},"features":{"type":"array","items":{"$ref":"#/components/schemas/ProjectVersionFeatureCoverageDto"}},"excluded":{"$ref":"#/components/schemas/ProjectVersionExcludedCounts"},"warnings":{"type":"array","items":{"type":"string"}}},"required":["episodeCount","unreviewedAiEpisodeCount","trainCount","valCount","testCount","totalDurationNs","schemaGroups","features","excluded","warnings"]},"ProjectVersionStorageDto":{"type":"object","properties":{"logicalBytes":{"type":"number"},"storedBytes":{"type":"number"},"treeState":{"type":"string","enum":["none","failed","ready","preparing"]}},"required":["logicalBytes","storedBytes","treeState"]},"ProvisionStorageBucketBodyDto":{"type":"object","properties":{"provider":{"type":"string"},"regionCode":{"type":"string"}}},"PublishPipelineDefinitionRevisionBodyDto":{"type":"object","properties":{"setAsDefault":{"type":"boolean","nullable":true}}},"PublishTeamDataFormatBodyDto":{"type":"object","properties":{"sampleRunId":{"type":"string","description":"A `passed` sample run of this format's current converter.","format":"uuid"}},"required":["sampleRunId"]},"PublishedAuthProblem":{"type":"object","description":"RFC 7807 problem for the published authentication and authorization error slice (ADR 0146 §8). ADR 0156 W3 documents the rest of the catalog on BadRequest, NotFound, Conflict, UnprocessableEntity, and PreconditionFailed, plus per-operation enumerated codes.","required":["type","title","status","code","message","requestId"],"properties":{"type":{"type":"string","example":"https://api.embodiflow.com/errors/token-expired"},"title":{"type":"string"},"status":{"type":"integer"},"code":{"type":"string","enum":["TOKEN_MALFORMED","TOKEN_NOT_FOUND","TOKEN_EXPIRED","TOKEN_REVOKED","UNAUTHORIZED","SESSION_EXPIRED","ACTIVATION_REQUIRED","MFA_REQUIRED","PERMISSION_DENIED","PERMISSION_NOT_DECLARED","FORBIDDEN","MEMBERSHIP_NOT_FOUND","MEMBERSHIP_DISABLED","MEMBERSHIP_EXPIRED","PROJECT_MEMBERSHIP_EXPIRED","RATE_LIMITED"]},"message":{"type":"string"},"requestId":{"type":"string","format":"uuid"},"details":{"type":"array","items":{"type":"object","properties":{"field":{"type":"string"},"reason":{"type":"string"}}}},"extensions":{"type":"object","additionalProperties":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]}}}},"PurgeTrashItemBodyDto":{"type":"object","properties":{"confirmName":{"type":"string"}}},"PutAnnotationSchemaBodyDto":{"type":"object","properties":{"version":{"type":"number","enum":[1]},"languages":{"type":"array","items":{"type":"string"},"enum":["en","zh"]},"fields":{"$ref":"#/components/schemas/AnnotationSchemaFieldsDto"},"subtaskLabels":{"type":"array","items":{"$ref":"#/components/schemas/LocalizedTextDto"}},"attributes":{"type":"array","items":{"$ref":"#/components/schemas/AnnotationAttributeDto"}},"requireReview":{"type":"boolean"},"allowEpisodeOverlap":{"type":"boolean"}},"required":["version","languages","fields","subtaskLabels","attributes","requireReview","allowEpisodeOverlap"]},"PutWorkflowDefinitionBodyDto":{"type":"object","properties":{"spec":{"type":"object","additionalProperties":true}},"required":["spec"]},"QualityBaselineListResponseDto":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/QualityBaselineSummaryDto"}},"nextPageToken":{"type":"string"},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]}},"required":["data","meta"]},"QualityBaselineSeriesPointDto":{"type":"object","properties":{"observedAt":{"type":"string"},"value":{"type":"number"},"origin":{"type":"string"},"datasetId":{"type":"string"},"uploadBatchId":{"type":"string"},"robotType":{"type":"string"}},"required":["observedAt","value","origin"]},"QualityBaselineSeriesQueryDto":{"type":"object","properties":{"windowFrom":{"type":"string","nullable":true},"windowTo":{"type":"string","nullable":true},"datasetId":{"type":"string","nullable":true},"robotType":{"type":"string","nullable":true}}},"QualityBaselineSeriesResponseDto":{"type":"object","properties":{"checkId":{"type":"string"},"windowFrom":{"type":"string"},"windowTo":{"type":"string"},"baseline":{"$ref":"#/components/schemas/QualityBaselineSummaryDto"},"points":{"type":"array","items":{"$ref":"#/components/schemas/QualityBaselineSeriesPointDto"}}},"required":["checkId","windowFrom","windowTo","baseline","points"]},"QualityBaselineSummaryDto":{"type":"object","properties":{"checkId":{"type":"string"},"bindingIdentity":{"type":"string","nullable":true},"sampleCount":{"type":"number"},"status":{"type":"string"},"reason":{"type":"string","nullable":true},"median":{"type":"number","nullable":true},"mad":{"type":"number","nullable":true},"currentRate":{"type":"number","nullable":true},"verdict":{"type":"string","nullable":true},"direction":{"type":"string","enum":["none","up","down"],"nullable":true}},"required":["checkId","bindingIdentity","sampleCount","status","reason","median","mad","currentRate","verdict","direction"]},"QualityFindingDto":{"type":"object","properties":{"id":{"type":"string"},"checkId":{"type":"string"},"bindingIdentity":{"type":"string"},"ruleVersion":{"type":"number"},"family":{"type":"string"},"stage":{"type":"string"},"costTier":{"type":"string"},"origin":{"type":"string"},"scopeType":{"type":"string"},"scopeRef":{"type":"string"},"datasetVersionFileId":{"type":"string","nullable":true},"datasetVersionItemId":{"type":"string","nullable":true},"status":{"type":"string"},"severity":{"type":"string"},"blocking":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"observedValue":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true},"threshold":{"$ref":"#/components/schemas/Record","nullable":true},"elementCount":{"type":"number","nullable":true},"violatingCount":{"type":"number","nullable":true},"violatingFraction":{"type":"number","nullable":true},"messageKey":{"type":"string"},"message":{"type":"string","nullable":true},"messageParams":{"$ref":"#/components/schemas/Record","nullable":true},"reasonCode":{"type":"string","nullable":true},"workflowRunId":{"type":"string"},"policySnapshotHash":{"type":"string"},"createdAt":{"type":"string"}},"required":["id","checkId","bindingIdentity","ruleVersion","family","stage","costTier","origin","scopeType","scopeRef","datasetVersionFileId","datasetVersionItemId","status","severity","blocking","observedValue","threshold","elementCount","violatingCount","violatingFraction","messageKey","message","messageParams","reasonCode","workflowRunId","policySnapshotHash","createdAt"]},"QualityGateCauseDto":{"type":"object","properties":{"findingId":{"type":"string"},"checkId":{"type":"string"},"bindingIdentity":{"type":"string"},"scopeType":{"type":"string"},"scopeRef":{"type":"string"},"datasetVersionFileId":{"type":"string","nullable":true},"datasetVersionItemId":{"type":"string","nullable":true},"severity":{"type":"string"},"message":{"type":"string","nullable":true},"workflowRunId":{"type":"string"}},"required":["findingId","checkId","bindingIdentity","scopeType","scopeRef","datasetVersionFileId","datasetVersionItemId","severity","message","workflowRunId"]},"QualityGateQueryDto":{"type":"object","properties":{"runId":{"type":"string","format":"uuid","nullable":true}}},"QualityGateResponseDto":{"type":"object","properties":{"datasetVersionId":{"type":"string"},"outcome":{"type":"string","enum":["blocked","passed","not_evaluated"]},"notEvaluatedReason":{"type":"string","enum":["never_evaluated","no_verdict_findings"],"nullable":true},"workflowRunId":{"type":"string","nullable":true},"policySnapshotHash":{"type":"string","nullable":true},"blockedFileIds":{"type":"array","items":{"type":"string"}},"blockedEpisodeCount":{"type":"number"},"blockingFindingCount":{"type":"number"},"causes":{"type":"array","items":{"$ref":"#/components/schemas/QualityGateCauseDto"}},"estimatedSavings":{"type":"object","properties":{"label":{"type":"string","enum":["estimate"]},"basis":{"type":"string","enum":["blocked-files"]},"fileCount":{"type":"number"},"episodesBlocked":{"type":"number"},"totalBytes":{"type":"number"},"canonicalizeMinutes":{"type":"number"},"annotateMinutes":{"type":"number"}},"required":["label","basis","fileCount","totalBytes","canonicalizeMinutes","annotateMinutes"]}},"required":["datasetVersionId","outcome","notEvaluatedReason","workflowRunId","policySnapshotHash","blockedFileIds","blockedEpisodeCount","blockingFindingCount","causes"]},"QualityHealthBucketDto":{"type":"object","properties":{"lower":{"type":"number"},"upper":{"type":"number"},"label":{"type":"string"},"count":{"type":"number"},"filter":{"type":"object","additionalProperties":true,"nullable":true,"description":"Partial EpisodeFilter for drill-down. Null when the bar is not clickable."}},"required":["count"]},"QualityHealthCategoricalBucket":{"type":"object","properties":{"label":{"type":"string"},"count":{"type":"number"},"filter":{"allOf":[{"type":"object","properties":{"verdict":{"type":"string","enum":["warning","fail","incomplete","pass","not_checked"],"nullable":true},"failingCheck":{"type":"string","nullable":true},"recordingId":{"type":"string","nullable":true},"collectionOrderId":{"type":"string","nullable":true},"collectionTaskId":{"type":"string","nullable":true},"collectorId":{"type":"string","nullable":true},"uploadedAfter":{"type":"string","nullable":true},"uploadedBefore":{"type":"string","nullable":true},"task":{"type":"string","nullable":true},"taskExact":{"type":"string","nullable":true},"taskMissing":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true},"outcome":{"type":"string","enum":["success","failure","partial"],"nullable":true},"tag":{"type":"string","nullable":true},"attribute":{"$ref":"#/components/schemas/Record","nullable":true},"splitTag":{"type":"string","enum":["test","val","train"],"nullable":true},"versionSplit":{"type":"string","enum":["test","val","train"],"nullable":true},"durationMin":{"type":"number","nullable":true},"durationMax":{"type":"number","nullable":true},"durationMaxExclusive":{"type":"number","nullable":true},"subtaskCountMin":{"type":"number","nullable":true},"subtaskCountMax":{"type":"number","nullable":true},"subtaskCountMaxExclusive":{"type":"number","nullable":true},"cameraCountMin":{"type":"number","nullable":true},"cameraCountMax":{"type":"number","nullable":true},"cameraCountMaxExclusive":{"type":"number","nullable":true},"fpsMin":{"type":"number","nullable":true},"fpsMax":{"type":"number","nullable":true},"fpsMaxExclusive":{"type":"number","nullable":true},"idleFractionMin":{"type":"number","nullable":true},"idleFractionMax":{"type":"number","nullable":true},"idleFractionMaxExclusive":{"type":"number","nullable":true},"sceneId":{"type":"string","nullable":true},"labelState":{"type":"string","enum":["approved","suggested","labeled","rejected"],"nullable":true},"hasSubtasks":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true},"annotationJobId":{"type":"string","nullable":true},"sort":{"type":"string","enum":["verdict","duration","upload_date","recording_name"],"nullable":true},"order":{"type":"string","enum":["asc","desc"],"nullable":true}}},{"type":"object","properties":{"episodeCountMin":{"type":"number"},"episodeCountMax":{"type":"number"},"episodeCountMaxExclusive":{"type":"number"}}}],"nullable":true}},"required":["label","count","filter"]},"QualityHealthDataDto":{"type":"object","properties":{"series":{"type":"array","items":{"$ref":"#/components/schemas/QualityHealthSeriesDto"}}},"required":["series"]},"QualityHealthDto":{"type":"object","properties":{"series":{"type":"array","items":{"$ref":"#/components/schemas/QualityHealthSeriesDto"}}},"required":["series"]},"QualityHealthNumericBucket":{"type":"object","properties":{"lower":{"type":"number"},"upper":{"type":"number"},"count":{"type":"number"},"filter":{"allOf":[{"type":"object","properties":{"verdict":{"type":"string","enum":["warning","fail","incomplete","pass","not_checked"],"nullable":true},"failingCheck":{"type":"string","nullable":true},"recordingId":{"type":"string","nullable":true},"collectionOrderId":{"type":"string","nullable":true},"collectionTaskId":{"type":"string","nullable":true},"collectorId":{"type":"string","nullable":true},"uploadedAfter":{"type":"string","nullable":true},"uploadedBefore":{"type":"string","nullable":true},"task":{"type":"string","nullable":true},"taskExact":{"type":"string","nullable":true},"taskMissing":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true},"outcome":{"type":"string","enum":["success","failure","partial"],"nullable":true},"tag":{"type":"string","nullable":true},"attribute":{"$ref":"#/components/schemas/Record","nullable":true},"splitTag":{"type":"string","enum":["test","val","train"],"nullable":true},"versionSplit":{"type":"string","enum":["test","val","train"],"nullable":true},"durationMin":{"type":"number","nullable":true},"durationMax":{"type":"number","nullable":true},"durationMaxExclusive":{"type":"number","nullable":true},"subtaskCountMin":{"type":"number","nullable":true},"subtaskCountMax":{"type":"number","nullable":true},"subtaskCountMaxExclusive":{"type":"number","nullable":true},"cameraCountMin":{"type":"number","nullable":true},"cameraCountMax":{"type":"number","nullable":true},"cameraCountMaxExclusive":{"type":"number","nullable":true},"fpsMin":{"type":"number","nullable":true},"fpsMax":{"type":"number","nullable":true},"fpsMaxExclusive":{"type":"number","nullable":true},"idleFractionMin":{"type":"number","nullable":true},"idleFractionMax":{"type":"number","nullable":true},"idleFractionMaxExclusive":{"type":"number","nullable":true},"sceneId":{"type":"string","nullable":true},"labelState":{"type":"string","enum":["approved","suggested","labeled","rejected"],"nullable":true},"hasSubtasks":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true},"annotationJobId":{"type":"string","nullable":true},"sort":{"type":"string","enum":["verdict","duration","upload_date","recording_name"],"nullable":true},"order":{"type":"string","enum":["asc","desc"],"nullable":true}}},{"type":"object","properties":{"episodeCountMin":{"type":"number"},"episodeCountMax":{"type":"number"},"episodeCountMaxExclusive":{"type":"number"}}}],"nullable":true}},"required":["lower","upper","count","filter"]},"QualityHealthSeriesDto":{"type":"object","properties":{"key":{"type":"string","enum":["duration","episodes_per_recording","fps","cameras_per_episode","subtasks_per_episode","action_range","state_range","gripper_ratio","idle_ratio","task_frequency","outcome_ratio","hand_visibility","hand_pose_coverage","head_motion_speed","hours_by_collector","hours_by_scene","split"]},"unit":{"type":"string"},"buckets":{"type":"array","items":{"$ref":"#/components/schemas/QualityHealthBucketDto"}},"notMeasured":{"type":"number"}},"required":["key","unit","buckets","notMeasured"]},"QualityInspectionReportSummaryDto":{"type":"object","properties":{"overallStatus":{"type":"string","enum":["failed","warning","passed"]},"passedCount":{"type":"number"},"warningCount":{"type":"number"},"failedCount":{"type":"number"}},"required":["overallStatus","passedCount","warningCount","failedCount"]},"QualityPolicyCatalogEntryDto":{"type":"object","properties":{"checkId":{"type":"string"},"bindingIdentity":{"type":"string"},"ruleVersion":{"type":"number"},"family":{"type":"string"},"stage":{"type":"string"},"costTier":{"type":"string"},"scope":{"type":"string"},"appliesTo":{"type":"array","items":{"type":"string"}},"origin":{"type":"string","enum":["tenant","platform"]},"previewSupported":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"defaultSeverity":{"type":"string"},"defaultBlocking":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"defaultEnabled":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"defaultParams":{"$ref":"#/components/schemas/Record"},"messageKey":{"type":"string"},"sourceRef":{"type":"string"},"effective":{"type":"object","properties":{"enabled":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"severity":{"type":"string"},"blocking":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"params":{"$ref":"#/components/schemas/Record"},"sources":{"type":"object","properties":{"enabled":{"type":"string","enum":["tenant","project","platform"]},"severity":{"type":"string","enum":["tenant","project","platform"]},"blocking":{"type":"string","enum":["tenant","project","platform"]},"params":{"$ref":"#/components/schemas/Record"}},"required":["enabled","severity","blocking","params"]}},"required":["enabled","severity","blocking","params","sources"]}},"required":["checkId","bindingIdentity","ruleVersion","family","stage","costTier","scope","appliesTo","origin","previewSupported","defaultSeverity","defaultBlocking","defaultEnabled","defaultParams","messageKey","sourceRef","effective"]},"QualityResolvedCheckBindingDto":{"type":"object","properties":{"checkId":{"type":"string"},"bindingIdentity":{"type":"string"},"ruleVersion":{"type":"number"},"enabled":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"severity":{"type":"string"},"blocking":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"params":{"$ref":"#/components/schemas/Record"},"sources":{"type":"object","properties":{"enabled":{"type":"string","enum":["tenant","project","platform"]},"severity":{"type":"string","enum":["tenant","project","platform"]},"blocking":{"type":"string","enum":["tenant","project","platform"]},"params":{"$ref":"#/components/schemas/Record"}},"required":["enabled","severity","blocking","params"]}},"required":["checkId","bindingIdentity","ruleVersion","enabled","severity","blocking","params","sources"]},"QualityResolvedPolicyDto":{"type":"object","properties":{"maxCostTier":{"type":"string"},"maxCostTierSource":{"type":"string","enum":["tenant","project","platform"]},"bindings":{"type":"array","items":{"$ref":"#/components/schemas/QualityResolvedCheckBindingDto"}},"snapshotHash":{"type":"string"}},"required":["maxCostTier","maxCostTierSource","bindings","snapshotHash"]},"QualityRuleCatalogResponseDto":{"type":"object","properties":{"checks":{"type":"array","items":{"$ref":"#/components/schemas/QualityPolicyCatalogEntryDto"}},"maxCostTier":{"type":"string"},"maxCostTierSource":{"type":"string","enum":["tenant","project","platform"]},"snapshotHash":{"type":"string"}},"required":["checks","maxCostTier","maxCostTierSource","snapshotHash"]},"QualityRuleSetPreviewCheckDto":{"type":"object","properties":{"checkId":{"type":"string"},"bindingIdentity":{"type":"string"},"ruleVersion":{"type":"number"},"family":{"type":"string"},"enabled":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"severity":{"type":"string"},"blocking":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"verdict":{"type":"string","enum":["warn","fail","pass"],"nullable":true},"nonVerdictReason":{"type":"string","nullable":true},"status":{"type":"string"},"message":{"type":"string","nullable":true},"findingCount":{"type":"number"},"previewSupported":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["checkId","bindingIdentity","ruleVersion","family","enabled","severity","blocking","verdict","nonVerdictReason","status","message","findingCount","previewSupported"]},"QualityRuleSetPreviewDiagnosticDto":{"type":"object","properties":{"severity":{"type":"string","enum":["warning","info","error"]},"code":{"type":"string"},"message":{"type":"string"},"details":{"$ref":"#/components/schemas/Record","nullable":true}},"required":["severity","code","message"]},"QualityRuleSetPreviewFindingDto":{"type":"object","properties":{"datasetVersionFileId":{"type":"string"},"logicalPath":{"type":"string"},"qualityStatus":{"type":"string","enum":["failed","warning","unchecked","passed"]},"details":{"type":"array","items":{"$ref":"#/components/schemas/Record"}}},"required":["datasetVersionFileId","logicalPath","qualityStatus","details"]},"QualityRuleSetPreviewResultDto":{"type":"object","properties":{"qualityRuleSetId":{"type":"string"},"projectId":{"type":"string"},"datasetVersionId":{"type":"string"},"usedDraft":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"summary":{"$ref":"#/components/schemas/QualityRuleSetPreviewSummaryDto"},"findings":{"type":"array","items":{"$ref":"#/components/schemas/QualityRuleSetPreviewFindingDto"}},"diagnostics":{"type":"array","items":{"$ref":"#/components/schemas/QualityRuleSetPreviewDiagnosticDto"}},"versionFindings":{"type":"array","items":{"$ref":"#/components/schemas/Record"}},"policySnapshotHash":{"type":"string"},"metricsDocumentSource":{"type":"string","nullable":true},"draftPolicyError":{"type":"string","nullable":true},"checks":{"type":"array","items":{"$ref":"#/components/schemas/QualityRuleSetPreviewCheckDto"}}},"required":["qualityRuleSetId","projectId","datasetVersionId","usedDraft","summary","findings","diagnostics","versionFindings"]},"QualityRuleSetPreviewSummaryDto":{"type":"object","properties":{"overallStatus":{"type":"string","enum":["failed","warning","unchecked","passed"]},"passedCount":{"type":"number"},"warningCount":{"type":"number"},"failedCount":{"type":"number"},"fileCount":{"type":"number"},"visibilityStatus":{"type":"string","enum":["active","soft_hidden"]},"notEvaluatedCount":{"type":"number"}},"required":["overallStatus","passedCount","warningCount","failedCount","fileCount","visibilityStatus"]},"QualityRuleSetSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string"},"name":{"type":"string"},"status":{"type":"string"},"specJson":{"$ref":"#/components/schemas/Record"},"publishedAt":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"scopeLevel":{"type":"string","enum":["tenant","project"]},"revision":{"type":"number"},"resolved":{"$ref":"#/components/schemas/QualityResolvedPolicyDto"}},"required":["id","tenantId","projectId","name","status","specJson","publishedAt","createdAt","updatedAt"]},"QualitySampleRef":{"type":"object","properties":{"episodeIndex":{"type":"number","nullable":true},"startFrame":{"type":"number","nullable":true},"endFrame":{"type":"number","nullable":true},"topic":{"type":"string","nullable":true},"feature":{"type":"string","nullable":true},"logicalPath":{"type":"string","nullable":true}}},"QualitySummaryDto":{"type":"object","properties":{"episodes":{"$ref":"#/components/schemas/QualityVerdictCounts"},"recordings":{"$ref":"#/components/schemas/QualityVerdictCounts"},"notAnonymizedRecordings":{"type":"number"},"notSegmentedRecordings":{"type":"number"},"rejected":{"type":"object","properties":{"count":{"type":"number"},"savedMinutes":{"type":"number"}},"required":["count","savedMinutes"]},"trend":{"type":"array","items":{"$ref":"#/components/schemas/QualitySummaryTrendPoint"}}},"required":["episodes","recordings","notAnonymizedRecordings","notSegmentedRecordings","rejected","trend"]},"QualitySummaryTrendPoint":{"type":"object","properties":{"day":{"type":"string"},"uploaded":{"type":"number"},"pass":{"type":"number"},"warning":{"type":"number"},"fail":{"type":"number"},"incomplete":{"type":"number"},"notChecked":{"type":"number"}},"required":["day","uploaded","pass","warning","fail","incomplete","notChecked"]},"QualityVerdictCounts":{"type":"object","properties":{"pass":{"type":"number"},"warning":{"type":"number"},"fail":{"type":"number"},"incomplete":{"type":"number"},"notChecked":{"type":"number"}},"required":["pass","warning","fail","incomplete","notChecked"]},"QualityViolationInterval":{"type":"object","properties":{"startSeconds":{"type":"number"},"endSeconds":{"type":"number"},"startFrame":{"type":"number","nullable":true},"endFrame":{"type":"number","nullable":true}},"required":["startSeconds","endSeconds"]},"Record":{"type":"object","additionalProperties":{"type":"object","additionalProperties":true}},"RecordingCaptureSessionDto":{"type":"object","properties":{"recordingId":{"type":"string"},"captureSessionId":{"type":"string","nullable":true},"sessionRole":{"type":"string","enum":["other","calibration","mapping","gripper_calibration","demo"],"nullable":true}},"required":["recordingId","captureSessionId","sessionRole"]},"RecordingCaptureSessionEnvelopeDto":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/RecordingCaptureSessionResponseDto"}},"required":["data"]},"RecordingCaptureSessionResponseDto":{"type":"object","properties":{"recordingId":{"type":"string","format":"uuid"},"captureSessionId":{"type":"string","nullable":true,"format":"uuid"},"sessionRole":{"type":"string","nullable":true,"enum":["mapping","calibration","gripper_calibration","demo","other",null]}},"required":["recordingId","captureSessionId","sessionRole"]},"RecordingDto":{"type":"object","properties":{"id":{"type":"string"},"projectId":{"type":"string"},"name":{"type":"string"},"tags":{"type":"array","items":{"type":"string"}},"sourceFormat":{"type":"string","nullable":true},"source":{"type":"string","enum":["upload","collection","hub_import"]},"huggingFace":{"$ref":"#/components/schemas/RecordingHubSourceDto"},"status":{"$ref":"#/components/schemas/RecordingStatusDto"},"segmentationState":{"$ref":"#/components/schemas/RecordingSegmentationStateDto"},"privacyState":{"type":"string","enum":["pending","anonymized","refused"],"nullable":true},"privacyRequirement":{"type":"string","enum":["required","not_required"]},"privacyGate":{"type":"string","enum":["human","non_human"]},"durationNs":{"type":"number","nullable":true},"collector":{"nullable":true},"posterUrl":{"type":"string","nullable":true},"latestReadyProcessingResultId":{"type":"string","nullable":true},"processedWith":{"type":"object","properties":{"workflowName":{"type":"string"},"revision":{"type":"number"}},"required":["workflowName","revision"],"nullable":true},"rigProfile":{"type":"object","properties":{"name":{"type":"string"},"revisionId":{"type":"string","nullable":true}},"required":["name","revisionId"],"nullable":true},"captureLabels":{"$ref":"#/components/schemas/CaptureLabelsDto"},"rejectedSavedMinutes":{"type":"number","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","projectId","name","tags","sourceFormat","source","status","segmentationState","privacyState","durationNs","collector","posterUrl","latestReadyProcessingResultId","processedWith","rigProfile","rejectedSavedMinutes","createdAt","updatedAt"]},"RecordingHubSourceDto":{"type":"object","properties":{"type":{"type":"string","enum":["hugging_face"]},"repoId":{"type":"string"},"revision":{"type":"string"},"commitSha":{"type":"string","nullable":true},"subPath":{"type":"string","nullable":true},"licence":{"type":"string","nullable":true},"gated":{"type":"string","enum":["none","manual","auto"]},"sourceFormat":{"type":"string","enum":["lerobot-v3","lerobot-v21"],"nullable":true},"progress":{"type":"object","properties":{"filesDone":{"type":"number"},"filesTotal":{"type":"number"},"bytesDone":{"type":"number"},"bytesTotal":{"type":"number"}},"required":["filesDone","filesTotal","bytesDone","bytesTotal"]},"failureReason":{"type":"string","enum":["HF_REPO_NOT_FOUND","HF_ACCESS_DENIED","HF_FORMAT_UNSUPPORTED","HF_TRANSFER_FAILED","HF_STORAGE_LIMIT"]}},"required":["type","repoId","revision","commitSha","subPath","licence","gated","sourceFormat","progress"]},"RecordingPrivacyEvidenceDto":{"type":"object","properties":{"privacyState":{"type":"string","enum":["pending","anonymized","refused"],"nullable":true},"detector":{"type":"string","nullable":true},"version":{"type":"string","nullable":true},"thresholds":{"$ref":"#/components/schemas/Record","nullable":true},"perCameraCounts":{"$ref":"#/components/schemas/Record","nullable":true},"coverage":{"type":"number","nullable":true},"reviewFrameUrls":{"type":"array","items":{"type":"string"}},"spotCheck":{"$ref":"#/components/schemas/RecordingPrivacySpotCheckDto","nullable":true}},"required":["privacyState","detector","version","thresholds","perCameraCounts","coverage","reviewFrameUrls","spotCheck"]},"RecordingPrivacySpotCheckDto":{"type":"object","properties":{"confirmedBy":{"type":"string"},"confirmedAt":{"type":"string"}},"required":["confirmedBy","confirmedAt"]},"RecordingSegmentationStateDto":{"type":"object","properties":{"state":{"type":"string","enum":["not_segmented","proposed","reviewed"]},"episodeCount":{"type":"number"}},"required":["state","episodeCount"]},"RecordingStatusDto":{"type":"object","properties":{"lifecycle":{"type":"string","enum":["failed","processing","ready","empty","uploading","stalled"]},"quality":{"type":"string","enum":["warn","error","fail","pass","not_applicable","not_evaluated"]},"qualityCheckId":{"type":"string","nullable":true},"stepId":{"type":"string","nullable":true},"noProgressSince":{"type":"string","nullable":true},"failure":{"$ref":"#/components/schemas/FailureReasonDto","nullable":true},"runId":{"type":"string","nullable":true}},"required":["lifecycle","quality","qualityCheckId","stepId","failure","runId"]},"RegisterAlgorithmVersionBodyDto":{"type":"object","properties":{"package":{"type":"object","additionalProperties":true},"pullSecret":{"type":"string","nullable":true},"imageDigest":{"type":"string","nullable":true}},"required":["package"]},"RegisterModelVersionFromTrainingJobBodyDto":{"type":"object","properties":{"trainingJobId":{"type":"string","format":"uuid"},"name":{"type":"string"},"handle":{"type":"string"}},"required":["trainingJobId","name"]},"RegistrationCompleteBodyDto":{"type":"object","properties":{"token":{"type":"string"},"password":{"type":"string"},"displayName":{"type":"string"}},"required":["token","password"]},"RegistrationInvitationBodyDto":{"type":"object","properties":{"email":{"type":"string","format":"email"},"displayName":{"type":"string"}},"required":["email"]},"RegistrationInvitationCreatedDto":{"type":"object","properties":{"message":{"type":"string"},"completionUrl":{"type":"string"}},"required":["message"]},"RegistrationValidateQueryDto":{"type":"object","properties":{"token":{"type":"string"}},"required":["token"]},"RegistryTokenCredentialDto":{"type":"object","properties":{"registry":{"type":"string"},"repository":{"type":"string"},"username":{"type":"string"},"password":{"type":"string"},"expiresAt":{"type":"string"}},"required":["registry","repository","username","password","expiresAt"]},"RemoveFormatSamplesResult":{"type":"object","properties":{"data":{"type":"object","properties":{"formatId":{"type":"string"},"removedRecordings":{"type":"number"},"removedBatches":{"type":"number"}},"required":["formatId","removedRecordings","removedBatches"]}},"required":["data"]},"RepairTaskAssigneeDto":{"type":"object","properties":{"projectMembershipId":{"type":"string"},"membershipId":{"type":"string"},"displayName":{"type":"string","nullable":true}},"required":["projectMembershipId","membershipId","displayName"]},"RepairTaskDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string"},"scopeType":{"type":"string","enum":["dataset","project","dataset_version"]},"datasetId":{"type":"string","nullable":true},"datasetVersionId":{"type":"string","nullable":true},"sourceType":{"type":"string","enum":["health-check","workflow-run","workflow_item","quality-rule","annotation-gap","export-job","policy-gate","collection-delivery-batch","collection-submission"]},"sourceId":{"type":"string"},"title":{"type":"string","nullable":true},"description":{"type":"string","nullable":true},"severity":{"type":"string","enum":["warning","info","blocking"]},"status":{"type":"string","enum":["in_progress","open","resolved","waived"]},"assignee":{"$ref":"#/components/schemas/RepairTaskAssigneeDto","nullable":true},"dueAt":{"type":"string","nullable":true},"resolution":{"type":"string","enum":["fixed","waived","duplicate","not_reproducible"],"nullable":true},"waiveReason":{"type":"string","nullable":true},"waivedAt":{"type":"string","nullable":true},"waivedBy":{"$ref":"#/components/schemas/RepairTaskWaivedByDto","nullable":true},"resolvedAt":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"deduplicated":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["id","tenantId","projectId","scopeType","datasetId","datasetVersionId","sourceType","sourceId","title","description","severity","status","assignee","dueAt","resolution","waiveReason","waivedAt","waivedBy","resolvedAt","createdAt","updatedAt"]},"RepairTaskGenerationBodyDto":{"type":"object","properties":{"blockerCodes":{"type":"array","items":{"type":"string","maxLength":256}}}},"RepairTaskGenerationItemDto":{"type":"object","properties":{"blockerCode":{"type":"string"},"outcome":{"type":"string","enum":["created","skipped","deduplicated"]},"repairTask":{"$ref":"#/components/schemas/RepairTaskDto","nullable":true},"skipReason":{"type":"string","nullable":true}},"required":["blockerCode","outcome","repairTask","skipReason"]},"RepairTaskGenerationRequestResponseDto":{"type":"object","properties":{"datasetVersionId":{"type":"string"},"items":{"type":"array","items":{"$ref":"#/components/schemas/RepairTaskGenerationItemDto"}},"createdCount":{"type":"number"},"deduplicatedCount":{"type":"number"},"skippedCount":{"type":"number"},"health":{"$ref":"#/components/schemas/DatasetVersionHealthDto"}},"required":["datasetVersionId","items","createdCount","deduplicatedCount","skippedCount","health"]},"RepairTaskWaivedByDto":{"type":"object","properties":{"membershipId":{"type":"string"},"displayName":{"type":"string","nullable":true}},"required":["membershipId","displayName"]},"ReplaceAnnotationDraftsBodyDto":{"type":"object","properties":{"datasetVersionId":{"type":"string","nullable":true,"description":"ADR 0172 D6 optional version scope; additive, omission keeps legacy behavior.","format":"uuid"},"timeRangeAnnotations":{"type":"array","items":{"$ref":"#/components/schemas/CreateDatasetTimeRangeAnnotationBodyDto"}},"frameSpatialAnnotations":{"type":"array","items":{"$ref":"#/components/schemas/CreateDatasetFrameSpatialAnnotationBodyDto"}}},"required":["timeRangeAnnotations","frameSpatialAnnotations"]},"ReplaceAnnotationDraftsResponseDto":{"type":"object","properties":{"timeRangeAnnotations":{"type":"array","items":{"$ref":"#/components/schemas/DatasetTimeRangeAnnotationDto"}},"frameSpatialAnnotations":{"type":"array","items":{"$ref":"#/components/schemas/DatasetFrameSpatialAnnotationDto"}}},"required":["timeRangeAnnotations","frameSpatialAnnotations"]},"ReplaceNotificationPreferencesBodyDto":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/NotificationPreferenceItemBodyDto"}}},"required":["items"]},"ReplaceWorkflowLayoutBodyDto":{"type":"object","properties":{"layout":{"type":"object","additionalProperties":true}},"required":["layout"]},"ReplaceWorkflowRevisionBodyDto":{"type":"object","properties":{"spec":{"type":"object","additionalProperties":true},"layout":{"type":"object","additionalProperties":true}},"required":["spec"]},"ReproducibilityArtifactSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"artifactType":{"type":"string"},"storageObjectId":{"type":"string","nullable":true},"manifestJson":{"$ref":"#/components/schemas/Record","nullable":true},"storageObject":{"$ref":"#/components/schemas/ReproducibilityStorageObjectDto","nullable":true}},"required":["id","artifactType","storageObjectId","manifestJson","storageObject"]},"ReproducibilityBundleDto":{"type":"object","properties":{"contractVersion":{"type":"string","enum":["embodiflow-training-repro-bundle/v1"]},"sourceType":{"type":"string","enum":["dataset_version","training_job"]},"sourceId":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string"},"data":{"$ref":"#/components/schemas/ReproducibilityDataInputDto"},"code":{"$ref":"#/components/schemas/ReproducibilityCodeInputDto"},"config":{"$ref":"#/components/schemas/ReproducibilityConfigDto"},"seed":{"$ref":"#/components/schemas/ReproducibilitySeedDto"},"split":{"$ref":"#/components/schemas/ReproducibilitySplitDto"},"lineage":{"$ref":"#/components/schemas/ReproducibilityLineageSummaryDto"},"readiness":{"$ref":"#/components/schemas/ReproducibilityBundleReadinessDto"},"generatedAt":{"type":"string"}},"required":["contractVersion","sourceType","sourceId","tenantId","projectId","data","code","config","seed","split","lineage","readiness","generatedAt"]},"ReproducibilityBundleReadinessDto":{"type":"object","properties":{"ready":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"warnings":{"type":"array","items":{"type":"string"}},"missingElements":{"type":"array","items":{"type":"string"}}},"required":["ready","warnings","missingElements"]},"ReproducibilityCodeInputDto":{"type":"object","properties":{"codebaseVersion":{"type":"string","nullable":true},"imageRef":{"type":"string","nullable":true},"imageDigest":{"type":"string","nullable":true},"runner":{"$ref":"#/components/schemas/Record","nullable":true}},"required":["codebaseVersion","imageRef","imageDigest","runner"]},"ReproducibilityConfigDto":{"type":"object","properties":{"trainSpec":{"$ref":"#/components/schemas/Record","nullable":true},"recipeJson":{"$ref":"#/components/schemas/Record","nullable":true}},"required":["trainSpec","recipeJson"]},"ReproducibilityDataInputDto":{"type":"object","properties":{"datasetVersionId":{"type":"string","nullable":true},"datasetId":{"type":"string","nullable":true},"projectId":{"type":"string"},"version":{"type":"number","nullable":true},"manifestObjectId":{"type":"string","nullable":true},"manifest":{"$ref":"#/components/schemas/ReproducibilityStorageObjectDto","nullable":true},"datasetExportJob":{"$ref":"#/components/schemas/ReproducibilityExportJobInputDto","nullable":true},"datasetMixtureId":{"type":"string","nullable":true},"datasetMixture":{"$ref":"#/components/schemas/ReproducibilityMixtureReferenceDto","nullable":true},"relatedMixtures":{"type":"array","items":{"$ref":"#/components/schemas/ReproducibilityMixtureReferenceDto"}}},"required":["datasetVersionId","datasetId","projectId","version","manifestObjectId","manifest","datasetExportJob","datasetMixtureId","datasetMixture","relatedMixtures"]},"ReproducibilityExportJobInputDto":{"type":"object","properties":{"datasetExportJobId":{"type":"string"},"exportFormat":{"type":"string"},"status":{"type":"string"},"outputArtifactId":{"type":"string","nullable":true},"outputArtifact":{"$ref":"#/components/schemas/ReproducibilityArtifactSummaryDto","nullable":true}},"required":["datasetExportJobId","exportFormat","status","outputArtifactId","outputArtifact"]},"ReproducibilityLineageEdgeSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"fromObjectId":{"type":"string"},"toObjectId":{"type":"string"},"edgeKind":{"type":"string"},"workflowRunId":{"type":"string","nullable":true},"metadata":{"$ref":"#/components/schemas/Record","nullable":true},"createdAt":{"type":"string"}},"required":["id","tenantId","fromObjectId","toObjectId","edgeKind","workflowRunId","metadata","createdAt"]},"ReproducibilityLineageSummaryDto":{"type":"object","properties":{"edges":{"type":"array","items":{"$ref":"#/components/schemas/ReproducibilityLineageEdgeSummaryDto"}},"truncated":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["edges","truncated"]},"ReproducibilityMixtureReferenceDto":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"status":{"type":"string","enum":["draft","ready","archived"]},"recipeVersion":{"type":"number"},"recipeHash":{"type":"string"}},"required":["id","name","status","recipeVersion","recipeHash"]},"ReproducibilitySeedDto":{"type":"object","properties":{"seed":{"oneOf":[{"type":"string"},{"type":"number"}],"nullable":true},"randomSeed":{"oneOf":[{"type":"string"},{"type":"number"}],"nullable":true},"rawTrainSpec":{"$ref":"#/components/schemas/Record","nullable":true}},"required":["seed","randomSeed","rawTrainSpec"]},"ReproducibilitySplitDto":{"type":"object","properties":{"splitStrategy":{"type":"string","nullable":true},"splitConfigJson":{"$ref":"#/components/schemas/Record","nullable":true},"configHash":{"type":"string","nullable":true},"status":{"type":"string","enum":["not_configured","configured","invalid"]}},"required":["splitStrategy","splitConfigJson","configHash","status"]},"ReproducibilityStorageObjectDto":{"type":"object","properties":{"storageObjectId":{"type":"string"},"objectKey":{"type":"string","nullable":true},"checksum":{"type":"string","nullable":true}},"required":["storageObjectId","objectKey","checksum"]},"RequestMetaSwaggerDto":{"type":"object","properties":{"requestId":{"type":"string","format":"uuid"}},"required":["requestId"]},"RerunRequestDto":{"type":"object","properties":{"mode":{"type":"string","enum":["failed","from_step","all"]},"stepId":{"type":"string"},"recordingIds":{"type":"array","items":{"type":"string","format":"uuid"}},"revision":{"type":"string","enum":["original","latest"]},"dryRun":{"type":"boolean"}},"required":["mode","revision"]},"ResolveQueryDto":{"type":"object","properties":{"ref":{"type":"string"}},"required":["ref"]},"ResolveResponseDto":{"type":"object","properties":{"kind":{"type":"string","enum":["user","team","project","version"]},"id":{"type":"string"},"teamId":{"type":"string"},"projectId":{"type":"string"},"versionNumber":{"type":"number"},"alias":{"type":"string"},"canonicalRef":{"type":"string"},"url":{"type":"string"}},"required":["kind","id","teamId","canonicalRef","url"]},"ResolvedAlgorithmStepInterfaceDto":{"type":"object","properties":{"type":{"type":"string","enum":["algorithm"]},"uses":{"type":"string"},"resolvedUses":{"type":"string"},"version":{"type":"string"},"isRange":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"selector":{"type":"string","enum":["default","exact","major","format_standardizer"]},"owner":{"type":"string","enum":["team","platform"]},"slug":{"type":"string"},"title":{"type":"string"},"summary":{"type":"string"},"kind":{"type":"string","enum":["labeler","processor","extractor","checker","exporter"]},"stage":{"type":"string","enum":["export","ingest","pre_check","standardize","privacy","perceive","annotate","compose","persist","check"]},"scope":{"type":"string","enum":["version","recording","batch"]},"forEach":{"type":"string","enum":["none","episode","chunk"]},"chunkSeconds":{"type":"number","nullable":true},"maxParallel":{"type":"number"},"minSuccessRatio":{"type":"number"},"inputs":{"type":"array","items":{"$ref":"#/components/schemas/ResolvedStepInterfacePort"}},"outputs":{"type":"array","items":{"$ref":"#/components/schemas/ResolvedStepInterfaceOutput"}},"params":{"$ref":"#/components/schemas/Record","nullable":true},"resources":{"type":"object","properties":{"cpu":{"type":"string"},"memory":{"type":"string"},"ephemeralStorage":{"type":"string"},"timeout":{"oneOf":[{"type":"string"},{"type":"object","properties":{"perInputMinute":{"type":"string"},"min":{"type":"string"},"max":{"type":"string"}},"required":["perInputMinute","min","max"]}]},"gpu":{"type":"object","properties":{"count":{"type":"number","enum":[2,8,1,4]},"minMemoryGb":{"type":"number"}},"required":["count","minMemoryGb"],"nullable":true}},"required":["cpu","memory","ephemeralStorage","timeout","gpu"]},"acceptedInputFormats":{"type":"array","items":{"type":"string"}},"requires":{"type":"array","items":{"type":"string"}},"platformApiScopes":{"type":"array","items":{"type":"string"}},"source":{"type":"string","enum":["image","python"]},"interfaceHash":{"type":"string","nullable":true},"imageDigest":{"type":"string","nullable":true}},"required":["type","uses","resolvedUses","version","isRange","selector","owner","slug","title","summary","kind","stage","scope","forEach","chunkSeconds","maxParallel","minSuccessRatio","inputs","outputs","params","resources","acceptedInputFormats","platformApiScopes","interfaceHash","imageDigest"]},"ResolvedStepInterfaceMap":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/ResolvedAlgorithmStepInterfaceDto"}},"ResolvedStepInterfaceOutput":{"type":"object","properties":{"name":{"type":"string"},"type":{"type":"string","enum":["version","calibration","imu","recording","raw_files","video","stereo_pair","quality_metrics","hand_pose","camera_pose","depth","derived_features","episode_proposals","report","export_artifact","scalar"]},"required":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"scalar":{"type":"object","properties":{"kind":{"type":"string"},"values":{"type":"array","items":{"type":"string"},"nullable":true},"minimum":{"type":"number","nullable":true},"maximum":{"type":"number","nullable":true}},"required":["kind"]},"merge":{"type":"string","enum":["concat_time","per_item","manifest"]}},"required":["name","type"]},"ResolvedStepInterfacePort":{"type":"object","properties":{"name":{"type":"string"},"type":{"type":"string","enum":["version","calibration","imu","recording","raw_files","video","stereo_pair","quality_metrics","hand_pose","camera_pose","depth","derived_features","episode_proposals","report","export_artifact","scalar"]},"required":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"many":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["name","type","required"]},"RestoreTrashItemBodyDto":{"type":"object","properties":{"confirmName":{"type":"string"}}},"RetryModelTrainingBodyDto":{"type":"object","properties":{"resumeFromCheckpointArtifactId":{"type":"string","nullable":true,"format":"uuid"}}},"RetryTrainingJobBodyDto":{"type":"object","properties":{"resumeFromCheckpointArtifactId":{"type":"string","nullable":true,"format":"uuid"}}},"ReviewAnnotationJobItemBodyDto":{"type":"object","properties":{"decision":{"type":"string"},"comment":{"type":"string","nullable":true}},"required":["decision"]},"ReviewDecisionDto":{"type":"object","properties":{"decision":{"type":"string","enum":["approve","approve_subset","reject"]},"recordingIds":{"type":"array","items":{"type":"string"}},"comment":{"type":"string"}},"required":["decision"]},"ReviewGateView":{"type":"object","properties":{"id":{"type":"string"},"workflowRunId":{"type":"string"},"stepId":{"type":"string"},"stepRunId":{"type":"string"},"scopeKey":{"type":"string"},"recordingId":{"type":"string","nullable":true},"attempt":{"type":"number"},"state":{"type":"string"},"title":{"type":"string"},"assigneeRole":{"type":"string"},"dueAt":{"type":"string"},"onTimeout":{"type":"string"},"decidedByUserId":{"type":"string","nullable":true},"decidedAt":{"type":"string","nullable":true},"approvedRecordingIds":{"type":"array","items":{"type":"string"}},"comment":{"type":"string","nullable":true},"links":{"type":"object","properties":{"recordings":{"type":"array","items":{"type":"object","properties":{"recordingId":{"type":"string"},"href":{"type":"string"}},"required":["recordingId","href"]}},"outputs":{"type":"array","items":{"type":"object","properties":{"stepRunId":{"type":"string"},"outputsHref":{"type":"string"},"downloadSessionHref":{"type":"string"}},"required":["stepRunId","outputsHref","downloadSessionHref"]}},"quality":{"type":"array","items":{"type":"object","properties":{"recordingId":{"type":"string"},"findingsHref":{"type":"string","nullable":true},"gateHref":{"type":"string","nullable":true}},"required":["recordingId","findingsHref","gateHref"]}}},"required":["recordings","outputs","quality"]}},"required":["id","workflowRunId","stepId","stepRunId","scopeKey","recordingId","attempt","state","title","assigneeRole","dueAt","onTimeout","decidedByUserId","decidedAt","approvedRecordingIds","comment","links"]},"ReviewModelImageRevisionBodyDto":{"type":"object","properties":{"reviewStatus":{"type":"string","enum":["approved","rejected"]},"reviewNotes":{"type":"string","nullable":true},"approvedEgressDomains":{"type":"array","items":{"type":"string"}}},"required":["reviewStatus"]},"ReviewTaskSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string"},"workflowRunId":{"type":"string"},"subjectType":{"type":"string"},"subjectRefId":{"type":"string"},"status":{"type":"string"},"decision":{"type":"string","nullable":true},"reviewerProjectMembershipId":{"type":"string","nullable":true},"dueAt":{"type":"string","nullable":true},"stepKey":{"type":"string"},"taskTitle":{"type":"string"},"overdue":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","tenantId","projectId","workflowRunId","subjectType","subjectRefId","status","decision","reviewerProjectMembershipId","dueAt","stepKey","taskTitle","overdue","createdAt","updatedAt"]},"RevokeAlgorithmRevisionBodyDto":{"type":"object","properties":{"reason":{"type":"string"}},"required":["reason"]},"RevokeMembershipApiKeysResponseDto":{"type":"object","properties":{"membershipId":{"type":"string"},"revokedCount":{"type":"number"}},"required":["membershipId","revokedCount"]},"RevokeModelImageRevisionBodyDto":{"type":"object","properties":{"reason":{"type":"string","nullable":true}}},"RigProfileDraftDto":{"type":"object","properties":{"recordingId":{"type":"string"},"document":{"type":"object","properties":{"profile":{"type":"string"},"sourceKind":{"type":"string","enum":["human","robot"]},"robotType":{"type":"string"},"match":{"type":"object","properties":{"topics":{"type":"array","items":{"type":"string"}},"emptyTopics":{"type":"array","items":{"type":"string"},"nullable":true},"sidecar":{"type":"string","nullable":true},"deviceType":{"type":"string","nullable":true}},"required":["topics"]},"cameras":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"key":{"type":"string"},"role":{"type":"string","enum":["other","depth","head","head_left","head_right","wrist_left","wrist_right","chest","third_person","top"]},"sensor":{"type":"string","nullable":true},"optional":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true},"latencyMs":{"type":"number","nullable":true},"needsConfirmation":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true}},"required":["topic","key","role"]}},"stampSource":{"type":"string","enum":["header_stamp","log_time"],"nullable":true},"cameraLatencyMs":{"type":"number","nullable":true},"calibration":{"type":"object","properties":{"distortion":{"type":"string","enum":["none","radtan","fisheye_kb4"]},"stereo":{"type":"object","properties":{"left":{"type":"string"},"right":{"type":"string"},"extrinsicOn":{"type":"string"},"meaning":{"type":"string"}},"required":["left","right","extrinsicOn","meaning"],"nullable":true},"camImu":{"type":"object","properties":{"on":{"type":"string"},"key":{"type":"string"},"meaning":{"type":"string"},"translationUnit":{"type":"string","enum":["m","mm"]}},"required":["on","key","meaning","translationUnit"],"nullable":true}},"required":["distortion"],"nullable":true},"imu":{"type":"object","properties":{"topic":{"type":"string"},"frame":{"type":"string"},"features":{"type":"object","properties":{"angular_velocity":{"type":"string"},"linear_acceleration":{"type":"string"}},"required":["angular_velocity","linear_acceleration"]},"orientation":{"type":"string","enum":["ignore"]}},"required":["topic","frame","features","orientation"],"nullable":true},"state":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"names":{"type":"array","items":{"type":"string"}},"unit":{"type":"string","enum":["m","mm","rad","deg","percent","normalized"]},"range":{"type":"object","properties":{"min":{"type":"number"},"max":{"type":"number"}},"required":["min","max"],"nullable":true},"semantics":{"type":"string","nullable":true},"needsConfirmation":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true}},"required":["topic","names","unit"]},"nullable":true},"action":{"oneOf":[{"type":"string","enum":["none"]},{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"names":{"type":"array","items":{"type":"string"}},"unit":{"type":"string","enum":["m","mm","rad","deg","percent","normalized"]},"range":{"type":"object","properties":{"min":{"type":"number"},"max":{"type":"number"}},"required":["min","max"],"nullable":true},"semantics":{"type":"string","nullable":true},"needsConfirmation":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true}},"required":["topic","names","unit"]}}],"nullable":true},"actionSemantics":{"type":"object","properties":{"space":{"type":"string","enum":["robot_joint","robot_tcp"]},"representation":{"type":"string","enum":["absolute","relative","delta"]},"frame":{"type":"string"},"calibrationId":{"type":"string"},"embodimentId":{"type":"string","nullable":true},"controlRateHz":{"type":"number","nullable":true}},"required":["space","representation","frame","calibrationId"],"nullable":true},"extraState":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"key":{"type":"string"},"shape":{"type":"array","items":{"type":"number"},"nullable":true},"names":{"type":"array","items":{"type":"string"},"nullable":true},"frame":{"type":"string","nullable":true},"unit":{"type":"string","enum":["m","mm","rad","deg","percent","normalized"],"nullable":true}},"required":["topic","key"]},"nullable":true},"extraAction":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"key":{"type":"string"},"shape":{"type":"array","items":{"type":"number"},"nullable":true},"names":{"type":"array","items":{"type":"string"},"nullable":true},"frame":{"type":"string","nullable":true},"unit":{"type":"string","enum":["m","mm","rad","deg","percent","normalized"],"nullable":true}},"required":["topic","key"]},"nullable":true},"dropped":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"reason":{"type":"string"}},"required":["topic","reason"]},"nullable":true},"sidecarsKept":{"type":"array","items":{"type":"string"},"nullable":true}},"required":["profile","sourceKind","robotType","match","cameras"]},"needsConfirmation":{"type":"array","items":{"type":"string"}},"facts":{"type":"object","properties":{"topics":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"schema":{"type":"string"},"messageCount":{"type":"number"}},"required":["topic","schema","messageCount"]}},"stampSkewMs":{"type":"array","items":{"type":"object","properties":{"topic":{"type":"string"},"medianMs":{"type":"number"}},"required":["topic","medianMs"]}},"bytesRead":{"type":"number"}},"required":["topics","stampSkewMs","bytesRead"]}},"required":["recordingId","document","needsConfirmation","facts"]},"RigProfileDto":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"status":{"type":"string","enum":["draft","published"]},"sourceRecordingId":{"type":"string","nullable":true},"latestRevision":{"type":"number","nullable":true},"publishedAt":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","name","status","sourceRecordingId","latestRevision","publishedAt","createdAt","updatedAt"]},"RollbackPipelineDefinitionBodyDto":{"type":"object","properties":{"targetRevisionId":{"type":"string","format":"uuid"},"setAsDefault":{"type":"boolean","nullable":true}},"required":["targetRevisionId"]},"RosCleaningStepDto":{"type":"object","properties":{"code":{"type":"string","enum":["convert-to-mcap","resample-topic","interpolate-topic","filter-topic","rename-topic","trim-time-range","align-topics"]},"name":{"type":"string"},"enabled":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"summary":{"type":"string"},"params":{"$ref":"#/components/schemas/Record","nullable":true},"internalOnly":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"outputSourceType":{"type":"string","nullable":true}},"required":["code","name","enabled","summary"]},"RosSourceSupportMatrixEntryDto":{"type":"object","properties":{"sourceType":{"type":"string","enum":["mcap","rosbag1","rosbag2"]},"nativeMetadataExtraction":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"qualityEvaluation":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"cleaningFramework":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"derivedVersionOutput":{"type":"string","enum":["mcap","same-as-source"],"nullable":true},"externalStudioStatus":{"type":"string","enum":["reserved","not-applicable"]},"notes":{"type":"string","nullable":true}},"required":["sourceType","nativeMetadataExtraction","qualityEvaluation","cleaningFramework","derivedVersionOutput","externalStudioStatus","notes"]},"RotateScimConnectionTokenResponseDto":{"type":"object","properties":{"connection":{"$ref":"#/components/schemas/ScimConnectionAdminDto"},"token":{"type":"string"}},"required":["connection","token"]},"RuntimeCapabilitiesSwaggerDto":{"type":"object","properties":{"selfServeSignup":{"type":"boolean"},"invitationSignup":{"type":"boolean"},"paymentProvider":{"type":"string","enum":["none"]},"licenseMode":{"type":"string","enum":["none","entitlement","signed-file","platform-signed"],"description":"Runtime reports only signed-file | platform-signed (ADR 0129). Older enum values remain for OpenAPI compat and are never emitted."},"licenseState":{"type":"string","enum":["valid","read_only","invalid","grace","expired"],"description":"Runtime reports only valid | grace | expired (ADR 0129). Older enum values remain for OpenAPI compat and are never emitted."},"regionSelection":{"type":"boolean"},"storageClassDefault":{"type":"string","enum":["shared","dedicated"]},"objectStorageProvider":{"type":"string","enum":["rustfs","s3","cos"]},"ingressMode":{"type":"string","enum":["ingress","gateway-api"],"description":"Edge shape (ADR 0202 D7). Required. There is no default."},"trainingProviders":{"type":"array","items":{"type":"string"},"enum":["kubernetes","thpc"]},"telemetryEgress":{"type":"boolean"},"transactionalEmail":{"type":"boolean"},"platformAdminConsole":{"type":"boolean"},"redisAvailabilityClass":{"type":"string","enum":["builtin-single","managed","external-ha"]},"dataResidency":{"$ref":"#/components/schemas/DataResidencySwaggerDto"},"edgeInference":{"type":"boolean","description":"Whether edge inference package generation is permitted (ADR 0145 §8)."},"inferenceWireProtocols":{"type":"array","description":"Robot wires a policy server in this deployment may serve.","items":{"type":"string"},"enum":["openpi-ws","lerobot-grpc"]},"egoHumanSource":{"type":"boolean","description":"Whether first-person human ingest (dataSource=ego_human) is permitted (ADR 0164). Missing descriptor must not invent true."},"huggingFaceImport":{"type":"boolean","description":"Whether one-way Hugging Face Hub import is permitted (ADR 0188 D4). Missing descriptor must not invent true."},"algorithmImagePush":{"type":"boolean","description":"Whether the platform algorithm registry accepts pushes (W54 / ADR 0126). Missing descriptor must not invent true."},"algorithmCloudBuild":{"type":"boolean","description":"Whether cloud / Job-backed algorithm builds are available (W54). Missing descriptor must not invent true."},"tlsMode":{"type":"string","enum":["private-ca","provided"],"description":"Appliance TLS mode (CONTRACTS §1.1). Required. There is no default. On-prem does not imply private-ca."}},"required":["selfServeSignup","invitationSignup","paymentProvider","licenseMode","licenseState","regionSelection","storageClassDefault","objectStorageProvider","ingressMode","trainingProviders","telemetryEgress","transactionalEmail","platformAdminConsole","redisAvailabilityClass","dataResidency","edgeInference","inferenceWireProtocols","egoHumanSource","huggingFaceImport","algorithmImagePush","algorithmCloudBuild","tlsMode"]},"SavedViewDto":{"type":"object","properties":{"savedViewId":{"type":"string"},"name":{"type":"string"},"filter":{"type":"object","properties":{"verdict":{"type":"string","enum":["warning","fail","incomplete","pass","not_checked"],"nullable":true},"failingCheck":{"type":"string","nullable":true},"recordingId":{"type":"string","nullable":true},"collectionOrderId":{"type":"string","nullable":true},"collectionTaskId":{"type":"string","nullable":true},"collectorId":{"type":"string","nullable":true},"uploadedAfter":{"type":"string","nullable":true},"uploadedBefore":{"type":"string","nullable":true},"task":{"type":"string","nullable":true},"taskExact":{"type":"string","nullable":true},"taskMissing":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true},"outcome":{"type":"string","enum":["success","failure","partial"],"nullable":true},"tag":{"type":"string","nullable":true},"attribute":{"$ref":"#/components/schemas/Record","nullable":true},"splitTag":{"type":"string","enum":["test","val","train"],"nullable":true},"versionSplit":{"type":"string","enum":["test","val","train"],"nullable":true},"durationMin":{"type":"number","nullable":true},"durationMax":{"type":"number","nullable":true},"durationMaxExclusive":{"type":"number","nullable":true},"subtaskCountMin":{"type":"number","nullable":true},"subtaskCountMax":{"type":"number","nullable":true},"subtaskCountMaxExclusive":{"type":"number","nullable":true},"cameraCountMin":{"type":"number","nullable":true},"cameraCountMax":{"type":"number","nullable":true},"cameraCountMaxExclusive":{"type":"number","nullable":true},"fpsMin":{"type":"number","nullable":true},"fpsMax":{"type":"number","nullable":true},"fpsMaxExclusive":{"type":"number","nullable":true},"idleFractionMin":{"type":"number","nullable":true},"idleFractionMax":{"type":"number","nullable":true},"idleFractionMaxExclusive":{"type":"number","nullable":true},"sceneId":{"type":"string","nullable":true},"labelState":{"type":"string","enum":["approved","suggested","labeled","rejected"],"nullable":true},"hasSubtasks":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}],"nullable":true},"annotationJobId":{"type":"string","nullable":true},"sort":{"type":"string","enum":["verdict","duration","upload_date","recording_name"],"nullable":true},"order":{"type":"string","enum":["asc","desc"],"nullable":true}}},"shared":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"createdBy":{"type":"string"},"isMine":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"updatedAt":{"type":"string"}},"required":["savedViewId","name","filter","shared","createdBy","isMine","updatedAt"]},"SchemaDriftFindingDto":{"type":"object","properties":{"scope":{"type":"string","enum":["topic","metadata-envelope","canonical-schema","feature"]},"field":{"type":"string","nullable":true},"expected":{"type":"string","nullable":true},"actual":{"type":"string","nullable":true},"message":{"type":"string"},"status":{"type":"string","enum":["failed","warning","passed","skipped"]},"blocking":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["scope","message","status","blocking"]},"SchemaDriftSummaryDto":{"type":"object","properties":{"overallStatus":{"type":"string","enum":["failed","warning","passed","skipped"]},"blockingFailed":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"passedCount":{"type":"number"},"warningCount":{"type":"number"},"failedCount":{"type":"number"},"skippedCount":{"type":"number"},"findings":{"type":"array","items":{"$ref":"#/components/schemas/SchemaDriftFindingDto"}}},"required":["overallStatus","blockingFailed","passedCount","warningCount","failedCount","skippedCount","findings"]},"ScimConnectionAdminDto":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"issuer":{"type":"string","nullable":true},"status":{"type":"string"},"tokenPrefix":{"type":"string","nullable":true},"tokenLastFour":{"type":"string","nullable":true},"lastUsedAt":{"type":"string","nullable":true},"revokedAt":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","name","issuer","status","tokenPrefix","tokenLastFour","lastUsedAt","revokedAt","createdAt","updatedAt"]},"ScopedDownloadCredentialDto":{"type":"object","properties":{"accessKeyId":{"type":"string"},"secretAccessKey":{"type":"string"},"sessionToken":{"type":"string"},"expiresAt":{"type":"string"},"bucketName":{"type":"string"},"region":{"type":"string"},"provider":{"type":"string"},"endpoint":{"type":"string","nullable":true},"prefixes":{"type":"array","items":{"type":"string"}},"objectKeys":{"type":"array","items":{"type":"string"}}},"required":["accessKeyId","secretAccessKey","sessionToken","expiresAt","bucketName","region","provider"]},"ScopedWriteCredentialsDto":{"type":"object","properties":{"accessKeyId":{"type":"string"},"secretAccessKey":{"type":"string"},"sessionToken":{"type":"string"},"expiresAt":{"type":"string"},"bucketName":{"type":"string"},"region":{"type":"string"},"provider":{"type":"string"},"endpoint":{"type":"string","nullable":true},"objectKey":{"type":"string"},"prefix":{"type":"string"},"forcePathStyle":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["accessKeyId","secretAccessKey","sessionToken","expiresAt","bucketName","region","provider"]},"ScopedWriteCredentialsSwaggerDto":{"type":"object","properties":{"accessKeyId":{"type":"string"},"secretAccessKey":{"type":"string"},"sessionToken":{"type":"string"},"expiresAt":{"type":"string","format":"date-time"},"bucketName":{"type":"string"},"region":{"type":"string"},"provider":{"type":"string"},"endpoint":{"type":"string","nullable":true},"objectKey":{"type":"string"},"prefix":{"type":"string"},"forcePathStyle":{"type":"boolean"}},"required":["accessKeyId","secretAccessKey","sessionToken","expiresAt","bucketName","region","provider"]},"SearchGroupDto":{"type":"object","properties":{"type":{"type":"string","enum":["project","version","workflow","algorithm","recording","episode","model","deployment","collection_order"]},"items":{"type":"array","items":{"$ref":"#/components/schemas/SearchItemDto"}}},"required":["type","items"]},"SearchGroupSwaggerDto":{"type":"object","properties":{"type":{"enum":["project","recording","version","episode","model","deployment","collection_order","algorithm","workflow"],"type":"string"},"items":{"type":"array","items":{"$ref":"#/components/schemas/SearchItemSwaggerDto"}}},"required":["type","items"]},"SearchItemDto":{"type":"object","properties":{"id":{"type":"string"},"type":{"type":"string","enum":["project","version","workflow","algorithm","recording","episode","model","deployment","collection_order"]},"title":{"type":"string"},"subtitle":{"type":"string"},"projectId":{"type":"string","nullable":true},"url":{"type":"string"},"ref":{"type":"string","nullable":true},"createdAt":{"type":"string","nullable":true}},"required":["id","type","title","subtitle","projectId","url","ref","createdAt"]},"SearchItemSwaggerDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"type":{"enum":["project","recording","version","episode","model","deployment","collection_order","algorithm","workflow"],"type":"string"},"title":{"type":"string"},"subtitle":{"type":"string"},"projectId":{"type":"string","nullable":true,"format":"uuid"},"url":{"type":"string"},"ref":{"type":"string","nullable":true},"createdAt":{"type":"string","nullable":true,"format":"date-time"}},"required":["id","type","title","subtitle","projectId","url","ref","createdAt"]},"SearchQueryDto":{"type":"object","properties":{"q":{"type":"string"},"types":{"enum":["project","recording","version","episode","model","deployment","collection_order","algorithm","workflow"],"type":"array","items":{"type":"string"},"nullable":true}},"required":["q"]},"SearchResultDto":{"type":"object","properties":{"groups":{"type":"array","items":{"$ref":"#/components/schemas/SearchGroupDto"}}},"required":["groups"]},"SearchResultEnvelopeDto":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/SearchResultSwaggerDto"}},"required":["data"]},"SearchResultSwaggerDto":{"type":"object","properties":{"groups":{"type":"array","items":{"$ref":"#/components/schemas/SearchGroupSwaggerDto"}}},"required":["groups"]},"SelectionBodyDto":{"type":"object","properties":{"filter":{"type":"object","additionalProperties":true},"savedViewId":{"type":"string","format":"uuid"},"episodeIds":{"type":"array","items":{"type":"string","format":"uuid"}},"selectionRunId":{"type":"string","format":"uuid","description":"The episodes a workflow run was asked about (an upload run: every episode of its recordings)."}}},"SessionInvalidateAllResponseDto":{"type":"object","properties":{"revokedCount":{"type":"number"}},"required":["revokedCount"]},"SetPipelineDefinitionDefaultRevisionBodyDto":{"type":"object","properties":{"revisionId":{"type":"string","format":"uuid","nullable":true}}},"SetVersionAliasBodyDto":{"type":"object","properties":{"versionNumber":{"type":"number","minimum":1}},"required":["versionNumber"]},"SkillExternalMapping":{"type":"object","properties":{"source":{"type":"string"},"sourceVersion":{"type":"string"},"externalCode":{"type":"string"},"externalLabel":{"type":"string"},"mappingKind":{"type":"string","enum":["exact","broader","narrower","related"]},"confidence":{"type":"number"}},"required":["source","sourceVersion","externalCode","externalLabel","mappingKind","confidence"]},"SkillTaxonomyListMetaDto":{"type":"object","properties":{"requestId":{"type":"string"},"pageSize":{"type":"number"},"totalCount":{"type":"number"},"contractVersion":{"type":"string"},"taxonomyId":{"type":"string"},"draftTaxonomyId":{"type":"string","nullable":true},"tenantDraftTaxonomyId":{"type":"string","nullable":true},"publishedTaxonomyId":{"type":"string","nullable":true},"projectTaxonomyId":{"type":"string","nullable":true},"tenantTaxonomyId":{"type":"string","nullable":true},"revision":{"type":"number"},"status":{"type":"string","enum":["draft","published","archived","unresolved"]},"scopeLevel":{"type":"string","enum":["tenant","project"]},"snapshotHash":{"type":"string"},"name":{"type":"string","nullable":true}},"required":["pageSize","totalCount","contractVersion","taxonomyId","draftTaxonomyId","tenantDraftTaxonomyId","publishedTaxonomyId","projectTaxonomyId","tenantTaxonomyId","revision","status","scopeLevel","snapshotHash","name"]},"SkillTaxonomyProjectListResponseDto":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/SkillTaxonomyTermDto"}},"nextPageToken":{"type":"string"},"meta":{"$ref":"#/components/schemas/SkillTaxonomyListMetaDto","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]},"SkillTaxonomySummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string","nullable":true},"scopeLevel":{"type":"string","enum":["tenant","project"]},"name":{"type":"string"},"contractVersion":{"type":"string"},"revision":{"type":"number"},"status":{"type":"string","enum":["draft","published","archived"]},"sourceSnapshotHash":{"type":"string"},"publishedAt":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"rowVersion":{"type":"number"}},"required":["id","tenantId","projectId","scopeLevel","name","contractVersion","revision","status","sourceSnapshotHash","publishedAt","createdAt","updatedAt","rowVersion"]},"SkillTaxonomyTermDto":{"type":"object","properties":{"id":{"type":"string","nullable":true},"termIdentity":{"type":"string"},"code":{"type":"string"},"displayLabel":{"type":"string"},"labels":{"$ref":"#/components/schemas/Record"},"parentTermIdentity":{"type":"string","nullable":true},"assignable":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"definition":{"type":"string"},"positiveExamples":{"type":"array","items":{"type":"string"}},"negativeExamples":{"type":"array","items":{"type":"string"}},"externalMappings":{"type":"array","items":{"$ref":"#/components/schemas/SkillExternalMapping"}},"originLayer":{"type":"string","enum":["tenant","project","platform"]},"status":{"type":"string","enum":["active","deprecated","retired"]},"successorTermIdentity":{"type":"string","nullable":true},"enabled":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"coverageFloor":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"provenance":{"$ref":"#/components/schemas/SkillTermProvenance"},"sources":{"$ref":"#/components/schemas/SkillTaxonomyTermSources"}},"required":["id","termIdentity","code","displayLabel","labels","parentTermIdentity","assignable","definition","positiveExamples","negativeExamples","externalMappings","originLayer","status","successorTermIdentity","enabled","coverageFloor","provenance","sources"]},"SkillTaxonomyTermListResponseDto":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/SkillTaxonomyTermDto"}},"nextPageToken":{"type":"string"},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"totalCount":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]}},"required":["data","meta"]},"SkillTaxonomyTermSources":{"type":"object","additionalProperties":{"type":"string","enum":["tenant","project","platform"]}},"SkillTermProvenance":{"type":"object","properties":{"originLayer":{"type":"string","enum":["tenant","project","platform"]},"sourceRevision":{"type":"string","nullable":true},"fields":{"$ref":"#/components/schemas/Record"}},"required":["originLayer"]},"SplitConfigBodyDto":{"type":"object","properties":{"strategy":{"enum":["episode","recording","collector","stratified_task","manual"],"type":"string"},"ratios":{"$ref":"#/components/schemas/SplitRatiosBodyDto"},"seed":{"type":"number"}},"required":["strategy","ratios"]},"SplitPlanEpisodeAssignmentDto":{"type":"object","properties":{"episodeKey":{"type":"string"},"episodeId":{"type":"string","nullable":true},"split":{"type":"string","enum":["test","val","train"]}},"required":["episodeKey","episodeId","split"]},"SplitPlanResponseDto":{"type":"object","properties":{"datasetVersionId":{"type":"string"},"projectId":{"type":"string"},"status":{"type":"string","enum":["not_configured","configured","invalid"]},"config":{"$ref":"#/components/schemas/DeterministicSplitConfigDto"},"configHash":{"type":"string"},"counts":{"$ref":"#/components/schemas/Record"},"assignments":{"type":"array","items":{"$ref":"#/components/schemas/SplitPlanEpisodeAssignmentDto"}},"warnings":{"type":"array","items":{"type":"string"}},"persisted":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["datasetVersionId","projectId","status","config","configHash","counts","assignments","warnings","persisted"]},"SplitRatiosBodyDto":{"type":"object","properties":{"train":{"type":"number","minimum":0},"val":{"type":"number","minimum":0},"test":{"type":"number","minimum":0}},"required":["train","val","test"]},"SplitRatiosBodyDto_2":{"type":"object","properties":{"train":{"type":"number"},"val":{"type":"number"},"test":{"type":"number"}},"required":["train","val","test"]},"SplitRatiosDto":{"type":"object","properties":{"train":{"type":"number"},"val":{"type":"number"},"test":{"type":"number"}},"required":["train","val","test"]},"StartWorkflowDefinitionDryRunBodyDto":{"type":"object","properties":{"datasetVersionId":{"type":"string","format":"uuid"},"workflowRevisionId":{"type":"string","format":"uuid","nullable":true},"runtimeInputsJson":{"type":"object","additionalProperties":true,"nullable":true}},"required":["datasetVersionId"]},"StepAlgorithmRef":{"type":"object","properties":{"slug":{"type":"string"},"title":{"type":"string"},"official":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["slug","title","official"]},"StorageBucketSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"provider":{"type":"string"},"bucketName":{"type":"string"},"displayName":{"type":"string","nullable":true},"locationRole":{"type":"string"},"ownership":{"type":"string"},"region":{"type":"string","nullable":true},"endpoint":{"type":"string","nullable":true},"pathStyleEnabled":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"nativeCapabilities":{"$ref":"#/components/schemas/Record","nullable":true},"status":{"type":"string"},"provisionedAt":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","tenantId","provider","bucketName","region","status","provisionedAt","createdAt","updatedAt"]},"StorageReconciliationDiffSummaryDto":{"type":"object","properties":{"bytesDelta":{"type":"string"},"objectCountDelta":{"type":"number"},"providerVsDbBytesDelta":{"type":"string","nullable":true},"providerVsDbObjectCountDelta":{"type":"number","nullable":true},"dbVsLedgerBytesDelta":{"type":"string"},"dbVsLedgerObjectCountDelta":{"type":"number"},"thresholds":{"type":"object","properties":{"warningAbsoluteBytes":{"type":"string"},"warningRelativeRatio":{"type":"number"},"criticalAbsoluteBytes":{"type":"string"},"criticalRelativeRatio":{"type":"number"}},"required":["warningAbsoluteBytes","warningRelativeRatio","criticalAbsoluteBytes","criticalRelativeRatio"]}},"required":["bytesDelta","objectCountDelta","dbVsLedgerBytesDelta","dbVsLedgerObjectCountDelta","thresholds"]},"StorageReconciliationJobDetailsDto":{"type":"object","properties":{"job":{"$ref":"#/components/schemas/StorageReconciliationJobSummaryDto"},"results":{"type":"array","items":{"$ref":"#/components/schemas/StorageReconciliationResultSummaryDto"}}},"required":["job","results"]},"StorageReconciliationJobSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"bucketId":{"type":"string","nullable":true},"status":{"type":"string","enum":["queued","running","succeeded","failed"]},"idempotencyKey":{"type":"string","nullable":true},"severity":{"type":"string","enum":["ok","warning","critical"],"nullable":true},"mismatchCount":{"type":"number"},"occurredAt":{"type":"string"},"claimedAt":{"type":"string","nullable":true},"startedAt":{"type":"string","nullable":true},"completedAt":{"type":"string","nullable":true},"failedAt":{"type":"string","nullable":true},"lastError":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","tenantId","bucketId","status","idempotencyKey","severity","mismatchCount","occurredAt","claimedAt","startedAt","completedAt","failedAt","lastError","createdAt","updatedAt"]},"StorageReconciliationResultSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"jobId":{"type":"string"},"bucketId":{"type":"string"},"projectId":{"type":"string","nullable":true},"objectPrefix":{"type":"string"},"storageTier":{"type":"string","nullable":true},"status":{"type":"string","enum":["matched","mismatch","provider_unavailable"]},"severity":{"type":"string","enum":["ok","warning","critical"]},"providerObjectCount":{"type":"number","nullable":true},"providerBytes":{"type":"string","nullable":true},"dbObjectCount":{"type":"number"},"dbBytes":{"type":"string"},"ledgerObjectCount":{"type":"number"},"ledgerBytes":{"type":"string"},"diffSummary":{"$ref":"#/components/schemas/StorageReconciliationDiffSummaryDto"},"occurredAt":{"type":"string"}},"required":["id","tenantId","jobId","bucketId","projectId","objectPrefix","storageTier","status","severity","providerObjectCount","providerBytes","dbObjectCount","dbBytes","ledgerObjectCount","ledgerBytes","diffSummary","occurredAt"]},"StorageRegionItemDto":{"type":"object","properties":{"provider":{"type":"string"},"regionCode":{"type":"string"},"displayName":{"type":"string"},"group":{"type":"string"}},"required":["provider","regionCode","displayName","group"]},"StorageRegionsResponseDto":{"type":"object","properties":{"groups":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"label":{"type":"string"},"regions":{"type":"array","items":{"$ref":"#/components/schemas/StorageRegionItemDto"}}},"required":["id","label","regions"]}}},"required":["groups"]},"SubscriptionSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"planId":{"type":"string"},"planCode":{"type":"string"},"status":{"type":"string"},"billingCycle":{"type":"string"},"startsAt":{"type":"string"},"endsAt":{"type":"string","nullable":true},"freezeReason":{"type":"string","nullable":true}},"required":["id","tenantId","planId","planCode","status","billingCycle","startsAt","endsAt","freezeReason"]},"SwitchCurrentMembershipBodyDto":{"type":"object","properties":{"membershipId":{"type":"string","format":"uuid"}},"required":["membershipId"]},"TeamDataFormatDraftDto":{"type":"object","properties":{"card":{"type":"object","properties":{"title":{"type":"string"},"description":{"type":"string"},"illustration":{"type":"string","enum":["human","robot","video","hdf5","bvh","aria-vrs"]},"fileRules":{"type":"object","properties":{"unit":{"type":"string","enum":["folder","file"]},"extensions":{"type":"array","items":{"type":"string"}},"requiredFiles":{"type":"array","items":{"type":"string"}}},"required":["unit","extensions","requiredFiles"]},"requiresTaskSidecar":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"privacyRequirement":{"type":"string","enum":["required","not_required"]}},"required":["title","description","illustration","fileRules","requiresTaskSidecar","privacyRequirement"],"nullable":true},"converter":{"oneOf":[{"type":"object","properties":{"kind":{"type":"string","enum":["rig_profile"]},"rigProfileRevisionId":{"type":"string"}},"required":["kind","rigProfileRevisionId"]},{"type":"object","properties":{"kind":{"type":"string","enum":["algorithm"]},"algorithmRevisionId":{"type":"string"}},"required":["kind","algorithmRevisionId"]}],"nullable":true}},"required":["card","converter"]},"TeamDataFormatDto":{"type":"object","properties":{"id":{"type":"string"},"dataKind":{"type":"string","enum":["human","robot"]},"slug":{"type":"string"},"status":{"type":"string","enum":["draft","published","archived"]},"currentRevision":{"type":"number","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","dataKind","slug","status","currentRevision","createdAt","updatedAt"]},"TeamDataFormatRevisionDto":{"type":"object","properties":{"id":{"type":"string"},"revision":{"type":"number"},"card":{"type":"object","properties":{"title":{"type":"string"},"description":{"type":"string"},"illustration":{"type":"string","enum":["human","robot","video","hdf5","bvh","aria-vrs"]},"fileRules":{"type":"object","properties":{"unit":{"type":"string","enum":["folder","file"]},"extensions":{"type":"array","items":{"type":"string"}},"requiredFiles":{"type":"array","items":{"type":"string"}}},"required":["unit","extensions","requiredFiles"]},"requiresTaskSidecar":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"privacyRequirement":{"type":"string","enum":["required","not_required"]}},"required":["title","description","illustration","fileRules","requiresTaskSidecar","privacyRequirement"]},"converter":{"oneOf":[{"type":"object","properties":{"kind":{"type":"string","enum":["rig_profile"]},"rigProfileRevisionId":{"type":"string"}},"required":["kind","rigProfileRevisionId"]},{"type":"object","properties":{"kind":{"type":"string","enum":["algorithm"]},"algorithmRevisionId":{"type":"string"}},"required":["kind","algorithmRevisionId"]}]},"sampleRunId":{"type":"string"},"publishedAt":{"type":"string"},"publishedBy":{"type":"string"}},"required":["id","revision","card","converter","sampleRunId","publishedAt","publishedBy"]},"TeamDataFormatSampleReportDto":{"type":"object","properties":{"verdict":{"type":"string","enum":["fail","pass","not_evaluated"]},"episodes":{"type":"number","nullable":true},"frames":{"type":"number","nullable":true},"features":{"type":"array","items":{"type":"string"}},"droppedTopics":{"type":"array","items":{"type":"string"}},"rules":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"verdict":{"type":"string"},"message":{"type":"string","nullable":true}},"required":["id","verdict","message"]}},"errorCode":{"type":"string","nullable":true}},"required":["verdict","episodes","frames","features","droppedTopics","rules","errorCode"]},"TeamDataFormatSampleRunDto":{"type":"object","properties":{"id":{"type":"string"},"formatId":{"type":"string"},"recordingId":{"type":"string"},"workflowRunId":{"type":"string"},"state":{"type":"string","enum":["queued","running","failed","passed"]},"converter":{"oneOf":[{"type":"object","properties":{"kind":{"type":"string","enum":["rig_profile"]},"rigProfileRevisionId":{"type":"string"}},"required":["kind","rigProfileRevisionId"]},{"type":"object","properties":{"kind":{"type":"string","enum":["algorithm"]},"algorithmRevisionId":{"type":"string"}},"required":["kind","algorithmRevisionId"]}]},"report":{"$ref":"#/components/schemas/TeamDataFormatSampleReportDto","nullable":true},"createdAt":{"type":"string"}},"required":["id","formatId","recordingId","workflowRunId","state","converter","report","createdAt"]},"TeamDto":{"type":"object","properties":{"id":{"type":"string"},"slug":{"type":"string"},"handle":{"type":"string"},"name":{"type":"string"},"status":{"type":"string"},"storageKey":{"type":"string"},"ref":{"type":"string"},"url":{"type":"string"}},"required":["id","slug","handle","name","status","storageKey","ref","url"]},"TenantAccessReviewSummaryDto":{"type":"object","properties":{"tenantId":{"type":"string"},"generatedAt":{"type":"string"},"expiringWithinDays":{"type":"number"},"disabledUsers":{"type":"array","items":{"$ref":"#/components/schemas/AccessReviewUserRefDto"}},"expiringSoonTenantMemberships":{"type":"array","items":{"$ref":"#/components/schemas/AccessReviewTenantMembershipItemDto"}},"expiringSoonProjectMemberships":{"type":"array","items":{"$ref":"#/components/schemas/AccessReviewProjectMembershipItemDto"}},"highPrivilegeMembers":{"type":"array","items":{"$ref":"#/components/schemas/AccessReviewTenantMembershipItemDto"}},"patHolders":{"type":"array","items":{"$ref":"#/components/schemas/AccessReviewPatHolderDto"}},"recentPermissionChanges":{"type":"array","items":{"$ref":"#/components/schemas/AccessReviewPermissionChangeDto"}}},"required":["tenantId","generatedAt","expiringWithinDays","disabledUsers","expiringSoonTenantMemberships","expiringSoonProjectMemberships","highPrivilegeMembers","patHolders","recentPermissionChanges"]},"TenantAuditLogEntryDto":{"type":"object","properties":{"id":{"type":"string"},"occurredAt":{"type":"string"},"action":{"type":"string"},"resourceType":{"type":"string","nullable":true},"resourceId":{"type":"string","nullable":true},"actorType":{"type":"string","nullable":true},"actorId":{"type":"string","nullable":true},"actorCategory":{"type":"string","enum":["scim","user","api_key","platform_service","system","unknown"]},"userId":{"type":"string","nullable":true},"membershipId":{"type":"string","nullable":true},"requestId":{"type":"string","nullable":true},"ipAddress":{"type":"string","nullable":true},"userAgent":{"type":"string","nullable":true},"metadata":{"$ref":"#/components/schemas/AuditLogMetadataDto"}},"required":["id","occurredAt","action","resourceType","resourceId","actorType","actorId","actorCategory","userId","membershipId","requestId","ipAddress","userAgent","metadata"]},"TenantAuthPolicyDto":{"type":"object","properties":{"strongPasswordEnabled":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"breachedPasswordCheckEnabled":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"mfaEnforced":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"ownerAdminMfaEnrollmentRequired":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"ssoRequired":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"effectivePasswordPolicy":{"oneOf":[{"allOf":[{"type":"object","properties":{"minLength":{"type":"number","enum":[8]},"maxLength":{"type":"number","enum":[128]},"requireCharacterClasses":{"type":"boolean","enum":[false]},"allowPasswordManagerPaste":{"type":"boolean","enum":[true]},"periodicRotation":{"type":"boolean","enum":[false]}},"required":["minLength","maxLength","requireCharacterClasses","allowPasswordManagerPaste","periodicRotation"]},{"type":"object","properties":{"profile":{"type":"string","enum":["default","strong"]},"breachedPasswordCheckEnabled":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["profile","breachedPasswordCheckEnabled"]}]},{"allOf":[{"type":"object","properties":{"minLength":{"type":"number","enum":[12]},"maxLength":{"type":"number","enum":[128]},"requireCharacterClasses":{"type":"boolean","enum":[false]},"allowPasswordManagerPaste":{"type":"boolean","enum":[true]},"periodicRotation":{"type":"boolean","enum":[false]}},"required":["minLength","maxLength","requireCharacterClasses","allowPasswordManagerPaste","periodicRotation"]},{"type":"object","properties":{"profile":{"type":"string","enum":["default","strong"]},"breachedPasswordCheckEnabled":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["profile","breachedPasswordCheckEnabled"]}]}]}},"required":["strongPasswordEnabled","breachedPasswordCheckEnabled","mfaEnforced","ownerAdminMfaEnrollmentRequired","ssoRequired","effectivePasswordPolicy"]},"TenantDeletionBlockerDto":{"type":"object","properties":{"kind":{"type":"string","enum":["legal_hold","retention_window","tenant_lifecycle","active_upload","active_workflow","active_export","concurrent_deletion_job"]},"message":{"type":"string"},"resourceId":{"type":"string","nullable":true},"resourceType":{"type":"string","nullable":true}},"required":["kind","message"]},"TenantDeletionDryRunBucketDto":{"type":"object","properties":{"bucketName":{"type":"string"},"locationRole":{"type":"string"},"storageClass":{"type":"string","enum":["shared","dedicated"],"nullable":true},"objectCount":{"type":"number"},"totalBytes":{"type":"number"},"wouldDeleteBucket":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"truncated":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["bucketName","locationRole","storageClass","objectCount","totalBytes","wouldDeleteBucket","truncated"]},"TenantDeletionDryRunDto":{"type":"object","properties":{"prefix":{"type":"string"},"buckets":{"type":"array","items":{"$ref":"#/components/schemas/TenantDeletionDryRunBucketDto"}}},"required":["prefix","buckets"]},"TenantDeletionEligibilityDto":{"type":"object","properties":{"tenantId":{"type":"string"},"eligible":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"blockers":{"type":"array","items":{"$ref":"#/components/schemas/TenantDeletionBlockerDto"}},"dryRun":{"$ref":"#/components/schemas/TenantDeletionDryRunDto","nullable":true}},"required":["tenantId","eligible","blockers"]},"TenantDeletionEligibilityQueryDto":{"type":"object","properties":{"dryRun":{"enum":["true","false","1","0"],"type":"string","nullable":true}}},"TenantDeletionJobSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"offboardingRequestId":{"type":"string"},"status":{"type":"string","enum":["queued","succeeded","failed","cancelled","paused","draining","deleting"]},"triggeredBy":{"type":"string"},"triggeredAt":{"type":"string"},"claimedAt":{"type":"string","nullable":true},"drainingStartedAt":{"type":"string","nullable":true},"deletingStartedAt":{"type":"string","nullable":true},"completedAt":{"type":"string","nullable":true},"failedAt":{"type":"string","nullable":true},"retryCount":{"type":"number"},"lastError":{"type":"string","nullable":true},"objectsDeletedCount":{"type":"number"},"firstDestructiveBatchAt":{"type":"string","nullable":true},"pausedAt":{"type":"string","nullable":true},"pauseReason":{"type":"string","nullable":true},"holdStopReason":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","tenantId","offboardingRequestId","status","triggeredBy","triggeredAt","claimedAt","drainingStartedAt","deletingStartedAt","completedAt","failedAt","retryCount","lastError","objectsDeletedCount","createdAt","updatedAt"]},"TenantInvitationSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"email":{"type":"string"},"emailNormalized":{"type":"string"},"role":{"type":"string","enum":["owner","admin","researcher","billing_admin","viewer"]},"status":{"type":"string","enum":["expired","pending","accepted","revoked"]},"invitedByUserId":{"type":"string","nullable":true},"expiresAt":{"type":"string"},"acceptedAt":{"type":"string","nullable":true},"acceptedByUserId":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","tenantId","email","emailNormalized","role","status","invitedByUserId","expiresAt","acceptedAt","acceptedByUserId","createdAt","updatedAt"]},"TenantInvitationValidateDataDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"tenantName":{"type":"string"},"email":{"type":"string"},"role":{"type":"string","enum":["owner","admin","researcher","billing_admin","viewer"]},"status":{"type":"string","enum":["expired","pending","accepted","revoked"]},"expiresAt":{"type":"string"}},"required":["id","tenantId","tenantName","email","role","status","expiresAt"]},"TenantInvitationValidateQueryDto":{"type":"object","properties":{"token":{"type":"string"}},"required":["token"]},"TenantInvitationValidateResponseDto":{"type":"object","properties":{"invitation":{"$ref":"#/components/schemas/TenantInvitationValidateDataDto","nullable":true}},"required":["invitation"]},"TenantOffboardingDemoResultDto":{"type":"object","properties":{"status":{"type":"string","enum":["completed"]},"datasetVersionId":{"type":"string"},"checkedAt":{"type":"string"}},"required":["status","datasetVersionId","checkedAt"]},"TenantOffboardingRequestSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"status":{"type":"string","enum":["pending","active","cancelled","completed"]},"requestedBy":{"type":"string"},"requestedAt":{"type":"string"},"exportWindowEndsAt":{"type":"string"},"retentionEndsAt":{"type":"string"},"cancelledAt":{"type":"string","nullable":true},"completedAt":{"type":"string","nullable":true},"reason":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","tenantId","status","requestedBy","requestedAt","exportWindowEndsAt","retentionEndsAt","cancelledAt","completedAt","reason","createdAt","updatedAt"]},"TenantPlatformNoticeDto":{"type":"object","properties":{"id":{"type":"string"},"message":{"type":"string"},"severity":{"type":"string","enum":["critical","info","warn"]},"startsAt":{"type":"string","nullable":true},"endsAt":{"type":"string","nullable":true},"readOnlyMaintenance":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["id","message","severity"]},"TenantPlatformNoticeSwaggerDto":{"type":"object","properties":{"id":{"type":"string"},"message":{"type":"string"},"severity":{"type":"string","enum":["info","warn","critical"]},"startsAt":{"type":"object","nullable":true},"endsAt":{"type":"object","nullable":true},"readOnlyMaintenance":{"type":"boolean"}},"required":["id","message","severity"]},"TenantPlatformNoticesDataSwaggerDto":{"type":"object","properties":{"flags":{"type":"object","additionalProperties":{"type":"boolean"}},"notices":{"type":"array","items":{"$ref":"#/components/schemas/TenantPlatformNoticeSwaggerDto"}}},"required":["flags","notices"]},"TenantPlatformNoticesDto":{"type":"object","properties":{"flags":{"$ref":"#/components/schemas/Record"},"notices":{"type":"array","items":{"$ref":"#/components/schemas/TenantPlatformNoticeDto"}}},"required":["flags","notices"]},"TenantPlatformNoticesEnvelopeSwaggerDto":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TenantPlatformNoticesDataSwaggerDto"}},"required":["data"]},"TenantPlatformNoticesResponseDto":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TenantPlatformNoticesDto"}},"required":["data"]},"TenantSecretDto":{"type":"object","properties":{"id":{"type":"string"},"projectId":{"type":"string","nullable":true},"name":{"type":"string"},"createdBy":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","projectId","name","createdBy","createdAt","updatedAt"]},"TenantSsoBeginQueryDto":{"type":"object","properties":{"connectionId":{"type":"string","nullable":true},"tenantSlug":{"type":"string","nullable":true}}},"TenantSsoConnectionDto":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"protocol":{"type":"string","enum":["oidc","saml"]},"status":{"type":"string","enum":["disabled","draft","enabled"]},"issuer":{"type":"string","nullable":true},"clientId":{"type":"string","nullable":true},"hasClientSecret":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"secretRef":{"type":"string","nullable":true},"authorizationEndpoint":{"type":"string","nullable":true},"tokenEndpoint":{"type":"string","nullable":true},"jwksUri":{"type":"string","nullable":true},"samlEntityId":{"type":"string","nullable":true},"samlAcsUrl":{"type":"string","nullable":true},"samlMetadataUrl":{"type":"string","nullable":true},"hasSamlCertificate":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","name","protocol","status","issuer","clientId","hasClientSecret","secretRef","authorizationEndpoint","tokenEndpoint","jwksUri","samlEntityId","samlAcsUrl","samlMetadataUrl","hasSamlCertificate","createdAt","updatedAt"]},"TenantStorageBucketUsageDto":{"type":"object","properties":{"role":{"type":"string","enum":["dataset","export"]},"bucket":{"$ref":"#/components/schemas/StorageBucketSummaryDto"},"bytesUsed":{"type":"number","nullable":true},"bytesSource":{"type":"string","enum":["provider_metric","registered_objects"]}},"required":["role","bucket","bytesUsed","bytesSource"]},"TenantStorageProjectUsageDto":{"type":"object","properties":{"projectId":{"type":"string"},"projectName":{"type":"string"},"projectSlug":{"type":"string"},"importBytesApprox":{"type":"number"}},"required":["projectId","projectName","projectSlug","importBytesApprox"]},"TenantStorageSummaryDto":{"type":"object","properties":{"tenantId":{"type":"string"},"datasetBucket":{"$ref":"#/components/schemas/TenantStorageBucketUsageDto","nullable":true},"exportBucket":{"$ref":"#/components/schemas/TenantStorageBucketUsageDto","nullable":true},"totalBillableImportBytes":{"type":"number","nullable":true},"totalExportBytes":{"type":"number","nullable":true},"teamTotalBytes":{"type":"number","nullable":true},"projects":{"type":"array","items":{"$ref":"#/components/schemas/TenantStorageProjectUsageDto"}},"computedAt":{"type":"string"},"cacheTtlSeconds":{"type":"number"},"billingPolicy":{"type":"string","enum":["import_storage_billed_export_not_billed"]}},"required":["tenantId","datasetBucket","exportBucket","totalBillableImportBytes","totalExportBytes","teamTotalBytes","projects","computedAt","cacheTtlSeconds","billingPolicy"]},"TenantSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"slug":{"type":"string"},"name":{"type":"string"},"status":{"type":"string"},"storageKey":{"type":"string"},"handle":{"type":"string"},"ref":{"type":"string"},"url":{"type":"string"}},"required":["id","slug","name","status","storageKey"]},"TenantSummarySwaggerDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"slug":{"type":"string"},"name":{"type":"string"},"status":{"type":"string"},"storageKey":{"type":"string","description":"Immutable storage naming identity. Not a tenantId substitute; physical bucket appId is never exposed.","minLength":1,"maxLength":20,"pattern":"^[a-z0-9]{1,20}$"}},"required":["id","slug","name","status","storageKey"]},"TenantUsageQuotaSummaryDto":{"type":"object","properties":{"tenantId":{"type":"string"},"category":{"type":"string","enum":["storage","workflow","compute","egress","all"]},"billingPeriodStart":{"type":"string"},"billingPeriodEnd":{"type":"string"},"billingState":{"type":"string","nullable":true},"meters":{"type":"array","items":{"$ref":"#/components/schemas/UsageQuotaMeterLineDto"}},"projectId":{"type":"string"},"userId":{"type":"string"}},"required":["tenantId","category","billingPeriodStart","billingPeriodEnd","billingState","meters"]},"TenantUsageSummaryResponse":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TenantUsageQuotaSummaryDto"}},"required":["data"]},"TestRigProfileBodyDto":{"type":"object","properties":{"recordingId":{"type":"string","format":"uuid"}},"required":["recordingId"]},"TokenSelfDto":{"type":"object","properties":{"tenantId":{"type":"string"},"tenantSlug":{"type":"string"},"userId":{"type":"string"},"userEmail":{"type":"string","nullable":true},"credentialClass":{"type":"string","enum":["pat","scim","service","session"]},"tokenPrefix":{"type":"string","nullable":true},"tokenLastFour":{"type":"string","nullable":true},"grantCeiling":{"type":"array","items":{"type":"string"},"nullable":true,"enum":["project:read","project:write","project:manage","member:read","member:manage","dataset:read","dataset:write","annotation:read","annotation:write","annotation:review","annotation-job:manage","upload:read","upload:write","collection:manage","collection:deliver","workflow:read","workflow:run","workflow:manage","approval:read","approval:decide","algorithm:read","algorithm:write","export:read","export:write","training:read","training:write","quality:read","quality:write","recipe:read","recipe:manage","skill-taxonomy:manage","task:read","task:write","deployment:read","deployment:write","model-image:read","model-image:write","model-version:read","model-version:write","inference-deployment:read","inference-deployment:write","analytics:read","vision:annotate","tenant:read","tenant:manage","billing:read","billing:write","apikey:read","apikey:write","apikey:manage","audit:read"]},"effectivePermissions":{"type":"array","items":{"type":"string"},"enum":["project:read","project:write","project:manage","member:read","member:manage","dataset:read","dataset:write","annotation:read","annotation:write","annotation:review","annotation-job:manage","upload:read","upload:write","collection:manage","collection:deliver","workflow:read","workflow:run","workflow:manage","approval:read","approval:decide","algorithm:read","algorithm:write","export:read","export:write","training:read","training:write","quality:read","quality:write","recipe:read","recipe:manage","skill-taxonomy:manage","task:read","task:write","deployment:read","deployment:write","model-image:read","model-image:write","model-version:read","model-version:write","inference-deployment:read","inference-deployment:write","analytics:read","vision:annotate","tenant:read","tenant:manage","billing:read","billing:write","apikey:read","apikey:write","apikey:manage","audit:read"]},"scopeAllProjects":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"projectIds":{"type":"array","items":{"type":"string"}},"expiresAt":{"type":"string","nullable":true},"lastUsedAt":{"type":"string","nullable":true},"lastUsedAtNote":{"type":"string","enum":["lastUsedAt may be up to one flush interval stale"]}},"required":["tenantId","tenantSlug","userId","userEmail","credentialClass","tokenPrefix","tokenLastFour","grantCeiling","effectivePermissions","scopeAllProjects","projectIds","expiresAt","lastUsedAt","lastUsedAtNote"]},"TotpEnrollmentStartDto":{"type":"object","properties":{"otpauthUrl":{"type":"string"},"secret":{"type":"string"},"status":{"type":"string","enum":["pending_verification"]}},"required":["otpauthUrl","secret","status"]},"TotpEnrollmentVerifyRequestDto":{"type":"object","properties":{"code":{"type":"string"}},"required":["code"]},"TotpEnrollmentVerifyResponseDto":{"type":"object","properties":{"status":{"type":"string","enum":["enrolled"]},"recoveryCodes":{"type":"array","items":{"type":"string"}}},"required":["status","recoveryCodes"]},"TrainingAttemptDetailDto":{"type":"object","properties":{"publicSpec":{"$ref":"#/components/schemas/Record"},"id":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string"},"trainingJobId":{"type":"string"},"attemptNumber":{"type":"number"},"state":{"type":"string"},"desiredState":{"type":"string"},"executionClass":{"type":"string","nullable":true},"failureClass":{"type":"string","nullable":true},"failureCode":{"type":"string","nullable":true},"failureMessage":{"type":"string","nullable":true},"stagingStartedAt":{"type":"string","nullable":true},"submittedAt":{"type":"string","nullable":true},"queuedAt":{"type":"string","nullable":true},"startedAt":{"type":"string","nullable":true},"finishedAt":{"type":"string","nullable":true},"lastHeartbeatAt":{"type":"string","nullable":true},"checkpointManifestArtifactId":{"type":"string","nullable":true},"resultArtifactId":{"type":"string","nullable":true},"logArtifactId":{"type":"string","nullable":true},"metricsArtifactId":{"type":"string","nullable":true},"metricsSummary":{"$ref":"#/components/schemas/Record","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["publicSpec","id","tenantId","projectId","trainingJobId","attemptNumber","state","desiredState","executionClass","failureClass","failureCode","failureMessage","stagingStartedAt","submittedAt","queuedAt","startedAt","finishedAt","lastHeartbeatAt","checkpointManifestArtifactId","resultArtifactId","logArtifactId","metricsArtifactId","metricsSummary","createdAt","updatedAt"]},"TrainingAttemptLogsDto":{"type":"object","properties":{"text":{"type":"string"},"source":{"type":"string","enum":["kubernetes","artifact","unavailable"]},"unavailableReason":{"type":"string","nullable":true},"truncated":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"container":{"type":"string","nullable":true},"fetchedAt":{"type":"string"},"lineStart":{"type":"number"},"lineEnd":{"type":"number"},"nextLineCursor":{"type":"number","nullable":true},"prevLineCursor":{"type":"number","nullable":true},"hasMoreBefore":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"hasMoreAfter":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"totalLines":{"type":"number"}},"required":["text","source","truncated","fetchedAt"]},"TrainingAttemptSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string"},"trainingJobId":{"type":"string"},"attemptNumber":{"type":"number"},"state":{"type":"string"},"desiredState":{"type":"string"},"executionClass":{"type":"string","nullable":true},"failureClass":{"type":"string","nullable":true},"failureCode":{"type":"string","nullable":true},"failureMessage":{"type":"string","nullable":true},"stagingStartedAt":{"type":"string","nullable":true},"submittedAt":{"type":"string","nullable":true},"queuedAt":{"type":"string","nullable":true},"startedAt":{"type":"string","nullable":true},"finishedAt":{"type":"string","nullable":true},"lastHeartbeatAt":{"type":"string","nullable":true},"checkpointManifestArtifactId":{"type":"string","nullable":true},"resultArtifactId":{"type":"string","nullable":true},"logArtifactId":{"type":"string","nullable":true},"metricsArtifactId":{"type":"string","nullable":true},"metricsSummary":{"$ref":"#/components/schemas/Record","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","tenantId","projectId","trainingJobId","attemptNumber","state","desiredState","executionClass","failureClass","failureCode","failureMessage","stagingStartedAt","submittedAt","queuedAt","startedAt","finishedAt","lastHeartbeatAt","checkpointManifestArtifactId","resultArtifactId","logArtifactId","metricsArtifactId","metricsSummary","createdAt","updatedAt"]},"TrainingCheckpointDownloadUrlDto":{"type":"object","properties":{"checkpointId":{"type":"string"},"url":{"type":"string"},"expiresAt":{"type":"string"},"method":{"type":"string","enum":["GET"]},"objectKey":{"type":"string","nullable":true},"sizeBytes":{"type":"number","nullable":true}},"required":["checkpointId","url","expiresAt","method"]},"TrainingCheckpointSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string"},"trainingJobId":{"type":"string"},"trainingAttemptId":{"type":"string"},"checkpointKey":{"type":"string"},"step":{"type":"number","nullable":true},"artifactId":{"type":"string","nullable":true},"sizeBytes":{"type":"number","nullable":true},"sha256":{"type":"string","nullable":true},"status":{"type":"string"},"isFinal":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"excludedPaths":{"type":"array","items":{"type":"string"},"nullable":true},"createdAt":{"type":"string"},"deletedAt":{"type":"string","nullable":true}},"required":["id","tenantId","projectId","trainingJobId","trainingAttemptId","checkpointKey","step","artifactId","sizeBytes","sha256","status","isFinal","excludedPaths","createdAt","deletedAt"]},"TrainingJobHuggingFaceInputBodyDto":{"type":"object","properties":{"type":{"type":"string","enum":["huggingface"]},"datasetId":{"type":"string","maxLength":256},"revision":{"type":"string","nullable":true,"maxLength":128},"hfToken":{"type":"string","nullable":true,"description":"One-time materialization only — never persisted.","maxLength":512}},"required":["type","datasetId"]},"TrainingJobSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string"},"trainingArtifactId":{"type":"string"},"modelImageRevisionId":{"type":"string"},"computeProfileCode":{"type":"string"},"trainSpec":{"$ref":"#/components/schemas/Record","nullable":true},"desiredState":{"type":"string"},"status":{"type":"string"},"resumeFromCheckpointArtifactId":{"type":"string","nullable":true},"latestAttemptId":{"type":"string","nullable":true},"registeredModelVersionId":{"type":"string","nullable":true},"metricsSummary":{"$ref":"#/components/schemas/Record","nullable":true},"failureSummary":{"$ref":"#/components/schemas/Record","nullable":true},"model":{"type":"string","nullable":true},"framework":{"type":"string","nullable":true},"outputArtifactId":{"type":"string","nullable":true},"datasetVersionId":{"type":"string","nullable":true},"inputProvenance":{"oneOf":[{"type":"object","properties":{"kind":{"type":"string","enum":["export-derived"]},"datasetVersionId":{"type":"string"}},"required":["kind","datasetVersionId"]},{"type":"object","properties":{"kind":{"type":"string","enum":["external-artifact"]}},"required":["kind"]},{"type":"object","properties":{"kind":{"type":"string","enum":["huggingface"]},"hfDatasetId":{"type":"string"},"hfRevision":{"type":"string","nullable":true}},"required":["kind","hfDatasetId","hfRevision"]},{"type":"object","properties":{"kind":{"type":"string","enum":["project-version"]},"projectVersionId":{"type":"string"},"digest":{"type":"string","nullable":true},"ref":{"type":"string"},"versionExportId":{"type":"string"}},"required":["kind","projectVersionId","digest","ref","versionExportId"]}],"nullable":true},"gpuClassCode":{"type":"string","nullable":true},"gpuCount":{"type":"number","nullable":true},"cancelRequestedAt":{"type":"string","nullable":true},"finishedAt":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","tenantId","projectId","trainingArtifactId","modelImageRevisionId","computeProfileCode","trainSpec","desiredState","status","resumeFromCheckpointArtifactId","latestAttemptId","registeredModelVersionId","metricsSummary","failureSummary","model","framework","outputArtifactId","cancelRequestedAt","finishedAt","createdAt","updatedAt"]},"TrainingMetricPointDto":{"type":"object","properties":{"id":{"type":"string"},"trainingAttemptId":{"type":"string"},"step":{"type":"number"},"epoch":{"type":"number","nullable":true},"loss":{"type":"number","nullable":true},"phase":{"type":"string","nullable":true},"metrics":{"$ref":"#/components/schemas/Record","nullable":true},"recordedAt":{"type":"string"}},"required":["id","trainingAttemptId","step","epoch","loss","phase","metrics","recordedAt"]},"TrainingMetricPointListResponseDto":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TrainingMetricPointDto"}},"nextPageToken":{"type":"string"},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]}},"required":["data","meta"]},"TrashItemDto":{"type":"object","properties":{"type":{"type":"string","enum":["project","version","recording","episode","model"]},"id":{"type":"string"},"name":{"type":"string"},"projectId":{"type":"string"},"deletedBy":{"type":"string","nullable":true},"deletedAt":{"type":"string"},"restoreUntil":{"type":"string"},"sizeBytes":{"type":"number"}},"required":["type","id","name","projectId","deletedBy","deletedAt","restoreUntil","sizeBytes"]},"TrashMoveResponseDto":{"type":"object","properties":{"type":{"type":"string","enum":["project","version","recording","episode","model"]},"id":{"type":"string"},"deletedAt":{"type":"string"},"restoreUntil":{"type":"string"}},"required":["type","id","deletedAt","restoreUntil"]},"UpdateAlgorithmRevisionReviewBodyDto":{"type":"object","properties":{"reviewStatus":{"enum":["approved","rejected"],"type":"string"},"reviewNotes":{"type":"string","nullable":true},"approvedEgressDomains":{"type":"array","items":{"type":"string"},"nullable":true}},"required":["reviewStatus"]},"UpdateCurrentTenantMembershipBodyDto":{"type":"object","properties":{"expiresAt":{"type":"string","nullable":true,"format":"date-time"},"role":{"type":"string","enum":["owner","admin","researcher","billing_admin","viewer"]},"status":{"type":"string","enum":["active","disabled","expired","removed"]},"permissionsOverlay":{"nullable":true,"type":"object","allOf":[{"$ref":"#/components/schemas/PermissionOverlayBodyDto"}]}}},"UpdateCurrentUserBodyDto":{"type":"object","properties":{"displayName":{"type":"string","nullable":true},"avatarUrl":{"type":"string","nullable":true,"format":"uri"}}},"UpdateCurrentUserResponseDto":{"type":"object","properties":{"user":{"$ref":"#/components/schemas/UserSummaryDto"}},"required":["user"]},"UpdatePipelineDefinitionCatalogBodyDto":{"type":"object","properties":{"taskTypes":{"type":"array","items":{"type":"string"},"nullable":true},"applicableProjectTypes":{"type":"array","items":{"type":"string"},"nullable":true},"templateKeyNodes":{"type":"string","nullable":true},"recommendedScenarios":{"type":"string","nullable":true}}},"UpdateProjectMemberBodyDto":{"type":"object","properties":{"expiresAt":{"type":"string","nullable":true,"format":"date-time"},"role":{"enum":["owner","editor","reviewer","labeler","viewer","uploader","data_supplier"],"type":"string"},"roles":{"type":"array","minItems":1,"items":{"type":"string"},"enum":["owner","editor","reviewer","labeler","viewer","uploader","data_supplier"]},"status":{"enum":["active","disabled","removed"],"type":"string"},"permissionsOverlay":{"nullable":true,"type":"object","allOf":[{"$ref":"#/components/schemas/PermissionOverlayBodyDto"}]}}},"UpdateProjectPipelineBindingBodyDto":{"type":"object","properties":{"workflowDefinitionId":{"type":"string","format":"uuid","nullable":true},"pinnedRevisionId":{"type":"string","format":"uuid","nullable":true},"paramOverrides":{"type":"object","additionalProperties":true,"nullable":true},"triggerMode":{"enum":["on_upload","manual_only","on-upload-submit","manual"],"type":"string","nullable":true},"isActive":{"type":"boolean","nullable":true}}},"UpdateProjectRecordingPrivacyBodyDto":{"type":"object","properties":{"privacyRequirement":{"type":"string","enum":["required","not_required"]},"basis":{"type":"string","minLength":1,"maxLength":2000}},"required":["privacyRequirement","basis"]},"UpdateTenantAuthPolicyRequestDto":{"type":"object","properties":{"strongPasswordEnabled":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"breachedPasswordCheckEnabled":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"mfaEnforced":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"ownerAdminMfaEnrollmentRequired":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"ssoRequired":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}}},"UpdateTenantBillingStateBodyDto":{"type":"object","properties":{"status":{"type":"string","enum":["active","warned","frozen","read_only","cleanup_window"]},"freezeReason":{"type":"string","nullable":true,"maxLength":2000}},"required":["status"]},"UpdateTenantSecretBodyDto":{"type":"object","properties":{"value":{"type":"string","minLength":1}},"required":["value"]},"UpdateTenantSsoConnectionRequestDto":{"type":"object","properties":{"name":{"type":"string"},"issuer":{"type":"string"},"clientId":{"type":"string"},"clientSecret":{"type":"string","nullable":true},"secretRef":{"type":"string","nullable":true},"authorizationEndpoint":{"type":"string"},"tokenEndpoint":{"type":"string"},"jwksUri":{"type":"string"},"samlEntityId":{"type":"string"},"samlAcsUrl":{"type":"string"},"samlMetadataUrl":{"type":"string"},"samlCertificate":{"type":"string","nullable":true},"status":{"type":"string","enum":["disabled","draft","enabled"]}}},"UpdateUsageBudgetBodyDto":{"type":"object","properties":{"storageLimitBytes":{"type":"number","minimum":1000000000},"monthlyBudgetMinor":{"type":"number","nullable":true,"minimum":1},"hardStop":{"type":"boolean"}}},"UpdateUserAccountBodyDto":{"type":"object","properties":{"status":{"type":"string","enum":["active","disabled"]}},"required":["status"]},"UpdateUserAccountResponseDto":{"type":"object","properties":{"user":{"$ref":"#/components/schemas/UserSummaryDto"}},"required":["user"]},"UpdateWebhookEndpointBodyDto":{"type":"object","properties":{"url":{"type":"string","minLength":1,"maxLength":2048},"description":{"type":"string","nullable":true,"maxLength":500},"eventTypes":{"type":"array","items":{"type":"string"}},"status":{"enum":["active","disabled"],"type":"string"}}},"UpdateWorkflowDefinitionVisibilityBodyDto":{"type":"object","properties":{"visibility":{"enum":["private","tenant-shared","platform"],"type":"string"}},"required":["visibility"]},"UploadBatchCreatedDatasetDto":{"type":"object","properties":{"datasetId":{"type":"string"},"datasetVersionId":{"type":"string"},"name":{"type":"string"},"slug":{"type":"string"},"fileCount":{"type":"number"},"totalBytes":{"type":"number","nullable":true}},"required":["datasetId","datasetVersionId","name","slug","fileCount","totalBytes"]},"UploadBatchSubmissionBodyDto":{"type":"object","properties":{"recordingNames":{"type":"object","additionalProperties":{"type":"string","minLength":1,"maxLength":255},"description":"Recording names chosen before upload, keyed by plan dataset key. Shape is\nchecked by the service with VALIDATION_ERROR."},"datasetId":{"type":"string","nullable":true,"format":"uuid"}}},"UploadBatchSubmissionResponseDto":{"type":"object","properties":{"batchId":{"type":"string"},"status":{"type":"string"},"datasets":{"type":"array","items":{"$ref":"#/components/schemas/UploadBatchCreatedDatasetDto"}}},"required":["batchId","status","datasets"]},"UploadBatchSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string"},"datasetId":{"type":"string","nullable":true},"sourceType":{"type":"string"},"status":{"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"lastActivityAt":{"type":"string"},"totalSessions":{"type":"number"},"completedSessions":{"type":"number"},"failedSessions":{"type":"number"},"datasetCount":{"type":"number"},"latestDatasetPlanStatus":{"type":"string","nullable":true},"materializationStatus":{"type":"string","nullable":true},"latestRun":{"type":"object","properties":{"id":{"type":"string"},"status":{"type":"string"}},"required":["id","status"],"nullable":true},"failure":{"$ref":"#/components/schemas/FailureReasonDto","nullable":true}},"required":["id","tenantId","projectId","datasetId","sourceType","status","createdAt","updatedAt","lastActivityAt","latestRun","failure"]},"UploadCompletionBodyDto":{"type":"object","properties":{"parts":{"type":"array","items":{"$ref":"#/components/schemas/CompletionRequestPartBodyDto"}}}},"UploadCompletionResponseDto":{"type":"object","properties":{"storageObjectId":{"type":"string"},"session":{"type":"object","properties":{"status":{"type":"string"}},"required":["status"]}},"required":["storageObjectId","session"]},"UploadDatasetPlanDatasetDto":{"type":"object","properties":{"key":{"type":"string"},"name":{"type":"string"},"sourceType":{"type":"string"},"fileCount":{"type":"number"},"totalBytes":{"type":"number"},"files":{"type":"array","items":{"$ref":"#/components/schemas/UploadDatasetPlanFileDto"}},"groupingMode":{"type":"string","enum":["directory","single-file","manual-merge"]},"rootPath":{"type":"string","nullable":true},"captureSession":{"$ref":"#/components/schemas/UploadPlanCaptureSession"}},"required":["key","name","sourceType","fileCount","totalBytes","files"]},"UploadDatasetPlanDto":{"type":"object","properties":{"status":{"type":"string","enum":["ready","empty","needs-attention"]},"projectType":{"type":"string"},"sourceType":{"type":"string"},"fileCount":{"type":"number"},"totalBytes":{"type":"number"},"datasets":{"type":"array","items":{"$ref":"#/components/schemas/UploadDatasetPlanDatasetDto"}},"issues":{"type":"array","items":{"$ref":"#/components/schemas/UploadDatasetPlanIssueDto"}},"ignoredFiles":{"type":"array","items":{"type":"string"}}},"required":["status","projectType","sourceType","fileCount","totalBytes","datasets","issues"]},"UploadDatasetPlanFileDto":{"type":"object","properties":{"originalFilename":{"type":"string"},"relativePath":{"type":"string"},"contentType":{"type":"string","nullable":true},"sizeBytes":{"type":"number"},"checksumExpected":{"type":"string","nullable":true}},"required":["originalFilename","relativePath","sizeBytes"]},"UploadDatasetPlanIssueDto":{"type":"object","properties":{"code":{"type":"string"},"severity":{"type":"string","enum":["warning","error"]},"message":{"type":"string"},"relativePaths":{"type":"array","items":{"type":"string"}}},"required":["code","severity","message"]},"UploadFileGroupCaptureSessionBodyDto":{"type":"object","properties":{"datasetKey":{"type":"string","description":"Plan file-group key this session applies to."},"captureSession":{"$ref":"#/components/schemas/UploadPlanCaptureSessionBodyDto"}},"required":["datasetKey","captureSession"]},"UploadGroupingOverrideBodyDto":{"type":"object","properties":{"captureSession":{"$ref":"#/components/schemas/UploadPlanCaptureSessionBodyDto"},"targetDatasetKey":{"type":"string"},"targetDatasetName":{"type":"string"},"relativePaths":{"type":"array","items":{"type":"string"}}},"required":["targetDatasetKey","targetDatasetName","relativePaths"]},"UploadPlanCaptureSession":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"role":{"type":"string","enum":["other","calibration","mapping","gripper_calibration","demo"]}},"required":["role"]},"UploadPlanCaptureSessionBodyDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string","minLength":1,"maxLength":120},"role":{"enum":["mapping","calibration","gripper_calibration","demo","other"],"type":"string"}},"required":["role"]},"UploadSessionSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"uploadBatchId":{"type":"string"},"storageBucketId":{"type":"string","nullable":true},"objectKey":{"type":"string"},"originalFilename":{"type":"string"},"uploadMode":{"type":"string","enum":["single","multipart"]},"status":{"type":"string"},"expiresAt":{"type":"string"},"putUrl":{"type":"string"},"providerUploadId":{"type":"string","nullable":true},"completedAt":{"type":"string","nullable":true},"storageObjectId":{"type":"string","nullable":true},"error":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}},"required":["code","message"]},"writeCredentials":{"$ref":"#/components/schemas/ScopedWriteCredentialsDto"},"partSizeBytes":{"type":"number"}},"required":["id","uploadBatchId","objectKey","originalFilename","uploadMode","status","expiresAt"]},"UploadSessionSummarySwaggerDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"uploadBatchId":{"type":"string","format":"uuid"},"storageBucketId":{"type":"string","nullable":true,"format":"uuid"},"objectKey":{"type":"string"},"originalFilename":{"type":"string"},"uploadMode":{"enum":["single","multipart"],"type":"string"},"status":{"type":"string"},"expiresAt":{"type":"string","format":"date-time"},"putUrl":{"type":"string"},"providerUploadId":{"type":"string","nullable":true},"writeCredentials":{"description":"Object-key scoped write STS. Present only for PAT principals. Cookie/browser sessions never receive this, even with X-Embodiflow-Client: cli.","allOf":[{"$ref":"#/components/schemas/ScopedWriteCredentialsSwaggerDto"}]},"partSizeBytes":{"type":"number","description":"Multipart part size from computePartSizeBytes(sizeBytes)."}},"required":["id","uploadBatchId","objectKey","originalFilename","uploadMode","status","expiresAt"]},"UpsertProjectPiiPolicyBodyDto":{"type":"object","properties":{"requiredBeforeExport":{"type":"boolean"},"requireSpotCheckBeforeExport":{"type":"boolean"},"detectors":{"maxItems":16,"type":"array","items":{"type":"string"}},"maskingMode":{"type":"string","enum":["blur","redact"]}},"required":["requiredBeforeExport"]},"UpsertQualityPolicyBodyDto":{"type":"object","properties":{"name":{"type":"string"},"status":{"type":"string"},"specJson":{"type":"object","additionalProperties":true,"description":"embodiflow-quality-policy/v1 document (validated in the service)."},"scopeLevel":{"type":"string","description":"Optional; must agree with the tenant scope or 400 QUALITY_POLICY_SCOPE_CONFLICT.","enum":["tenant","project"]}},"required":["specJson"]},"UpsertQualityRuleSetBodyDto":{"type":"object","properties":{"name":{"type":"string"},"status":{"type":"string"},"specJson":{"type":"object","additionalProperties":true},"scopeLevel":{"type":"string","description":"ADR 0157 W7 (optional request field): must agree with the path scope.","enum":["tenant","project"]}},"required":["specJson"]},"UsageAggregationDto":{"type":"object","properties":{"period":{"type":"string","enum":["current","previous"]},"periodKey":{"type":"string"},"periodStart":{"type":"string"},"periodEnd":{"type":"string"},"groupBy":{"type":"string","enum":["project","category"]},"groups":{"type":"array","items":{"$ref":"#/components/schemas/UsageAggregationGroupDto"}},"totals":{"$ref":"#/components/schemas/UsageAggregationTotalsDto"}},"required":["period","periodKey","periodStart","periodEnd","groupBy","groups","totals"]},"UsageAggregationGroupDto":{"type":"object","properties":{"projectId":{"type":"string","nullable":true},"projectName":{"type":"string","nullable":true},"category":{"type":"string","enum":["storage","processing","gpu","endpoint","other"]},"quantity":{"type":"string"},"unit":{"type":"string"},"meters":{"type":"array","items":{"$ref":"#/components/schemas/UsageAggregationMeterQuantityDto"}}},"required":["quantity","unit","meters"]},"UsageAggregationMeterQuantityDto":{"type":"object","properties":{"meterCode":{"type":"string"},"quantity":{"type":"string"}},"required":["meterCode","quantity"]},"UsageAggregationTotalsDto":{"type":"object","properties":{"storageGbMonth":{"$ref":"#/components/schemas/UsageStorageGbMonthTileDto"},"processingMinutes":{"type":"string"},"gpuHours":{"type":"string"},"endpointHours":{"type":"string"},"other":{"type":"string"}},"required":["storageGbMonth","processingMinutes","gpuHours","endpointHours","other"]},"UsageAttestationExportDto":{"type":"object","properties":{"jws":{"type":"string"},"payload":{"$ref":"#/components/schemas/UsageAttestationPayloadDto"},"publicJwk":{"$ref":"#/components/schemas/UsageAttestationPublicJwkDto"}},"required":["jws","payload","publicJwk"]},"UsageAttestationMeterDto":{"type":"object","properties":{"code":{"type":"string"},"quantity":{"type":"string"}},"required":["code","quantity"]},"UsageAttestationPayloadDto":{"type":"object","properties":{"typ":{"type":"string","enum":["embodiflow-usage-attestation"]},"licenseId":{"type":"string"},"instanceId":{"type":"string"},"periodStart":{"type":"number"},"periodEnd":{"type":"number"},"meters":{"type":"array","items":{"$ref":"#/components/schemas/UsageAttestationMeterDto"}},"iat":{"type":"number"}},"required":["typ","licenseId","instanceId","periodStart","periodEnd","meters","iat"]},"UsageAttestationPeriodQueryDto":{"type":"object","properties":{"periodStart":{"type":"string","format":"date-time","nullable":true},"periodEnd":{"type":"string","format":"date-time","nullable":true}}},"UsageAttestationPublicJwkDto":{"type":"object","properties":{"kid":{"type":"string"},"kty":{"type":"string","enum":["OKP"]},"crv":{"type":"string","enum":["Ed25519"]},"x":{"type":"string"}},"required":["kid","kty","crv","x"]},"UsageBudgetDto":{"type":"object","properties":{"storage":{"$ref":"#/components/schemas/UsageBudgetStorageDto"},"money":{"$ref":"#/components/schemas/UsageBudgetMoneyDto"}},"required":["storage","money"]},"UsageBudgetMoneyDto":{"type":"object","properties":{"monthlyBudgetMinor":{"type":"number","nullable":true},"currency":{"type":"string"},"hardStop":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"spentMinor":{"type":"number"}},"required":["monthlyBudgetMinor","currency","hardStop","spentMinor"]},"UsageBudgetStorageDto":{"type":"object","properties":{"limitBytes":{"type":"number"},"ceilingBytes":{"type":"number"},"usedBytes":{"type":"number"},"pendingBytes":{"type":"number"},"trashBytes":{"type":"number"},"percent":{"type":"number"},"state":{"type":"string","enum":["ok","warning","reached"]}},"required":["limitBytes","ceilingBytes","usedBytes","pendingBytes","trashBytes","percent","state"]},"UsageEstimateDto":{"type":"object","properties":{"durationSeconds":{"type":"number"},"units":{"type":"array","items":{"$ref":"#/components/schemas/UsageEstimateUnitDto"}},"price":{"$ref":"#/components/schemas/UsageEstimatePriceDto","nullable":true},"basis":{"type":"string","enum":["coefficient","history","declared_resources"]},"evidence":{"type":"array","items":{"type":"string"}},"limitCheck":{"type":"object","properties":{"wouldExceed":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"remainingBytes":{"type":"number"}},"required":["wouldExceed","remainingBytes"]}},"required":["durationSeconds","units","price","basis","evidence","limitCheck"]},"UsageEstimatePriceDto":{"type":"object","properties":{"amountMinor":{"type":"number"},"currency":{"type":"string"}},"required":["amountMinor","currency"]},"UsageEstimateUnitDto":{"type":"object","properties":{"meterCode":{"type":"string"},"quantity":{"type":"number"}},"required":["meterCode","quantity"]},"UsageLedgerEntryDto":{"type":"object","properties":{"id":{"type":"string"},"meterId":{"type":"string"},"meterCode":{"type":"string"},"sourceType":{"type":"string"},"sourceId":{"type":"string"},"quantity":{"type":"string"},"occurredAt":{"type":"string"}},"required":["id","meterId","meterCode","sourceType","sourceId","quantity","occurredAt"]},"UsageMeterSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"code":{"type":"string"},"unit":{"type":"string"},"aggregationStrategy":{"type":"string"}},"required":["id","code","unit","aggregationStrategy"]},"UsageQueryDto":{"type":"object","properties":{"period":{"enum":["current","previous"],"type":"string","nullable":true},"groupBy":{"enum":["project","category"],"type":"string","nullable":true}}},"UsageQuotaMeterLineDto":{"type":"object","properties":{"meterCode":{"type":"string"},"displayName":{"type":"string"},"quantity":{"type":"string"},"unit":{"type":"string"},"includedQuantity":{"type":"string","nullable":true},"limitQuantity":{"type":"string","nullable":true},"status":{"type":"string","enum":["warn","allowed","blocked"]},"reasonCode":{"type":"string","enum":["TENANT_FROZEN","TENANT_READ_ONLY","FEATURE_DISABLED","STORAGE_QUOTA_EXCEEDED","GPU_QUOTA_EXCEEDED","WORKFLOW_CONCURRENCY_LIMIT_EXCEEDED"],"nullable":true},"configuredWarnRatio":{"type":"number","nullable":true},"effectiveWarnRatio":{"type":"number"},"configuredBlockRatio":{"type":"number","nullable":true},"effectiveBlockRatio":{"type":"number"}},"required":["meterCode","displayName","quantity","unit","includedQuantity","limitQuantity","status","reasonCode"]},"UsageStorageGbMonthTileDto":{"type":"object","properties":{"quantity":{"type":"string","nullable":true},"metered":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["quantity","metered"]},"UsageSummaryDto":{"type":"object","properties":{"periodStart":{"type":"string"},"periodEnd":{"type":"string"},"totalsByMeterCode":{"$ref":"#/components/schemas/Record"},"breakdownByProject":{"type":"array","items":{"$ref":"#/components/schemas/UsageSummaryProjectBreakdownDto"}},"breakdownByUser":{"type":"array","items":{"$ref":"#/components/schemas/UsageSummaryUserBreakdownDto"}},"breakdownByTier":{"type":"array","items":{"$ref":"#/components/schemas/UsageSummaryTierBreakdownDto"}}},"required":["periodStart","periodEnd","totalsByMeterCode"]},"UsageSummaryProjectBreakdownDto":{"type":"object","properties":{"projectId":{"type":"string"},"projectName":{"type":"string"},"meterCode":{"type":"string"},"quantity":{"type":"string"},"storageTier":{"type":"string","nullable":true}},"required":["projectId","projectName","meterCode","quantity"]},"UsageSummaryQueryDto":{"type":"object","properties":{"category":{"type":"string","nullable":true},"projectId":{"type":"string","format":"uuid","nullable":true},"userId":{"type":"string","format":"uuid","nullable":true}}},"UsageSummaryTierBreakdownDto":{"type":"object","properties":{"storageTier":{"type":"string"},"quantity":{"type":"string"},"billable":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["storageTier","quantity","billable"]},"UsageSummaryUserBreakdownDto":{"type":"object","properties":{"userId":{"type":"string"},"userDisplayName":{"type":"string"},"meterCode":{"type":"string"},"quantity":{"type":"string"},"storageTier":{"type":"string","nullable":true}},"required":["userId","userDisplayName","meterCode","quantity"]},"UserImportResultDto":{"type":"object","properties":{"id":{"type":"string"},"rows":{"type":"array","items":{"$ref":"#/components/schemas/UserImportRowResultDto"}},"summary":{"$ref":"#/components/schemas/UserImportSummaryDto"}},"required":["id","rows","summary"]},"UserImportRowBodyDto":{"type":"object","properties":{"mode":{"type":"string","enum":["invite","create"]},"email":{"type":"string"},"role":{"type":"string","enum":["owner","admin","researcher","billing_admin","viewer"]},"displayName":{"type":"string","nullable":true,"maxLength":120},"initialPassword":{"type":"string","minLength":8,"maxLength":128}},"required":["mode","email","role"]},"UserImportRowResultDto":{"type":"object","properties":{"rowIndex":{"type":"number"},"email":{"type":"string"},"mode":{"type":"string","enum":["invite","create"]},"status":{"type":"string","enum":["created","invited","invitation_reused","idempotent_replay","failed"]},"userId":{"type":"string"},"membershipId":{"type":"string"},"invitationId":{"type":"string"},"errorCode":{"type":"string"},"errorMessage":{"type":"string"}},"required":["rowIndex","email","mode","status"]},"UserImportSummaryDto":{"type":"object","properties":{"total":{"type":"number"},"succeeded":{"type":"number"},"failed":{"type":"number"}},"required":["total","succeeded","failed"]},"UserMfaStatusDto":{"type":"object","properties":{"totp":{"type":"object","properties":{"status":{"type":"string","enum":["unenrolled","pending_verification","enrolled"]},"enrolledAt":{"type":"string","nullable":true}},"required":["status"]},"webauthnCredentialCount":{"type":"number"},"recoveryCodesRemaining":{"type":"number"},"mfaEnrollmentRequired":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"mfaEnrollmentGraceExpiresAt":{"type":"string","nullable":true}},"required":["totp","webauthnCredentialCount","recoveryCodesRemaining","mfaEnrollmentRequired"]},"UserNotificationItemDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"eventId":{"type":"string","format":"uuid"},"eventType":{"type":"string"},"resourceType":{"type":"string"},"resourceId":{"type":"string","format":"uuid"},"projectId":{"type":"string","nullable":true,"format":"uuid"},"occurredAt":{"type":"string"},"read":{"type":"boolean"},"truncated":{"type":"boolean"},"href":{"type":"string","nullable":true},"resourceLabel":{"type":"string","nullable":true},"projectName":{"type":"string","nullable":true},"resourceStatus":{"type":"string","nullable":true},"count":{"type":"number","minimum":1}},"required":["id","eventId","eventType","resourceType","resourceId","projectId","occurredAt","read","truncated","href","count"]},"UserNotificationItemEnvelopeDto":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/UserNotificationItemDto"}},"required":["data"]},"UserNotificationListEnvelopeDto":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/UserNotificationItemDto"}},"nextPageToken":{"type":"string"},"meta":{"$ref":"#/components/schemas/UserNotificationListMetaDto","type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}}}},"required":["data","meta"]},"UserNotificationListMetaDto":{"type":"object","properties":{"pageSize":{"type":"number"}},"required":["pageSize"]},"UserNotificationMarkAllReadEnvelopeDto":{"type":"object","properties":{"data":{"type":"object","properties":{"updated":{"type":"number"}}}},"required":["data"]},"UserNotificationUnreadCountEnvelopeDto":{"type":"object","properties":{"data":{"type":"object","properties":{"unreadCount":{"type":"number"}}}},"required":["data"]},"UserSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"email":{"type":"string","nullable":true},"displayName":{"type":"string","nullable":true},"avatarUrl":{"type":"string","nullable":true},"hasPassword":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"status":{"type":"string"},"lastLoginAt":{"type":"string","nullable":true},"emailVerifiedAt":{"type":"string","nullable":true},"handle":{"type":"string"}},"required":["id","email","displayName","avatarUrl","hasPassword","status","lastLoginAt","emailVerifiedAt"]},"ValidateAlgorithmImageRefBodyDto":{"type":"object","properties":{"imageRef":{"type":"string"},"registryUrl":{"type":"string","nullable":true},"registryServer":{"type":"string","nullable":true},"registryUsername":{"type":"string","nullable":true},"registryPassword":{"type":"string","nullable":true}},"required":["imageRef"]},"ValidateAlgorithmImageRefResponseDto":{"type":"object","properties":{"ok":{"type":"boolean","enum":[true]},"normalizedImageRef":{"type":"string"}},"required":["ok","normalizedImageRef"]},"ValidateModelImageRefBodyDto":{"type":"object","properties":{"imageRef":{"type":"string"},"registryServer":{"type":"string","nullable":true},"registryUsername":{"type":"string","nullable":true},"registryPassword":{"type":"string","nullable":true}},"required":["imageRef"]},"ValidateModelImageRefResponseDto":{"type":"object","properties":{"ok":{"type":"boolean","enum":[true]},"normalizedImageRef":{"type":"string"}},"required":["ok","normalizedImageRef"]},"ValidateProjectImportBodyDto":{"type":"object","properties":{"credentials":{"$ref":"#/components/schemas/CredentialsDto"},"conditionalIdentitySupported":{"type":"boolean"}},"required":["credentials"]},"VersionAliasListEnvelopeSwaggerDto":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/VersionAliasListRowSwaggerDto"}},"nextPageToken":{"type":"string"}},"required":["data"]},"VersionAliasListRowSwaggerDto":{"type":"object","properties":{"name":{"type":"string"},"versionNumber":{"type":"number","minimum":1},"updatedAt":{"type":"string"},"updatedBy":{"type":"string","nullable":true}},"required":["name","versionNumber","updatedAt"]},"VersionAliasMutationDto":{"type":"object","properties":{"name":{"type":"string"},"versionNumber":{"type":"number"},"previousVersionNumber":{"type":"number","nullable":true}},"required":["name","versionNumber","previousVersionNumber"]},"VersionAliasMutationSwaggerDto":{"type":"object","properties":{"name":{"type":"string"},"versionNumber":{"type":"integer"}},"required":["name","versionNumber"]},"VersionDataContractAction":{"type":"object","properties":{"space":{"type":"string","enum":["none","robot_joint","robot_tcp","human_pose_proxy"]},"dimensionNames":{"type":"array","items":{"type":"string"}},"units":{"type":"array","items":{"type":"string"}},"coordinateFrames":{"type":"array","items":{"type":"string"}},"representation":{"type":"string","enum":["absolute","relative","delta"]},"embodimentId":{"type":"string"},"controlRateHz":{"type":"number"}},"required":["space"]},"VersionDataContractCamera":{"type":"object","properties":{"key":{"type":"string"},"role":{"type":"string"}},"required":["key","role"]},"VersionDataContractGroup":{"type":"object","properties":{"key":{"type":"string"},"dataContractDigest":{"type":"string"},"episodeCount":{"type":"number"},"schema":{"$ref":"#/components/schemas/FrozenFeatureSchema"},"cameraOrder":{"type":"array","items":{"$ref":"#/components/schemas/VersionDataContractCamera"}},"sourceFormats":{"type":"array","items":{"type":"string"}},"actionSemantics":{"$ref":"#/components/schemas/VersionDataContractAction"},"conventions":{"type":"object","properties":{"version":{"type":"string","enum":["embodiflow-data-conventions/v1"]},"frames":{"$ref":"#/components/schemas/Record"},"features":{"$ref":"#/components/schemas/Record"},"sourceClocks":{"$ref":"#/components/schemas/Record"},"stereoPairs":{"type":"array","items":{"type":"object","properties":{"left":{"type":"string"},"right":{"type":"string"},"baselineM":{"type":"number"},"source":{"type":"string","enum":["unknown","estimated","device"]}},"required":["left","right","baselineM","source"]},"nullable":true},"timeOffsets":{"$ref":"#/components/schemas/Record","nullable":true}},"required":["version","frames","features","sourceClocks"]}},"required":["key","dataContractDigest","episodeCount","schema","cameraOrder","sourceFormats","actionSemantics","conventions"]},"VersionExportDownloadEnvelopeSwaggerDto":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/VersionExportDownloadSwaggerDto"}},"required":["data"]},"VersionExportDownloadFile":{"type":"object","properties":{"path":{"type":"string"},"sizeBytes":{"type":"number","nullable":true},"sha256":{"type":"string","nullable":true},"url":{"type":"string"}},"required":["path","sizeBytes","sha256","url"]},"VersionExportDownloadFileSwaggerDto":{"type":"object","properties":{"path":{"type":"string"},"sizeBytes":{"type":"number","nullable":true},"sha256":{"type":"string","nullable":true},"url":{"type":"string"}},"required":["path","url"]},"VersionExportDownloadResponse":{"type":"object","properties":{"downloadSessionId":{"type":"string"},"expiresAt":{"type":"string"},"zipUrl":{"type":"string","nullable":true},"files":{"type":"array","items":{"$ref":"#/components/schemas/VersionExportDownloadFile"}},"pageToken":{"type":"string","nullable":true}},"required":["downloadSessionId","expiresAt","zipUrl","files","pageToken"]},"VersionExportDownloadSwaggerDto":{"type":"object","properties":{"downloadSessionId":{"type":"string"},"expiresAt":{"type":"string"},"zipUrl":{"type":"string","nullable":true},"files":{"type":"array","items":{"$ref":"#/components/schemas/VersionExportDownloadFileSwaggerDto"}},"pageToken":{"type":"string","nullable":true}},"required":["downloadSessionId","expiresAt","files"]},"VersionExportDto":{"type":"object","properties":{"id":{"type":"string"},"format":{"type":"string"},"options":{"$ref":"#/components/schemas/VersionExportOptions"},"state":{"type":"string","enum":["queued","running","succeeded","failed"]},"loadCheck":{"type":"string","enum":["failed","passed","not_applicable","not_evaluated"],"nullable":true},"loadCheckError":{"type":"string","nullable":true},"sizeBytes":{"type":"number","nullable":true},"createdAt":{"type":"string"},"workflowRunId":{"type":"string","nullable":true}},"required":["id","format","options","state","loadCheck","loadCheckError","sizeBytes","createdAt","workflowRunId"]},"VersionExportEnvelopeSwaggerDto":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/VersionExportSwaggerDto"}},"required":["data"]},"VersionExportListEnvelopeSwaggerDto":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/VersionExportSwaggerDto"}},"nextPageToken":{"type":"string"}},"required":["data"]},"VersionExportOptions":{"type":"object","properties":{"episodePer":{"type":"string","enum":["episode","subtask"]},"includeDerivedAction":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"includeImages":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"includeLabels":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"splits":{"type":"array","items":{"type":"string"},"enum":["test","val","train"]},"taskLanguage":{"type":"string","enum":["en","zh"]},"videoCodec":{"type":"string","enum":["av1","h264","keep"]},"maxWidth":{"type":"number"}},"required":["episodePer","includeDerivedAction","includeImages","includeLabels","splits","taskLanguage","videoCodec"]},"VersionExportOptionsBodyDto":{"type":"object","properties":{"episodePer":{"enum":["episode","subtask"],"type":"string"},"includeDerivedAction":{"type":"boolean"},"includeImages":{"type":"boolean","description":"Embed camera frames in the file; meaningful for hdf5-robomimic."},"includeLabels":{"type":"boolean"},"splits":{"type":"array","items":{"type":"string"},"enum":["train","val","test"]},"taskLanguage":{"enum":["en","zh"],"type":"string"},"videoCodec":{"enum":["av1","h264","keep"],"type":"string"},"maxWidth":{"type":"number","minimum":0,"maximum":8192,"description":"Camera width after export; 0 keeps the native size. Absent means 1024 for human projects and native for robot projects."}}},"VersionExportPreviewDto":{"type":"object","properties":{"versionNumber":{"type":"number"},"episodes":{"type":"number"},"recordings":{"type":"number"},"unreviewedAiEpisodeCount":{"type":"number"},"privacyWarnings":{"type":"array","items":{"type":"object","properties":{"recordingId":{"type":"string"},"identity":{"type":"string","enum":["QC0300","QC0301","QC0302"]},"status":{"type":"string"},"reasonCode":{"type":"string"}},"required":["recordingId","identity","status"]}}},"required":["versionNumber","episodes","recordings","unreviewedAiEpisodeCount","privacyWarnings"]},"VersionExportPreviewEnvelopeSwaggerDto":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/VersionExportPreviewSwaggerDto"}},"required":["data"]},"VersionExportPreviewSwaggerDto":{"type":"object","properties":{"versionNumber":{"type":"number"},"episodes":{"type":"number"},"recordings":{"type":"number"},"unreviewedAiEpisodeCount":{"type":"number","description":"AI-proposed episodes that no human has reviewed"},"privacyWarnings":{"type":"array","items":{"$ref":"#/components/schemas/VersionExportPrivacyWarningSwaggerDto"}}},"required":["versionNumber","episodes","recordings","unreviewedAiEpisodeCount","privacyWarnings"]},"VersionExportPrivacyWarningSwaggerDto":{"type":"object","properties":{"recordingId":{"type":"string"},"identity":{"enum":["QC0300","QC0301","QC0302"],"type":"string"},"status":{"type":"string"},"reasonCode":{"type":"string"}},"required":["recordingId","identity","status"]},"VersionExportSwaggerDto":{"type":"object","properties":{"id":{"type":"string"},"format":{"type":"string"},"options":{"type":"object"},"state":{"enum":["queued","running","succeeded","failed"],"type":"string"},"loadCheck":{"nullable":true,"enum":["passed","failed","not_applicable","not_evaluated"],"type":"string"},"loadCheckError":{"type":"string","nullable":true},"sizeBytes":{"type":"number","nullable":true},"createdAt":{"type":"string"},"workflowRunId":{"type":"string","nullable":true}},"required":["id","format","options","state","createdAt"]},"VersionTrainingAdvancedBodyDto":{"type":"object","properties":{"hyperparameters":{"type":"object","additionalProperties":true},"baseModelId":{"type":"string","format":"uuid"},"seed":{"type":"number"},"imageRevisionId":{"type":"string","format":"uuid"},"coTrainVersion":{"type":"string","format":"uuid"}}},"VersionTrainingCreatedDto":{"type":"object","properties":{"modelId":{"type":"string"},"trainingJobId":{"type":"string"},"state":{"type":"string"}},"required":["modelId","trainingJobId","state"]},"VersionTrainingCreatedEnvelopeSwaggerDto":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/VersionTrainingCreatedSwaggerDto"}},"required":["data"]},"VersionTrainingCreatedSwaggerDto":{"type":"object","properties":{"modelId":{"type":"string"},"trainingJobId":{"type":"string"},"state":{"type":"string"}},"required":["modelId","trainingJobId","state"]},"VersionTrainingFlavorDto":{"type":"object","properties":{"computeFlavor":{"type":"string"},"gpuName":{"type":"string"},"gpuMemoryGb":{"type":"number"},"gpuCount":{"type":"number"},"hourlyPrice":{"$ref":"#/components/schemas/UsageEstimatePriceDto"},"available":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["computeFlavor","gpuName","gpuMemoryGb","gpuCount","hourlyPrice","available"]},"VersionTrainingPolicyCardDto":{"type":"object","properties":{"policy":{"type":"string","enum":["act","smolvla","diffusion","pi0_lora","pi05_lora","groot","wall_oss"]},"available":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"unavailableReason":{"type":"string","nullable":true},"minGpuMemoryGb":{"type":"number","nullable":true},"needsTask":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"parameterCount":{"type":"number","nullable":true}},"required":["policy","available","unavailableReason","minGpuMemoryGb","needsTask","parameterCount"]},"VersionTrainingPriceSwaggerDto":{"type":"object","properties":{"amountMinor":{"type":"integer"}},"required":["amountMinor"]},"VersionTrainingRecommendationDto":{"type":"object","properties":{"recommended":{"type":"object","properties":{"policy":{"type":"string","enum":["act","smolvla","diffusion","pi0_lora","pi05_lora","groot","wall_oss"]},"reasonKey":{"type":"string","enum":["single_task_below_act_max","single_task_at_least_act_max","multi_task_pi05","multi_task_smolvla"]}},"required":["policy","reasonKey"]},"inputs":{"type":"object","properties":{"distinctTaskCount":{"type":"number"},"trainEpisodeCount":{"type":"number"},"bestGpuMemoryGb":{"type":"number"}},"required":["distinctTaskCount","trainEpisodeCount","bestGpuMemoryGb"]},"policies":{"type":"array","items":{"$ref":"#/components/schemas/VersionTrainingPolicyCardDto"}},"flavors":{"type":"array","items":{"$ref":"#/components/schemas/VersionTrainingFlavorDto"}},"hasTestSplit":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["recommended","inputs","policies","flavors","hasTestSplit"]},"VersionTrainingRecommendationEnvelopeSwaggerDto":{"type":"object","properties":{"data":{"type":"object"}},"required":["data"]},"VisionAnnotateBodyDto":{"type":"object","properties":{"imageBase64":{"type":"string","minLength":64,"maxLength":16777216},"mimeType":{"type":"string","enum":["image/jpeg","image/png","image/webp"]},"context":{"type":"string","maxLength":512}},"required":["imageBase64"]},"VisionAnnotateResponseDto":{"type":"object","properties":{"model":{"type":"string"},"latencyMs":{"type":"number"},"annotation":{"$ref":"#/components/schemas/VisionFrameAnnotation"}},"required":["model","latencyMs","annotation"]},"VisionFrameAnnotation":{"type":"object","properties":{"scene":{"type":"string"},"objects":{"type":"array","items":{"$ref":"#/components/schemas/VisionObjectAnnotation"}},"action":{"type":"string","enum":["unknown","idle","approaching","grasping","lifting","placing","releasing","recovering"]}},"required":["scene","objects","action"]},"VisionObjectAnnotation":{"type":"object","properties":{"name":{"type":"string"},"role":{"type":"string","enum":["robot","gripper","tool","target","obstacle","background"]},"state":{"type":"string","enum":["unknown","moving","static","held","occluded"]}},"required":["name","role","state"]},"WebAuthnCredentialDto":{"type":"object","properties":{"id":{"type":"string"},"friendlyName":{"type":"string","nullable":true},"createdAt":{"type":"string"},"lastUsedAt":{"type":"string","nullable":true},"transports":{"type":"array","items":{"type":"string"},"nullable":true}},"required":["id","friendlyName","createdAt","lastUsedAt","transports"]},"WebAuthnRegistrationOptionsDto":{"type":"object","properties":{"options":{"$ref":"#/components/schemas/Record"},"challengeId":{"type":"string"}},"required":["options","challengeId"]},"WebAuthnRegistrationRequestDto":{"type":"object","properties":{"challengeId":{"type":"string"},"attestation":{"$ref":"#/components/schemas/Record"},"friendlyName":{"type":"string"}},"required":["challengeId","attestation"]},"WebhookDeliveryDetailDto":{"type":"object","properties":{"payload":{"type":"object","additionalProperties":true},"requestHeaders":{"$ref":"#/components/schemas/Record"},"responseExcerpt":{"type":"string","nullable":true},"id":{"type":"string"},"endpointId":{"type":"string"},"eventId":{"type":"string"},"eventType":{"type":"string"},"occurredAt":{"type":"string"},"state":{"type":"string","enum":["queued","failed","leased","delivered"]},"attemptCount":{"type":"number"},"firstAttemptAt":{"type":"string","nullable":true},"lastAttemptAt":{"type":"string","nullable":true},"responseStatus":{"type":"number","nullable":true},"failureCode":{"type":"string","nullable":true},"createdAt":{"type":"string"}},"required":["payload","requestHeaders","responseExcerpt","id","endpointId","eventId","eventType","occurredAt","state","attemptCount","firstAttemptAt","lastAttemptAt","responseStatus","failureCode","createdAt"]},"WebhookDeliverySummaryDto":{"type":"object","properties":{"id":{"type":"string"},"endpointId":{"type":"string"},"eventId":{"type":"string"},"eventType":{"type":"string"},"occurredAt":{"type":"string"},"state":{"type":"string","enum":["queued","failed","leased","delivered"]},"attemptCount":{"type":"number"},"firstAttemptAt":{"type":"string","nullable":true},"lastAttemptAt":{"type":"string","nullable":true},"responseStatus":{"type":"number","nullable":true},"failureCode":{"type":"string","nullable":true},"createdAt":{"type":"string"}},"required":["id","endpointId","eventId","eventType","occurredAt","state","attemptCount","firstAttemptAt","lastAttemptAt","responseStatus","failureCode","createdAt"]},"WebhookEndpointDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string","nullable":true},"url":{"type":"string"},"description":{"type":"string","nullable":true},"eventTypes":{"type":"array","items":{"type":"string"},"enum":["recording.processed","recording.failed","recording.imported","version.created","version.redacted","version.alias_set","export.succeeded","export.failed","workflow.run.succeeded","workflow.run.failed","training.job.succeeded","training.job.failed","collection.submission.decided","erasure.completed"]},"status":{"type":"string","enum":["active","disabled","disabled_by_platform"]},"secretVersion":{"type":"number"},"previousSecretExpiresAt":{"type":"string","nullable":true},"consecutiveFailureCount":{"type":"number"},"lastFailureAt":{"type":"string","nullable":true},"lastSuccessAt":{"type":"string","nullable":true},"disabledAt":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["id","tenantId","projectId","url","description","eventTypes","status","secretVersion","previousSecretExpiresAt","consecutiveFailureCount","lastFailureAt","lastSuccessAt","disabledAt","createdAt","updatedAt"]},"WebhookEndpointSecretDto":{"type":"object","properties":{"signingSecret":{"type":"string"},"id":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string","nullable":true},"url":{"type":"string"},"description":{"type":"string","nullable":true},"eventTypes":{"type":"array","items":{"type":"string"},"enum":["recording.processed","recording.failed","recording.imported","version.created","version.redacted","version.alias_set","export.succeeded","export.failed","workflow.run.succeeded","workflow.run.failed","training.job.succeeded","training.job.failed","collection.submission.decided","erasure.completed"]},"status":{"type":"string","enum":["active","disabled","disabled_by_platform"]},"secretVersion":{"type":"number"},"previousSecretExpiresAt":{"type":"string","nullable":true},"consecutiveFailureCount":{"type":"number"},"lastFailureAt":{"type":"string","nullable":true},"lastSuccessAt":{"type":"string","nullable":true},"disabledAt":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}},"required":["signingSecret","id","tenantId","projectId","url","description","eventTypes","status","secretVersion","previousSecretExpiresAt","consecutiveFailureCount","lastFailureAt","lastSuccessAt","disabledAt","createdAt","updatedAt"]},"WorkflowBindingView":{"type":"object","properties":{"purpose":{"type":"string","enum":["export","processing"]},"revisionRef":{"type":"string","nullable":true},"triggers":{"$ref":"#/components/schemas/Record","nullable":true},"updatedAt":{"type":"string","nullable":true}},"required":["purpose","revisionRef","triggers","updatedAt"]},"WorkflowDefinitionView":{"type":"object","properties":{"id":{"type":"string"},"code":{"type":"string"},"name":{"type":"string"},"description":{"type":"string","nullable":true},"reusable":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"owner":{"type":"string","enum":["tenant","platform"]},"purpose":{"type":"string","nullable":true},"latestRevision":{"type":"number","nullable":true},"specHash":{"type":"string","nullable":true},"publishedAt":{"type":"string","nullable":true},"rowVersion":{"type":"number"}},"required":["id","code","name","description","reusable","owner","purpose","latestRevision","specHash","publishedAt","rowVersion"]},"WorkflowIssue":{"type":"object","properties":{"code":{"type":"string"},"severity":{"type":"string","enum":["warning","info","blocking"]},"stepId":{"type":"string"},"path":{"type":"string"},"message":{"type":"string"},"requirement":{"type":"string"}},"required":["code","severity","path","message"]},"WorkflowRevisionView":{"type":"object","properties":{"id":{"type":"string"},"revision":{"type":"number"},"spec":{"type":"object","additionalProperties":true},"specHash":{"type":"string"},"purpose":{"type":"string"},"layout":{"type":"object","additionalProperties":true},"publishedAt":{"type":"string","nullable":true},"rowVersion":{"type":"number"}},"required":["id","revision","spec","specHash","purpose","layout","publishedAt","rowVersion"]},"WorkflowRunQueryRecentQualityJobs":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/WorkflowRunSummaryDto"}},"nextPageToken":{"type":"string"},"meta":{"type":"object","properties":{"pageSize":{"type":"number"},"requestId":{"type":"string"}},"required":["pageSize"]}},"required":["data","meta"]},"WorkflowRunSelectionBodyDto":{"type":"object","properties":{"recordingIds":{"type":"string","format":"uuid","nullable":true},"episodeIds":{"type":"string","format":"uuid","nullable":true},"savedViewId":{"type":"string","format":"uuid","nullable":true},"annotationJobId":{"type":"string","format":"uuid","nullable":true}}},"WorkflowRunSoftFailureEntry":{"type":"object","properties":{"stepKey":{"type":"string"},"attempt":{"type":"number"},"reason":{"type":"string"},"continuedAt":{"type":"string"}},"required":["stepKey","attempt","reason","continuedAt"]},"WorkflowRunStageBreakdownDto":{"type":"object","properties":{"stages":{"type":"array","items":{"$ref":"#/components/schemas/WorkflowRunStageSummaryDto"}},"failedStage":{"type":"string","enum":["export","quality","cleaning","annotation"],"nullable":true}},"required":["stages"]},"WorkflowRunStageSummaryDto":{"type":"object","properties":{"stage":{"type":"string","enum":["export","quality","cleaning","annotation"]},"title":{"type":"string"},"enabledStepCount":{"type":"number"},"completedStepCount":{"type":"number"},"failedStepCount":{"type":"number"},"status":{"type":"string","enum":["pending","running","succeeded","failed","cancelled","waiting_approval","skipped","not_started"]},"startedAt":{"type":"string","nullable":true},"finishedAt":{"type":"string","nullable":true},"failedStepKey":{"type":"string","nullable":true},"nextAction":{"type":"string","nullable":true}},"required":["stage","title","enabledStepCount","completedStepCount","failedStepCount","status","startedAt","finishedAt"]},"WorkflowRunSummaryDto":{"type":"object","properties":{"id":{"type":"string"},"tenantId":{"type":"string"},"projectId":{"type":"string","nullable":true},"workflowDefinitionId":{"type":"string","nullable":true},"workflowRevisionId":{"type":"string","nullable":true},"jobType":{"type":"string"},"status":{"type":"string","enum":["queued","running","succeeded","failed","cancelled","waiting_approval","starting","paused"]},"datasetId":{"type":"string","nullable":true},"datasetVersionId":{"type":"string","nullable":true},"uploadBatchId":{"type":"string","nullable":true},"workflowDefinitionName":{"type":"string","nullable":true},"workflowName":{"type":"string","nullable":true},"failure":{"$ref":"#/components/schemas/FailureReasonDto","nullable":true},"activeStepKey":{"type":"string","nullable":true},"failedStepKey":{"type":"string","nullable":true},"inputRef":{"$ref":"#/components/schemas/Record","nullable":true},"spec":{"$ref":"#/components/schemas/Record","nullable":true},"outputRef":{"$ref":"#/components/schemas/Record","nullable":true},"requestedBy":{"type":"string","nullable":true},"startedAt":{"type":"string","nullable":true},"finishedAt":{"type":"string","nullable":true},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"resultSummary":{"type":"string","nullable":true},"errorSummary":{"type":"string","nullable":true},"warningSummary":{"$ref":"#/components/schemas/WorkflowRunWarningSummary","nullable":true},"hasSoftFailures":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]},"stageBreakdown":{"$ref":"#/components/schemas/WorkflowRunStageBreakdownDto","nullable":true},"triggerSource":{"type":"string","nullable":true},"isDryRun":{"oneOf":[{"type":"boolean","enum":[false]},{"type":"boolean","enum":[true]}]}},"required":["id","tenantId","projectId","workflowDefinitionId","workflowRevisionId","jobType","status","datasetId","datasetVersionId","inputRef","outputRef","requestedBy","startedAt","finishedAt","createdAt","updatedAt"]},"WorkflowRunWarningSummary":{"type":"object","properties":{"softFailureCount":{"type":"number"},"softFailures":{"type":"array","items":{"$ref":"#/components/schemas/WorkflowRunSoftFailureEntry"}},"message":{"type":"string"}},"required":["softFailureCount","softFailures","message"]},"WorkflowValidationResponse":{"type":"object","properties":{"issues":{"type":"array","items":{"$ref":"#/components/schemas/WorkflowIssue"}},"resolved":{"$ref":"#/components/schemas/ResolvedStepInterfaceMap"}},"required":["issues","resolved"]}},"responses":{"AuthUnauthorized":{"description":"Authentication failed. A specific TOKEN_* cause is returned only when the presented hash matched a stored row.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/PublishedAuthProblem"},{"type":"object","properties":{"status":{"type":"integer","enum":[401]},"code":{"type":"string","enum":["TOKEN_MALFORMED","TOKEN_NOT_FOUND","TOKEN_EXPIRED","TOKEN_REVOKED","UNAUTHORIZED","SESSION_EXPIRED","ACTIVATION_REQUIRED","MFA_REQUIRED"]}}}]}}}},"AuthzForbidden":{"description":"Authorization failed. PERMISSION_DENIED on an any-of route lists the alternatives in message.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/PublishedAuthProblem"},{"type":"object","properties":{"status":{"type":"integer","enum":[403]},"code":{"type":"string","enum":["PERMISSION_DENIED","PERMISSION_NOT_DECLARED","FORBIDDEN","MEMBERSHIP_NOT_FOUND","MEMBERSHIP_DISABLED","MEMBERSHIP_EXPIRED","PROJECT_MEMBERSHIP_EXPIRED"]}}}]}}}},"AuthRateLimited":{"description":"Authenticated per-principal or per-tenant request budget exceeded. Rate-limit headers appear only on 429.","headers":{"Retry-After":{"description":"Seconds to wait before retrying.","schema":{"type":"string"}},"X-RateLimit-Limit":{"description":"Enforced limit for the bucket that rejected the request.","schema":{"type":"integer"}},"X-RateLimit-Remaining":{"description":"Remaining requests in the current window (0 on this response).","schema":{"type":"integer"}},"X-RateLimit-Reset":{"description":"Unix timestamp (seconds) when the window resets.","schema":{"type":"integer"}}},"content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/PublishedAuthProblem"},{"type":"object","properties":{"status":{"type":"integer","enum":[429]},"code":{"type":"string","enum":["RATE_LIMITED"]}}}]}}}},"BadRequest":{"description":"Request failed validation or was otherwise not acceptable.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[400]},"code":{"type":"string","enum":["ALGORITHM_GOVERNANCE_GATE_BLOCKED","ASSET_PROJECT_MISMATCH","ASSET_TENANT_MISMATCH","ASSET_TYPE_UNSUPPORTED","ASSET_VALIDATION_ERROR","ASSIGNEE_NOT_IN_PROJECT","AUDIT_LOG_EXPORT_TOO_LARGE","AUDIT_LOG_INVALID_TIME_RANGE","AUDIT_LOG_TIME_RANGE_REQUIRED","AUDIT_LOG_WINDOW_TOO_LARGE","AUTH_PROVIDER_NOT_CONFIGURED","BAD_REQUEST","BILLING_BLOCKED","CATALOG_INVALID_METADATA_KEY","CATALOG_INVALID_SORT_FIELD","CATALOG_SEARCH_DSL_INVALID","CATALOG_SEARCH_EXPRESSION_TOO_DEEP","CATALOG_SEARCH_EXPRESSION_TOO_LARGE","CATALOG_SEARCH_FIELD_NOT_ALLOWED","CATALOG_SEARCH_INDEX_NOT_READY","CATALOG_SEARCH_OPERATOR_NOT_ALLOWED","CATALOG_SEARCH_SCHEMA_UNAVAILABLE","CATALOG_SEARCH_SEMANTIC_NOT_READY","CATALOG_SEARCH_VALIDATION_ERROR","CATALOG_VALIDATION_ERROR","CHECKPOINT_NOT_COMPLETE","CHECKPOINT_NOT_FOUND","CLI_LOGIN_ALREADY_CONSUMED","CLI_LOGIN_EXPIRED","CLI_LOGIN_MEMBERSHIP_INVALID","CLI_LOGIN_NOT_APPROVED","CLI_LOGIN_NOT_PENDING","COLLECTION_ASSIGNMENT_CSV_LIMIT","COLLECTION_DELIVERY_BANNED_ROOT_NAME","COLLECTION_DELIVERY_BANNED_SOURCE_METADATA_ROOT","COLLECTION_DELIVERY_INVALID_SHAPE","COLLECTION_DELIVERY_SKILL_TARGET_NOT_TERM_IDENTITY","COLLECTION_DELIVERY_SKILL_TARGET_USED_BINDING_IDENTITY","COLLECTION_DELIVERY_UNKNOWN_BATCH_STATE","COLLECTION_DELIVERY_UNKNOWN_ORDER_STATE","COLLECTION_REVIEW_REASON_REQUIRED","COMPOSITION_IDEMPOTENCY_KEY_REQUIRED","COMPOSITION_PROFILE_VALIDATION_ERROR","COMPUTE_PROFILE_INACTIVE","COMPUTE_PROFILE_NOT_FOUND","CSRF_INVALID","CURRENT_PASSWORD_INVALID","CURRENT_PASSWORD_REQUIRED","DATASET_MIXTURE_RECIPE_INVALID","DATASET_VERSION_CONTRACT_BLOCKED","DATASET_VERSION_MANIFEST_MISSING","DATASET_VERSION_METADATA_MISSING","DATASET_VERSION_MISMATCH","DATASET_VERSION_NOT_QUERYABLE","DATASET_VERSION_NOT_SOFT_HIDDEN","DATASET_VERSION_QUALITY_BLOCKED","DATASET_VERSION_STATS_STALE","DATA_CONTRACT_REVISION_NOT_PUBLISHED","DATA_CONTRACT_VALIDATION_ERROR","DESTINATION_NOT_ALLOWED","DIFF_NOT_READY","EDGE_INFERENCE_DISABLED","EGO_HUMAN_HIGH_RES_COST","EGO_HUMAN_PRIVACY_PREREQUISITE","EMBODIMENT_INCOMPATIBLE","EMBODIMENT_NOT_PUBLISHED","EMPTY_UPLOAD_MANIFEST","ENDPOINT_LIMIT_EXCEEDED","EPISODE_LANGUAGE_NOT_ENABLED","EXPORT_BLOCKED_BY_PII_POLICY","FROZEN_VERSION_ANNOTATION_WRITE_FORBIDDEN","GROUPED_DATASET_SCALE","IDEMPOTENCY_KEY_INVALID","IF_MATCH_INVALID","IMAGE_ARCH_UNSUPPORTED","IMAGE_FAMILY_UNSUPPORTED","IMAGE_GPU_MEMORY_INSUFFICIENT","IMAGE_REVISION_NOT_EXECUTABLE","IMAGE_REVISION_NOT_PUBLISHED","IMAGE_WIRE_UNSUPPORTED","IMPORTED_CHECKPOINT_INCOMPLETE","IMPORTED_CHECKPOINT_INVALID_PATH","IMPORT_EXECUTION_FAILED","IMPORT_VALIDATION_FAILED","INFERENCE_DEPLOYMENT_NOT_RUNNING","INFERENCE_ENDPOINT_NOT_EXPOSED","INITIAL_PASSWORD_REQUIRED","INVALID_INPUT","INVALID_PERMISSION_OVERLAY","INVALID_ROLE_TRANSITION","INVALID_STATUS_TRANSITION","INVITATION_EXPIRED","INVITATION_INVALID","LEGAL_HOLD_SCOPE_INVALID","LICENSE_SEAT_LIMIT","LICENSE_TENANT_LIMIT","LINEAGE_FILTER_REQUIRED","MODEL_BUNDLE_OBJECTS_REQUIRED","MODEL_BUNDLE_PREFIX_INVALID","MODEL_BUNDLE_PREFIX_REQUIRED","MODEL_IMAGE_REVISION_NOT_EXECUTABLE","MODEL_IMAGE_REVISION_NOT_PUBLISHED","MODEL_IMAGE_REVISION_REVOKED","MODEL_IMAGE_SELF_REVIEW_FORBIDDEN","MODEL_VERSION_INVALID_STATUS","MODEL_VERSION_NOT_READY","OAUTH_ACCOUNT_LINK_REQUIRED","OAUTH_EXCHANGE_FAILED","OAUTH_STATE_INVALID","PAGE_SIZE_TOO_LARGE","PAGE_TOKEN_INVALID","PAGE_TOKEN_QUERY_MISMATCH","PASSWORD_POLICY_VIOLATION","PASSWORD_RESET_CODE_EXPIRED","PASSWORD_RESET_CODE_INVALID","PASSWORD_RESET_REQUEST_TOO_FREQUENT","PASSWORD_RESET_TOKEN_EXPIRED","PASSWORD_RESET_TOKEN_INVALID","PASSWORD_REUSE_NOT_ALLOWED","PROVENANCE_SCHEMA_INVALID","QUALITY_CHECK_PARAM_INVALID","QUALITY_CHECK_UNKNOWN","QUALITY_IDEMPOTENCY_KEY_REQUIRED","QUALITY_POLICY_LEGACY_SPEC","QUALITY_POLICY_SCOPE_CONFLICT","QUERY_DSL_INVALID","QUERY_FIELD_NOT_ALLOWED","QUERY_INDEX_BUILDING","QUERY_INDEX_FAILED","QUERY_INDEX_NOT_BUILT","QUERY_INDEX_NOT_READY","QUERY_INDEX_STALE","QUERY_ROW_LIMIT_EXCEEDED","REGISTRATION_INVITATION_EXPIRED","REPRO_BUNDLE_RECIPE_INVALID","RETENTION_WINDOW_NOT_ELAPSED","REVIEW_TASK_CLOSED","SAMPLE_NOT_FOUND","SKILL_TAXONOMY_IDEMPOTENCY_KEY_REQUIRED","SKILL_TAXONOMY_INVALID_SCOPE","SKILL_TAXONOMY_INVALID_STATUS","SKILL_TAXONOMY_LABEL_EN_MISSING","SKILL_TAXONOMY_LABEL_ZH_MISSING","SKILL_TAXONOMY_PROJECT_ID_REQUIRED","SKILL_TAXONOMY_VALIDATION_ERROR","SNAPSHOT_ROW_IMMUTABLE","SPLIT_CONFIG_INVALID","SPLIT_NOT_REPRODUCIBLE","SSO_NOT_CONFIGURED","STORAGE_NOT_READY","STORAGE_PROVIDER_NOT_CONFIGURED","STORAGE_PROVISIONING_FAILED","STORAGE_RECONCILIATION_PROVIDER_UNAVAILABLE","STORAGE_REGION_NOT_AVAILABLE","TENANT_CONTEXT_MISMATCH","TENANT_NOT_OFFBOARDING","TENANT_REQUIRED","TRAINING_ARTIFACT_NOT_FINALIZED","TRAINING_ARTIFACT_UNSUPPORTED_TYPE","TRAINING_ARTIFACT_WRONG_PROJECT","TRAINING_FINALIZATION_INCOMPLETE","TRAINING_FORBIDDEN_INFRA_FIELD","TRAINING_IDEMPOTENCY_KEY_REQUIRED","TRAINING_JOB_HAS_NO_OUTPUT_ARTIFACT","TRAINING_JOB_NOT_ACTIVE","TRAINING_JOB_NOT_COMPLETED","TRAINING_PROVENANCE_UNRESOLVABLE","TRAINING_RECIPE_IDEMPOTENCY_KEY_REQUIRED","TRAINING_TENANT_FROZEN","TRAINING_VALIDATION_ERROR","TRAIN_SPEC_INVALID","UNCLASSIFIED_FILES","UNKNOWN_EVENT_TYPE","UNSUPPORTED_FILE_EXTENSION","UPLOAD_PLAN_PROJECT_TYPE_UNSUPPORTED","UPLOAD_SESSION_EXPIRED","USAGE_ATTESTATION_PERIOD_INVALID","USAGE_SUMMARY_SCOPE_INVALID","VALIDATION_ERROR","WAIVE_REASON_REQUIRED","WEBHOOK_DELIVERY_INVALID_TIME_RANGE","WEBHOOK_DELIVERY_TIME_RANGE_REQUIRED","WEBHOOK_DELIVERY_WINDOW_TOO_LARGE","WIRE_PROTOCOL_NOT_PERMITTED","WORKFLOW_DEFINITION_REVISION_NOT_PUBLISHED"]}}}]}}}},"NotFound":{"description":"The named resource does not exist or is not visible in this tenant.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[404]},"code":{"type":"string","enum":["ALGORITHM_DEFINITION_NOT_FOUND","ALGORITHM_REVISION_NOT_FOUND","ALGORITHM_SAMPLE_RUN_NOT_FOUND","ANNOTATION_CLAIM_EMPTY","ANNOTATION_ITEM_NOT_FOUND","ANNOTATION_JOB_NOT_FOUND","ANNOTATION_SNAPSHOT_NOT_FOUND","ANNOTATION_TASK_NOT_FOUND","ARTIFACT_NOT_FOUND","ASSET_BACKFILL_NOT_FOUND","ASSET_NOT_FOUND","BASE_SNAPSHOT_NOT_FOUND","CLI_LOGIN_NOT_FOUND","COLLECTION_ASSIGNMENT_NOT_FOUND","COLLECTION_CONSENT_NOT_FOUND","COLLECTION_DELIVERY_BATCH_NOT_FOUND","COLLECTION_DELIVERY_ORDER_NOT_FOUND","COLLECTION_QUOTA_NOT_FOUND","COLLECTION_SCENE_NOT_FOUND","COLLECTION_SUBMISSION_NOT_FOUND","COLLECTION_TASK_NOT_FOUND","COLLECTION_TEMPLATE_NOT_FOUND","COMPOSITION_PROFILE_NOT_FOUND","COMPOSITION_REFERENCE_NOT_FOUND","CONTAINER_RUN_NOT_FOUND","DATASET_EXPORT_JOB_NOT_FOUND","DATASET_MIXTURE_INPUT_NOT_FOUND","DATASET_MIXTURE_NOT_FOUND","DATASET_NOT_FOUND","DATASET_VERSION_FILE_NOT_FOUND","DATASET_VERSION_NOT_FOUND","DATA_CONTRACT_NOT_FOUND","DATA_CONTRACT_REVISION_NOT_FOUND","DATA_FORMAT_NOT_FOUND","DEPLOYMENT_PACKAGE_NOT_FOUND","DOWNLOAD_SESSION_NOT_FOUND","EMBODIMENT_NOT_FOUND","EPISODE_NOT_FOUND","EXPORT_NOT_FOUND","FRAME_SPATIAL_ANNOTATION_NOT_FOUND","GOVERNANCE_TAG_NOT_FOUND","IMAGE_REVISION_NOT_FOUND","IMPORTED_CHECKPOINT_NOT_FOUND","IMPORT_JOB_NOT_FOUND","IMPORT_SOURCE_NOT_FOUND","INFERENCE_DEPLOYMENT_NOT_FOUND","INVITATION_NOT_FOUND","ITEM_NOT_IN_VERSION","LEGAL_HOLD_NOT_FOUND","LEGAL_HOLD_SCOPE_NOT_FOUND","LEROBOT_META_INFO_MISSING","LINEAGE_NODE_NOT_FOUND","MODEL_BUNDLE_JOB_NOT_FOUND","MODEL_IMAGE_DEFINITION_NOT_FOUND","MODEL_IMAGE_REVISION_NOT_FOUND","MODEL_VERSION_NOT_FOUND","NOT_FOUND","OFFBOARDING_REQUEST_NOT_FOUND","PIPELINE_BINDING_NOT_FOUND","PROJECT_NOT_FOUND","PROJECT_VERSION_NOT_FOUND","PROVENANCE_NOT_AVAILABLE","QUALITY_RULE_SET_NOT_FOUND","RECORDING_NOT_FOUND","REPAIR_TASK_NOT_FOUND","REPRO_BUNDLE_INPUT_NOT_FOUND","REPRO_BUNDLE_SPLIT_MISSING","RESOURCE_NOT_FOUND","REVIEW_TASK_NOT_FOUND","RIG_PROFILE_NOT_FOUND","SAMPLE_SELECTION_NOT_FOUND","SAVED_VIEW_NOT_FOUND","SDK_ARTIFACT_UNKNOWN","SESSION_NOT_FOUND","SKILL_TAXONOMY_NOT_FOUND","SKILL_TAXONOMY_TERM_NOT_FOUND","STORAGE_OBJECT_NOT_FOUND","STORAGE_RECONCILIATION_JOB_NOT_FOUND","SUBJECT_NOT_IN_TENANT","SUBSCRIPTION_NOT_FOUND","TENANT_DELETION_JOB_NOT_FOUND","TENANT_NOT_FOUND","TIME_RANGE_ANNOTATION_NOT_FOUND","TRAINING_ARTIFACT_NOT_FOUND","TRAINING_ATTEMPT_NOT_FOUND","TRAINING_JOB_NOT_FOUND","TRAINING_RECIPE_NOT_FOUND","UPLOAD_BATCH_NOT_FOUND","UPLOAD_SESSION_NOT_FOUND","USER_NOTIFICATION_NOT_FOUND","WEBHOOK_DELIVERY_NOT_FOUND","WEBHOOK_ENDPOINT_NOT_FOUND","WORKFLOW_DEFINITION_NOT_FOUND","WORKFLOW_NOT_FOUND","WORKFLOW_NOT_VISIBLE","WORKFLOW_REVISION_NOT_FOUND","WORKFLOW_RUN_NOT_FOUND"]}}}]}}}},"Conflict":{"description":"The request conflicts with the current resource state.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[409]},"code":{"type":"string","enum":["ALGORITHM_VERSION_DISABLED","ALGORITHM_VERSION_EXISTS","ANNOTATION_COMPLETION_STALE","ANNOTATION_ITEM_HAS_SUGGESTIONS","ANNOTATION_JOB_NOT_OPEN","BILLING_STATE_TRANSITION_INVALID","COLLECTION_DELIVERY_ALREADY_TERMINAL","COLLECTION_ORDER_NOT_DRAFT","COLLECTION_QUOTA_CAP_REACHED","COLLECTION_SPECIFICATION_FROZEN","COLLECTION_SUBMISSION_NOT_IN_REVIEW","COMPOSITION_PROFILE_IN_PROGRESS","CURRENT_SESSION_NOT_REVOCABLE","DATASET_MIXTURE_STATE_CONFLICT","DATA_CONTRACT_REVISION_IMMUTABLE","DATA_FORMAT_PUBLISH_CONFLICT","DATA_FORMAT_SAMPLE_LIMIT","DATA_FORMAT_SAMPLE_NOT_DRAFT","DATA_FORMAT_SLUG_TAKEN","DELETION_BLOCKED_BY_ACTIVE_WORK","DUPLICATE_TAG_KEY","EMAIL_ALREADY_REGISTERED","EPISODE_NOT_INDEXED","EPISODE_REVISION_CONFLICT","EXPORT_ALREADY_FINALIZED","HANDLE_TAKEN","IDEMPOTENCY_CONFLICT","IMPORT_SOURCE_CHANGED","INVITATION_ALREADY_ACCEPTED","INVITATION_EMAIL_MISMATCH","INVITATION_REVOKED","INVOICE_SNAPSHOT_ALREADY_EXISTS","LAST_OWNER_PROTECTION","LEGAL_HOLD_ACTIVE","LEGAL_HOLD_ALREADY_RELEASED","MODEL_BUNDLE_JOB_NOT_RUNNING","MODEL_COMPARISON_INCOMPLETE","OFFBOARDING_BLOCKED_BY_LEGAL_HOLD","OFFBOARDING_BLOCKED_BY_LINEAGE","OFFBOARDING_REQUEST_ALREADY_ACTIVE","PIPELINE_BINDING_ALREADY_EXISTS","QUALITY_POLICY_CREATE_RACE_CONFLICT","RECONCILIATION_ALREADY_RUNNING","RIG_PROFILE_NAME_TAKEN","RIG_PROFILE_PUBLISH_CONFLICT","SAVED_VIEW_NAME_TAKEN","SKILL_TAXONOMY_CONFLICT","SLUG_ALREADY_EXISTS","SLUG_GENERATION_CONFLICT","SPLIT_CONFIG_IMMUTABLE","STORAGE_BUCKET_ALREADY_EXISTS","STORAGE_RECONCILIATION_ALREADY_RUNNING","TENANT_DELETION_JOB_CONFLICT","TENANT_DELETION_JOB_NOT_RETRYABLE","TENANT_SLUG_CONFLICT","TENANT_STORAGE_KEY_CONFLICT","TRAINING_CANCEL_CONFLICT","TRAINING_IDEMPOTENCY_KEY_CONFLICT","TRAINING_INVALID_STATE_TRANSITION","TRAINING_LEASE_CONFLICT","TRAINING_LEASE_NOT_HELD","TRAINING_NON_TERMINAL_ATTEMPT_EXISTS","TRAINING_OBSERVATION_VERSION_CONFLICT","TRAINING_PROVIDER_BINDING_CONFLICT","TRAINING_RECIPE_LEGAL_HOLD_BLOCKED","TRAINING_RECIPE_SNAPSHOT_MISMATCH","TRAINING_RECIPE_STATE_CONFLICT","TRAINING_RETRY_CONFLICT","TRASH_ITEM_IN_USE","TRASH_PARENT_DELETED","UPLOAD_BATCH_ACTIVE","UPLOAD_BATCH_NOT_DISCARDABLE","UPLOAD_SESSION_ALREADY_ABORTED","UPLOAD_SESSION_ALREADY_COMPLETED","USER_ALREADY_MEMBER","VERSION_ALREADY_EXISTS","VERSION_IN_TRASH","WEBHOOK_DELIVERY_IN_FLIGHT","WEBHOOK_ENDPOINT_DISABLED","WORKFLOW_DEFINITION_CODE_CONFLICT","WORKFLOW_RERUN_NOT_ALLOWED","WORKFLOW_REVIEW_ALREADY_DECIDED","WORKFLOW_RUN_STATE_CONFLICT"]}}}]}}}},"UnprocessableEntity":{"description":"The request was well-formed but semantically not processable.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[422]},"code":{"type":"string","enum":["ALGORITHM_BUILD_FAILED","ALGORITHM_CLOUD_BUILD_UNAVAILABLE","ALGORITHM_FILE_VERSION_UNSUPPORTED","ALGORITHM_IMAGE_COMMAND_MISSING","ALGORITHM_IMAGE_COMMAND_UNREACHABLE","ALGORITHM_IMAGE_DIGEST_REQUIRED","ALGORITHM_IMAGE_PUSH_UNAVAILABLE","ALGORITHM_IMAGE_REF_FORBIDDEN","ALGORITHM_INPUT_FORMAT_UNKNOWN","ALGORITHM_KIND_PROFILE_MISMATCH","ALGORITHM_PULL_SECRET_INVALID","ALGORITHM_PYTHON_ENTRYPOINT_MISSING","ALGORITHM_PYTHON_REQUIREMENTS_TOO_MANY","ALGORITHM_PYTHON_REQUIREMENT_DUPLICATE","ALGORITHM_PYTHON_REQUIREMENT_INVALID","ALGORITHM_PYTHON_SOURCE_INVALID","ALGORITHM_PYTHON_SOURCE_MISSING","ALGORITHM_PYTHON_SOURCE_TOO_LARGE","ALGORITHM_SAMPLE_RUN_GPU_UNSUPPORTED","ALGORITHM_SAMPLE_RUN_INPUT_NOT_READY","ALGORITHM_SAMPLE_RUN_INPUT_TOO_LARGE","ALGORITHM_SAMPLE_RUN_PARAMS_UNSUPPORTED","ALGORITHM_SAMPLE_RUN_RECORDINGS_INVALID","ALGORITHM_SAMPLE_RUN_SOURCE_UNSUPPORTED","ALGORITHM_SAMPLE_RUN_UNAVAILABLE","ALGORITHM_SOURCE_FIELDS_CONFLICT","ALGORITHM_VERSION_BELOW_SUGGESTED","ANNOTATION_COMPLETION_INCOMPLETE","AUDIO_UNSUPPORTED","COLLECTION_ASSIGNMENT_NOT_COLLECTOR","COLLECTION_CONSENT_REQUIRED","COLLECTION_DELIVERY_ACCEPTANCE_REASON_REQUIRED","COLLECTION_DELIVERY_ACCEPTANCE_WAIVER_REQUIRED","COLLECTION_DELIVERY_ORDER_NOT_ACCEPTING","COLLECTION_DELIVERY_REPLACEMENT_NOT_ALLOWED","COLLECTION_DELIVERY_SUBMIT_NOT_ALLOWED","COLLECTION_DELIVERY_VERSION_REQUIRED","COLLECTION_DELIVERY_WORKFLOW_NOT_SEEDED","COLLECTION_MEDIA_LIMIT","COLLECTION_OPENING_NO_CONSENT","COLLECTION_OPENING_NO_QUOTA","COLLECTION_OPENING_NO_TASK","COLLECTION_SPECIFICATION_INVALID","COMPOSITION_CANONICAL_OUTPUTS_MISSING","COMPOSITION_EXTRACTOR_UNSUPPORTED","COMPOSITION_PROFILES_NOT_COMPARABLE","DATASET_MIXTURE_EVALUATION_READINESS_BLOCKED","DATASET_PERSIST_RUN_REQUIRED","DATASET_REF_AMBIGUOUS","DATA_FORMAT_CONVERTER_UNUSABLE","DATA_FORMAT_INVALID","DATA_FORMAT_NOT_PUBLISHED","DATA_FORMAT_PRIVACY_RELAX_FORBIDDEN","DATA_FORMAT_SAMPLE_EXTENSION_UNSUPPORTED","DATA_FORMAT_SAMPLE_PROJECT_MISMATCH","DATA_FORMAT_SAMPLE_RUN_REQUIRED","DATA_FORMAT_SLUG_INVALID","EGO_HUMAN_PROCESSOR_DIGEST_REQUIRED","EGO_HUMAN_SOURCE_DISABLED","EVALUATION_FEATURE_SCHEMA_MISMATCH","EVALUATION_SPLIT_EMPTY","EXPORT_EPISODE_TASK_MISSING","EXPORT_FORMAT_UNSUPPORTED","EXPORT_MEMBER_RESULT_MISSING","EXPORT_OPTION_UNSUPPORTED","EXPORT_VERSION_DIGEST_MISSING","EXPORT_WORKFLOW_UNAVAILABLE","FEATURE_NAMESPACE_VIOLATION","FORMAT_ADAPTER_UNAVAILABLE","HANDLE_INVALID","HUGGING_FACE_IMPORT_DISABLED","IMPORT_BINDING_FROZEN","IMPORT_FORMAT_AMBIGUOUS","IMPORT_SOURCE_IDENTITY_UNSUPPORTED","PRIVACY_GATE_UNRESOLVED","PRIVACY_QC_ERROR","PRIVACY_QC_FAILED","PRIVACY_QC_NOT_EVALUATED","PROJECT_DATA_FORMAT_LOCKED","PROJECT_NAME_INVALID","RECORDING_CAPTURE_LABELS_INVALID","RECORDING_CAPTURE_LABELS_TOO_LARGE","RECORDING_FORMAT_NOT_ACCEPTED","RECORDING_FORMAT_SAMPLE_NOT_ADMITTED","RIG_PROFILE_DRAFT_INCOMPLETE","RIG_PROFILE_DRAFT_UNREADABLE","RIG_PROFILE_INVALID","RIG_PROFILE_SOURCE_UNSUPPORTED","SECRET_NOT_FOUND","SKILL_TAXONOMY_COVERAGE_FLOOR_NOT_DISABLEABLE","SKILL_TAXONOMY_NOT_DRAFT","SKILL_TAXONOMY_PLATFORM_CODE_REUSED","SKILL_TAXONOMY_PLATFORM_IDENTITY_SHADOWED","TRAINING_ACTION_MISSING","TRAINING_FLAVOR_TOO_SMALL","TRAINING_NEEDS_TASK","TRAINING_RECIPE_ACTION_SEMANTICS_INCOMPATIBLE","TRAINING_RECIPE_ACTION_SEMANTICS_UNAVAILABLE","TRAINING_RECIPE_DURATION_UNAVAILABLE","TRAINING_RECIPE_INVALID","TRAINING_RECIPE_PROPORTION_INVALID","TRAINING_RECIPE_QUALITY_THRESHOLD_UNAVAILABLE","TRAINING_RECIPE_RANGE_EXPORT_UNSUPPORTED","TRAINING_RECIPE_REQUIRED_FEATURE_MISSING","TRAINING_RECIPE_RESOLUTION_EMPTY","TRAINING_RECIPE_TAXONOMY_UNAVAILABLE","UPLOAD_DEVICE_META_TOO_LARGE","UPLOAD_HUMAN_DEVICE_META_MISSING","UPLOAD_PROCESSING_UNAVAILABLE","UPLOAD_STEREO_CALIBRATION_MISSING","UPLOAD_TASK_MISSING","USAGE_LIMIT_ABOVE_CEILING","VENDOR_SCHEMA_UNDECLARED","VERSION_ALIAS_RESERVED","VERSION_CAPTURE_SESSION_SPLIT_MISMATCH","VERSION_DATA_CONTRACT_INCOMPLETE","VERSION_DATA_CONTRACT_MISMATCH","VERSION_MIXED_FEATURE_SCHEMA","VERSION_SPLIT_TAG_MISSING","VIDEO_LAYOUT_AMBIGUOUS","WORKFLOW_ALGORITHM_UNRESOLVED","WORKFLOW_INPUT_NOT_STAGED","WORKFLOW_INPUT_SCOPE_MISMATCH","WORKFLOW_INPUT_UNWIRED","WORKFLOW_RAW_CODE_AUTHORITY_DENIED","WORKFLOW_REQUIREMENT_UNMET","WORKFLOW_RUN_TOO_LARGE","WORKFLOW_SECRET_NAME_RESERVED","WORKFLOW_SELECTION_EMPTY","WORKFLOW_SPEC_INVALID","WORKFLOW_STEP_LOCKED","WORKFLOW_YAML_INVALID"]}}}]}}}},"PreconditionFailed":{"description":"A precondition header (If-Match) did not match the current resource. Wired in ADR 0156 W5.","content":{"application/problem+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ProblemJson"},{"type":"object","properties":{"status":{"type":"integer","enum":[412]},"code":{"type":"string","enum":["PRECONDITION_FAILED"]}}}]}}}}}},"security":[{"pat":[]}]}