Structify admin API

Admin endpoints

OpenAPI Specification

structify-admin-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  contact:
    email: team@structify.ai
    name: Structify Team
  description: Every enterprise's data team.
  license:
    name: Discuss directly with founders for license.
    url: https://structify.ai
  title: Structify account admin API
  version: 0.1.0
servers:
- description: Production server
  url: https://api.structify.ai
- description: Local server
  url: http://localhost:8080
security:
- api_key: []
- session_token: []
tags:
- description: Admin endpoints
  name: admin
paths:
  /admin/chat/templates:
    get:
      operationId: admin_list_chat_templates
      parameters:
      - in: query
        name: chat_session_id
        required: false
        schema:
          allOf:
          - $ref: '#/components/schemas/ChatSessionId'
          nullable: true
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/ChatTemplate'
                type: array
          description: Chat templates retrieved
        '500':
          description: Internal server error
      security:
      - api_key: []
      - session_token: []
      tags:
      - admin
    post:
      operationId: admin_create_chat_template
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateChatTemplateRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ChatTemplate'
          description: Chat template created
        '400':
          description: Bad request
        '403':
          description: Forbidden
        '404':
          description: Chat session not found
        '500':
          description: Internal server error
      security:
      - api_key: []
      - session_token: []
      tags:
      - admin
  /admin/chat/templates/{template_id}:
    patch:
      operationId: admin_update_chat_template
      parameters:
      - description: Chat template ID
        in: path
        name: template_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateChatTemplate'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ChatTemplate'
          description: Chat template updated
        '404':
          description: Chat template not found
        '500':
          description: Internal server error
      security:
      - api_key: []
      - session_token: []
      tags:
      - admin
  /admin/connector-catalog:
    post:
      operationId: admin_create_connector_catalog
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateConnectorCatalogRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectorCatalog'
          description: ''
      security:
      - api_key: []
      - session_token: []
      summary: Create a new connector catalog entry
      tags:
      - admin
  /admin/connector-catalog/auth-methods:
    post:
      operationId: admin_create_connector_auth_method
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateConnectorAuthMethodRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectorAuthMethod'
          description: ''
      security:
      - api_key: []
      - session_token: []
      summary: Create a new connector auth method
      tags:
      - admin
  /admin/connector-catalog/auth-methods/{id}:
    patch:
      operationId: admin_update_connector_auth_method
      parameters:
      - in: path
        name: id
        required: true
        schema:
          $ref: '#/components/schemas/ConnectorAuthMethodId'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateConnectorAuthMethodRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectorAuthMethod'
          description: ''
      security:
      - api_key: []
      - session_token: []
      summary: Update a connector auth method
      tags:
      - admin
  /admin/connector-catalog/credential-fields:
    post:
      operationId: admin_create_connector_credential_field
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateConnectorCredentialFieldRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectorCredentialField'
          description: ''
      security:
      - api_key: []
      - session_token: []
      summary: Create a new connector credential field
      tags:
      - admin
  /admin/connector-catalog/credential-fields/batch:
    post:
      operationId: admin_batch_create_connector_credential_fields
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BatchCreateCredentialFieldsRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/ConnectorCredentialField'
                type: array
          description: ''
      security:
      - api_key: []
      - session_token: []
      summary: Batch create connector credential fields
      tags:
      - admin
  /admin/connector-catalog/credential-fields/{id}:
    delete:
      operationId: admin_delete_connector_credential_field
      parameters:
      - in: path
        name: id
        required: true
        schema:
          $ref: '#/components/schemas/ConnectorCredentialFieldId'
      responses:
        '200':
          description: Field deleted successfully
        '404':
          description: Field not found
      security:
      - api_key: []
      - session_token: []
      summary: Delete a connector credential field
      tags:
      - admin
    patch:
      operationId: admin_update_connector_credential_field
      parameters:
      - in: path
        name: id
        required: true
        schema:
          $ref: '#/components/schemas/ConnectorCredentialFieldId'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateConnectorCredentialFieldRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectorCredentialField'
          description: ''
      security:
      - api_key: []
      - session_token: []
      summary: Update a connector credential field
      tags:
      - admin
  /admin/connector-catalog/nango-pending:
    get:
      operationId: admin_list_nango_pending
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/PendingNangoIntegration'
                type: array
          description: ''
      security:
      - api_key: []
      - session_token: []
      summary: List Nango integrations that are not yet in the connector catalog
      tags:
      - admin
  /admin/connector-catalog/scopes:
    get:
      operationId: admin_list_connector_auth_method_scopes
      parameters:
      - in: query
        name: connector_auth_method_id
        required: true
        schema:
          $ref: '#/components/schemas/ConnectorAuthMethodId'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListScopesResponse'
          description: ''
      security:
      - api_key: []
      - session_token: []
      tags:
      - admin
    post:
      operationId: admin_create_connector_auth_method_scope
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateConnectorAuthMethodScopeRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectorAuthMethodScope'
          description: ''
      security:
      - api_key: []
      - session_token: []
      tags:
      - admin
  /admin/connector-catalog/scopes/batch:
    post:
      operationId: admin_batch_create_connector_auth_method_scopes
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BatchCreateScopesRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchCreateScopesResponse'
          description: ''
      security:
      - api_key: []
      - session_token: []
      tags:
      - admin
  /admin/connector-catalog/scopes/{id}:
    delete:
      operationId: admin_delete_connector_auth_method_scope
      parameters:
      - in: path
        name: id
        required: true
        schema:
          $ref: '#/components/schemas/ConnectorAuthMethodScopeId'
      responses:
        '200':
          description: Scope deleted successfully
        '404':
          description: Scope not found
      security:
      - api_key: []
      - session_token: []
      tags:
      - admin
    patch:
      operationId: admin_update_connector_auth_method_scope
      parameters:
      - in: path
        name: id
        required: true
        schema:
          $ref: '#/components/schemas/ConnectorAuthMethodScopeId'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateConnectorAuthMethodScope'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectorAuthMethodScope'
          description: ''
        '404':
          description: Scope not found
      security:
      - api_key: []
      - session_token: []
      tags:
      - admin
  /admin/connector-catalog/{id}:
    delete:
      operationId: admin_delete_connector_catalog
      parameters:
      - in: path
        name: id
        required: true
        schema:
          $ref: '#/components/schemas/ConnectorCatalogId'
      responses:
        '200':
          description: Catalog entry deleted successfully
        '404':
          description: Catalog entry not found
      security:
      - api_key: []
      - session_token: []
      tags:
      - admin
    patch:
      operationId: admin_update_connector_catalog
      parameters:
      - in: path
        name: id
        required: true
        schema:
          $ref: '#/components/schemas/ConnectorCatalogId'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateConnectorCatalogRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectorCatalog'
          description: ''
      security:
      - api_key: []
      - session_token: []
      summary: Update a connector catalog entry
      tags:
      - admin
  /admin/connector-catalog/{slug}/logo:
    put:
      operationId: admin_upload_connector_logo
      parameters:
      - in: path
        name: slug
        required: true
        schema:
          type: string
      requestBody:
        content:
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/UploadConnectorLogoForm'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UploadConnectorLogoResponse'
          description: Logo uploaded
      security:
      - api_key: []
      - session_token: []
      tags:
      - admin
  /admin/connector/clone:
    post:
      operationId: admin_clone_connectors
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CloneConnectorsRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CloneConnectorsResponse'
          description: Connectors cloned successfully
        '401':
          description: Unauthorized
        '404':
          description: Source connector not found
      security:
      - api_key: []
      - session_token: []
      tags:
      - admin
  /admin/connector/datahub-config:
    post:
      operationId: admin_set_connector_datahub_config
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SetDatahubConfigRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Connector'
          description: Datahub config updated
        '401':
          description: Unauthorized
        '404':
          description: Connector not found
      security:
      - api_key: []
      - session_token: []
      tags:
      - admin
  /admin/connector/team/{team_id}:
    get:
      operationId: admin_list_team_connectors
      parameters:
      - description: Team ID
        in: path
        name: team_id
        required: true
        schema:
          $ref: '#/components/schemas/TeamId'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdminListConnectorsResponse'
          description: Connectors for team
        '401':
          description: Unauthorized
      security:
      - api_key: []
      - session_token: []
      tags:
      - admin
  /admin/critical:
    post:
      operationId: admin_report_critical
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ReportCriticalRequest'
        required: true
      responses:
        '200':
          description: Critical error reported
        '401':
          description: Unauthorized
      security:
      - api_key: []
      - session_token: []
      tags:
      - admin
  /admin/dataset/get_by_id:
    get:
      operationId: admin_dataset_get_by_id
      parameters:
      - description: ID of the dataset to retrieve
        in: query
        name: id
        required: true
        schema:
          $ref: '#/components/schemas/DatasetId'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdminDatasetReturn'
          description: Dataset retrieved successfully
        '404':
          description: Dataset not found
      security:
      - api_key: []
      tags:
      - admin
  /admin/functional_tests/create:
    post:
      description: Creates a new functional test with optional model and prompt overrides.
      operationId: admin_create_functional_test
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateFunctionalTestRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FunctionalTest'
          description: ''
        '400':
          description: Bad request
        '500':
          description: Internal server error
      security:
      - api_key: []
      - session_token: []
      summary: Create a new functional test
      tags:
      - admin
  /admin/functional_tests/link:
    post:
      description: Links a chat session to a functional test with a specific sample name and initial results.
      operationId: admin_link_chat_to_functional_test
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LinkChatToFunctionalTestRequest'
        required: true
      responses:
        '200':
          description: Successfully linked chat to functional test
        '400':
          description: Bad request
        '500':
          description: Internal server error
      security:
      - api_key: []
      - session_token: []
      summary: Link a chat session to a functional test
      tags:
      - admin
  /admin/functional_tests/list:
    get:
      description: Gets all functional tests with their overrides and creation dates, ordered by most recent first.
      operationId: admin_list_functional_tests
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/FunctionalTestListItem'
                type: array
          description: ''
        '500':
          description: Internal server error
      security:
      - api_key: []
      - session_token: []
      summary: List all functional tests
      tags:
      - admin
  /admin/functional_tests/results:
    get:
      description: 'Gets all results and chat IDs for either a specific functional test or a specific sample name.

        Must provide either functional_test_id or sample_name, but not both.'
      operationId: admin_get_functional_test_results
      parameters:
      - in: query
        name: functional_test_id
        required: false
        schema:
          allOf:
          - $ref: '#/components/schemas/FunctionalTestId'
          nullable: true
      - in: query
        name: sample_name
        required: false
        schema:
          nullable: true
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FunctionalTestResultsResponse'
          description: ''
        '400':
          description: Bad request - must provide either functional_test_id or sample_name
        '500':
          description: Internal server error
      security:
      - api_key: []
      - session_token: []
      summary: Get results for a functional test or sample
      tags:
      - admin
  /admin/functional_tests/system_prompt:
    get:
      description: Returns the current system prompt template used by the code agent.
      operationId: admin_get_system_prompt
      responses:
        '200':
          content:
            text/plain:
              schema:
                type: string
          description: System prompt content
        '500':
          description: Internal server error
      security:
      - api_key: []
      - session_token: []
      summary: Get the system prompt template
      tags:
      - admin
  /admin/functional_tests/update_results:
    put:
      description: Updates the results for a specific chat session linked to a functional test.
      operationId: admin_update_functional_test_results
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateFunctionalTestResultsRequest'
        required: true
      responses:
        '200':
          description: Successfully updated functional test results
        '400':
          description: Bad request
        '404':
          description: Chat/functional test link not found
        '500':
          description: Internal server error
      security:
      - api_key: []
      - session_token: []
      summary: Update results for a chat linked to a functional test
      tags:
      - admin
  /admin/jobs/concurrency_limits:
    get:
      operationId: admin_get_job_concurrency_limits
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JobConcurrencyLimits'
          description: Current job concurrency limits
      security:
      - api_key: []
      - session_token: []
      tags:
      - admin
    put:
      operationId: admin_update_job_concurrency_limits
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateJobConcurrencyLimits'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JobConcurrencyLimits'
          description: Updated job concurrency limits
      security:
      - api_key: []
      - session_token: []
      tags:
      - admin
  /admin/jobs/delete:
    post:
      operationId: admin_jobs_delete
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AdminDeleteJobsRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdminDeleteJobsResponse'
          description: Jobs deleted successfully
        '400':
          description: Invalid request
      security:
      - api_key: []
      - session_token: []
      tags:
      - admin
  /admin/jobs/kill_by_user:
    post:
      operationId: admin_kill_jobs_by_user
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/KillByUserRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/KillByUserResponse'
          description: Jobs killed successfully
      security:
      - api_key: []
      - session_token: []
      tags:
      - admin
  /admin/jobs/list:
    get:
      operationId: admin_jobs_list
      parameters:
      - in: query
        name: offset
        required: false
        schema:
          minimum: 0
          type: integer
      - in: query
        name: limit
        required: false
        schema:
          minimum: 0
          type: integer
      - in: query
        name: status
        required: false
        schema:
          allOf:
          - $ref: '#/components/schemas/JobStatus'
          nullable: true
      - in: query
        name: job_type
        required: false
        schema:
          allOf:
          - $ref: '#/components/schemas/JobType'
          nullable: true
      - in: query
        name: user_id
        required: false
        schema:
          allOf:
          - $ref: '#/components/schemas/UserId'
          nullable: true
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/ListJobsResponse'
                type: array
          description: A list of all execution histories across all users
      security:
      - api_key: []
      - session_token: []
      tags:
      - admin
  /admin/jobs/running_stats:
    get:
      operationId: admin_get_running_job_stats
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RunningJobStats'
          description: Running job statistics by type and user
      security:
      - api_key: []
      - session_token: []
      tags:
      - admin
  /admin/redis/flush:
    post:
      operationId: admin_redis_flush
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FlushResponse'
          description: Redis flushed successfully
        '500':
          description: Failed to flush Redis
      security:
      - api_key: []
      - session_token: []
      tags:
      - admin
  /admin/sandbox/create_job:
    post:
      operationId: admin_sandbox_create_job
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateJobSandboxRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateJobSandboxResponse'
          description: ''
      security:
      - api_key: []
      - session_token: []
      tags:
      - admin
  /admin/sandbox/list:
    get:
      operationId: admin_sandbox_list
      parameters:
      - in: query
        name: limit
        required: false
        schema:
          format: int64
          nullable: true
          type: integer
      - in: query
        name: offset
        required: false
        schema:
          format: int64
          nullable: true
          type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/Sandbox'
                type: array
          description: ''
      security:
      - api_key: []
      tags:
      - admin
  /admin/sandbox/{sandbox_id}/terminate:
    post:
      operationId: admin_sandbox_terminate
      parameters:
      - description: Sandbox ID
        in: path
        name: sandbox_id
        required: true
        schema:
          $ref: '#/components/schemas/SandboxId'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Sandbox'
          description: ''
      security:
      - api_key: []
      - session_token: []
      tags:
      - admin
  /admin/team/add_member:
    post:
      operationId: admin_team_add_member
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AdminAddMemberRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdminAddMemberResponse'
          description: Member added successfully
      security:
      - api_key: []
      - session_token: []
      tags:
      - admin
  /admin/team/cancel_subscription:
    post:
      operationId: admin_team_cancel_subscription
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CancelSubscriptionRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CancelSubscriptionResponse'
          description: Subscription canceled successfully
      security:
      - api_key: []
      - session_token: []
      tags:
      - admin
  /admin/team/create_subscription:
    post:
      operationId: admin_team_create_subscription
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AdminCreateSubscriptionRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdminCreateSubscriptionResponse'
          description: Subscription created successfully
      security:
      - api_key: []
      - session_token: []
      tags:
      - admin
  /admin/team/expire_grants:
    post:
      operationId: admin_team_expire_grants
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExpireGrantsRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExpireGrantsResponse'
          description: Grants expired successfully
      security:
      - api_key: []
      - session_token: []
      tags:
      - admin
  /admin/team/extend_trial:
    post:
      operationId: admin_team_extend_trial
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExtendTrialRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExtendTrialResponse'
          description: Trial extended successfully
      security:
      - api_key: []
      - session_token: []
      tags:
      - admin
  /admin/team/get/{team_id}:
    get:
      operationId: admin_team_get
      parameters:
      - description: Team ID
        in: path
        name: team_id
        required: true
        schema:
          $ref: '#/components/schemas/TeamId'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TeamListResponse'
          description: Team retrieved successfully
        '404':
          description: Team not found
        '500':
          description: Internal server error
      security:
      - api_key: []
      - session_token: []
      tags:
      - admin
  /admin/team/grant_credits:
    post:
      operationId: admin_team_grant_credits
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GrantCreditsRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GrantCreditsResponse'
          description: Credits granted successfully
      security:
      - api_key: []
      - session_token: []
      tags:
      - admin
  /admin/team/list:
    get:
      description: 'Lists teams in the system along with their subscription information, credit grants, and member counts.

        Supports optional pagination via limit, offset, and search query parameters.'
      operationId: admin_team_list
      parameters:
      - in: query
        name: limit
        required: false
        schema:
          format: int64
          nullable: true
          type: integer
      - in: query
        name: offset
        required: false
        schema:
          format: int64
          nullable: true
          type: integer
      - in: query
        name: search
        required: false
        schema:
          nullable: true
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedTeamListResponse'
          description: ''
      security:
      - api_key: []
      - session_token: []
      summary: Gets all the teams with their subscription status, grants, and member counts.
      tags:
      - admin
  /admin/team/remove_member:
    post:
      operationId: admin_team_remove_member
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AdminRemoveMemberRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdminRemoveMemberResponse'
          description: Member removed successfully
      security:
      - api_key: []
      - session_token: []
      tags:
      - admin
  /admin/team/update_seats_override:
    post:
      operationId: admin_team_update_seats_override
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateSeatsOverrideRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateSeatsOverrideResponse'
          description: Seats override updated successfully
      security:
      - api

# --- truncated at 32 KB (94 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/structify/refs/heads/main/openapi/structify-admin-api-openapi.yml