From dee9307a520868cab966ed4c93672a2ec15cd84e Mon Sep 17 00:00:00 2001 From: OpenRouter SDK Bot Date: Thu, 30 Jul 2026 19:21:59 +0000 Subject: [PATCH] chore: update OpenAPI spec [sdk-bot] --- .speakeasy/in.openapi.yaml | 577 +++++++++++++++++++++++++++++++++++++ 1 file changed, 577 insertions(+) diff --git a/.speakeasy/in.openapi.yaml b/.speakeasy/in.openapi.yaml index ba60d9f0..24adcfab 100644 --- a/.speakeasy/in.openapi.yaml +++ b/.speakeasy/in.openapi.yaml @@ -7240,6 +7240,31 @@ components: required: - 'data' type: 'object' + CreateScimGroupMappingRequest: + properties: + role: + enum: + - 'admin' + - 'member' + type: 'string' + scim_group_id: + format: 'uuid' + type: 'string' + workspace_id: + format: 'uuid' + type: 'string' + required: + - 'scim_group_id' + - 'workspace_id' + - 'role' + type: 'object' + CreateScimGroupMappingResponse: + properties: + data: + $ref: '#/components/schemas/ScimGroupMapping' + required: + - 'data' + type: 'object' CreateWorkspaceRequest: example: default_image_model: 'openai/dall-e-3' @@ -7658,6 +7683,14 @@ components: required: - 'deleted' type: 'object' + DeleteScimGroupMappingResponse: + properties: + deleted: + const: true + type: 'boolean' + required: + - 'deleted' + type: 'object' DeleteWorkspaceBudgetResponse: example: deleted: true @@ -9501,6 +9534,13 @@ components: required: - 'data' type: 'object' + GetScimGroupMappingResponse: + properties: + data: + $ref: '#/components/schemas/ScimGroupMapping' + required: + - 'data' + type: 'object' GetWorkspaceResponse: example: data: @@ -11582,6 +11622,30 @@ components: - 'data' - 'total_count' type: 'object' + ListScimGroupMappingsResponse: + properties: + data: + items: + $ref: '#/components/schemas/ScimGroupMapping' + type: 'array' + total_count: + type: 'integer' + required: + - 'data' + - 'total_count' + type: 'object' + ListScimGroupsResponse: + properties: + data: + items: + $ref: '#/components/schemas/ScimGroup' + type: 'array' + total_count: + type: 'integer' + required: + - 'data' + - 'total_count' + type: 'object' ListWorkspaceBudgetsResponse: example: data: @@ -21383,6 +21447,77 @@ components: description: 'How long (in seconds) the container stays warm after its last command before sleeping, freeing its capacity slot. Idle-based: each command renews the timer. Defaults to 900 (15 minutes); capped at 2592000 (30 days).' example: 900 type: 'integer' + ScimGroup: + example: + created_at: '2025-08-24T10:30:00.000Z' + display_name: 'Engineering' + external_id: 'group-external-id' + id: '550e8400-e29b-41d4-a716-446655440000' + organization_id: 'org_123456' + updated_at: '2025-08-24T10:30:00.000Z' + properties: + created_at: + type: 'string' + display_name: + type: 'string' + external_id: + type: + - 'string' + - 'null' + id: + format: 'uuid' + type: 'string' + organization_id: + type: 'string' + updated_at: + type: 'string' + required: + - 'id' + - 'organization_id' + - 'external_id' + - 'display_name' + - 'created_at' + - 'updated_at' + type: 'object' + ScimGroupMapping: + example: + created_at: '2025-08-24T10:30:00.000Z' + id: '770e8400-e29b-41d4-a716-446655440000' + organization_id: 'org_123456' + role: 'member' + scim_group_id: '550e8400-e29b-41d4-a716-446655440000' + updated_at: '2025-08-24T10:30:00.000Z' + workspace_id: '660e8400-e29b-41d4-a716-446655440000' + properties: + created_at: + type: 'string' + id: + format: 'uuid' + type: 'string' + organization_id: + type: 'string' + role: + enum: + - 'admin' + - 'member' + type: 'string' + scim_group_id: + format: 'uuid' + type: 'string' + updated_at: + type: 'string' + workspace_id: + format: 'uuid' + type: 'string' + required: + - 'id' + - 'organization_id' + - 'scim_group_id' + - 'workspace_id' + - 'role' + - 'created_at' + - 'updated_at' + type: 'object' SearchContextSizeEnum: description: 'Size of the search context for web search tools' enum: @@ -23687,6 +23822,23 @@ components: required: - 'data' type: 'object' + UpdateScimGroupMappingRequest: + properties: + role: + enum: + - 'admin' + - 'member' + type: 'string' + required: + - 'role' + type: 'object' + UpdateScimGroupMappingResponse: + properties: + data: + $ref: '#/components/schemas/ScimGroupMapping' + required: + - 'data' + type: 'object' UpdateWorkspaceRequest: example: name: 'Updated Workspace' @@ -35457,6 +35609,429 @@ paths: - 'Responses' x-speakeasy-name-override: 'send' x-speakeasy-stream-request-field: 'stream' + /scim/group-mappings: + get: + description: 'List SCIM group-to-workspace mappings for the organization. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'listScimGroupMappings' + parameters: + - description: 'Number of records to skip for pagination' + in: 'query' + name: 'offset' + required: false + schema: + default: 0 + description: 'Number of records to skip for pagination' + example: 0 + minimum: 0 + type: + - 'integer' + - 'null' + - description: 'Maximum number of records to return (max 100)' + in: 'query' + name: 'limit' + required: false + schema: + default: 50 + description: 'Maximum number of records to return (max 100)' + example: 50 + maximum: 100 + minimum: 1 + type: 'integer' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/ListScimGroupMappingsResponse' + description: 'List of SCIM group mappings' + '401': + content: + application/json: + example: + error: + code: 401 + message: 'Missing Authentication header' + schema: + $ref: '#/components/schemas/UnauthorizedResponse' + description: 'Unauthorized - Authentication required or invalid credentials' + '404': + content: + application/json: + example: + error: + code: 404 + message: 'Resource not found' + schema: + $ref: '#/components/schemas/NotFoundResponse' + description: 'Not Found - Resource does not exist' + '500': + content: + application/json: + example: + error: + code: 500 + message: 'Internal Server Error' + schema: + $ref: '#/components/schemas/InternalServerResponse' + description: 'Internal Server Error - Unexpected server error' + summary: 'List SCIM group mappings' + tags: + - 'SCIM' + x-speakeasy-name-override: 'listMappings' + x-speakeasy-pagination: + inputs: + - in: 'parameters' + name: 'offset' + type: 'offset' + - in: 'parameters' + name: 'limit' + type: 'limit' + outputs: + results: '$.data' + type: 'offsetLimit' + post: + description: 'Create a SCIM group-to-workspace role mapping. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'createScimGroupMapping' + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CreateScimGroupMappingRequest' + required: true + responses: + '201': + content: + application/json: + schema: + $ref: '#/components/schemas/CreateScimGroupMappingResponse' + description: 'SCIM group mapping created' + '400': + content: + application/json: + example: + error: + code: 400 + message: 'Invalid request parameters' + schema: + $ref: '#/components/schemas/BadRequestResponse' + description: 'Bad Request - Invalid request parameters or malformed input' + '401': + content: + application/json: + example: + error: + code: 401 + message: 'Missing Authentication header' + schema: + $ref: '#/components/schemas/UnauthorizedResponse' + description: 'Unauthorized - Authentication required or invalid credentials' + '404': + content: + application/json: + example: + error: + code: 404 + message: 'Resource not found' + schema: + $ref: '#/components/schemas/NotFoundResponse' + description: 'Not Found - Resource does not exist' + '409': + content: + application/json: + example: + error: + code: 409 + message: 'Resource conflict. Please try again later.' + schema: + $ref: '#/components/schemas/ConflictResponse' + description: 'Conflict - Resource conflict or concurrent modification' + '500': + content: + application/json: + example: + error: + code: 500 + message: 'Internal Server Error' + schema: + $ref: '#/components/schemas/InternalServerResponse' + description: 'Internal Server Error - Unexpected server error' + summary: 'Create a SCIM group mapping' + tags: + - 'SCIM' + x-speakeasy-name-override: 'create' + /scim/group-mappings/{id}: + delete: + description: 'Delete a SCIM group-to-workspace mapping. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'deleteScimGroupMapping' + parameters: + - in: 'path' + name: 'id' + required: true + schema: + format: 'uuid' + type: 'string' + - description: 'Required. Whether to keep workspace members after deleting the mapping. `false` **removes** the members this mapping granted access to; `true` deletes the mapping while leaving membership intact as manually-managed. There is deliberately no default — omitting it returns `400` so the destructive path cannot be reached by accident. Mirrors the dashboard, whose `DeleteMappingSchema.keepMembers` is likewise required.' + in: 'query' + name: 'keep_members' + required: true + schema: + anyOf: + - enum: + - 'true' + - 'false' + type: 'string' + - type: 'boolean' + description: 'Required. Whether to keep workspace members after deleting the mapping. `false` **removes** the members this mapping granted access to; `true` deletes the mapping while leaving membership intact as manually-managed. There is deliberately no default — omitting it returns `400` so the destructive path cannot be reached by accident. Mirrors the dashboard, whose `DeleteMappingSchema.keepMembers` is likewise required.' + example: false + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/DeleteScimGroupMappingResponse' + description: 'SCIM group mapping deleted' + '400': + content: + application/json: + example: + error: + code: 400 + message: 'Invalid request parameters' + schema: + $ref: '#/components/schemas/BadRequestResponse' + description: 'Bad Request - Invalid request parameters or malformed input' + '401': + content: + application/json: + example: + error: + code: 401 + message: 'Missing Authentication header' + schema: + $ref: '#/components/schemas/UnauthorizedResponse' + description: 'Unauthorized - Authentication required or invalid credentials' + '404': + content: + application/json: + example: + error: + code: 404 + message: 'Resource not found' + schema: + $ref: '#/components/schemas/NotFoundResponse' + description: 'Not Found - Resource does not exist' + '500': + content: + application/json: + example: + error: + code: 500 + message: 'Internal Server Error' + schema: + $ref: '#/components/schemas/InternalServerResponse' + description: 'Internal Server Error - Unexpected server error' + summary: 'Delete a SCIM group mapping' + tags: + - 'SCIM' + x-speakeasy-name-override: 'delete' + get: + description: 'Get a SCIM group-to-workspace mapping. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'getScimGroupMapping' + parameters: + - in: 'path' + name: 'id' + required: true + schema: + format: 'uuid' + type: 'string' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/GetScimGroupMappingResponse' + description: 'SCIM group mapping' + '401': + content: + application/json: + example: + error: + code: 401 + message: 'Missing Authentication header' + schema: + $ref: '#/components/schemas/UnauthorizedResponse' + description: 'Unauthorized - Authentication required or invalid credentials' + '404': + content: + application/json: + example: + error: + code: 404 + message: 'Resource not found' + schema: + $ref: '#/components/schemas/NotFoundResponse' + description: 'Not Found - Resource does not exist' + '500': + content: + application/json: + example: + error: + code: 500 + message: 'Internal Server Error' + schema: + $ref: '#/components/schemas/InternalServerResponse' + description: 'Internal Server Error - Unexpected server error' + summary: 'Get a SCIM group mapping' + tags: + - 'SCIM' + x-speakeasy-name-override: 'read' + patch: + description: 'Update a SCIM group mapping role. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'updateScimGroupMapping' + parameters: + - in: 'path' + name: 'id' + required: true + schema: + format: 'uuid' + type: 'string' + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateScimGroupMappingRequest' + required: true + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateScimGroupMappingResponse' + description: 'SCIM group mapping updated' + '400': + content: + application/json: + example: + error: + code: 400 + message: 'Invalid request parameters' + schema: + $ref: '#/components/schemas/BadRequestResponse' + description: 'Bad Request - Invalid request parameters or malformed input' + '401': + content: + application/json: + example: + error: + code: 401 + message: 'Missing Authentication header' + schema: + $ref: '#/components/schemas/UnauthorizedResponse' + description: 'Unauthorized - Authentication required or invalid credentials' + '404': + content: + application/json: + example: + error: + code: 404 + message: 'Resource not found' + schema: + $ref: '#/components/schemas/NotFoundResponse' + description: 'Not Found - Resource does not exist' + '500': + content: + application/json: + example: + error: + code: 500 + message: 'Internal Server Error' + schema: + $ref: '#/components/schemas/InternalServerResponse' + description: 'Internal Server Error - Unexpected server error' + summary: 'Update a SCIM group mapping' + tags: + - 'SCIM' + x-speakeasy-name-override: 'update' + /scim/groups: + get: + description: 'List SCIM groups for the organization. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'listScimGroups' + parameters: + - description: 'Number of records to skip for pagination' + in: 'query' + name: 'offset' + required: false + schema: + default: 0 + description: 'Number of records to skip for pagination' + example: 0 + minimum: 0 + type: + - 'integer' + - 'null' + - description: 'Maximum number of records to return (max 100)' + in: 'query' + name: 'limit' + required: false + schema: + default: 50 + description: 'Maximum number of records to return (max 100)' + example: 50 + maximum: 100 + minimum: 1 + type: 'integer' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/ListScimGroupsResponse' + description: 'List of SCIM groups' + '401': + content: + application/json: + example: + error: + code: 401 + message: 'Missing Authentication header' + schema: + $ref: '#/components/schemas/UnauthorizedResponse' + description: 'Unauthorized - Authentication required or invalid credentials' + '404': + content: + application/json: + example: + error: + code: 404 + message: 'Resource not found' + schema: + $ref: '#/components/schemas/NotFoundResponse' + description: 'Not Found - Resource does not exist' + '500': + content: + application/json: + example: + error: + code: 500 + message: 'Internal Server Error' + schema: + $ref: '#/components/schemas/InternalServerResponse' + description: 'Internal Server Error - Unexpected server error' + summary: 'List SCIM groups' + tags: + - 'SCIM' + x-speakeasy-name-override: 'listGroups' + x-speakeasy-pagination: + inputs: + - in: 'parameters' + name: 'offset' + type: 'offset' + - in: 'parameters' + name: 'limit' + type: 'limit' + outputs: + results: '$.data' + type: 'offsetLimit' /videos: post: description: 'Submits a video generation request and returns a polling URL to check status' @@ -36738,6 +37313,8 @@ tags: name: 'Rerank' - description: 'OpenAI-compatible Responses API endpoints' name: 'Responses' + - description: 'SCIM endpoints' + name: 'SCIM' - description: 'Speech-to-text endpoints' name: 'STT' x-displayName: 'Transcriptions'