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 Service_Integrations 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
\n - Account
\n - Operations on the organization level related to accounts, projects, teams, users, invites, billing groups, payment methods, credit cards, authentication methods, and more
\n - User
\n - Operations related to users and users' profiles, access, authentication, authorization, user management, and more
\n - Project
\n - General operations on projects related to users, VPCs, invitations, alerts, peering connections, and more
\n - BillingGroup
\n - Operation on invoices, billing groups' credits and events
\n - Support ticket
\n - Operations on support tickets: listing, creating, looping users in
\n
\n\n### Services APIs\n\n\n - Service
\n - All general (non-service-specific) operations on the service level: service creation, termination, configuration, updates, information retrieval, reset, and more
\n - Service Integrations
\n - Operations related to integrating services and managing service integrations
\n - Service: ClickHouse
\n - ClickHouse-specific operations on queries and databases
\n - Service: Flink
\n - Operations on Flink queries, jobs, and applications
\n - Service: Kafka
\n - Kafka and Kafka Connect specific operations on connectors, ACL entries, quotas, topics, topic messages, schema registry, and more
\n - Service: Kafka MirrorMaker
\n - Operations on replication flows
\n - Service: MySQL
\n - Fetching service query statistics
\n - Service: OpenSearch
\n - Operations on ACL configuration, security administration and configuration
\n - Service: PostgreSQL
\n - Operations on extensions, service query statistics, and connection pools
\n
\n\n# Requests\n\nThere are multiple ways you can interact with the Aiven API over HTTP. You can access it by sending requests from a client (for example, a web browser) to the Aiven's server. In this API reference, you'll find code examples of how to do that using `cURL` and a few different client libraries (programming languages).\n\nTo send an API request, you need to specify the following:\n\n* HTTP method\n* Path\n* Request headers\n\n Typically, `content-type` needs to be set to `application/json`: `content-type: application/json`. There are a few exceptions though.\n\n* Path, query, or body parameters (either required or optional).\n\n```bash\ncurl --request POST \\\n --url https://api.aiven.io/v1/project/{project}/vpcs \\\n --header 'Authorization: aivenv1 REPLACE_BEARER_TOKEN' \\\n --header 'content-type: application/json' \\\n --data\n '{\n \"cloud_name\": \"string\",\n \"network_cidr\": \"string\",\n \"peering_connections\": [\n {\n \"peer_azure_app_id\": \"string\",\n \"peer_azure_tenant_id\": \"string\",\n \"peer_cloud_account\": \"string\",\n \"peer_region\": \"string\",\n \"peer_resource_group\": \"string\",\n \"peer_vpc\": \"string\",\n \"user_peer_network_cidrs\": [\n \"string\"\n ]\n }\n ]\n }'\n```\n\n# Responses\n\nUpon receiving and processing a request, the Aiven API returns the response status code, response headers, and a response body in the `JSON` format. Response bodies include different properties, which can be either required or optional, for example, the ``message`` property, which is an optional human-readable information on the result of the action (deleted, created, or updated).\n\n```json\n{\n \"cloud_name\": \"string\",\n \"create_time\": \"string\",\n \"message\": \"string\",\n \"network_cidr\": \"string\",\n \"peering_connections\": [\n { ... }\n ],\n \"pending_build_only_peering_connections\": \"string\",\n \"project_vpc_id\": \"string\",\n \"state\": \"ACTIVE\",\n \"update_time\": \"string\"\n}\n```\n\n## Successful responses\n\nA successful API response returns an HTTP result code between 200 and 299.\n\nExample of the ``created`` response\n\n```json\n {\n \"service\": {\n \"service_name\": \"foobar\",\n ...\n }\n }\n```\n\n## Failed responses\n\nA failed API response returns a HTTP code greater or equal to 400. Additionally, the response may return a list of errors in the response body as JSON, for example\n\n```json\n{\n \"errors\": [\n {\n \"error_code\": \"authentication_failed\",\n \"message\": \"Authentication failed\",\n \"status\": 403,\n \"metadata\": {\n ...\n }\n }\n ],\n \"message\": \"Authentication failed\"\n}\n```\n\n> For information on errors' properties and error codes, check [Errors](/doc/openapi/openapi-description#errors).\n\n# Get started\n\nCheck out how to start using the Aiven API either in [API quick start](https://aiven.io/docs/tools/api#api-quickstart) or [Your first API call](https://aiven.io/blog/your-first-aiven-api-call).\n\n## Authentication\n\n\n\n# Errors\n\nWhen working with the Aiven API, you may encounter different error responses when you attempt to perform operations that can fail. For example, trying to enable writes for a database that has been powered off would lead to the following error response:\n\n```json\n{\n \"errors\": [\n {\n \"error_code\": \"not_powered\",\n \"message\": \"Database not powered on\",\n \"status\": 409\n }\n ],\n \"message\": \"Database not powered on\"\n}\n```\n\n## Check a response for errors\n\nIf a request fails with a HTTP code greater or equal to 400, it returns a list of errors in the response body as JSON. `errors` objects are embedded in the failed API responses.\n\n```json\n{\n \"errors\": [\n {\n \"error_code\": \"account_not_found\",\n \"message\": \"Account does not exist\",\n \"status\": 404\n }\n ],\n \"message\": \"Account does not exist\"\n}\n```\n\n## Errors' properties\n\nIn an API response, one or more errors may be included in the ``errors`` array of objects. Each error object may contain a few properties:\n\n* ``status`` (required) is an HTTP error code, which can be used to programmatically identify the error type.\n\n * ``200`` <= ``status``< ``300`` means a successful request.\n * ``300`` <= ``status`` <= ``500`` means a failed request.\n\n ``errors`` can have the following HTTPS status codes:\n\n * 200 - OK\n * 201 - Created\n * 400 - Bad Request\n * 401 - Unauthorized\n * 403 - Forbidden\n * 404 - Not found\n * 405 - Method Not Allowed\n * 409 - Conflict\n * 500 - Internal Server Error\n\n* ``message`` (required) is human-readable information on the error.\n* ``error_code`` is a machine-readable information on the error (see [Error codes](/doc/openapi/openapi-description#error-codes)).\n\n## Error codes\n\nMachine-readable ``error_code`` fields are progressively added to Aiven endpoints to allow you to identify different failure cases programmatically. Currently, the supported values are the following:\n\n- `account_already_exists`\n- `account_already_has_organization`\n- `account_and_project_do_not_match`\n- `account_and_project_must_belong_same_tenant`\n- `account_cannot_be_own_ancestor`\n- `account_must_have_enabled_authentication_method`\n- `account_not_found`\n- `account_team_not_found`\n- `account_unit_cannot_create_for_personal_tier`\n- `account_unit_cannot_have_billing_group`\n- `account_with_child_accounts_cannot_be_deleted`\n- `account_with_projects_cannot_be_deleted`\n- `action_forbidden_for_application_users`\n- `action_forbidden_for_managed_users`\n- `action_forbidden_for_marketplace_users`\n- `action_forbidden_for_scim_users`\n- `action_forbidden_for_timescale_users`\n- `action_forbidden_missing_governance_usergroup`\n- `action_forbidden_on_application_users`\n- `action_forbidden_on_topic_request`\n- `action_forbidden_on_unmanaged_users`\n- `acu_billing_not_allowed`\n- `address_already_belongs_to_organization`\n- `address_in_use`\n- `address_not_found`\n- `api_client_ip_allowlist_blocks_caller`\n- `approval_forbidden_on_topic_request`\n- `approval_missing_on_request`\n- `auth_token_max_age_too_low`\n- `authentication_method_disable_current_not_allowed`\n- `authentication_method_does_not_allow_auto_join_user_group`\n- `authentication_method_limit_reached`\n- `authentication_method_not_found`\n- `backup_failed`\n- `bad_request`\n- `billing_address_not_found`\n- `billing_customer_id_not_found`\n- `billing_group_not_found`\n- `billing_group_organization_active_trial`\n- `billing_group_owning_account_must_be_organization`\n- `billing_metronome_support_contract_not_found`\n- `ca_version_not_in_sequence`\n- `cannot_delete_active_managed_users`\n- `cannot_delete_users_with_organizations_memberships`\n- `cannot_move_project_not_assigned_to_organization`\n- `cannot_remove_managed_users_from_organization`\n- `cannot_set_groups_managed_by_scim_as_auto_join_group`\n- `client_ip_address_policy_violation`\n- `credit_card_not_found`\n- `credit_memo_not_found`\n- `custom_cloud_environment_cloud_not_supported`\n- `custom_cloud_environment_internal`\n- `custom_cloud_environment_invalid_iam_role_arn`\n- `custom_cloud_environment_missing_configuration`\n- `custom_cloud_environment_not_found`\n- `custom_cloud_environment_region_not_supported`\n- `database_not_found`\n- `decline_forbidden_on_topic_request`\n- `deleting_forbidden_on_governance_request`\n- `deleting_forbidden_on_topic_request`\n- `discount_not_found`\n- `feature_not_enabled`\n- `free_plans_in_high_demand_and_unavailable`\n- `free_tier_restricted`\n- `free_trial_extensions_not_available`\n- `free_trial_max_extended`\n- `free_trial_not_active`\n- `free_trial_not_available`\n- `governance_access_no_permission_on_project`\n- `governance_access_not_found`\n- `governance_configuration_already_exists`\n- `governance_configuration_not_found`\n- `governance_group_not_found`\n- `governance_invalid_service_type`\n- `governance_request_already_in_progress`\n- `governance_request_deleted`\n- `idp_no_domains_linked`\n- `index_close_failed`\n- `index_not_found`\n- `internal_server_error`\n- `invalid_backup_configuration`\n- `invalid_cmk_id`\n- `invalid_currency_code`\n- `invalid_date_format`\n- `invalid_email_format`\n- `invalid_governance_group_provided`\n- `invalid_kafka_topic_request_type`\n- `invalid_os_migration_command`\n- `invalid_owner_user_group`\n- `invalid_private_access_settings`\n- `invalid_scim_user_state_update`\n- `invalid_service_type`\n- `invalid_vcs_type`\n- `invitation_expired`\n- `invitation_not_found`\n- `invoice_lines_not_supported`\n- `invoice_not_found`\n- `ip_address_not_present`\n- `ip_address_not_valid`\n- `kafka_acl_not_supported`\n- `kafka_console_governance_enabled`\n- `kafka_governance_not_available`\n- `kafka_governance_not_enabled`\n- `kafka_governance_policy_incomplete`\n- `kafka_partition_reassignment_in_progress`\n- `kafka_policy_violation`\n- `kafka_service_unavailable`\n- `kafka_terraform_governance_enabled`\n- `kafka_topic_already_exists`\n- `kafka_topic_invalid_config`\n- `kafka_topic_not_found`\n- `kafka_topic_not_synchronized`\n- `kafka_topic_queued_for_deletion`\n- `kafka_topic_reserved`\n- `marketplace_aws_customer_or_product_details_not_found`\n- `marketplace_subscription_already_linked_to_organization`\n- `marketplace_subscription_link_expired`\n- `marketplace_subscription_no_access`\n- `metadata_validation_failed`\n- `mfa_required_by_organization`\n- `mp_account_with_active_subscription_deleted`\n- `mp_account_with_commitment_deleted`\n- `mp_account_with_support_contract_deleted`\n- `mp_subscription_not_found`\n- `nested_account_cannot_have_authentication_method`\n- `nested_account_cannot_have_user_groups`\n- `new_subnet_id_required`\n- `no_failed_os_migration`\n- `node_prune_version_not_updated`\n- `not_powered`\n- `opensearch_delete_system_index`\n- `opensearch_internal_server_error`\n- `opensearch_service_unavailable`\n- `opensearch_too_many_requests`\n- `optimization_failed`\n- `optimization_not_found`\n- `organization_aiven_enterprise_contract_denied`\n- `organization_aiven_enterprise_contract_feature_denied`\n- `organization_aiven_enterprise_denied`\n- `organization_aiven_enterprise_organization_required`\n- `organization_cannot_exist_without_root_account`\n- `organization_domain_already_linked`\n- `organization_domain_not_found`\n- `organization_domain_not_root`\n- `organization_domain_verification_failed`\n- `organization_has_active_addresses`\n- `organization_has_active_payment_methods`\n- `organization_kafka_topics_invalid_filters`\n- `organization_mismatch`\n- `organization_must_have_one_super_admin`\n- `organization_not_found`\n- `organization_pending_support_contract_already_exists`\n- `organization_support_contract_tier_not_supported`\n- `organization_tier_downgrade_not_allowed`\n- `organization_user_not_found`\n- `orphaned_project_not_allowed`\n- `parent_account_cannot_be_own_ancestor`\n- `parent_account_not_found`\n- `parent_account_tenant_invalid`\n- `parent_account_too_deep`\n- `payment_method_not_found`\n- `permission_denied`\n- `pg_editor_readonly_violation`\n- `pg_pool_already_exists`\n- `pg_pool_invalid_database`\n- `pg_pool_invalid_name`\n- `pg_pool_not_found`\n- `pg_pool_not_supported`\n- `pg_pool_pinned_pools_not_enabled`\n- `pg_pool_requires_pinned_pools`\n- `pg_pool_too_big`\n- `pg_pool_too_many`\n- `pg_publication_not_found`\n- `pg_replication_slot_not_found`\n- `pg_scram_not_allowed`\n- `project_account_not_active`\n- `project_already_exists`\n- `project_belongs_to_account_billing_group_must_use_api`\n- `project_does_not_exist`\n- `project_has_no_such_user`\n- `project_limitation_not_found`\n- `project_move_invalid`\n- `project_move_organizations_internal_config_not_match`\n- `project_not_found`\n- `project_without_billing_group_must_be_assigned_from_account`\n- `query_validation_failed`\n- `replication_already_exists`\n- `replication_config_invalid`\n- `replication_not_found`\n- `replication_service_not_found`\n- `repository_not_found`\n- `request_already_exists`\n- `request_forbidden`\n- `request_not_found`\n- `request_operation_already_exists`\n- `request_operation_not_found`\n- `resource_managed_by_governance`\n- `resource_managed_by_scim`\n- `resource_not_managed_by_scim`\n- `retired_api_endpoint`\n- `root_account_required`\n- `same_organization_required`\n- `schema_insights_failed`\n- `service_acl_not_found`\n- `service_acl_too_many`\n- `service_does_not_exist`\n- `service_governance_not_enabled`\n- `service_integration_endpoint_not_found`\n- `service_integration_not_found`\n- `service_integration_project_mismatch_source_destination`\n- `service_is_upgrade_pipeline_source`\n- `service_logs_backend_timeout`\n- `service_logs_backend_unavailable`\n- `service_maintenance_required`\n- `service_not_found`\n- `service_type_not_allowed`\n- `service_type_version_pin_locked`\n- `shipping_address_not_found`\n- `signup_welcome_invalid_key`\n- `snapshot_creation_failed`\n- `snapshot_deletion_failed`\n- `snapshot_not_found`\n- `snapshot_restoration_failed`\n- `stripe_customer_owning_account_must_be_organization`\n- `support_contract_and_account_must_be_in_same_organization`\n- `support_contract_earliest_cancellation_date_later_than_end_date`\n- `support_contract_must_have_billing_group`\n- `support_contract_null_tier`\n- `team_limit_exceeded`\n- `team_names_must_be_unique`\n- `tenant_mismatch`\n- `topic_not_found`\n- `unable_to_parse_query`\n- `unit_cannot_be_moved_out_of_organization`\n- `unknown_user_sso_login_attempt`\n- `unsupported_resource_type`\n- `upgrade_pipeline_no_nodes`\n- `upgrade_pipeline_no_validation`\n- `upgrade_pipeline_not_enabled_for_project`\n- `upgrade_pipeline_service_not_destination`\n- `upgrade_pipeline_service_not_found`\n- `upgrade_step_destination_already_has_source`\n- `upgrade_step_destination_service_not_found`\n- `upgrade_step_exceeds_max_chain_length`\n- `upgrade_step_not_found`\n- `upgrade_step_service_type_mismatch`\n- `upgrade_step_source_service_not_found`\n- `upgrade_step_unsupported_service_type`\n- `upgrade_step_validation_not_possible_due_to_service_state`\n- `upgrade_step_would_create_cycle`\n- `upgrade_validation_already_exists`\n- `user_already_in_organization`\n- `user_already_invited_to_organization`\n- `user_cant_login`\n- `user_config_2fa_otp_verification_failed`\n- `user_deactivated`\n- `user_domain_does_not_belong_to_organization_or_no_linked_auth_method`\n- `user_group_names_must_be_unique`\n- `user_group_not_found`\n- `user_groups_belong_to_different_accounts`\n- `user_groups_must_be_from_same_account`\n- `user_has_no_access_to_billing_info`\n- `user_has_no_access_to_project_with_current_authentication_method`\n- `user_has_to_sign_in_with_non_account_authentication_method`\n- `user_has_too_many_disk_addition_requests`\n- `user_is_internal_user`\n- `user_not_account_owner`\n- `user_not_account_owner_of_billing_group`\n- `user_not_account_owner_of_parent_account`\n- `user_not_admin_of_account_billing_group`\n- `user_not_application_user`\n- `user_not_found`\n- `user_not_managed_by_organization`\n- `user_not_organization_admin`\n- `user_not_signed_in_with_account_authentication_method`\n- `user_oauth_authentication_method_not_allowed`\n- `user_password_authentication_method_not_allowed`\n- `user_password_compromised`\n- `user_password_not_found`\n- `user_personal_token_allowed_authentication_methods_cannot_be_disabled`\n- `user_personal_token_not_allowed`\n- `user_personal_tokens_cannot_be_disabled`\n- `user_role_not_allowed_to_perform_operation`\n- `user_saml_authentication_method_not_allowed`\n- `user_weblink_action_expired`\n- `username_is_invalid`\n- `username_is_reserved`\n- `users_belong_to_different_tenant_from_user_group_account`\n- `vcs_integration_installation_not_found_or_not_accessible`\n- `vcs_integration_not_found`\n- `vpc_id_and_subnet_id_required`\n- `webhook_invalid_event_data`\n- `webhook_unauthorized`\n"
servers:
- url: https://api.aiven.io/v1
tags:
- name: Service_Integrations
x-displayName: Service Integrations
paths:
/project/{project}/integration:
post:
summary: Create a new service integration
tags:
- Service_Integrations
operationId: ServiceIntegrationCreate
parameters:
- $ref: '#/components/parameters/project'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceIntegrationCreateRequestBody'
example:
dest_endpoint_id: 5bdeef77-a901-4487-a0db-54eba23539f8
dest_project: myproject1
dest_service: service2
integration_type: alertmanager
source_endpoint_id: 543e420d-aa63-43e8-b8e8-294a78c600e7
source_project: myproject1
source_service: service1
user_config: {}
responses:
'200':
description: Response
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceIntegrationCreateResponse'
security:
- tokenAuth: []
oauth2:
- services:write
/project/{project}/integration/{integration_id}:
delete:
summary: Delete a service integration
tags:
- Service_Integrations
operationId: ServiceIntegrationDelete
parameters:
- $ref: '#/components/parameters/project'
- $ref: '#/components/parameters/integration_id'
responses:
'200':
description: Response
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceIntegrationDeleteResponse'
security:
- tokenAuth: []
oauth2:
- services:write
get:
summary: Get service integration
tags:
- Service_Integrations
operationId: ServiceIntegrationGet
parameters:
- $ref: '#/components/parameters/project'
- $ref: '#/components/parameters/integration_id'
responses:
'200':
description: Response
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceIntegrationGetResponse'
security:
- tokenAuth: []
oauth2:
- services:read
put:
summary: Update a service integration
tags:
- Service_Integrations
operationId: ServiceIntegrationUpdate
parameters:
- $ref: '#/components/parameters/project'
- $ref: '#/components/parameters/integration_id'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceIntegrationUpdateRequestBody'
example:
user_config: {}
responses:
'200':
description: Response
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceIntegrationUpdateResponse'
security:
- tokenAuth: []
oauth2:
- services:write
/project/{project}/integration_endpoint:
post:
summary: Create a new service integration endpoint
tags:
- Service_Integrations
operationId: ServiceIntegrationEndpointCreate
parameters:
- $ref: '#/components/parameters/project'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceIntegrationEndpointCreateRequestBody'
example:
endpoint_name: Testing Datadog account
endpoint_type: autoscaler
user_config: {}
responses:
'200':
description: Response
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceIntegrationEndpointCreateResponse'
security:
- tokenAuth: []
oauth2:
- services:write
get:
summary: List available integration endpoints for project
tags:
- Service_Integrations
operationId: ServiceIntegrationEndpointList
parameters:
- $ref: '#/components/parameters/project'
responses:
'200':
description: Response
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceIntegrationEndpointListResponse'
security:
- tokenAuth: []
oauth2:
- services:read
/project/{project}/integration_endpoint/{integration_endpoint_id}:
delete:
summary: Delete a service integration endpoint
tags:
- Service_Integrations
operationId: ServiceIntegrationEndpointDelete
parameters:
- $ref: '#/components/parameters/project'
- $ref: '#/components/parameters/integration_endpoint_id'
responses:
'200':
description: Response
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceIntegrationEndpointDeleteResponse'
security:
- tokenAuth: []
oauth2:
- services:write
get:
summary: Get service integration endpoint
tags:
- Service_Integrations
operationId: ServiceIntegrationEndpointGet
parameters:
- $ref: '#/components/parameters/project'
- $ref: '#/components/parameters/integration_endpoint_id'
- $ref: '#/components/parameters/serviceintegrationendpointget_include_secrets'
responses:
'200':
description: Response
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceIntegrationEndpointGetResponse'
security:
- tokenAuth: []
oauth2:
- services:read
put:
summary: Update service integration endpoint
tags:
- Service_Integrations
operationId: ServiceIntegrationEndpointUpdate
parameters:
- $ref: '#/components/parameters/project'
- $ref: '#/components/parameters/integration_endpoint_id'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceIntegrationEndpointUpdateRequestBody'
example:
user_config: {}
responses:
'200':
description: Response
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceIntegrationEndpointUpdateResponse'
security:
- tokenAuth: []
oauth2:
- services:write
/project/{project}/integration_endpoint_types:
get:
summary: List available service integration endpoint types
tags:
- Service_Integrations
operationId: ServiceIntegrationEndpointTypes
parameters:
- $ref: '#/components/parameters/project'
responses:
'200':
description: Response
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceIntegrationEndpointTypesResponse'
security:
- tokenAuth: []
oauth2:
- services:read
/project/{project}/service/{service_name}/integration:
get:
summary: List available integrations for a service
tags:
- Service_Integrations
operationId: ServiceIntegrationList
parameters:
- $ref: '#/components/parameters/project'
- $ref: '#/components/parameters/service_name'
responses:
'200':
description: Response
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceIntegrationListResponse'
security:
- tokenAuth: []
oauth2:
- services:read
/project/{project}/integration_types:
get:
summary: List available service integration types
tags:
- Service_Integrations
operationId: ServiceIntegrationTypes
parameters:
- $ref: '#/components/parameters/project'
responses:
'200':
description: Response
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceIntegrationTypesResponse'
security:
- tokenAuth: []
oauth2:
- services:read
components:
schemas:
ServiceIntegrationTypesResponse:
type: object
description: ServiceIntegrationTypesResponse
properties:
errors:
type: array
description: List of errors occurred during request processing
items:
type: object
properties:
message:
type: string
description: Printable error message
more_info:
type: string
description: URL to the documentation of the error
status:
type: integer
description: HTTP error status code
required:
- message
- status
integration_types:
type: array
description: List of service integration types
items:
type: object
properties:
dest_description:
type: string
description: Description of the destination service
dest_service_type:
type: string
description: 'Service type. DEPRECATED: Use dest_service_types instead'
dest_service_types:
type: array
description: Supported destination service types
items:
type: string
integration_type:
type: string
description: Integration type name
source_description:
type: string
description: Description of the source service
source_service_types:
type: array
description: Supported source service types
items:
type: string
user_config_schema:
type: object
description: JSON-Schema for the 'user_config' properties
properties: {}
required:
- dest_description
- dest_service_type
- dest_service_types
- integration_type
- source_description
- source_service_types
- user_config_schema
message:
type: string
description: Printable result of the request
required:
- integration_types
ServiceIntegrationEndpointDeleteResponse:
type: object
description: ServiceIntegrationEndpointDeleteResponse
properties:
errors:
type: array
description: List of errors occurred during request processing
items:
type: object
properties:
message:
type: string
description: Printable error message
more_info:
type: string
description: URL to the documentation of the error
status:
type: integer
description: HTTP error status code
required:
- message
- status
message:
type: string
description: Printable result of the request
ServiceIntegrationEndpointCreateResponse:
type: object
description: ServiceIntegrationEndpointCreateResponse
properties:
errors:
type: array
description: List of errors occurred during request processing
items:
type: object
properties:
message:
type: string
description: Printable error message
more_info:
type: string
description: URL to the documentation of the error
status:
type: integer
description: HTTP error status code
required:
- message
- status
message:
type: string
description: Printable result of the request
service_integration_endpoint:
type: object
description: Service integration endpoint
properties:
endpoint_config:
type: object
description: Service integration endpoint backend settings
properties: {}
endpoint_id:
type: string
description: Integration endpoint ID
endpoint_name:
type: string
minLength: 1
maxLength: 40
description: Integration endpoint name
endpoint_type:
type: string
description: Integration endpoint type
enum:
- autoscaler
- autoscaler_service
- datadog
- external_aws_cloudwatch_logs
- external_aws_cloudwatch_metrics
- external_aws_s3
- external_azure_blob_storage
- external_clickhouse
- external_elasticsearch_logs
- external_google_cloud_bigquery
- external_google_cloud_logging
- external_kafka
- external_mysql
- external_object_storage_config
- external_opensearch_logs
- external_postgresql
- external_prometheus
- external_redis
- external_schema_registry
- external_sumologic_logs
- jolokia
- prometheus
- rsyslog
user_config:
type: object
description: Service integration endpoint settings
properties: {}
required:
- endpoint_config
- endpoint_id
- endpoint_name
- endpoint_type
- user_config
required:
- service_integration_endpoint
ServiceIntegrationEndpointCreateRequestBody:
type: object
description: ServiceIntegrationEndpointCreateRequestBody
properties:
endpoint_name:
type: string
minLength: 1
maxLength: 40
description: Integration endpoint name
endpoint_type:
type: string
description: Service integration endpoint type
enum:
- autoscaler
- autoscaler_service
- datadog
- external_aws_cloudwatch_logs
- external_aws_cloudwatch_metrics
- external_aws_s3
- external_azure_blob_storage
- external_clickhouse
- external_elasticsearch_logs
- external_google_cloud_bigquery
- external_google_cloud_logging
- external_kafka
- external_mysql
- external_object_storage_config
- external_opensearch_logs
- external_postgresql
- external_prometheus
- external_redis
- external_schema_registry
- external_sumologic_logs
- jolokia
- prometheus
- rsyslog
user_config:
type: object
description: Service integration endpoint settings
properties: {}
required:
- endpoint_name
- endpoint_type
- user_config
ServiceIntegrationEndpointGetResponse:
type: object
description: ServiceIntegrationEndpointGetResponse
properties:
errors:
type: array
description: List of errors occurred during request processing
items:
type: object
properties:
message:
type: string
description: Printable error message
more_info:
type: string
description: URL to the documentation of the error
status:
type: integer
description: HTTP error status code
required:
- message
- status
message:
type: string
description: Printable result of the request
service_integration_endpoint:
type: object
description: Service integration endpoint
properties:
endpoint_config:
type: object
description: Service integration endpoint backend settings
properties: {}
endpoint_id:
type: string
description: Integration endpoint ID
endpoint_name:
type: string
minLength: 1
maxLength: 40
description: Integration endpoint name
endpoint_type:
type: string
description: Integration endpoint type
enum:
- autoscaler
- autoscaler_service
- datadog
- external_aws_cloudwatch_logs
- external_aws_cloudwatch_metrics
- external_aws_s3
- external_azure_blob_storage
- external_clickhouse
- external_elasticsearch_logs
- external_google_cloud_bigquery
- external_google_cloud_logging
- external_kafka
- external_mysql
- external_object_storage_config
- external_opensearch_logs
- external_postgresql
- external_prometheus
- external_redis
- external_schema_registry
- external_sumologic_logs
- jolokia
- prometheus
- rsyslog
user_config:
type: object
description: Service integration endpoint settings
properties: {}
required:
- endpoint_config
- endpoint_id
- endpoint_name
- endpoint_type
- user_config
required:
- service_integration_endpoint
ServiceIntegrationListResponse:
type: object
description: ServiceIntegrationListResponse
properties:
errors:
type: array
description: List of errors occurred during request processing
items:
type: object
properties:
message:
type: string
description: Printable error message
more_info:
type: string
description: URL to the documentation of the error
status:
type: integer
description: HTTP error status code
required:
- message
- status
message:
type: string
description: Printable result of the request
service_integrations:
type: array
description: List of service integrations in current project for a service
items:
type: object
properties:
active:
type: boolean
description: True when integration is active
description:
type: string
description: Description of the integration
dest_endpoint:
type: string
description: Destination endpoint name
dest_endpoint_id:
type: string
description: Destination endpoint id
dest_project:
type: string
maxLength: 63
description: Project name
dest_service:
type: string
description: Destination service name
dest_service_type:
type: string
maxLength: 64
description: Service type code
enabled:
type: boolean
description: True when integration is enabled
integration_status:
type: object
description: Integration status
properties:
state:
type: object
description: Service integration state
properties:
errors:
type: array
description: Errors
items:
type: string
likely_error_cause:
type: string
description: Most likely cause of the errors
enum:
- 'null'
- destination
- integration
- source
- unknown
nodes:
type: object
description: Nodes
properties: {}
status:
type: string
description: Service integration status
enum:
- failed
- inactive
- running
- starting
- unknown
required:
- errors
- nodes
- status
status_user_desc:
type: string
description: Integration status description
required:
- state
- status_user_desc
integration_type:
type: string
description: Type of the integration
service_integration_id:
type: string
description: Integration ID
source_endpoint:
type: string
description: Source endpoint name
source_endpoint_id:
type: string
description: Source endpoint ID
source_project:
type: string
maxLength: 63
description: Project name
source_service:
type: string
description: Source service name
source_service_type:
type: string
maxLength: 64
description: Service type code
user_config:
type: object
description: Service integration settings
properties: {}
required:
- active
- description
- dest_project
- dest_service_type
- enabled
- integration_type
- service_integration_id
- source_project
- source_service
- source_service_type
required:
- service_integrations
ServiceIntegrationEndpointListResponse:
type: object
description: ServiceIntegrationEndpointListResponse
properties:
errors:
type: array
description: List of errors occurred during request processing
items:
type: object
properties:
message:
type: string
description: Printable error message
more_info:
type: string
description: URL to the documentation of the error
status:
type: integer
description: HTTP error status code
required:
- message
- status
message:
type: string
description: Printable result of the request
service_integration_endpoints:
type: array
description: List of service integrations
items:
type: object
properties:
endpoint_config:
type: object
description: Service integration endpoint backend settings
properties: {}
endpoint_id:
type: string
description: Integration endpoint ID
endpoint_name:
type: string
minLength: 1
maxLength: 40
description: Integration endpoint name
endpoint_type:
type: string
description: Integration endpoint type
enum:
- autoscaler
- autoscaler_service
- datadog
- external_aws_cloudwatch_logs
- external_aws_cloudwatch_metrics
- external_aws_s3
- external_azure_blob_storage
- external_clickhouse
- external_elasticsearch_logs
- external_google_cloud_bigquery
- external_google_cloud_logging
- external_kafka
- external_mysql
- external_object_storage_config
- external_opensearch_logs
- external_postgresql
- external_prometheus
- external_redis
- external_schema_registry
- external_sumologic_logs
- jolokia
- prometheus
- rsyslog
user_config:
type: object
description: Service integration endpoint settings
properties: {}
required:
- endpoint_config
- endpoint_id
- endpoint_name
- endpoint_type
- user_config
required:
- service_integration_endpoints
ServiceIntegrationUpdateResponse:
type: object
description: ServiceIntegrationUpdateResponse
properties:
errors:
type: array
description: List of errors occurred during request processing
items:
type: object
properties:
message:
type: string
description: Printable error message
more_info:
type: string
description: URL to the documentation of the error
status:
type: integer
description: HTTP error status code
required:
- message
- status
message:
type: string
description: Printable result of the request
service_integration:
type: object
description: Service integration
properties:
active:
type: boolean
description: True when integration is active
description:
type: string
description: Description of the integration
dest_endpoint:
type: string
description: Destination endpoint name
dest_endpoint_id:
type: string
description: Destination endpoint id
dest_project:
type: string
maxLength: 63
description: Project name
dest_service:
type: string
description: Destination service name
dest_service_type:
type: string
maxLength: 64
description: Service type code
enabled:
type: boolean
description: True when integration is enabled
integration_status:
type: object
description: Integration status
properties:
state:
type: object
description: Service integration state
properties:
errors:
type: array
description: Errors
items:
type: string
likely_error_cause:
type: string
description: Most likely cause of the errors
enum:
- 'null'
- destination
- integration
- source
- unknown
nodes:
type: object
description: Nodes
properties: {}
status:
type: string
description: Service integration status
enum:
- failed
- inactive
- running
- starting
- unknown
required:
- errors
- nodes
- status
status_user_desc:
type: string
description: Integration status description
required:
- state
- status_user_desc
integration_type:
type: string
description: Type of the integration
service_integration_id:
type: string
description: Integration ID
source_endpoint:
type: string
description: Source endpoint name
source_endpoint_id:
type: string
description: Source endpoint ID
source_project:
type: string
maxLength: 63
description: Project name
source_service:
type: string
description: Source service name
source_service_type:
type: string
maxLength: 64
description: Service type code
user_config:
type: object
description: Service integration settings
properties: {}
required:
- active
- description
- dest_project
- dest_service_type
- enabled
- integration_type
- service_integration_id
- source_project
- source_service
- source_service_type
required:
- service_integration
ServiceIntegrationDeleteResponse:
type: object
description: ServiceIntegrationDeleteResponse
properties:
errors:
type: array
description: List of errors occurred during request processing
items:
type: object
properties:
message:
type: string
description: Printable error message
more_info:
type: string
description: URL to the documentation of the error
status:
type: integer
description: HTTP error status code
required:
- message
- status
message:
type: string
description: Printable result of the request
ServiceIntegrationUpdateRequestBody:
type: object
description: ServiceIntegrationUpdateRequestBody
properties:
user_config:
type: object
description: Service integration settings
properties: {}
required:
- user_config
ServiceIntegrationCreateRequestBody:
type: object
description: ServiceIntegrationCreateRequestBody
properties:
dest_endpoint_id:
type: string
maxLength: 36
description: Integration destination endpoint ID
dest_project:
type: string
maxLength: 63
description: Defaults to project in the request path
title: Destination project name
dest_service:
type: string
maxLength: 64
description: Destination service name
integration_type:
type: string
description: Service integration type
enum:
- alertmanager
- application_service_credential
- autoscaler
- autoscaler_service
- caching
- clickhouse_credentials
- clickhouse_kafka
- clickhouse_postgresql
- dashboard
- datadog
- datahub_metadata_ingestion
- datasource
- disaster_recovery
- external_aws_cloudwatch_logs
- external_aws_cloudwatch_metrics
- external_elasticsearch_logs
- external_google_cloud_logging
- external_opensearch_logs
- flink
- flink_external_bigquery
- flink_external_kafka
- flink_external_postgresql
- internal_connectivity
- jolokia
- kafka_connect
- kafka_connect_postgresql
- kafka_inkless_postgresql
- kafka_logs
- kafka_mirrormaker
- logs
- metrics
- opensearch_cross_cluster_replication
- opensearch_cross_cluster_search
- prometheus
- read_replica
- rsyslog
- schema_registry_proxy
- service_composition
- stresstester
- thanos_distributed_query
- thanos_migrate
- thanos_object_storage
- thanoscompactor
- thanosquery
- thanosruler
- thanosstore
- vector
- vmalert
source_endpoint_id:
type: string
maxLength: 36
description: Integration source endpoint ID
source_project:
type: string
maxLength: 63
description: Defaults to project in the request path
title: Source project name
source_service:
type: string
maxLength: 64
description: Source service name
user_config:
type: object
description: Service type-specific settings
properties: {}
required:
- integration_type
ServiceIntegrationEndpointTypesResponse:
type: object
description: ServiceIntegrationEndpointTypesResponse
properties:
endpoint_types:
type: array
description: List of service integration endpoint types
items:
type: object
properties:
endpoint_type:
type: string
description: Endpoint type name
service_types:
type: array
description: Supported service types
items:
type: string
title:
type: string
description: Endpoint type description
user_config_schema:
type: object
description: JSON-Schema for the 'user_config' properties
properties: {}
required:
- endpoint_type
- service_types
- title
- user_config_schema
errors:
type: array
description: List of errors occurred during request processing
items:
type: object
properties:
message:
type: string
description: Printable error message
more_info:
type: string
description: URL to the documentation of the error
status:
type: integer
description: HTTP error status code
required:
- message
- status
message:
type: string
description: Printable result of the request
required:
- endpoint_types
ServiceIntegrationEndpointUpdateResponse:
type: object
description: ServiceIntegrationEndpointUpdateResponse
properties:
errors:
type: array
description: List of errors occurred during request processing
items:
type: object
properties:
message:
type: string
description: Printable error message
more_info:
type: string
description: URL to the documentation of the error
status:
type: integer
description: HTTP error status code
required:
- message
- status
message:
type: string
description: Printable result of the request
service_integration_endpoint:
type: object
description: Service integration endpoint
properties:
endpoint_config:
type: object
description: Service integration endpoint backend settings
properties: {}
endpoint_id:
type: string
description: Integration endpoint ID
endpoint_name:
type: string
minLength: 1
maxLength: 40
description: Integration endpoint name
endpoint_type:
type: string
description: Integration endpoint type
enum:
- autoscaler
- autoscaler_service
- datadog
- external_aws_cloudwatch_logs
- external_aws_cloudwatch_metrics
- external_aws_s3
- external_azure_blob_storage
- external_clickhouse
- external_elasticsearch_logs
- external_google_cloud_bigquery
- external_google_cloud_logging
- external_kafka
- external_mysql
- external_object_storage_config
- external_opensearch_logs
- external_postgresql
- external_prometheus
- external_redis
- external_schema_registry
- external_sumologic_logs
- jolokia
- prometheus
- rsyslog
user_config:
type: object
description: Service integration endpoint settings
properties: {}
required:
- endpoint_config
- endpoint_id
- endpoint_name
- endpoint_type
- user_config
required:
- service_integration_endpoint
ServiceIntegrationCreateResponse:
type: object
description: ServiceIntegrationCreateResponse
properties:
errors:
type: array
description: List of errors occurred during request processing
items:
type: object
properties:
message:
type: string
description: Printable error message
more_info:
type: string
description: URL to the documentation of the error
status:
type: integer
description: HTTP error status code
required:
- message
- status
message:
type: string
description: Printable result of the request
service_integration:
type: object
description: Service integration
properties:
active:
type: boolean
description: True when integration is active
description:
type: string
description: Description of the integration
dest_endpoint:
type: string
description: Destination endpoint name
dest_endpoint_id:
type: string
description: Destination endpoint id
dest_project:
type: string
maxLength: 63
description: Project name
dest_service:
type: string
description: Destination service name
dest_service_type:
type: string
maxLength: 64
description: Service type code
enabled:
type: boolean
description: True when integration is enabled
integration_status:
type: object
description: Integration status
properties:
state:
type: object
description: Service integration state
properties:
errors:
type: array
description: Errors
items:
type: string
likely_error_cause:
type: string
description: Most likely cause of the errors
enum:
- 'null'
- destination
- integration
- source
- unknown
nodes:
type: object
description: Nodes
properties: {}
status:
type: string
description: Service integration status
enum:
- failed
- inactive
- running
- starting
- unknown
required:
- errors
- nodes
- status
status_user_desc:
type: string
description: Integration status description
required:
- state
- status_user_desc
integration_type:
type: string
description: Type of the integration
service_integration_id:
type: string
description: Integration ID
source_endpoint:
type: string
description: Source endpoint name
source_endpoint_id:
type: string
description: Source endpoint ID
source_project:
type: string
maxLength: 63
description: Project name
source_service:
type: string
description: Source service name
source_service_type:
type: string
maxLength: 64
description: Service type code
user_config:
type: object
description: Service integration settings
properties: {}
required:
- active
- description
- dest_project
- dest_service_type
- enabled
- integration_type
- service_integration_id
- source_project
- source_service
- source_service_type
required:
- service_integration
ServiceIntegrationGetResponse:
type: object
description: ServiceIntegrationGetResponse
properties:
errors:
type: array
description: List of errors occurred during request processing
items:
type: object
properties:
message:
type: string
description: Printable error message
more_info:
type: string
description: URL to the documentation of the error
status:
type: integer
description: HTTP error status code
required:
- message
- status
message:
type: string
description: Printable result of the request
service_integration:
type: object
description: Service integration
properties:
active:
type: boolean
description: True when integration is active
description:
type: string
description: Description of the integration
dest_endpoint:
type: string
description: Destination endpoint name
dest_endpoint_id:
type: string
description: Destination endpoint id
dest_project:
type: string
maxLength: 63
description: Project name
dest_service:
type: string
description: Destination service name
dest_service_type:
type: string
maxLength: 64
description: Service type code
enabled:
type: boolean
description: True when integration is enabled
integration_status:
type: object
description: Integration status
properties:
state:
type: object
description: Service integration state
properties:
errors:
type: array
description: Errors
items:
type: string
likely_error_cause:
type: string
description: Most likely cause of the errors
enum:
- 'null'
- destination
- integration
- source
- unknown
nodes:
type: object
description: Nodes
properties: {}
status:
type: string
description: Service integration status
enum:
- failed
- inactive
- running
- starting
- unknown
required:
- errors
- nodes
- status
status_user_desc:
type: string
description: Integration status description
required:
- state
- status_user_desc
integration_type:
type: string
description: Type of the integration
service_integration_id:
type: string
description: Integration ID
source_endpoint:
type: string
description: Source endpoint name
source_endpoint_id:
type: string
description: Source endpoint ID
source_project:
type: string
maxLength: 63
description: Project name
source_service:
type: string
description: Source service name
source_service_type:
type: string
maxLength: 64
description: Service type code
user_config:
type: object
description: Service integration settings
properties: {}
required:
- active
- description
- dest_project
- dest_service_type
- enabled
- integration_type
- service_integration_id
- source_project
- source_service
- source_service_type
required:
- service_integration
ServiceIntegrationEndpointUpdateRequestBody:
type: object
description: ServiceIntegrationEndpointUpdateRequestBody
properties:
user_config:
type: object
description: Service integration endpoint settings
properties: {}
required:
- user_config
parameters:
integration_id:
in: path
name: integration_id
description: Integration ID
schema:
type: string
required: true
serviceintegrationendpointget_include_secrets:
in: query
name: include_secrets
description: Explicitly indicates that the client wants to read secrets that might be returned by this endpoint.
schema:
type: boolean
required: false
integration_endpoint_id:
in: path
name: integration_endpoint_id
description: Endpoint ID
schema:
type: string
required: true
service_name:
in: path
name: service_name
description: Service name
schema:
type: string
required: true
project:
in: path
name: project
description: Project name
schema:
type: string
required: true
securitySchemes:
tokenAuth:
description: 'Header should be of the format `authorization: aivenv1 `. Tokens can be obtained from [your Aiven profile page](https://console.aiven.io/profile/auth)'
scheme: bearer
type: http
oauth2:
type: oauth2
description: OAuth2 security scheme
flows:
authorizationCode:
authorizationUrl: https://console.aiven.io/oauth/authorize
tokenUrl: https://api.aiven.io/v1/oauth2/token
scopes:
all: Provide full access to the API
accounts: Allow enumerating and reading accounts configuration
accounts:read: Allow modifying account configuration
accounts:write: Provides full access to authentication related API
authentication: Provides full access to authentication related API
authentication:read: Allow reading authentication related configuration on resources (user profile, accounts)
authentication:write: Allow modifying authentication related configurations on resources (user profile, accounts)
billing: Provide full access to billing APIs
billing:read: Allow reading billing information and configuration
billing:write: Allow writing billing configuration
payments: Provide full access to payment method APIs
payments:read: Allow reading the payment method configurations
payments:write: Allows writing payment method configuration
privatelink: Provide full access to private link APIs
privatelink:read: Allow enumerating and reading private link items and configurations
privatelink:write: Allow writing (creating, modifying, deleting) private link items
projects: Provide full access to projects APIs
projects:read: Allow enumerating projects and reading their configuration
projects:write: Allow writing (creating, modifying, deleting) projects
scim: Provide full access to SCIM operations
scim:read: Allow reading SCIM endpoints
scim:write: Allow writing (modifying) SCIM endpoints
services: Provide full access to services APIs
services:read: Allow enumerating services and reading their configuration
services:write: Allow writing (creating, modifying, deleting) services
static_ips: Provide full access to static IPs APIs
static_ips:read: Allow enumerating and reading static IP items and configurations
static_ips:write: Allow writing (creating, modifying, deleting) static IP items
tickets: Provide full access to support ticket APIs
tickets:read: Allow enumerating and reading support tickets
tickets:write: Allow writing (creating, modifying) support tickets
user: Provide full access to user profile APIs
user:read: Allow reading user profile and configuration
user:write: Allow writing (modifying) user profile and configuration
externalDocs:
description: Aiven CLI client
url: https://github.com/aiven/aiven-client