Only this pageAll pages
1 of 37

Reference

Loading...

Loading...

API Specification Files

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Config Management Tools

Loading...

Software Development Kits

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Legal

Get Started with IONOS Cloud API

Learn how to use the IONOS Cloud API and begin integrating them to leverage the capabilities of IONOS Cloud services through this guide.

Base URL

Provide the Base URL of the IONOS API. Example: https://api.ionos.com/

Authorization

To log in to the IONOS API, you need to use either of the following authentication methods:

Note:

  • All user accounts with currently 2FA enabled or forced need to use the Bearer Token Authentication method.

  • The Basic Authentication method will be discontinued in the near future and it should be used in combination with 2FA to increase security.

  • For the Reseller accounts, the Bearer Token Authentication improves handling as the additional header token for sub-contracts is not be required.

To authenticate using a Basic Authentication with the IONOS API, follow these steps:

  1. Request a token using the following GET command:

  2. You need to pass the encoded Base64 token in your CURL command. You can obtain the Encoded Base64 format and generate the token by using:

    • Username

    • Password

  3. Once you receive the Base64 encoded token, you can use it in your cURL command to obtain the Basic Authentication token:

  4. If your request is successful, the response will include an access token. This token is a string of characters that serves as your authentication credential for subsequent API requests. Retrieve the access token to interact with the APIs.

To authenticate using a Bearer Token with the IONOS API, follow these steps:

  1. Request a token using the following GET command:

  1. You need to pass the secure token in your cURL command. You can obtain the secure token by using:

  2. Generate authentication token via DCD

  3. Generate authentication token via API

  4. Generate authentication token via CLI

  5. Once you receive the secure token, you can use the access token in your cURL command to obtain the Bearer Token:

  1. If your request is successful, the response will include an access token. This token is a string of characters that serves as your authentication credential for subsequent API requests. Retrieve the access token to interact with the APIs.

HTTP status codes

The IONOS APIs use the following standard HTTP response codes:

Status code

Message

Description

200

OK

It indicates that the server has successfully processed the request.

201

Created

It indicates that the request has been fulfilled, resulting in the creation of a new resource.

202

Accepted

It indicates that the request has been accepted for processing, but the processing has not been completed yet.

204

No Content

It indicates that the server successfully processed the request, but there is no content to return in the response payload.

400

Bad Request

It indicates that the server cannot process the client's request due to invalid syntax or parameters.

401

Unauthorized

It indicates that the request requires user authentication and the client needs to provide valid credentials for access.

403

Forbidden

It indicates that the server understood the request, but the client does not have permission to access the requested resource.

404

Not Found

It indicates that the requested resource could not be found on the server.

409

Conflict

It indicates that the request could not be completed due to a conflict with the current state of the resource.

422

Unprocessable Entity

It indicates that the server understands the request, but it cannot process it due to semantic errors.

429

Too Many Requests

It indicates that the client has exceeded the rate limit or quota for accessing the server, and the request has been rejected.

500

Internal Server Error

It indicates that the server encountered an unexpected condition that prevented it from fulfilling the request.

503

Service Unavailable

It indicates that the server is temporarily unable to handle the request due to overloading or maintenance.

Supported version and authorization methods

API

Version

Supported Authorization Methods

v1

Bearer Token

v1

Bearer Token

v1

Bearer Token

v1

Bearer Token

v1

Basic Auth and Bearer Token

v1

Bearer Token

v1

Basic Auth and Bearer Token

v3

Basic Auth

v6

Basic Auth and Bearer Token

v1

Bearer Token

v1

Basic Auth and Bearer Token

v1

Bearer Token

v1

Bearer Token

v1

Basic Auth and Bearer Token

v1

Basic Auth and Bearer Token

v1

Bearer Token

v1

Bearer Token

v1

Basic Auth and Bearer Token

v1

Basic Auth and Bearer Token

v1

Basic Auth and Bearer Token

v1

Bearer Token

v1

Basic Auth and Bearer Token

v2

Basic Auth and Bearer Token

v1

Bearer Token

v2

Hash-Based Message Authentication Codes (HMAC)

v2

Hash-Based Message Authentication Codes (HMAC)

v1

Basic Auth

v1

