---
title: "Kontainer API Integration"
url: "https://helpdesk.kontainer.com/article/kontainer-api-integration/"
type: "article"
category: ["Integrations &amp; plugins"]
tags: ["Admin users only", "PIM", "DAM"]
language: "en"
published: "2023-03-14T07:55:39+00:00"
updated: "2026-06-15T12:27:04+00:00"
summary: "The Kontainer API provides an easy integration of your existing software into the Kontainer platform. This software-to-software interface allows your applications to exchange data with Kontainer and c…"
---

# Kontainer API Integration

![API Integration header](https://helpdesk.kontainer.com/wp-content/uploads/2023/03/API-integration-HERO-1.png?v=1763368897)

The Kontainer API provides an easy integration of your existing software into the Kontainer platform. This software-to-software interface allows your applications to exchange data with Kontainer and can be used to automate many different processes.

In the following, we will go through the basics of the API setup.

The information in this article is technical and targeted at developers in charge of API setup. If you have any questions, feel free to let us know.

Visit the [**Kontainer integration page**](https://kontainer.com/integrations/api)to learn more about our API. Find more on use cases, benefits, etc.

> ## API Code
>
>
>
> Get straight to the code for API integration [**HERE**](https://app.kontainer.com/api/documentation).
>
>
>
> ***NOTE** that you need to use your unique Kontainer URL instead of the one in the example in the above-listed links ("api.kontainer.com").*

---

## Getting Started

In order to use Kontainer API, you'll need an account with Kontainer, as well as an API access token.

Please contact your local administrator or [Kontainer Support](mailto:support@kontainer.com) for additional information on how to get access to the Kontainer API.

### Authentication

The Kontainer API utilizes *OAuth* for authentication. Once you've been given an API access token, you must provide this token in each request via the Authorization header as a "Bearer" value.

All requests must include your provided API access token in the Authorization header: `Authorization: Bearer {{access-token}}`

### Content Negotiation

All requests **must** include the header: `Accept: application/vnd.api+json`.\
Requests sending JSON data **must** include the header: `Content-Type: application/vnd.api+json`

### JSON:API Standard

The Kontainer API is *RESTful* API following the [JSON API](https://jsonapi.org/) standard. You can refer to this standard for more information on how the request and response documents are structured.

## Resource Types

The API exposes the following resource types: files, folders, users, tags, channels, elements, element-options, categories, custom-fields, download-templates, video-download-templates, cdn, user-groups, folder permissions, consent wards, consent agreements, consent parties, statistics and job logs.

## Write Operations

The API supports write operations across resources: **POST** to create, **PATCH** to update and **DELETE** to remove. It is not read-only.

### Rate Limits

The standard API rate limits apply to all endpoints we provide, and the limit is `500` requests per minute. Exceeding the defined rate limit will result in API responding with the response message: `429: Too Many Attempts`.

### Response Codes

The Kontainer API responds with HTTP status codes and JSON-based error codes and messages.

### HTTP Status Codes

The following table gives an overview of HTTP status codes that are returned.

| **HTTP Status Code** | **Text** | **Description** |
| --- | --- | --- |
| 200 | OK | Success. |
| 201 | Created | Object created. |
| 204 | No Content | No content returned. |
| 401 | Unauthorized | Token is missing or invalid. |
| 403 | Forbidden | Resource or Request not supported |
| 404 | Not Found | Object not found. |
| 406 | Not Acceptable | Request not acceptable |
| 409 | Conflict | Application or resource state conflict. |
| 422 | Validation Error | Validation error occurred. |
| 429 | Too Many Requests | Rate limit exceeded. |

### Error Messages

The following example illustrates how an error messages will looks like for HTTP status code `401 - Unauthorized`.

![](https://helpdesk.kontainer.com/wp-content/uploads/2023/04/Screenshot-2023-04-04-at-10.30.42.png?v=1763368898)

## Filters

Filters can be applied to supported endpoints to limit the results that are returned. Filters are applied by using the `filter` query parameter. You can find the filter fields that are supported in the **Filter Attributes** section of each endpoint.

**Examples:**

Get a list of Category Items/Products:

`filter[description][like]` : `Shoes`

Find items by exact EAN:

`filter[ean][eq]` : `4194382028137`

Find items after a certain date:

`filter[released_on][gt]` : `2020-01-01`

Find items with unit cost greater or equal to 22.50, and less than 50.00:

`filter[unit_cost][gte]` : `22.50`

`filter[unit_cost][lt]` : `50.00`

Check if files are referenced in a PIM data field:

`filter[asset][exists]` : `1`

`filter[asset][exists]` : `0`

**Filter Qualifiers**

- Equals: [eq]
- In: [in]
- Like: [like]
- Greater than: [gt]
- Greater than or equal: [gte]
- Less than: [lt]
- Less than or equal: [lte]
- Not In: [notin]
- Not Equal: [ne] *(please note: PIM only)*
- Exists: [exists] (*please note: PIM only)*

**Note: The allowed filter qualifiers depend on the element being searched.**

## Compound Documents

[JSONAPI - Compound Documents](https://jsonapi.org/format/#document-compound-documents)

To reduce the number of HTTP requests, responses on supported endpoints may be requested to "include" related resources along with the requested primary resources. Included resources are requested by using the `include` query parameter. You can find the supported includes in the **Available Includes** section of each endpoint.

**Examples:**

- In the **GET /elements** endpoint, to include the associated Element Options:`include: element_option`
- In the **GET /items** endppoint, to include the root, parent, and child items:`include: parent_item,root_item,children`

## Pagination

Responses are paginated with a configurable page size. No bulk endpoints or webhooks are provided.

---

> ## API Code
>
>
>
> Get straight to the code for API integration [**HERE**](https://app.kontainer.com/api/documentation).
>
>
>
> ***NOTE** that you need to use your unique Kontainer URL instead of the one in the example in the above-listed links ("api.kontainer.com").*

## Other languages

- [Deutsch](https://helpdesk.kontainer.com/de/article/kontainer-api-integration/index.md)

## Related articles

- [Strapi Integration Guide](https://helpdesk.kontainer.com/article/strapi-integration-guide/index.md): With Kontainer's Strapi integration, you can easily insert images, videos, and files directly from your DAM into Strapi's admin panel — without manually downloading and uploading.
- [Slack Notifications from Kontainer](https://helpdesk.kontainer.com/article/slack-notifications-from-kontainer/index.md): Bring Kontainer notifications directly into Slack and stay updated without monitoring multiple systems. The Slack integration lets you decide exactly which notifications you want to receive and whethe…
- [WordPress Integration Guide](https://helpdesk.kontainer.com/article/wordpress-plugin-guide/index.md): With Kontainer’s WordPress integration, you can easily insert images, videos, and files directly from your DAM into WordPress—without manually downloading and uploading.
- [Shopify Integration Guide](https://helpdesk.kontainer.com/article/shopify-integration-guide/index.md): The integration allows you to manage your product data, images, and other digital assets in Kontainer, and synchronize them directly to your Shopify store. This ensures consistent product information…
