openapi: 3.0.3 info: title: Argilla v1 Authentication workspaces API description: Argilla Server API v1 version: 2.8.0 license: name: Apache 2.0 url: https://www.apache.org/licenses/LICENSE-2.0 contact: email: contact@argilla.io url: https://argilla.io servers: - url: https://argilla.io/api/v1 description: Argilla REST API v1 tags: - name: workspaces paths: /workspaces/{workspace_id}: get: tags: - workspaces summary: Get Workspace operationId: get_workspace_workspaces__workspace_id__get security: - APIKeyHeader: [] - HTTPBearer: [] parameters: - name: workspace_id in: path required: true schema: type: string format: uuid title: Workspace Id responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/Workspace' '400': content: application/json: example: detail: code: argilla.api.errors::MissingDatasetRecordsError params: extra: error parameters description: Bad Request '404': content: application/json: example: detail: code: argilla.api.errors::EntityNotFoundError params: extra: error parameters description: Not Found '403': content: application/json: example: detail: code: argilla.api.errors::ForbiddenOperationError params: extra: error parameters description: Forbidden '409': content: application/json: example: detail: code: argilla.api.errors::EntityAlreadyExistsError params: extra: error parameters description: Conflict '422': content: application/json: example: detail: code: argilla.api.errors::ValidationError params: extra: error parameters description: Unprocessable Content '500': content: application/json: example: detail: code: builtins.TypeError description: Internal Server Error delete: tags: - workspaces summary: Delete Workspace operationId: delete_workspace_workspaces__workspace_id__delete security: - APIKeyHeader: [] - HTTPBearer: [] parameters: - name: workspace_id in: path required: true schema: type: string format: uuid title: Workspace Id responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/Workspace' '400': content: application/json: example: detail: code: argilla.api.errors::MissingDatasetRecordsError params: extra: error parameters description: Bad Request '404': content: application/json: example: detail: code: argilla.api.errors::EntityNotFoundError params: extra: error parameters description: Not Found '403': content: application/json: example: detail: code: argilla.api.errors::ForbiddenOperationError params: extra: error parameters description: Forbidden '409': content: application/json: example: detail: code: argilla.api.errors::EntityAlreadyExistsError params: extra: error parameters description: Conflict '422': content: application/json: example: detail: code: argilla.api.errors::ValidationError params: extra: error parameters description: Unprocessable Content '500': content: application/json: example: detail: code: builtins.TypeError description: Internal Server Error /workspaces: post: tags: - workspaces summary: Create Workspace operationId: create_workspace_workspaces_post requestBody: content: application/json: schema: $ref: '#/components/schemas/WorkspaceCreate' required: true responses: '201': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/Workspace' '400': description: Bad Request content: application/json: example: detail: code: argilla.api.errors::MissingDatasetRecordsError params: extra: error parameters '404': description: Not Found content: application/json: example: detail: code: argilla.api.errors::EntityNotFoundError params: extra: error parameters '403': description: Forbidden content: application/json: example: detail: code: argilla.api.errors::ForbiddenOperationError params: extra: error parameters '409': description: Conflict content: application/json: example: detail: code: argilla.api.errors::EntityAlreadyExistsError params: extra: error parameters '422': description: Unprocessable Content content: application/json: example: detail: code: argilla.api.errors::ValidationError params: extra: error parameters '500': description: Internal Server Error content: application/json: example: detail: code: builtins.TypeError security: - APIKeyHeader: [] - HTTPBearer: [] /me/workspaces: get: tags: - workspaces summary: List Workspaces Me operationId: list_workspaces_me_me_workspaces_get responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/Workspaces' '400': description: Bad Request content: application/json: example: detail: code: argilla.api.errors::MissingDatasetRecordsError params: extra: error parameters '404': description: Not Found content: application/json: example: detail: code: argilla.api.errors::EntityNotFoundError params: extra: error parameters '403': description: Forbidden content: application/json: example: detail: code: argilla.api.errors::ForbiddenOperationError params: extra: error parameters '409': description: Conflict content: application/json: example: detail: code: argilla.api.errors::EntityAlreadyExistsError params: extra: error parameters '422': description: Unprocessable Content content: application/json: example: detail: code: argilla.api.errors::ValidationError params: extra: error parameters '500': description: Internal Server Error content: application/json: example: detail: code: builtins.TypeError security: - APIKeyHeader: [] - HTTPBearer: [] /workspaces/{workspace_id}/users: get: tags: - workspaces summary: List Workspace Users operationId: list_workspace_users_workspaces__workspace_id__users_get security: - APIKeyHeader: [] - HTTPBearer: [] parameters: - name: workspace_id in: path required: true schema: type: string format: uuid title: Workspace Id responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/Users' '400': content: application/json: example: detail: code: argilla.api.errors::MissingDatasetRecordsError params: extra: error parameters description: Bad Request '404': content: application/json: example: detail: code: argilla.api.errors::EntityNotFoundError params: extra: error parameters description: Not Found '403': content: application/json: example: detail: code: argilla.api.errors::ForbiddenOperationError params: extra: error parameters description: Forbidden '409': content: application/json: example: detail: code: argilla.api.errors::EntityAlreadyExistsError params: extra: error parameters description: Conflict '422': content: application/json: example: detail: code: argilla.api.errors::ValidationError params: extra: error parameters description: Unprocessable Content '500': content: application/json: example: detail: code: builtins.TypeError description: Internal Server Error post: tags: - workspaces summary: Create Workspace User operationId: create_workspace_user_workspaces__workspace_id__users_post security: - APIKeyHeader: [] - HTTPBearer: [] parameters: - name: workspace_id in: path required: true schema: type: string format: uuid title: Workspace Id requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/WorkspaceUserCreate' responses: '201': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/User' '400': content: application/json: example: detail: code: argilla.api.errors::MissingDatasetRecordsError params: extra: error parameters description: Bad Request '404': content: application/json: example: detail: code: argilla.api.errors::EntityNotFoundError params: extra: error parameters description: Not Found '403': content: application/json: example: detail: code: argilla.api.errors::ForbiddenOperationError params: extra: error parameters description: Forbidden '409': content: application/json: example: detail: code: argilla.api.errors::EntityAlreadyExistsError params: extra: error parameters description: Conflict '422': content: application/json: example: detail: code: argilla.api.errors::ValidationError params: extra: error parameters description: Unprocessable Content '500': content: application/json: example: detail: code: builtins.TypeError description: Internal Server Error /workspaces/{workspace_id}/users/{user_id}: delete: tags: - workspaces summary: Delete Workspace User operationId: delete_workspace_user_workspaces__workspace_id__users__user_id__delete security: - APIKeyHeader: [] - HTTPBearer: [] parameters: - name: workspace_id in: path required: true schema: type: string format: uuid title: Workspace Id - name: user_id in: path required: true schema: type: string format: uuid title: User Id responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/User' '400': content: application/json: example: detail: code: argilla.api.errors::MissingDatasetRecordsError params: extra: error parameters description: Bad Request '404': content: application/json: example: detail: code: argilla.api.errors::EntityNotFoundError params: extra: error parameters description: Not Found '403': content: application/json: example: detail: code: argilla.api.errors::ForbiddenOperationError params: extra: error parameters description: Forbidden '409': content: application/json: example: detail: code: argilla.api.errors::EntityAlreadyExistsError params: extra: error parameters description: Conflict '422': content: application/json: example: detail: code: argilla.api.errors::ValidationError params: extra: error parameters description: Unprocessable Content '500': content: application/json: example: detail: code: builtins.TypeError description: Internal Server Error components: schemas: User: properties: id: type: string format: uuid title: Id first_name: type: string title: First Name last_name: title: Last Name type: string nullable: true username: type: string title: Username role: $ref: '#/components/schemas/UserRole' api_key: type: string title: Api Key inserted_at: type: string format: date-time title: Inserted At updated_at: type: string format: date-time title: Updated At type: object required: - id - first_name - username - role - api_key - inserted_at - updated_at title: User WorkspaceUserCreate: properties: user_id: type: string format: uuid title: User Id type: object required: - user_id title: WorkspaceUserCreate UserRole: type: string enum: - owner - admin - annotator title: UserRole Users: properties: items: items: $ref: '#/components/schemas/User' type: array title: Items type: object required: - items title: Users Workspaces: properties: items: items: $ref: '#/components/schemas/Workspace' type: array title: Items type: object required: - items title: Workspaces WorkspaceCreate: properties: id: title: Id type: string format: uuid nullable: true name: type: string minLength: 1 title: Name type: object required: - name title: WorkspaceCreate Workspace: properties: id: type: string format: uuid title: Id name: type: string title: Name inserted_at: type: string format: date-time title: Inserted At updated_at: type: string format: date-time title: Updated At type: object required: - id - name - inserted_at - updated_at title: Workspace securitySchemes: APIKeyHeader: type: apiKey in: header name: X-Argilla-Api-Key HTTPBearer: type: http scheme: bearer