diff --git a/overview/api/index.md b/overview/api/index.md index de642672..a4dcd6d9 100644 --- a/overview/api/index.md +++ b/overview/api/index.md @@ -19,6 +19,12 @@ Many of these APIs require a *Storage API token*, specified in the `X-StorageApi All parts of the Keboola platform can be controlled via an API. The main APIs for our components are: +
+Note: The api.keboola.com links in the table below open the API documentation portal for the US Virginia AWS stack. +If you are using a different stack, navigate to your stack's API portal first — see API Documentation Portals below — and then select the service there. +Using a portal for a different stack than your token's stack will result in Invalid Token errors. +
+ | API | Description | |-------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------| | [Keboola Storage API](https://keboola.docs.apiary.io/) ([source](https://github.com/keboola/storage-api-php-client/blob/master/apiary.apib)) | [Storage](/integrate/storage/) is the main Keboola component storing all data. | @@ -53,13 +59,27 @@ either multi-tenant or single-tenant. Current multi-tenant stacks are: - EU Ireland Azure – [connection.north-europe.azure.keboola.com](https://connection.north-europe.azure.keboola.com/) - EU Frankfurt GCP - [connection.europe-west3.gcp.keboola.com](https://connection.europe-west3.gcp.keboola.com/) -Each stack operates as an independent instance of Keboola services. -In all the API documentation above, the AWS US stack is used. - -Single-tenant stacks are available for a single enterprise customer, with a domain name +Each stack operates as an independent instance of Keboola services with its own data, users, and tokens. +Single-tenant stacks are available for a single enterprise customer, with a domain name in the format `connection.CUSTOMER_NAME.keboola.com`. -If you are using another stack, modify the endpoints accordingly. +### API Documentation Portals + +The API documentation portal (`api.*`) is deployed independently per stack. Always use the portal +for your own stack — tokens are not valid across stacks, and using the wrong portal will cause +`Invalid Token` errors when trying out API calls. + +| Stack | API Documentation Portal | +|---|---| +| US Virginia AWS | [api.keboola.com](https://api.keboola.com/) | +| EU Frankfurt AWS | [api.eu-central-1.keboola.com](https://api.eu-central-1.keboola.com/) | +| EU Ireland Azure | [api.north-europe.azure.keboola.com](https://api.north-europe.azure.keboola.com/) | +| EU Frankfurt GCP | [api.europe-west3.gcp.keboola.com](https://api.europe-west3.gcp.keboola.com/) | +| US Virginia GCP | [api.us-east4.gcp.keboola.com](https://api.us-east4.gcp.keboola.com/) | + +### Service Endpoints + +If you are calling the APIs directly (not through the portal), modify the hostname accordingly. Otherwise, you may encounter `Invalid Token` or unauthorized errors. The *authoritative list* of available endpoints is provided by the [Storage API Index Call](https://keboola.docs.apiary.io/#reference/miscellaneous/api-index/component-list). The following is a sample response: {% highlight json %}