openapi: 3.1.0 info: title: elastic.io Platform REST Agents Auth Secrets 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: Auth Secrets description: Manage authentication secrets paths: /auth-secrets: get: operationId: listAuthSecrets summary: Elastic.io List auth secrets description: Retrieve a list of authentication secrets. tags: - Auth Secrets parameters: - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNumber' - $ref: '#/components/parameters/WorkspaceFilter' responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/AuthSecretListResponse' '401': $ref: '#/components/responses/Unauthorized' post: operationId: createAuthSecret summary: Elastic.io Create an auth secret description: Create a new authentication secret. tags: - Auth Secrets requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/AuthSecretCreateRequest' responses: '201': description: Auth secret created successfully content: application/json: schema: $ref: '#/components/schemas/AuthSecretResponse' '401': $ref: '#/components/responses/Unauthorized' /auth-secrets/{auth_secret_id}: get: operationId: getAuthSecret summary: Elastic.io Get an auth secret description: Retrieve details of a specific auth secret. tags: - Auth Secrets parameters: - name: auth_secret_id in: path required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/AuthSecretResponse' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' patch: operationId: updateAuthSecret summary: Elastic.io Update an auth secret description: Update an existing auth secret. tags: - Auth Secrets parameters: - name: auth_secret_id in: path required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/AuthSecretUpdateRequest' responses: '200': description: Auth secret updated successfully content: application/json: schema: $ref: '#/components/schemas/AuthSecretResponse' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' delete: operationId: deleteAuthSecret summary: Elastic.io Delete an auth secret description: Delete an auth secret. tags: - Auth Secrets parameters: - name: auth_secret_id in: path required: true schema: type: string responses: '204': description: Auth secret deleted successfully '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' components: parameters: WorkspaceFilter: name: filter[workspace_id] in: query description: Filter by workspace ID 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 schemas: ErrorResponse: type: object properties: errors: type: array items: type: object properties: status: type: integer title: type: string detail: type: string AuthSecretResponse: type: object properties: data: $ref: '#/components/schemas/AuthSecret' JsonApiMeta: type: object properties: page: type: integer per_page: type: integer total: type: integer total_pages: type: integer AuthSecret: type: object properties: id: type: string type: type: string enum: - auth-secret attributes: type: object properties: name: type: string state: type: string credentials: type: object created_at: type: string format: date-time updated_at: type: string format: date-time relationships: type: object properties: workspace: $ref: '#/components/schemas/JsonApiRelationship' auth_client: $ref: '#/components/schemas/JsonApiRelationship' 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 AuthSecretCreateRequest: type: object required: - data properties: data: type: object required: - type - attributes properties: type: type: string enum: - auth-secret attributes: type: object required: - name properties: name: type: string credentials: type: object relationships: type: object properties: workspace: $ref: '#/components/schemas/JsonApiRelationship' auth_client: $ref: '#/components/schemas/JsonApiRelationship' AuthSecretListResponse: type: object properties: data: type: array items: $ref: '#/components/schemas/AuthSecret' meta: $ref: '#/components/schemas/JsonApiMeta' links: $ref: '#/components/schemas/JsonApiLinks' AuthSecretUpdateRequest: type: object required: - data properties: data: type: object required: - type - id properties: type: type: string enum: - auth-secret id: type: string attributes: type: object properties: name: type: string credentials: type: object 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' securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: JWT description: Bearer token authentication. Obtain a token through the elastic.io platform login or API key.