openapi: 3.0.1 info: contact: email: support@aiven.io name: Aiven support team url: https://aiven.io/support-services title: Aiven API Documentation Account Organizations API version: v1 x-logo: altText: Aiven logo backgroundColor: '#fafafa' href: https://api.aiven.io/doc url: https://aiven.io/assets/img/aiven-logo.png description: "# Introduction\n\n[Direct link to openapi.json](https://api.aiven.io/doc/openapi.json) for use with external tools\n\n[Aiven](https://aiven.io) is a modern fully-managed open source data platform for streaming, storing, and analyzing data on any public cloud. On Aiven Platform, you can operate your data infrastructure with a few devops tools: [Aiven Console](https://console.aiven.io/), [Aiven Terraform Provider](https://aiven.io/docs/tools/terraform), [Aiven CLI](https://github.com/aiven/aiven-client), and [Aiven Operator for Kubernetes](https://github.com/aiven/aiven-operator). All of them are built on an open secure powerful REST API for integration with custom tooling.\n\nThe Aiven [REST](http://en.wikipedia.org/wiki/Representational_State_Transfer) API\nprovides programmatic access to Aiven.io services. To call the Aiven API, you can use either CLI tools (for example, `cURL` or [Aiven CLI client](https://aiven.io/docs/tools/cli)) or GUI tools, such as the [Aiven public API Postman collection](https://www.postman.com/aiven-apis).\n\nThis Aiven API documentation will help you operate your Aiven organization, projects, or services programmatically by integrating your applications and processes with Aiven.\n\n# Description\n\nAiven's APIs ([Application Programming Interfaces](https://en.wikipedia.org/wiki/API)) power its platform for data management. Aiven has a number of REST APIs that can help you build strong and robust data infrastructure for your applications.\n\nThe Aiven API is organized around core resources. Each core resource has multiple endpoints, which can be interacted with using different HTTP methods.\n\n## Core resources\n\n### Platform APIs\n\n
This endpoint may be changed or removed at any time. Don't use it in production environments.
parameters: - $ref: '#/components/parameters/organization_id' responses: '200': description: Response content: application/json: schema: $ref: '#/components/schemas/DiscoveredOrganizationListResponse' '404': description: Organization not found content: application/json: schema: type: object properties: message: type: string title: Human readable error message errors: type: array title: List of error details. Typically there is only one element items: type: object properties: message: type: string title: Human readable error message error_code: type: string enum: - organization_not_found title: Machine processable error code. Clients must be prepared to handle new codes. description: 'organization_not_found: Organization not found.' security: - tokenAuth: [] oauth2: - accounts:read - user:read /organization/{organization_id}/config/authentication: get: summary: Retrieve authentication configuration tags: - Organizations operationId: OrganizationAuthenticationConfigGet description:
Retrieve current authentication configuration for an organization.
parameters: - $ref: '#/components/parameters/organization_id' responses: '200': description: Response content: application/json: schema: $ref: '#/components/schemas/OrganizationAuthenticationConfigGetResponse' security: - tokenAuth: [] oauth2: - accounts:read - authentication:read patch: summary: Update authentication configuration tags: - Organizations operationId: OrganizationAuthenticationConfigUpdate description:Update current authentication configuration for an organization.
parameters: - $ref: '#/components/parameters/organization_id' requestBody: content: application/json: schema: $ref: '#/components/schemas/OrganizationAuthenticationConfigUpdateRequestBody' example: mcp_enabled: false oauth_enabled: false password_auth_enabled: false personal_tokens_enabled: false personal_tokens_require_allowed_auth_method: false saml_allow_external: false saml_enabled: false two_factor_required: false responses: '200': description: Response content: application/json: schema: $ref: '#/components/schemas/OrganizationAuthenticationConfigUpdateResponse' security: - tokenAuth: [] oauth2: - accounts:write - authentication:write /organization/{organization_id}: delete: summary: Delete an organization tags: - Organizations operationId: OrganizationDelete x-badges: - name: Experimental position: after color: '#787885' x-experimental: true description:This endpoint may be changed or removed at any time. Don't use it in production environments.
parameters: - $ref: '#/components/parameters/organization_id' - $ref: '#/components/parameters/organizationdelete_recursive' responses: '204': description: Delete an organization content: {} '404': description: Resource not found content: application/json: schema: type: object properties: message: type: string title: Human readable error message errors: type: array title: List of error details. Typically there is only one element items: type: object properties: message: type: string title: Human readable error message error_code: type: string enum: - organization_not_found title: Machine processable error code. Clients must be prepared to handle new codes. description: 'organization_not_found: Organization not found.' security: - tokenAuth: [] oauth2: - accounts:write get: summary: Get information about an organization tags: - Organizations operationId: OrganizationGet parameters: - $ref: '#/components/parameters/organization_id' responses: '200': description: Response content: application/json: schema: $ref: '#/components/schemas/OrganizationGetResponse' security: - tokenAuth: [] oauth2: - accounts:read patch: summary: Update organization's details tags: - Organizations operationId: OrganizationUpdate parameters: - $ref: '#/components/parameters/organization_id' requestBody: content: application/json: schema: $ref: '#/components/schemas/OrganizationUpdateRequestBody' example: name: Aiven Ltd tier: business responses: '200': description: Response content: application/json: schema: $ref: '#/components/schemas/OrganizationUpdateResponse' security: - tokenAuth: [] oauth2: - accounts:write /organization/{organization_id}/governance/access: post: summary: Create organization access tags: - Organizations operationId: OrganizationGovernanceAccessCreate x-badges: - name: Experimental position: after color: '#787885' x-experimental: true description:
This endpoint may be changed or removed at any time. Don't use it in production environments.
parameters: - $ref: '#/components/parameters/organization_id' requestBody: content: application/json: schema: $ref: '#/components/schemas/OrganizationGovernanceAccessCreateRequestBody' example: access_data: acls: - host: '*' operation: Write permission_type: ALLOW resource_name: events resource_type: Topic project_name: project-1 service_name: service-1 username: api3 access_name: My Access access_type: KAFKA owner_user_group_id: ug22ba494e096 responses: '200': description: Response content: application/json: schema: $ref: '#/components/schemas/OrganizationGovernanceAccessCreateResponse' '404': description: Resource not found content: application/json: schema: type: object properties: message: type: string title: Human readable error message errors: type: array title: List of error details. Typically there is only one element items: type: object properties: message: type: string title: Human readable error message error_code: type: string enum: - organization_not_found title: Machine processable error code. Clients must be prepared to handle new codes. description: 'organization_not_found: Organization not found.' '400': description: Invalid request parameters content: application/json: schema: type: object properties: message: type: string title: Human readable error message errors: type: array title: List of error details. Typically there is only one element items: type: object properties: message: type: string title: Human readable error message error_code: type: string enum: - kafka_governance_not_enabled - kafka_console_governance_enabled title: Machine processable error code. Clients must be prepared to handle new codes. description: 'kafka_governance_not_enabled: Governance on Kafka is not enabled for organization. kafka_console_governance_enabled: Console Governance is enabled for this kafka service' security: - tokenAuth: [] oauth2: - accounts:read get: summary: List access for organization tags: - Organizations operationId: OrganizationGovernanceAccessList x-badges: - name: Experimental position: after color: '#787885' x-experimental: true description:
This endpoint may be changed or removed at any time. Don't use it in production environments.
parameters: - $ref: '#/components/parameters/organization_id' - $ref: '#/components/parameters/organizationgovernanceaccesslist_cursor' - $ref: '#/components/parameters/organizationgovernanceaccesslist_limit' - $ref: '#/components/parameters/organizationgovernanceaccesslist_resource_name' - $ref: '#/components/parameters/organizationgovernanceaccesslist_owner_user_group_id' responses: '200': description: Response content: application/json: schema: $ref: '#/components/schemas/OrganizationGovernanceAccessListResponse' '404': description: Resource not found content: application/json: schema: type: object properties: message: type: string title: Human readable error message errors: type: array title: List of error details. Typically there is only one element items: type: object properties: message: type: string title: Human readable error message error_code: type: string enum: - organization_not_found title: Machine processable error code. Clients must be prepared to handle new codes. description: 'organization_not_found: Organization not found.' '400': description: Invalid request parameters content: application/json: schema: type: object properties: message: type: string title: Human readable error message errors: type: array title: List of error details. Typically there is only one element items: type: object properties: message: type: string title: Human readable error message error_code: type: string enum: - kafka_governance_not_enabled title: Machine processable error code. Clients must be prepared to handle new codes. description: 'kafka_governance_not_enabled: Governance on Kafka is not enabled for organization' security: - tokenAuth: [] oauth2: - accounts:read /organization/{organization_id}/governance/access/{access_id}/credentials: get: summary: Get organization access credentials tags: - Organizations operationId: OrganizationGovernanceAccessCredentialsGet x-badges: - name: Experimental position: after color: '#787885' x-experimental: true description:
This endpoint may be changed or removed at any time. Don't use it in production environments.
parameters: - $ref: '#/components/parameters/organization_id' - $ref: '#/components/parameters/access_id' responses: '200': description: Response content: application/json: schema: $ref: '#/components/schemas/OrganizationGovernanceAccessCredentialsGetResponse' '404': description: Resource not found content: application/json: schema: type: object properties: message: type: string title: Human readable error message errors: type: array title: List of error details. Typically there is only one element items: type: object properties: message: type: string title: Human readable error message error_code: type: string enum: - organization_not_found title: Machine processable error code. Clients must be prepared to handle new codes. description: 'organization_not_found: Organization not found.' '400': description: Invalid request parameters content: application/json: schema: type: object properties: message: type: string title: Human readable error message errors: type: array title: List of error details. Typically there is only one element items: type: object properties: message: type: string title: Human readable error message error_code: type: string enum: - kafka_governance_not_enabled title: Machine processable error code. Clients must be prepared to handle new codes. description: 'kafka_governance_not_enabled: Governance on Kafka is not enabled for organization' security: - tokenAuth: [] oauth2: - accounts:read /organization/{organization_id}/governance/access/{access_id}: delete: summary: Delete organization access tags: - Organizations operationId: OrganizationGovernanceAccessDelete x-badges: - name: Experimental position: after color: '#787885' x-experimental: true description:
This endpoint may be changed or removed at any time. Don't use it in production environments.
parameters: - $ref: '#/components/parameters/organization_id' - $ref: '#/components/parameters/access_id' responses: '200': description: Response content: application/json: schema: $ref: '#/components/schemas/OrganizationGovernanceAccessDeleteResponse' '404': description: Resource not found content: application/json: schema: type: object properties: message: type: string title: Human readable error message errors: type: array title: List of error details. Typically there is only one element items: type: object properties: message: type: string title: Human readable error message error_code: type: string enum: - organization_not_found title: Machine processable error code. Clients must be prepared to handle new codes. description: 'organization_not_found: Organization not found.' '400': description: Invalid request parameters content: application/json: schema: type: object properties: message: type: string title: Human readable error message errors: type: array title: List of error details. Typically there is only one element items: type: object properties: message: type: string title: Human readable error message error_code: type: string enum: - kafka_governance_not_enabled - kafka_console_governance_enabled title: Machine processable error code. Clients must be prepared to handle new codes. description: 'kafka_governance_not_enabled: Governance on Kafka is not enabled for organization. kafka_console_governance_enabled: Console Governance is enabled for this kafka service' security: - tokenAuth: [] oauth2: - accounts:read get: summary: Get organization access details tags: - Organizations operationId: OrganizationGovernanceAccessGet x-badges: - name: Experimental position: after color: '#787885' x-experimental: true description:
This endpoint may be changed or removed at any time. Don't use it in production environments.
parameters: - $ref: '#/components/parameters/organization_id' - $ref: '#/components/parameters/access_id' responses: '200': description: Response content: application/json: schema: $ref: '#/components/schemas/OrganizationGovernanceAccessGetResponse' '404': description: Resource not found content: application/json: schema: type: object properties: message: type: string title: Human readable error message errors: type: array title: List of error details. Typically there is only one element items: type: object properties: message: type: string title: Human readable error message error_code: type: string enum: - organization_not_found - governance_access_not_found title: Machine processable error code. Clients must be prepared to handle new codes. description: 'organization_not_found: Organization not found.. governance_access_not_found: Governance access not found' '400': description: Invalid request parameters content: application/json: schema: type: object properties: message: type: string title: Human readable error message errors: type: array title: List of error details. Typically there is only one element items: type: object properties: message: type: string title: Human readable error message error_code: type: string enum: - kafka_governance_not_enabled title: Machine processable error code. Clients must be prepared to handle new codes. description: 'kafka_governance_not_enabled: Governance on Kafka is not enabled for organization' security: - tokenAuth: [] oauth2: - accounts:read /organization/{organization_id}/config/api-client-ip-allowlist: get: summary: Get organization IP range allowlist tags: - Organizations operationId: OrganizationIPAllowListGet parameters: - $ref: '#/components/parameters/organization_id' responses: '200': description: Response content: application/json: schema: $ref: '#/components/schemas/OrganizationIPAllowListGetResponse' '404': description: Resource not found content: application/json: schema: type: object properties: message: type: string title: Human readable error message errors: type: array title: List of error details. Typically there is only one element items: type: object properties: message: type: string title: Human readable error message error_code: type: string enum: - organization_not_found title: Machine processable error code. Clients must be prepared to handle new codes. description: 'organization_not_found: Organization not found.' security: - tokenAuth: [] oauth2: - accounts:read put: summary: Set organization IP range allowlist tags: - Organizations operationId: OrganizationIPAllowListSet parameters: - $ref: '#/components/parameters/organization_id' requestBody: content: application/json: schema: $ref: '#/components/schemas/OrganizationIPAllowListSetRequestBody' example: api_client_ip_allowlist: - 192.168.0.0/24 - 2001:db8::/32 api_client_ip_allowlist_enabled: true responses: '204': description: Set organization IP range allowlist content: {} '400': description: Invalid request parameters content: application/json: schema: type: object properties: message: type: string title: Human readable error message errors: type: array title: List of error details. Typically there is only one element items: type: object properties: message: type: string title: Human readable error message error_code: type: string enum: - api_client_ip_allowlist_blocks_caller title: Machine processable error code. Clients must be prepared to handle new codes. description: 'api_client_ip_allowlist_blocks_caller: The IP allowlist provided would lock out the caller of the update.' '404': description: Resource not found content: application/json: schema: type: object properties: message: type: string title: Human readable error message errors: type: array title: List of error details. Typically there is only one element items: type: object properties: message: type: string title: Human readable error message error_code: type: string enum: - organization_not_found title: Machine processable error code. Clients must be prepared to handle new codes. description: 'organization_not_found: Organization not found.' security: - tokenAuth: [] oauth2: - accounts:write /organization/{organization_id}/projects: post: summary: Create project under the organization tags: - Organizations operationId: OrganizationProjectsCreate parameters: - $ref: '#/components/parameters/organization_id' requestBody: content: application/json: schema: $ref: '#/components/schemas/OrganizationProjectsCreateRequestBody' example: base_port: 10000 billing_group_id: 721bf796-1d89-402d-9195-425a23c4efdc parent_id: a3fd7a594e01 project_id: project-1 tags: ANY: value tech_emails: '[{"email": "jane@aiven.io"}]' responses: '200': description: Response content: application/json: schema: $ref: '#/components/schemas/OrganizationProjectsCreateResponse' '404': description: Resource not found content: application/json: schema: type: object properties: message: type: string title: Human readable error message errors: type: array title: List of error details. Typically there is only one element items: type: object properties: message: type: string title: Human readable error message error_code: type: string enum: - project_not_found - organization_not_found title: Machine processable error code. Clients must be prepared to handle new codes. description: 'project_not_found: Project not found. organization_not_found: Organization not found.' '403': description: Operation not allowed content: application/json: schema: type: object properties: message: type: string title: Human readable error message errors: type: array title: List of error details. Typically there is only one element items: type: object properties: message: type: string title: Human readable error message error_code: type: string enum: - user_not_organization_admin title: Machine processable error code. Clients must be prepared to handle new codes. description: 'user_not_organization_admin: User is not organization administrator.' '409': description: Request conflict content: application/json: schema: type: object properties: message: type: string title: Human readable error message errors: type: array title: List of error details. Typically there is only one element items: type: object properties: message: type: string title: Human readable error message error_code: type: string enum: - project_already_exists title: Machine processable error code. Clients must be prepared to handle new codes. description: 'project_already_exists: Project already exists' security: - tokenAuth: [] oauth2: - accounts:write - projects:write get: summary: List projects under the organization tags: - Organizations operationId: OrganizationProjectsList parameters: - $ref: '#/components/parameters/organization_id' responses: '200': description: Response content: application/json: schema: $ref: '#/components/schemas/OrganizationProjectsListResponse' '404': description: Resource not found content: application/json: schema: type: object properties: message: type: string title: Human readable error message errors: type: array title: List of error details. Typically there is only one element items: type: object properties: message: type: string title: Human readable error message error_code: type: string enum: - project_not_found title: Machine processable error code. Clients must be prepared to handle new codes. description: 'project_not_found: Project not found' security: - tokenAuth: [] oauth2: - accounts:read - projects:read /organization/{organization_id}/project/{project_id}: delete: summary: Delete project under the organization tags: - Organizations operationId: OrganizationProjectsDelete parameters: - $ref: '#/components/parameters/organization_id' - $ref: '#/components/parameters/project_id' responses: '204': description: Delete project under the organization content: {} '404': description: Resource not found content: application/json: schema: type: object properties: message: type: string title: Human readable error message errors: type: array title: List of error details. Typically there is only one element items: type: object properties: message: type: string title: Human readable error message error_code: type: string enum: - project_not_found title: Machine processable error code. Clients must be prepared to handle new codes. description: 'project_not_found: Project not found' '403': description: Operation not allowed content: application/json: schema: type: object properties: message: type: string title: Human readable error message errors: type: array title: List of error details. Typically there is only one element items: type: object properties: message: type: string title: Human readable error message error_code: type: string enum: - user_not_organization_admin title: Machine processable error code. Clients must be prepared to handle new codes. description: 'user_not_organization_admin: User is not organization administrator.' security: - tokenAuth: [] oauth2: - accounts:write - projects:write get: summary: Retrieve project under the organization tags: - Organizations operationId: OrganizationProjectsGet parameters: - $ref: '#/components/parameters/organization_id' - $ref: '#/components/parameters/project_id' responses: '200': description: Response content: application/json: schema: $ref: '#/components/schemas/OrganizationProjectsGetResponse' '404': description: Resource not found content: application/json: schema: type: object properties: message: type: string title: Human readable error message errors: type: array title: List of error details. Typically there is only one element items: type: object properties: message: type: string title: Human readable error message error_code: type: string enum: - project_not_found title: Machine processable error code. Clients must be prepared to handle new codes. description: 'project_not_found: Project not found' security: - tokenAuth: [] oauth2: - accounts:read - projects:read patch: summary: Update project under the organization tags: - Organizations operationId: OrganizationProjectsUpdate description:
Moving a project to a different unit requires organization admin privileges (role:organization:admin). Moving to a different organization requires admin privileges in both organizations, and specifying both the target organization and the target parent unit IDs.
parameters: - $ref: '#/components/parameters/organization_id' - $ref: '#/components/parameters/project_id' requestBody: content: application/json: schema: $ref: '#/components/schemas/OrganizationProjectsUpdateRequestBody' example: base_port: 10000 billing_group_id: 721bf796-1d89-402d-9195-425a23c4efdc organization_id: org1234abcd parent_id: a3fd7a594e01 project_name: project-1 tags: ANY: value tech_emails: '[{"email": "jane@aiven.io"}]' responses: '200': description: Response content: application/json: schema: $ref: '#/components/schemas/OrganizationProjectsUpdateResponse' '404': description: Resource not found content: application/json: schema: type: object properties: message: type: string title: Human readable error message errors: type: array title: List of error details. Typically there is only one element items: type: object properties: message: type: string title: Human readable error message error_code: type: string enum: - project_not_found title: Machine processable error code. Clients must be prepared to handle new codes. description: 'project_not_found: Project not found' '403': description: Operation not allowed content: application/json: schema: type: object properties: message: type: string title: Human readable error message errors: type: array title: List of error details. Typically there is only one element items: type: object properties: message: type: string title: Human readable error message error_code: type: string enum: - user_not_organization_admin - project_move_organizations_internal_config_not_match title: Machine processable error code. Clients must be prepared to handle new codes. description: 'user_not_organization_admin: User is not organization administrator.. project_move_organizations_internal_config_not_match: Project internal configuration does not match between organizations' security: - tokenAuth: [] oauth2: - accounts:write - projects:write /organization/{organization_id}/invitation/{user_email}: post: summary: Accept a user invitation to the organization tags: - Organizations operationId: OrganizationUserInvitationAccept parameters: - $ref: '#/components/parameters/organization_id' - $ref: '#/components/parameters/user_email' requestBody: content: application/json: schema: $ref: '#/components/schemas/OrganizationUserInvitationAcceptRequestBody' example: action: accept responses: '204': description: Accept a user invitation to the organization content: {} security: - tokenAuth: [] oauth2: - accounts:read delete: summary: Remove an invitation to the organization tags: - Organizations operationId: OrganizationUserInvitationDelete parameters: - $ref: '#/components/parameters/organization_id' - $ref: '#/components/parameters/user_email' responses: '204': description: Remove an invitation to the organization content: {} security: - tokenAuth: [] oauth2: - accounts:read /organization/{organization_id}/invitation: get: summary: List user invitations to the organization tags: - Organizations operationId: OrganizationUserInvitationsList parameters: - $ref: '#/components/parameters/organization_id' responses: '200': description: Response content: application/json: schema: $ref: '#/components/schemas/OrganizationUserInvitationsListResponse' security: - tokenAuth: [] oauth2: - accounts:read post: summary: Invite a user to the organization tags: - Organizations operationId: OrganizationUserInvite parameters: - $ref: '#/components/parameters/organization_id' requestBody: content: application/json: schema: $ref: '#/components/schemas/OrganizationUserInviteRequestBody' example: user_email: jane@example.com responses: '204': description: Invite a user to the organization content: {} security: - tokenAuth: [] oauth2: - accounts:read /organizations: post: summary: Create an organization tags: - Organizations operationId: UserOrganizationCreate requestBody: content: application/json: schema: $ref: '#/components/schemas/UserOrganizationCreateRequestBody' example: organization_name: Aiven Ltd primary_billing_group_id: adcf7194-d877-4505-a47a-91fefd96e3b8 tier: business responses: '200': description: Response content: application/json: schema: $ref: '#/components/schemas/UserOrganizationCreateResponse' security: - tokenAuth: [] oauth2: - accounts:write get: summary: List organizations the user belongs to tags: - Organizations operationId: UserOrganizationsList responses: '200': description: Response content: application/json: schema: $ref: '#/components/schemas/UserOrganizationsListResponse' security: - tokenAuth: [] oauth2: - accounts:read components: schemas: OrganizationAuthenticationConfigUpdateResponse: type: object description: OrganizationAuthenticationConfigUpdateResponse properties: mcp_enabled: type: boolean description: Users can use MCP clients with services and other resources they have access to in this organization. oauth_enabled: type: boolean description: Organization users are able to use OAuth authentication. password_auth_enabled: type: boolean description: Organization users are able to use password authentication. personal_tokens_enabled: type: boolean description: Organization users can use their personal tokens to access the organization through the Aiven API or other applications. personal_tokens_require_allowed_auth_method: type: boolean description: Organization users are able to use personal tokens that were generated from one of the allowed authentication methods. saml_allow_external: type: boolean description: Organization users are able to use SAML authentication of other organizations. saml_enabled: type: boolean description: Organization users are able to use SAML authentication. two_factor_required: type: boolean description: 2FA is required to access resources in this organization. OrganizationProjectsUpdateResponse: type: object description: OrganizationProjectsUpdateResponse properties: account_id: type: string description: '[DEPRECATED] Account ID to where the project belongs' base_port: type: integer minimum: 1 maximum: 65535 description: Valid port number (1-65535) title: Base Port billing_group_id: type: string minLength: 1 description: Billing group ID end_of_life_extension: type: object description: End of life extension information properties: ANY: type: object description: ServiceEndOfLifeExtension properties: eol_date: type: string maxLength: 36 description: Extended EOL date version: type: string description: Service version required: - eol_date - version features: type: object description: Feature flags properties: ANY: type: boolean description: Boolean organization_id: type: string maxLength: 36 description: Organization ID parent_id: type: string description: Organization or unit ID to where the project belongs project_id: type: string description: Project ID tags: type: object description: Tags properties: ANY: type: string maxLength: 64 description: Tag value tech_emails: type: array description: List of project technical email addresses items: type: object properties: email: type: string maxLength: 254 description: Technical contact email required: - email required: - end_of_life_extension - organization_id - parent_id - project_id - tags - tech_emails OrganizationProjectsListResponse: type: object description: OrganizationProjectsListResponse properties: projects: type: array description: List of projects items: type: object properties: account_id: type: string description: '[DEPRECATED] Account ID to where the project belongs' base_port: type: integer minimum: 1 maximum: 65535 description: Valid port number (1-65535) title: Base Port billing_group_id: type: string minLength: 1 description: Billing group ID end_of_life_extension: type: object description: End of life extension information properties: ANY: type: object description: ServiceEndOfLifeExtension properties: eol_date: type: string maxLength: 36 description: Extended EOL date version: type: string description: Service version required: - eol_date - version parent_id: type: string description: Organization or unit ID to where the project belongs project_id: type: string description: Project ID tags: type: object description: Tags properties: ANY: type: string maxLength: 64 description: Tag value tech_emails: type: array description: List of project technical email addresses items: type: object properties: email: type: string maxLength: 254 description: Technical contact email required: - email required: - end_of_life_extension - parent_id - project_id - tags - tech_emails total_project_count: type: integer minimum: 0 description: Total number of projects required: - projects - total_project_count OrganizationUserInviteRequestBody: type: object description: OrganizationUserInviteRequestBody properties: user_email: type: string maxLength: 254 description: User Email required: - user_email OrganizationUserInvitationAcceptRequestBody: type: object description: OrganizationUserInvitationAcceptRequestBody properties: action: type: string description: Action to be performed on the invitation default: accept enum: - accept OrganizationProjectsCreateRequestBody: type: object description: OrganizationProjectsCreateRequestBody properties: base_port: type: integer minimum: 10000 maximum: 30000 description: Valid port number (10000-30000) title: Base Port billing_group_id: type: string minLength: 1 description: Billing group ID to assign to the project. parent_id: type: string description: Organization or unit ID to where to move the project project_id: type: string description: Project ID tags: type: object description: Tags properties: ANY: type: string maxLength: 64 description: Tag value tech_emails: type: array maxItems: 10 description: Technical contact emails items: type: object properties: email: type: string maxLength: 254 description: Technical contact email required: - email required: - billing_group_id - project_id - tags DiscoveredOrganizationListResponse: type: object description: DiscoveredOrganizationListResponse properties: discovered_organizations: type: array description: Discovered Organizations items: type: object properties: create_time: type: string maxLength: 36 description: Time of creating the organization organization_id: type: string maxLength: 36 description: Organization's ID organization_name: type: string maxLength: 83 description: Organization's name users: type: array description: Users items: type: object properties: create_time: type: string maxLength: 36 description: Creation time is_super_admin: type: boolean description: Is Super Admin real_name: type: string maxLength: 256 description: Real Name user_email: type: string maxLength: 254 description: User Email user_id: type: string description: User ID required: - create_time - is_super_admin - real_name - user_email - user_id required: - create_time - organization_id - organization_name - users required: - discovered_organizations OrganizationGetResponse: type: object description: OrganizationGetResponse properties: account_id: type: string maxLength: 36 description: Account ID of the organization's root unit create_time: type: string maxLength: 36 description: Time of creating the organization default_governance_user_group_id: type: string maxLength: 36 description: Default governance user group ID organization_id: type: string maxLength: 36 description: Organization's ID organization_name: type: string maxLength: 83 description: Organization's name tier: type: string description: An enumeration. title: Tier of the organization enum: - business - personal update_time: type: string maxLength: 36 description: Time of the organization's latest update required: - account_id - create_time - organization_id - organization_name - tier - update_time UserOrganizationCreateRequestBody: type: object description: UserOrganizationCreateRequestBody properties: organization_name: type: string maxLength: 83 description: Organization's name primary_billing_group_id: type: string minLength: 36 maxLength: 36 description: Billing group ID tier: type: string description: An enumeration. title: Tier of the organization enum: - business - personal required: - organization_name - tier OrganizationUpdateRequestBody: type: object description: OrganizationUpdateRequestBody properties: name: type: string maxLength: 83 description: New name of the organization tier: type: string description: An enumeration. title: New tier for the organization enum: - business - personal OrganizationGovernanceAccessCreateRequestBody: type: object description: OrganizationGovernanceAccessCreateRequestBody properties: access_data: type: object description: access type specific data properties: acls: type: array description: Acls items: type: object properties: host: type: string maxLength: 256 description: Acl host operation: type: string description: An enumeration. title: Acl operation enum: - Read - Write permission_type: type: string description: An enumeration. title: Acl permission type enum: - ALLOW resource_name: type: string maxLength: 256 description: Acl resource name resource_type: type: string description: An enumeration. title: Acl resource type enum: - Topic required: - host - operation - permission_type - resource_name - resource_type project_name: type: string description: Project name service_name: type: string description: Service name username: type: string description: The service username assigned to the access required: - acls - project_name - service_name - username access_name: type: string description: Label to describe the access access_type: type: string description: An enumeration. title: Type of access enum: - KAFKA owner_user_group_id: type: string maxLength: 36 description: The ID of the group that will own the access required: - access_data - access_name - access_type OrganizationIPAllowListSetRequestBody: type: object description: OrganizationIPAllowListSetRequestBody properties: api_client_ip_allowlist: type: array description: List of allowed IP ranges items: type: string api_client_ip_allowlist_enabled: type: boolean description: If the IP allowlist is being enforced for this organization required: - api_client_ip_allowlist - api_client_ip_allowlist_enabled OrganizationUserInvitationsListResponse: type: object description: OrganizationUserInvitationsListResponse properties: invitations: type: array description: List of user invitations for the organization items: type: object properties: create_time: type: string maxLength: 36 description: Time of creating the invitation expiry_time: type: string maxLength: 36 description: By when the invitation is valid invited_by: type: string description: Name of the invitation creator user_email: type: string maxLength: 254 description: User Email required: - create_time - expiry_time - invited_by - user_email required: - invitations OrganizationAuthenticationConfigGetResponse: type: object description: OrganizationAuthenticationConfigGetResponse properties: mcp_enabled: type: boolean description: Users can use MCP clients with services and other resources they have access to in this organization. oauth_enabled: type: boolean description: Organization users are able to use OAuth authentication. password_auth_enabled: type: boolean description: Organization users are able to use password authentication. personal_tokens_enabled: type: boolean description: Organization users can use their personal tokens to access the organization through the Aiven API or other applications. personal_tokens_require_allowed_auth_method: type: boolean description: Organization users are able to use personal tokens that were generated from one of the allowed authentication methods. saml_allow_external: type: boolean description: Organization users are able to use SAML authentication of other organizations. saml_enabled: type: boolean description: Organization users are able to use SAML authentication. two_factor_required: type: boolean description: 2FA is required to access resources in this organization. UserOrganizationCreateResponse: type: object description: UserOrganizationCreateResponse properties: account_id: type: string maxLength: 36 description: Account ID of the organization's root unit create_time: type: string maxLength: 36 description: Time of creating the organization default_governance_user_group_id: type: string maxLength: 36 description: Default governance user group ID organization_id: type: string maxLength: 36 description: Organization's ID organization_name: type: string maxLength: 83 description: Organization's name tier: type: string description: An enumeration. title: Tier of the organization enum: - business - personal update_time: type: string maxLength: 36 description: Time of the organization's latest update required: - account_id - create_time - organization_id - organization_name - tier - update_time OrganizationProjectsGetResponse: type: object description: OrganizationProjectsGetResponse properties: account_id: type: string description: '[DEPRECATED] Account ID to where the project belongs' base_port: type: integer minimum: 1 maximum: 65535 description: Valid port number (1-65535) title: Base Port billing_group_id: type: string minLength: 1 description: Billing group ID end_of_life_extension: type: object description: End of life extension information properties: ANY: type: object description: ServiceEndOfLifeExtension properties: eol_date: type: string maxLength: 36 description: Extended EOL date version: type: string description: Service version required: - eol_date - version features: type: object description: Feature flags properties: ANY: type: boolean description: Boolean organization_id: type: string maxLength: 36 description: Organization ID parent_id: type: string description: Organization or unit ID to where the project belongs project_id: type: string description: Project ID tags: type: object description: Tags properties: ANY: type: string maxLength: 64 description: Tag value tech_emails: type: array description: List of project technical email addresses items: type: object properties: email: type: string maxLength: 254 description: Technical contact email required: - email required: - end_of_life_extension - organization_id - parent_id - project_id - tags - tech_emails UserOrganizationsListResponse: type: object description: UserOrganizationsListResponse properties: organizations: type: array description: Organizations items: type: object properties: account_id: type: string maxLength: 36 description: Account ID of the organization's root unit create_time: type: string maxLength: 36 description: Time of creating the organization default_governance_user_group_id: type: string maxLength: 36 description: Default governance user group ID organization_id: type: string maxLength: 36 description: Organization's ID organization_name: type: string maxLength: 83 description: Organization's name tier: type: string description: An enumeration. title: Tier of the organization enum: - business - personal update_time: type: string maxLength: 36 description: Time of the organization's latest update required: - account_id - create_time - organization_id - organization_name - tier - update_time required: - organizations OrganizationAuthenticationConfigUpdateRequestBody: type: object description: OrganizationAuthenticationConfigUpdateRequestBody properties: mcp_enabled: type: boolean description: Users can use MCP clients with services and other resources they have access to in this organization. oauth_enabled: type: boolean description: Organization users are able to use OAuth authentication. password_auth_enabled: type: boolean description: Organization users are able to use password authentication. personal_tokens_enabled: type: boolean description: Organization users can use their personal tokens to access the organization through the Aiven API or other applications. personal_tokens_require_allowed_auth_method: type: boolean description: Organization users are able to use personal tokens that were generated from one of the allowed authentication methods. saml_allow_external: type: boolean description: Organization users are able to use SAML authentication of other organizations. saml_enabled: type: boolean description: Organization users are able to use SAML authentication. two_factor_required: type: boolean description: 2FA is required to access resources in this organization. OrganizationProjectsCreateResponse: type: object description: OrganizationProjectsCreateResponse properties: account_id: type: string description: '[DEPRECATED] Account ID to where the project belongs' base_port: type: integer minimum: 1 maximum: 65535 description: Valid port number (1-65535) title: Base Port billing_group_id: type: string minLength: 1 description: Billing group ID end_of_life_extension: type: object description: End of life extension information properties: ANY: type: object description: ServiceEndOfLifeExtension properties: eol_date: type: string maxLength: 36 description: Extended EOL date version: type: string description: Service version required: - eol_date - version features: type: object description: Feature flags properties: ANY: type: boolean description: Boolean organization_id: type: string maxLength: 36 description: Organization ID parent_id: type: string description: Organization or unit ID to where the project belongs project_id: type: string description: Project ID tags: type: object description: Tags properties: ANY: type: string maxLength: 64 description: Tag value tech_emails: type: array description: List of project technical email addresses items: type: object properties: email: type: string maxLength: 254 description: Technical contact email required: - email required: - end_of_life_extension - organization_id - parent_id - project_id - tags - tech_emails OrganizationUpdateResponse: type: object description: OrganizationUpdateResponse properties: account_id: type: string maxLength: 36 description: Account ID of the organization's root unit create_time: type: string maxLength: 36 description: Time of creating the organization default_governance_user_group_id: type: string maxLength: 36 description: Default governance user group ID organization_id: type: string maxLength: 36 description: Organization's ID organization_name: type: string maxLength: 83 description: Organization's name tier: type: string description: An enumeration. title: Tier of the organization enum: - business - personal update_time: type: string maxLength: 36 description: Time of the organization's latest update required: - account_id - create_time - organization_id - organization_name - tier - update_time OrganizationGovernanceAccessGetResponse: type: object description: OrganizationGovernanceAccessGetResponse properties: access: type: object description: OrganizationGovernanceAccess properties: access_data: type: object description: access type specific data properties: acls: type: array description: Acls items: type: object properties: host: type: string maxLength: 256 description: Acl host id: type: string description: Acl ID operation: type: string description: An enumeration. title: Acl operation enum: - Read - Write pattern_type: type: string description: An enumeration. title: Acl pattern type enum: - LITERAL permission_type: type: string description: An enumeration. title: Acl permission type enum: - ALLOW principal: type: string description: Acl principal resource_name: type: string maxLength: 256 description: Acl resource name resource_type: type: string description: An enumeration. title: Acl resource type enum: - Topic required: - host - id - operation - pattern_type - permission_type - principal - resource_name - resource_type project_name: type: string description: Project name service_name: type: string description: Service name username: type: string description: The service username assigned to the access required: - acls - project_name - service_name - username access_id: type: string description: The ID of the access access_name: type: string description: Label to describe the access access_type: type: string description: An enumeration. title: Type of access enum: - KAFKA create_time: type: string maxLength: 36 description: Timestamp of when access was created created_by: type: string description: The user that created the access credentials_consumed: type: boolean description: Wether the credentials have been reviewed credentials_user_id: type: string description: The user that created is assigned to review the credentials owner_user_group_id: type: string maxLength: 36 description: The ID of the group that will own the access required: - access_data - access_id - access_name - access_type - create_time - created_by - credentials_consumed - credentials_user_id required: - access OrganizationProjectsUpdateRequestBody: type: object description: OrganizationProjectsUpdateRequestBody properties: base_port: type: integer minimum: 10000 maximum: 30000 description: Valid port number (10000-30000) title: Base Port billing_group_id: type: string minLength: 1 description: Billing group ID to assign to the project. It's required when moving projects between organizations organization_id: type: string description: Organization ID parent_id: type: string description: Organization or unit ID to where to move the project project_name: type: string maxLength: 63 description: Project name tags: type: object description: Tags properties: ANY: type: string maxLength: 64 description: Tag value tech_emails: type: array maxItems: 10 description: Technical contact emails items: type: object properties: email: type: string maxLength: 254 description: Technical contact email required: - email OrganizationGovernanceAccessCreateResponse: type: object description: OrganizationGovernanceAccessCreateResponse properties: access: type: object description: OrganizationGovernanceAccess properties: access_data: type: object description: access type specific data properties: acls: type: array description: Acls items: type: object properties: host: type: string maxLength: 256 description: Acl host id: type: string description: Acl ID operation: type: string description: An enumeration. title: Acl operation enum: - Read - Write pattern_type: type: string description: An enumeration. title: Acl pattern type enum: - LITERAL permission_type: type: string description: An enumeration. title: Acl permission type enum: - ALLOW principal: type: string description: Acl principal resource_name: type: string maxLength: 256 description: Acl resource name resource_type: type: string description: An enumeration. title: Acl resource type enum: - Topic required: - host - id - operation - pattern_type - permission_type - principal - resource_name - resource_type project_name: type: string description: Project name service_name: type: string description: Service name username: type: string description: The service username assigned to the access required: - acls - project_name - service_name - username access_id: type: string description: The ID of the access access_name: type: string description: Label to describe the access access_type: type: string description: An enumeration. title: Type of access enum: - KAFKA create_time: type: string maxLength: 36 description: Timestamp of when access was created created_by: type: string description: The user that created the access credentials_consumed: type: boolean description: Wether the credentials have been reviewed credentials_user_id: type: string description: The user that created is assigned to review the credentials owner_user_group_id: type: string maxLength: 36 description: The ID of the group that will own the access required: - access_data - access_id - access_name - access_type - create_time - created_by - credentials_consumed - credentials_user_id required: - access OrganizationGovernanceAccessCredentialsGetResponse: type: object description: OrganizationGovernanceAccessCredentialsGetResponse properties: credentials: type: object description: KafkaAccessCredentials properties: access_cert: type: string description: service user access cert access_key: type: string description: service user access key password: type: string description: service user password required: - access_cert - access_key - password required: - credentials OrganizationGovernanceAccessListResponse: type: object description: OrganizationGovernanceAccessListResponse properties: access: type: array description: Access items: type: object properties: access_data: type: object description: access type specific data properties: acls: type: array description: Acls items: type: object properties: host: type: string maxLength: 256 description: Acl host id: type: string description: Acl ID operation: type: string description: An enumeration. title: Acl operation enum: - Read - Write pattern_type: type: string description: An enumeration. title: Acl pattern type enum: - LITERAL permission_type: type: string description: An enumeration. title: Acl permission type enum: - ALLOW principal: type: string description: Acl principal resource_name: type: string maxLength: 256 description: Acl resource name resource_type: type: string description: An enumeration. title: Acl resource type enum: - Topic required: - host - id - operation - pattern_type - permission_type - principal - resource_name - resource_type project_name: type: string description: Project name service_name: type: string description: Service name username: type: string description: The service username assigned to the access required: - acls - project_name - service_name - username access_id: type: string description: The ID of the access access_name: type: string description: Label to describe the access access_type: type: string description: An enumeration. title: Type of access enum: - KAFKA create_time: type: string maxLength: 36 description: Timestamp of when access was created created_by: type: string description: The user that created the access credentials_consumed: type: boolean description: Wether the credentials have been reviewed credentials_user_id: type: string description: The user that created is assigned to review the credentials owner_user_group_id: type: string maxLength: 36 description: The ID of the group that will own the access required: - access_data - access_id - access_name - access_type - create_time - created_by - credentials_consumed - credentials_user_id first: type: string description: First page last: type: string description: Last page next: type: string description: Next page prev: type: string description: Previous page total_count: type: integer description: Total number of results required: - access OrganizationIPAllowListGetResponse: type: object description: OrganizationIPAllowListGetResponse properties: api_client_ip_allowlist: type: array description: List of allowed IP ranges items: type: string api_client_ip_allowlist_enabled: type: boolean description: If the IP allowlist is being enforced for this organization required: - api_client_ip_allowlist - api_client_ip_allowlist_enabled OrganizationGovernanceAccessDeleteResponse: type: object description: OrganizationGovernanceAccessDeleteResponse properties: access_id: type: string description: The ID of the access required: - access_id parameters: organizationgovernanceaccesslist_limit: in: query name: limit description: Limit results to this number schema: type: integer minimum: 30 maximum: 999 required: false organizationgovernanceaccesslist_cursor: in: query name: cursor description: Pagination cursor schema: type: string required: false organizationgovernanceaccesslist_owner_user_group_id: in: query name: owner_user_group_id description: Filter by owner user group ID schema: type: string minimum: 1 maximum: 36 required: false organization_id: in: path name: organization_id description: ID of an organization schema: type: string required: true organizationdelete_recursive: in: query name: recursive description: Delete all resources in the organization schema: type: boolean required: true user_email: in: path name: user_email description: Email address schema: type: string required: true organizationgovernanceaccesslist_resource_name: in: query name: resource_name description: Filter by resource name schema: type: string minimum: 1 maximum: 256 required: false access_id: in: path name: access_id description: Access Id schema: type: string required: true project_id: in: path name: project_id description: Project Id schema: type: string required: true securitySchemes: tokenAuth: description: 'Header should be of the format `authorization: aivenv1