Bearer Token

Request schema

It is the format of the data that is being sent in the request body when interacting with an API endpoint. Request schema has all expected properties, data types, and constraints or validations that should be applied to the request payload. The request schema is specified using JSON Schema or another schema definition language supported by OpenAPI.

Path parameters

Path parameters allow dynamic routing, and you can request different resources using a common endpoint structure. This does not include the host or base path of the API. For example, in /datacenter/{datacenterId}, the path parameter is datacenterId.

Path parameter

Type

Required

Description

datacenterId

string

Yes

The unique identifier of the datacenter.

Query parameters

Parameters that are appended to the URL to customize the request and filter data. For example, in /datacenters?depth=###, the query parameter is depth.

Query parameter

Type

Required

Description

depth

int

Optional

The depth of query parameter used to specify how many levels of URIs should be expanded.

Header parameters

Custom headers are expected as part of the request and are sent in the header section. They are usually used for authentication tokens, content type negotiation, caching directives, and other metadata related to the request. HTTP Headers are an important part of the API request and response as they represent the meta-data associated with the API request and response.

Note: RFC7230 states header names are case insensitive.

For IONOS Object Storage, the headers carry information that is compatible with the S3 standard and, therefore, may require specific headers for certain operations.

The following IONOS APIs use the header parameters:

API

Supported Header Parameter

Cloud

X-Contract-Number

S3 Object Storage

Content-MD5, x-amz-acl, x-amz-grant-full-control, x-amz-grant-read-acp, x-amz-grant-write, x-amz-grant-write-acp

The following is the description of the header parameters used in IONOS APIs:

Header parameter

Type

Description

X-Contract-Number

string

It specifies the contract number associated with the account making the request in the IONOS API. It is only required for the reseller master contract users if they are using Basic Auth as an authentication method. All other users can skip this header.

Content-MD5

string

It contains a base64-encoded MD5 hash of the request body content, ensuring data integrity during transmission.

x-amz-acl

string

It sets access control permissions for the resource, defining who can access it.

x-amz-grant-full-control

string

It grants full control permissions over the resource to the specified users or groups.

x-amz-grant-read-acp

string

It grants permission to read the Access Control Policy (ACP) for the specified resource.

x-amz-grant-write

string

It grants write permissions to the specified users or groups for the resource.

x-amz-grant-write-acp

string

It grants permission to write to the Access Control Policy (ACP) for the specified resource.

Request body

The request body is described using a schema that defines the structure and format of the data expected in the body of the request. This schema can include parameters, JSON, XML, or other data formats specific to the API design. This data is then sent by the client to the server in an HTTP request.

Request

For example, for GET request for /cloudapi/v6/datacenters API, we have the following request body sample:

Example
 {
   "properties":{
      "name":"Test resource",
      "description":"My Production Datacenter",
      "location":"us/las",
      "secAuthProtection":false
   },
   "entities":{
      "servers":{
         "_links":{
            
         }
      },
      "volumes":{
         "_links":{
            
         }
      },
      "loadbalancers":{
         "_links":{
            
         }
      },
      "lans":{
         "_links":{
            
         }
      }
   }
}

Response

Status code

Response

Description

202

Accepted

The request is received and accepted for processing. The creation process is still ongoing, and the server will need some time to complete the creation of the datacenter resource before returning a final response.

Note: This example is for the CloudAPI with a successful acceptance returned with HTTP 202; this could be different for other APIs. For CloudAPI, resources are created asynchronously and handled by other endpoints. You can check for the progress via the Status URL that is returned in the response header of the POST or PUT call.

Example: GET https://api.ionos.com/cloudapi/v6/requests/abcxea-0001-9910-Y1Y2-aXXAAbnxxa/status can be used to check the processing state of your request.

Status URL in Reponse Headers

Once the datacenter resource is created, you will get a response.

