Aiven API Documentation (v1)

Download OpenAPI specification:Download

Introduction

Aiven enables you to accelerate application innovation through a modern, fully-managed open source data infrastructure immediately deployable in public clouds, including Amazon Web Services, Google Cloud Platform, and Microsoft Azure.

If you do not have an account yet, sign up now at aiven.io and get started with $300 free credits. No credit card required.

Description

The Aiven REST API provides access to aiven.io services. All requests and responses are in JSON format and all requests must have their content-type header set to application/json: content-type: application/json

You might also be interested in our Terraform Provider to automate your Aiven deployments or our Command Line Client.

Our open source efforts are on Github and we are always looking for contributors!

Authentication

tokenAuth

Header should be of the format authorization: aivenv1 <TOKEN>. Tokens can be obtained from your Aiven profile page

Security Scheme Type HTTP
HTTP Authorization Scheme bearer

oauth2

OAuth2 security scheme

Security Scheme Type OAuth2
authorizationCode OAuth Flow
Authorization URL: https://console.aiven.io/oauth/authorize
Token URL: 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

  • 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

Errors

When 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:

{
  "message": "Database not powered on",
  "errors": [
    {
      "message": "Database not powered on",
      "status": 409,
      "error_code": "not_powered"
    }
  ]
}

Error codes

Machine-readable error_code fields will be progressively added to our endpoints to allow you to identify different failure cases programmatically. Current supported values are listed below:

  • backup_failed
  • not_powered

Account

Create a new authentication method

Authorizations:
tokenAuthoauth2 (accounts:writeauthentication:write)
path Parameters
account_id
required
string

Account ID

Request Body schema: application/json
authentication_method_name
required
string <= 128 characters

Authentication method name

authentication_method_type
required
string
Enum: "internal" "saml"

Authentication method type

auto_join_team_id
string <= 32 characters

Team ID. All users signing up with this authentication method will be added to this team.

saml_certificate
string <= 16384 characters

Identity provider's certificate

saml_digest_algorithm
string
Enum: "sha1" "sha256" "sha384" "sha512"

Digest algorithm. This is an advanced option that typically does not need to be set.

saml_entity_id
string <= 2048 characters

Entity ID

object

Map IdP fields

saml_idp_login_allowed
boolean

Set to 'true' to enable IdP initiated login

saml_idp_url
string <= 2048 characters

Provider single-sign on URL

saml_signature_algorithm
string
Enum: "rsa-sha1" "dsa-sha1" "rsa-sha256" "rsa-sha384" "rsa-sha512"

Signature algorithm. This is an advanced option that typically does not need to be set.

saml_variant
string
Value: "adfs"

SAML server variant

Responses

Response Schema: application/json
required
object

Authentication method details

Array of objects[ items ]

List of errors occurred during request processing

message
string

Printable result of the request

Request samples

Content type
application/json
{
  • "authentication_method_name": "string",
  • "authentication_method_type": "internal",
  • "auto_join_team_id": "string",
  • "saml_certificate": "string",
  • "saml_digest_algorithm": "sha1",
  • "saml_entity_id": "string",
  • "saml_field_mapping": {
    },
  • "saml_idp_login_allowed": true,
  • "saml_idp_url": "string",
  • "saml_signature_algorithm": "rsa-sha1",
  • "saml_variant": "adfs"
}

Response samples

Content type
application/json
{
  • "authentication_method": {
    },
  • "errors": [
    ],
  • "message": "string"
}

List authentication methods

Authorizations:
tokenAuthoauth2 (accounts:readauthentication:read)
path Parameters
account_id
required
string

Account ID

Responses

Response Schema: application/json
required
Array of objects[ items ]

List of authentication methods