> For the complete documentation index, see [llms.txt](https://developer.vario-software.de/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.vario-software.de/documentation/rest-api/introduction.md).

# Introduction

How to reach the VARIO Cloud REST API — base URL, tenant-specific endpoints, and the OpenAPI specification.

The VARIO Cloud REST API lets you read and write ERP data from your own applications and integrations. It is a standard HTTP API secured with **OAuth 2.0** and exposes the same service layer that powers the ERP itself.

Typical uses: synchronising articles, prices and stock with another system; importing orders; creating and transferring documents; reading master data for a report or a portal; and everything a [VARIO Cloud App](/documentation/apps/introduction.md) does on the server side.

To call the API you need two things: an **access token** (see [Authentication](/documentation/rest-api/authentication.md)) and the correct **base URL** for your tenant. Both come from an App you register — see [Create an App](/documentation/apps/create-an-app.md).

## Where to look for what

|                                                                        | Contents                                                                                                                                        |
| ---------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| **Documentation** (these pages)                                        | How the platform works — authentication, paging and filtering, webhooks, the query language, concepts you need before the reference makes sense |
| [**API Reference**](https://developer.vario-software.de/api-reference) | Every endpoint, generated from the OpenAPI specification: paths, parameters, request and response schemas                                       |
| [**Cookbook**](https://developer.vario-software.de/cookbook)           | One page per integration domain — shops, shipping, banking, accounting, POS                                                                     |

Rule of thumb: come here to understand *how* something works, go to the API Reference to look up *what exactly* to send.

## Base URL

Every API request goes to your **tenant-specific** base URL:

```
https://{subdomain}.vario.cloud/api/vario
```

Replace `{subdomain}` with your own tenant subdomain — the same one you use to reach your VARIO Cloud installation. For example, if you access your installation at `https://mycompany.vario.cloud`, your API base URL is:

```
https://mycompany.vario.cloud/api/vario
```

All endpoint paths in this documentation and in the [API reference](https://developer.vario-software.de/api-reference) are relative to this base URL. For example, executing a [VQL](/documentation/fundamentals/vql.md) query:

```
POST https://mycompany.vario.cloud/api/vario/cmn/computed-queries/execute
```

{% hint style="warning" %}
**Use your own tenant subdomain — not the address shown in the API reference.**\
The server address displayed at the top of the interactive [API reference](https://developer.vario-software.de/api-reference) is an internal placeholder and is not reachable from the outside. Always build your base URL from your own tenant subdomain, as shown above.
{% endhint %}

{% hint style="info" %}
**The base URL is not the same as the authentication URL.**\
Access tokens are requested from the identity server at `https://sso.vario.cloud/realms/<TENANT>/protocol/openid-connect/token`. Once you have a token, you send your actual API requests to `https://{subdomain}.vario.cloud/api/vario`. See [Authentication](/documentation/rest-api/authentication.md).
{% endhint %}

## Tenant-specific OpenAPI specification

The [API reference](https://developer.vario-software.de/api-reference) lists every available endpoint. For the exact, **tenant-specific** server URL and the endpoints enabled for your installation, download the OpenAPI (Swagger) specification directly from your VARIO ERP:

1. Open your VARIO ERP [support mode](https://help.vario-software.de/support/melden-von-problemen-in-vario-cloud/support-modus).
2. Download the OpenAPI specification for your installation.

The `servers` entry in that file contains the correct base URL for your tenant. You can also import the file into tools such as Postman, Insomnia, or a code generator to work against your installation directly.

## Type definitions

If you build your integration in TypeScript or JavaScript, the [@vario-software/types](https://www.npmjs.com/package/@vario-software/types) package provides type definitions for the VARIO Cloud platform — including typed API calls and the OpenAPI schemas — giving your editor autocompletion and type checking. See the package page for setup instructions.

The same package also covers [Scripting](/documentation/scripting/introduction.md#type-definitions).

## Before you start

* **Authenticate every request** with an OAuth 2.0 access token — see [Authentication](/documentation/rest-api/authentication.md).
* **Always send a `User-Agent` header.** Requests without one are rejected with `403 Forbidden`.
* API traffic is subject to [rate limiting](/documentation/rest-api/rate-limiting.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://developer.vario-software.de/documentation/rest-api/introduction.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