Example
{
  "id": "xxxxea-0002-9925-X1X2-aXUAUnnana",
  "type": "datacenter",
  "href": "https://api.ionos.com/cloudapi/v6/datacenters/xxxxea-0002-9925-X1X2-aXUAUnnana",
  "metadata": {
    "etag": "xxxuxea-0002-9925-X1X2-aXUAUnnanahaha",
    "createdDate": "2024-03-27T14:06:49Z",
    "createdBy": "[email protected]",
    "createdByUserId": "xgaga-1c1d-4387-iaif1-6ee95d30e54a",
    "lastModifiedDate": "2024-03-27T14:06:49Z",
    "lastModifiedBy": "[email protected]",
    "lastModifiedByUserId": "xgaga-1c1d-4387-iaif1-6ee95d30e54a",
    "state": "BUSY"
  },
  "properties": {
    "name": "Test resource",
    "description": "My Production Datacenter",
    "location": "us/las",
    "version": null,
    "features": [],
    "secAuthProtection": false,
    "cpuArchitecture": [],
    "ipv6CidrBlock": null
  },
  "entities": {
    "servers": {
      "id": "850bd18e-3602-4b25-b1b2-a6b3eb3a41f8/servers",
      "type": "collection",
      "href": "https://api.ionos.com/cloudapi/v6/datacenters/xxxxea-0002-9925-X1X2-aXUAUnnana/servers",
      "_links": {}
    },
    "volumes": {
      "id": "850bd18e-3602-4b25-b1b2-a6b3eb3a41f8/volumes",
      "type": "collection",
      "href": "https://api.ionos.com/cloudapi/v6/datacenters/xxxxea-0002-9925-X1X2-aXUAUnnana/volumes",
      "_links": {}
    },
    "loadbalancers": {
      "id": "850bd18e-3602-4b25-b1b2-a6b3eb3a41f8/loadbalancers",
      "type": "collection",
      "href": "https://api.ionos.com/cloudapi/v6/datacenters/xxuxea-0002-9925-X1X2-aXUAUnnanahaha/loadbalancers",
      "_links": {}
    },
    "lans": {
      "id": "850bd18e-3602-4b25-b1b2-a6b3eb3a41f8/lans",
      "type": "collection",
      "href": "https://api.ionos.com/cloudapi/v6/datacenters/xxuxea-0002-9925-X1X2-aXUAUnnanahaha/lans",
      "_links": {}
    }
  }
}
Activity Log Service
API Gateway
AI Model Hub OpenAI compatible
AI Model Hub
Auth
CDN
Certificate Manager Service
Cloud Billing
Cloud
Cloud DNS
Container Registry
DBaaS In-Memory DB
DBaaS MariaDB
DBaaS MongoDB
DBaaS PostgreSQL
Identity
Logging Service
Managed Stackable Data Platform
Monitoring Service
Monitoring as a Service (Legacy)
Network File Storage
Quota
Reseller
IONOS Object Storage Management
IONOS Object Storage (contract-owned buckets)
IONOS Object Storage (user-owned buckets)
VM Auto Scaling
VPN Gateway
Status URL in Reponse Headers

Data Analytics

Network Services

Management

Storage & Backup

SDKs

Software Development Kits (SDKs) are the comprehensive packages that provide tools, libraries, and code samples necessary to integrate a platform into your application. SDKs streamline the development process by abstracting away the complexity of interacting with the underlying APIs, allowing you to focus on building your applications.

Benefits

The IONOS Cloud SDKs offer the following key benefits:

  • Streamlined Integration: The IONOS Cloud SDKs provide easy-to-use libraries to simplify the integration process into your applications.

  • Scalability and Flexibility: IONOS Cloud SDKs let you handle growing workloads through scalability and flexibility to adapt to changing requirements.

  • Enhanced Security: The built-in security features and best practices implemented within the SDKs safeguard your applications and data.

  • Seamless Access to IONOS Services: You can easily interact with various IONOS services, such as cloud infrastructure, storage, and networking, through the intuitive APIs of our SDKs.

  • Increased Productivity: You can leverage pre-built functions and components to reduce the development time and effort.

  • Improved Performance: IONOS Cloud SDKs allow you to get consistent performance across different programming languages and platforms supported by IONOS SDKs.

Observability

AI

Security

Databases

    {{BaseURL}}/auth/v1/tokens/generate
curl --location \
--request GET 'https://api.ionos.com/auth/v1/tokens/generate' \
--header 'Authorization: Basic WVhKemFHRmtMbUoxYzJoeVlVQnBiMjV2Y3k1amIyMDZJMUJoYTJsemRHRnVYekU9' \
--data ''
    {{BaseURL}}/auth/v1/tokens/generate
