openapi: 3.1.0 info: title: elastic.io Platform REST Agents Teams API description: The elastic.io Platform REST API v2 provides programmatic access to the elastic.io iPaaS platform. It allows you to manage integration flows, workspaces, contracts, credentials, components, recipes, users, and other platform resources. The API follows the JSON:API specification and uses Bearer token authentication. version: 2.0.0 contact: name: elastic.io url: https://www.elastic.io/ license: name: Proprietary url: https://www.elastic.io/ termsOfService: https://www.elastic.io/ servers: - url: https://api.elastic.io/v2 description: elastic.io Platform API v2 security: - bearerAuth: [] tags: - name: Teams description: Manage developer teams paths: /teams: get: operationId: listTeams summary: Elastic.io List teams description: Retrieve a list of developer teams. tags: - Teams parameters: - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNumber' - name: filter[contract_id] in: query description: Filter by contract ID schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/TeamListResponse' '401': $ref: '#/components/responses/Unauthorized' post: operationId: createTeam summary: Elastic.io Create a team description: Create a new developer team. tags: - Teams requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/TeamCreateRequest' responses: '201': description: Team created successfully content: application/json: schema: $ref: '#/components/schemas/TeamResponse' '401': $ref: '#/components/responses/Unauthorized' /teams/{team_id}: get: operationId: getTeam summary: Elastic.io Get a team description: Retrieve details of a specific developer team. tags: - Teams parameters: - $ref: '#/components/parameters/TeamId' responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/TeamResponse' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' delete: operationId: deleteTeam summary: Elastic.io Delete a team description: Delete a developer team. tags: - Teams parameters: - $ref: '#/components/parameters/TeamId' responses: '204': description: Team deleted successfully '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' components: schemas: TeamListResponse: type: object properties: data: type: array items: $ref: '#/components/schemas/Team' meta: $ref: '#/components/schemas/JsonApiMeta' links: $ref: '#/components/schemas/JsonApiLinks' ErrorResponse: type: object properties: errors: type: array items: type: object properties: status: type: integer title: type: string detail: type: string Team: type: object properties: id: type: string type: type: string enum: - team attributes: type: object properties: name: type: string created_at: type: string format: date-time updated_at: type: string format: date-time relationships: type: object properties: contract: $ref: '#/components/schemas/JsonApiRelationship' JsonApiMeta: type: object properties: page: type: integer per_page: type: integer total: type: integer total_pages: type: integer TeamResponse: type: object properties: data: $ref: '#/components/schemas/Team' JsonApiLinks: type: object properties: self: type: string format: uri first: type: string format: uri prev: type: string format: uri next: type: string format: uri last: type: string format: uri TeamCreateRequest: type: object required: - data properties: data: type: object required: - type - attributes properties: type: type: string enum: - team attributes: type: object required: - name properties: name: type: string relationships: type: object required: - contract properties: contract: $ref: '#/components/schemas/JsonApiRelationship' JsonApiRelationship: type: object properties: data: type: object properties: id: type: string type: type: string responses: Unauthorized: description: Authentication required or token is invalid content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' NotFound: description: The requested resource was not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' parameters: TeamId: name: team_id in: path required: true description: The unique identifier of the team schema: type: string PageNumber: name: page[number] in: query description: Page number to retrieve schema: type: integer default: 1 PageSize: name: page[size] in: query description: Number of items per page schema: type: integer default: 20 securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: JWT description: Bearer token authentication. Obtain a token through the elastic.io platform login or API key.