> For the complete documentation index, see [llms.txt](https://docs.pandium.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.pandium.com/~/revisions/x7Thkx1S9I9SnLbXNFwg/reference/pandium-api.md).

# Pandium API

## Introduction

Welcome to the Pandium API! Our API enables your team flexibility in managing your integrations hosted on Pandium. The Pandium API uses standard [REST](https://en.wikipedia.org/wiki/REST) conventions and standard HTTP methods and response codes for a simple and intuitive workflow.&#x20;

With the Pandium API, native Pandium resources (integrations, tenants, and runs) are accessible via a generated API key, and allow for triggering runs externally - no login to the Pandium Integration Hub needed. As we expand the Pandium API, check back for additional functionality, or stay up to date on our [product updates](https://www.pandium.com/product-updates) page.

#### Base URL

Below you'll find the base URLs used when working with the Pandium API:

For using the Pandium API with a Production Pandium account: <http://api.pandium.io/>

For using the Pandium API with a Sandbox Pandium account: <http://api.sandbox.pandium.com/>

## Authentication&#x20;

To generate an API Key, navigate to the 'Settings' sidebar resource in the Pandium Integration Hub, then head over to the "API Access" tab. Here, you can give your key a name and generate it.

API Keys are ***only viewable at creation***, so store and keep your key(s) secure.&#x20;

<figure><img src="/files/FTvw7XWZo2S4keWoWXAd" alt=""><figcaption><p>API Access tab in the Integration Hub</p></figcaption></figure>

To use the generated key, attach it to your request under an `x-api-key` header, like so:

```
curl --location --request POST 'x`tenants/<tenant_id>/run?mode=init' \
--header 'X-API-KEY: <pandium api key>'
```

## Integrations

In Pandium, the integration object can be thought of as the primary record for any application on the platform. This record holds the necessary components to run syncs between systems, and the content that a given application utilizes for marketplace views.&#x20;

Integration IDs can be found in the Integration Hub on the Integration Detail page.

{% openapi src="<https://api.sandbox.pandium.com/v2/openapi.json>" path="/v2/integrations" method="get" expanded="true" %}
<https://api.sandbox.pandium.com/v2/openapi.json>
{% endopenapi %}

{% openapi src="<https://api.sandbox.pandium.com/v2/openapi.json>" path="/v2/integrations/{integration\_id}" method="get" expanded="true" %}
<https://api.sandbox.pandium.com/v2/openapi.json>
{% endopenapi %}

{% openapi src="<https://api.sandbox.pandium.com/v2/openapi.json>" path="/v2/integrations/{integration\_id}/releases" method="get" %}
<https://api.sandbox.pandium.com/v2/openapi.json>
{% endopenapi %}

{% openapi src="<https://api.sandbox.pandium.com/v2/openapi.json>" path="/v2/integrations/{integration\_id}/releases/{release\_id}" method="get" %}
<https://api.sandbox.pandium.com/v2/openapi.json>
{% endopenapi %}

{% openapi src="<https://api.sandbox.pandium.com/v2/openapi.json>" path="/v2/integrations/{integration\_id}/releases/default" method="get" %}
<https://api.sandbox.pandium.com/v2/openapi.json>
{% endopenapi %}

{% openapi src="<https://api.sandbox.pandium.com/v2/openapi.json>" path="/v2/integrations/{integration\_id}/releases/latest" method="get" %}
<https://api.sandbox.pandium.com/v2/openapi.json>
{% endopenapi %}

{% openapi src="<https://api.sandbox.pandium.com/v2/openapi.json>" path="/v2/integrations/{integration\_id}/sync" method="post" %}
<https://api.sandbox.pandium.com/v2/openapi.json>
{% endopenapi %}

## Tenants

In Pandium, a tenant is a single instance of an integration, associated with a single set of user credentials for each connected system.&#x20;

Whenever a user installs an integration, a tenant is created within Pandium and is automatically given a tenant ID, which is viewable in the Integration Hub directly on the Tenant Detail page.

{% openapi src="<https://api.sandbox.pandium.com/v2/openapi.json>" path="/v2/tenants" method="get" expanded="true" %}
<https://api.sandbox.pandium.com/v2/openapi.json>
{% endopenapi %}

{% openapi src="<https://api.sandbox.pandium.com/v2/openapi.json>" path="/v2/tenants/{tenant\_id}/sync" method="post" expanded="true" %}
<https://api.sandbox.pandium.com/v2/openapi.json>
{% endopenapi %}

{% openapi src="<https://api.sandbox.pandium.com/v2/openapi.json>" path="/v2/tenants/{tenant\_id}" method="patch" expanded="true" %}
<https://api.sandbox.pandium.com/v2/openapi.json>
{% endopenapi %}

{% openapi src="<https://api.sandbox.pandium.com/v2/openapi.json>" path="/v2/tenants/{tenant\_id}" method="delete" expanded="true" fullWidth="false" %}
<https://api.sandbox.pandium.com/v2/openapi.json>
{% endopenapi %}

{% openapi src="<https://api.sandbox.pandium.com/v2/openapi.json>" path="/v2/tenants/{tenant\_id}/release" method="get" %}
<https://api.sandbox.pandium.com/v2/openapi.json>
{% endopenapi %}

{% openapi src="<https://api.sandbox.pandium.com/v2/openapi.json>" path="/v2/tenants" method="post" %}
<https://api.sandbox.pandium.com/v2/openapi.json>
{% endopenapi %}

## Proxy Endpoints

An endpoint that allows a user to make a call to an external API (REST, SOAP, or XML) on behalf of a tenant.&#x20;

{% openapi src="<https://api.sandbox.pandium.com/v2/openapi.json>" path="/v2/tenants/{tenant\_id}/connectors/{connector\_name}/call" method="post" expanded="true" %}
<https://api.sandbox.pandium.com/v2/openapi.json>
{% endopenapi %}

{% openapi src="<https://api.sandbox.pandium.com/v2/openapi.json>" path="/v2/tenants/{tenant\_id}/connectors/{connector\_name}/soap" method="post" expanded="true" %}
<https://api.sandbox.pandium.com/v2/openapi.json>
{% endopenapi %}

{% openapi src="<https://api.sandbox.pandium.com/v2/openapi.json>" path="/v2/tenants/{tenant\_id}/connectors/{connector\_name}/xml" method="post" %}
<https://api.sandbox.pandium.com/v2/openapi.json>
{% endopenapi %}

## Runs

A run is a specific record of a sync: a single execution of integration code using the credentials provided by a tenant of that integration, at a specific point in time. The runs endpoints are by nature read-only.

More run information can be seen by viewing the logging information from within the Integration Hub.

{% openapi src="<https://api.sandbox.pandium.com/v2/openapi.json>" path="/v2/runs/triggers/{trigger\_id}/status" method="get" expanded="true" %}
<https://api.sandbox.pandium.com/v2/openapi.json>
{% endopenapi %}


---

# 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://docs.pandium.com/~/revisions/x7Thkx1S9I9SnLbXNFwg/reference/pandium-api.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.