curl --location \
--request GET 'https://api.ionos.com/auth/v1/tokens/generate'
--header 'Authorization: Bearer eyJpZCI6MTUsInVzZXJuYW1lIjoia21pbmNoZWxsZSIsImVtYWlsIjoia21pbmNoZWxsZUBxcS5jb20iLCJmaXJzdE5hbWUiOiJKZWFubmUiLCJsYXN0TmFtZSI6IkhhbHZvcnNvbiIsImdlbmRlciI6ImZlbWFsZSIsImltYWdlIjoiaHR0cHM6Ly9yb2JvaGFzaC5vcmcvYXV0cXVpYXV0LnBuZz9zaXplPTUweDUwJnNldD1zZXQxIiwiaWF0IjoxNjM1NzczOTYyLCJleHAiOjE2MzU3Nzc1NjJ9.n9PQX8w8ocKo0dMCw3g8bKhjB8Wo7f7IONFBDqfxKhs' \
--data ''

Compute Services

Data Platform SDKs

You can streamline your integration with IONOS Data Platform and leverage advanced data management with easy analytics capabilities using Data Platform SDKs.

Logging Service SDKs

You can use Logging Service SDKs to enhance your logging capabilities and facilitate easy integration with IONOS logging services for efficient data management.

DBaaS MariaDB SDKs

You can simplify integration with MariaDB database clusters and enable seamless utilization of IONOS DBaaS services using MariaDB SDKs.

Container Registry SDKs

These development kits provide effortless integration with the IONOS Container Registry and allow you to enable seamless management of relevant registries.

SDK Bundles

Software Development Kits tailored to specific languages, such as GOLang, for better integration of IONOS Cloud services.

Auth SDKs

The Auth SDK wraps the Auth API and is designed for developers who build applications in Go. All API operations are performed over SSL and authenticated using your IONOS Cloud portal credentials. The API can be accessed within an instance running in IONOS Cloud or directly over the Internet from any application that can send an HTTPS request and receive an HTTPS response.

Kafka SDKs

GOLang SDK
GitHub Repo
Latest Release
Python SDK
GitHub Repo
Latest Release
GOLang SDK
GitHub Repo
Latest Release

Containers

GOLang SDK

GitHub Repo

Latest Release

Python SDK

GitHub Repo

Latest Release

Java SDK

GitHub Repo

Latest Release

NodeJS SDK

GitHub Repo

Latest Release

GOLang SDK

GitHub Repo

Latest Release

Python SDK

GitHub Repo

Latest Release

Java SDK

GitHub Repo

Latest Release

Ruby SDK

GitHub Repo

Latest Release

NodeJS SDK

GitHub Repo

Latest Release

GOLang SDK

GitHub Repo

GOLang SDK

GitHub Repo

Latest Release

GOLang SDK

GitHub Repo

Latest Release

Cloud DNS SDKs

You can use Cloud DNS SDKs to seamlessly integrate with IONOS Cloud DNS service. This allows you to efficiently manage DNS zones and records.

Cloud SDKs

The Compute SDK wraps the Cloud API and is designed for developers who build applications in five languages: Go, Java, Ruby, Python and NodeJS. All API operations are performed over SSL and authenticated using your IONOS Cloud portal credentials. The API can be accessed within an instance running in IONOS Cloud or directly over the Internet from any application that can send an HTTPS request and receive an HTTPS response.

DBaaS PostgreSQL SDKs

You can simplify integration with PostgreSQL database clusters through the development kits, to ensure a seamless utilization of IONOS DBaaS services.

DBaaS MongoDB SDKs

You can facilitate effortless integration with MongoDB database clusters to allow users to use IONOS DBaaS services in full capabilities.

Certificate Manager SDKs

The development kit used to provide seamless integration with the IONOS Certificate Manager. This allows you to conveniently provision and manage SSL certificates across connected resources.

IONOS Object Storage SDKs

CDN SDKs

DBaaS In Memory DB SDKs

NFS SDKs

API Gateway SDKs

VPN Gateway SDKs

GOLang SDK
GitHub Repo
Latest Release
GOLang SDK
GitHub Repo
Latest Release
Python SDK
GitHub Repo
Latest Release
Java SDK
GitHub Repo
Latest Release
Ruby SDK
GitHub Repo
Latest Release
NodeJS SDK
GitHub Repo
Latest Release
GOLang SDK
GitHub Repo
Latest Release
Python SDK
GitHub Repo
Latest Release
Java SDK
GitHub Repo
Latest Release
Ruby SDK
GitHub Repo
Latest Release
NodeJS SDK
GitHub Repo
Latest Release
GOLang SDK
GitHub Repo
Latest Release
Python SDK
GitHub Repo
Latest Release
Java SDK
GitHub Repo
Latest Release
Ruby SDK
GitHub Repo
Latest Release
NodeJS SDK
GitHub Repo
Latest Release
GOLang SDK
GitHub Repo
Latest Release
Python SDK
GitHub Repo
Latest Release
Java SDK
GitHub Repo
Latest Release
Ruby SDK
GitHub Repo
Latest Release
NodeJS SDK
GitHub Repo
Latest Release
GOLang SDK
GitHub Repo
Latest Release
GOLang SDK
GitHub Repo
Latest Release
GOLang SDK
GitHub Repo
Latest Release
GOLang SDK
GitHub Repo
Latest Release
GOLang SDK
GitHub Repo
Latest Release
GOLang SDK
GitHub Repo
Latest Release

Overview

Get up and running with libraries and integration tools.

Learn about IONOS APIs, SDKs, and Configuration Management tools. Empower your innovation with our developer-friendly tools and resources.

Application Programming Interfaces (APIs)

IONOS Infrastructure as a Service (IaaS) solutions can be managed through APIs, in addition to the Data Center Designer (DCD) web-based application. The IONOS API provides consistent concepts and features, delivers power and flexibility, and can be used to perform a multitude of management tasks, including adding servers and volumes and configuring networks. This API enables programmatic access to manage and control various aspects of cloud infrastructure. You can start using the IONOS APIs directly after getting authenticated. For more information, see Get Started with IONOS Cloud API.

Software Development Kits (SDKs)

IONOS Cloud SDKs provide a set of libraries to allow a seamless integration with IONOS services, and provide all the components needed to streamline the development process. The built-in security features and best practices implemented within the SDKs safeguard your applications and data. For more information, see SDK Bundles Documentation.

Configuration Management Tools

IONOS offers a comprehensive suite of Configuration Management Tools providing users with solutions for seamless integration and efficient management of their cloud resources. The Configuration Management Tools provide all utilities required to simplify and automate resource management that allows users to gain the ability to efficiently provision, configure, and manage their infrastructure. You can ensure configuration consistency across environments and effectively manage your cloud infrastructure in a scalable manner. For more information, see Configuration Management Tools Documentation.

Note:

  • APIs, SDKs, and Configuration Management Tools support both Basic Authentication and Bearer Token Authentication. The user accounts with currently 2FA enabled or forced need to use the Bearer Token Authentication method.

  • The Basic Authentication method will be discontinued in the near future and it should be used in combination with 2FA to increase security.

IONOS API Overview

Welcome to the Core API Specification for IONOS Cloud services. This guide provides detailed information about the APIs IONOS offers, allowing you to manage and interact with your cloud resources effectively. If you want to provision servers, manage databases, monitor activities, or handle billing, IONOS APIs offer the functionality to streamline all these operations.

Note: You can find detailed information about each API within this specification, including endpoints, functionalities, and usage instructions. Access the links to the documentation for each API to dive deeper into the specifics as needed. For more information, see our Get Started with IONOS Cloud API guide to help you begin using our APIs.

API Specification Files

The following is a list of all API Specification Files:

AI

Compute Services

Containers

Data Analytics

Databases

Network Services

Observability

Storage & Backup

Security

Management

IONOS Cloud Tools Overview

Config Management Tools allow you to automate the management of your VDC and the surrounding infrastructure.

DevOps teams apply these infrastructure automation principles by leveraging common cloud libraries, SDKs, and APIs. DevOps teams benefit from infrastructure as code for better scalability, monitoring and efficiency.

The following third-party tools are supported:

Terraform

The IONOS provider for Terraform is used to interact with the cloud computing and storage resources provided by IONOS Cloud. Before you begin, you must subscribe to an IONOS account. The credentials you create during sign-up will be used to authenticate against the Cloud API.

Terraform currently supports our latest V5 and v6 offerings.

Learn more about

Ansible

Ansible is an IT automation tool that allows users to configure, deploy, and orchestrate advanced tasks, such as continuous deployments, or zero downtime rolling updates. The IONOS module for Ansible leverages the IONOS Cloud API.

Learn more about

Docker Machine Driver

Docker Machine Driver is the official driver for Docker Machine to use with IONOS Cloud. It adds support for creating Docker Machines hosted on the IONOS Cloud.

Learn more about

Chef Knife plugin

Chef is a popular configuration management tool. It allows simplified configuration and maintenance of both servers and cloud provider environments through the use of common templates called recipes.

Learn more about

Puppet

The IONOS Puppet module allows a multi-server cloud environment using ProfitBricks resources to be deployed automatically from a Puppet manifest file.

Learn more about

IonosCTL CLI

IonosCTL is a tool for managing your IONOS Cloud resources directly from your terminal. The IonosCTL CLI is currently under development. We are working on adding new commands and use cases to support all the operations available in the Cloud API.

Learn more about

If you have further questions regarding IonosCTL, please contact our .

Relevant Links

AI Model Hub API

Interact with AI models on IONOS Cloud.

AI Model Hub OpenAI API

Use OpenAI-compatible AI Model Hub API for chat completions.

Compute Engine API

Provision and manage virtual machines and compute resources.

Cubes API

Manage cube instances.

VM Autoscaling API

Automatically scale virtual machines based on demand.

Managed Kubernetes API

Deploy and manage Kubernetes clusters on IONOS Cloud.

Private Container Registry API

Manage Docker and OCI-compliant registries.

Event Stream for Apache Kafka API

Manage and interact with Kafka event streams.

Managed Stackable Data Platform API

Deploy and manage a fully integrated data platform with Managed Stackable.

DBaaS In-Memory DB API

Create and manage Redis® clusters.

DBaaS MariaDB API

Create and manage MariaDB clusters.

DBaaS MongoDB API

Manage MongoDB databases on the cloud.

DBaaS PostgreSQL API

Create and manage PostgreSQL clusters.

API Gateway API

Manage and configure API gateway instances.

CDN API

Manage and configure CDN distributions.

Certificate Manager API

Provision and manage SSL certificates.

Cloud DNS API

Manage zones and records for DNS.

Cross Connect API

Manage physical cross-connects between networks.

Flow Logs API

Capture and analyze network flow logs.

Managed Application Load Balancer API

Configure and manage application load balancers.

Managed NAT Gateway API

Manage and configure NAT gateways for private networks.

Managed Network Load Balancer API

Configure and manage network load balancers.

Network Security Groups API

Manage security groups for network traffic control.

VPN Gateway API

Manage and configure VPN gateways.

Activity Log API

Audit user activities and resource changes.

Logging Service API

Observe, search, and filter logs.

Monitoring Service API

Ingest, aggregate, and analyze data.

Monitoring as a Service API

Set alarms & alerts and retrieve alarm history.

Backup Service API

Manage and configure backup services for your resources.

IONOS Object Storage API

Store, retrieve, and delete objects.

IONOS Object Storage Management API

Manage object storage resources.

Network File Storage API

Manage shared file storage via NFS.

Auth API

Manage tokens for secure API access.

Identity API

Manage password policies.

Billing API

Retrieve resource usage and invoices.

Reseller API

Manage contracts and admin users.

Terraform

GitHub Repo

Latest Release

Terraformer

GitHub Repo

Latest Release

Crossplane

GitHub Repo

Latest Release

Ansible

GitHub Repo

Latest Release

Docker Machine

GitHub Repo

Latest Release

Chef Knife

GitHub Repo

Latest Release

Puppet

GitHub Repo

Latest Release

IonosCTL CLI

GitHub Repo

Latest Release

Terraform
Ansible
Docker Machine
Chef: Knife plugin
Puppet
IonosCTL CLI
Customer Service