> For the complete documentation index, see [llms.txt](https://docs.balkan.id/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.balkan.id/getting-started/setting-up-your-tenant/application-integrations/direct-application-integrations/articulate-360-integration-setup.md).

# Articulate 360 Integration Setup

### Getting Started

Use this guide to connect Articulate 360 to your BalkanID tenant. You will need an API key from Reach 360 and access to the Integrations section in BalkanID.

{% hint style="info" %}
BalkanID reads your Articulate 360 data through the **Reach 360 API**. Reach 360 is the learning platform included with an Articulate 360 Teams subscription. The Articulate 360 Teams console does not offer an API, so anything held only there cannot be extracted.
{% endhint %}

#### Requirements:

Before you begin, collect the following values from Reach 360:

* **API Key**
* **Region (us or eu)**

### Configure Articulate 360 within your BalkanID tenant

1. To create the **API Key**, sign in to Reach 360 with an account that has the Admin role. Only an Admin can generate an API key, and the key carries the permissions of the person who created it.
2. Navigate to **Manage > Settings > Manage API Keys**.
3. Click **Generate New Key**, enter a name for the key, then click **Generate Key**. Copy the key immediately — Reach 360 shows it only once, and you will need to generate a replacement if you lose it.
4. Note your **Region**. Enter `us` if your Reach 360 account is hosted in the United States, or `eu` if it is hosted in Europe. If you are not sure, check the address you use to sign in to Reach 360.
5. In BalkanID, go to **Integrations** and click **Add integration**.

<div data-with-frame="true"><figure><img src="https://2975852473-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbVGYwk8aSk5yI1GDPEW9%2Fuploads%2FQbAgSStkiBVFW7ye9D98%2Farticulate360-add-integration.png?alt=media" alt="The BalkanID Integrations page, with the Add integration button at the top right of the toolbar"><figcaption><p>Integrations page, with <strong>Add integration</strong></p></figcaption></figure></div>

6. Search for **Articulate 360**, select it, then click **Next**.

<div data-with-frame="true"><figure><img src="https://2975852473-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbVGYwk8aSk5yI1GDPEW9%2Fuploads%2FgjmwssBpLdMSJRwATQ2E%2Farticulate360-connect-application.png?alt=media" alt="Step one of the Connect a new application wizard with Articulate 360 searched for and selected"><figcaption><p>Articulate 360 selected in <strong>Connect a new application</strong></p></figcaption></figure></div>

7. Under **Select Extraction Type**, choose **Direct Configuration**, then paste the values you collected into **API Key** and **Region (us or eu)**.

<div data-with-frame="true"><figure><img src="https://2975852473-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbVGYwk8aSk5yI1GDPEW9%2Fuploads%2FgvF9MT9mE1KllGLngkE4%2Farticulate360-direct-configuration.png?alt=media" alt="The Direct Configuration section of the wizard showing the API Key and Region fields"><figcaption><p><strong>Direct Configuration</strong> credential fields</p></figcaption></figure></div>

8. Click Next to move onto Optional Configuration.
9. Fill **Optional Configuration**, if required.

<div data-with-frame="true"><figure><img src="https://2975852473-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbVGYwk8aSk5yI1GDPEW9%2Fuploads%2FZbipc8nl8LTFl5YsVIaj%2Foptional-configuration.png?alt=media" alt="The Optional Configuration step, showing reviewer settings on the left and fulfillment options on the right"><figcaption><p>Optional Configuration</p></figcaption></figure></div>

10. Once you have filled in the information, click **Save**. Your integration is now configured and you will see the status of the integration displayed alongside other integrations on the Integrations page. When data is available, the integration Status column will read **Connected** and the integration Message will read **Data available**.

### Integration Scopes

| Read Only Scopes                                                                                                         | Lifecycle Management Scopes |
| ------------------------------------------------------------------------------------------------------------------------ | --------------------------- |
| **Users (Read)** — everyone in your Reach 360 account, including people who have been invited but have not yet accepted. | N/A                         |
| **Roles (Read)** — the Reach 360 role held by each user.                                                                 | N/A                         |
| **Groups (Read)** — your Reach 360 groups, who belongs to each one, and who manages or reports on each one.              | N/A                         |

Reach 360 API keys do not have individual permission settings, so there is nothing to enable alongside the key. A key carries the permissions of the Admin who created it — create it with an account that can see every user and group you want BalkanID to review.

Reach 360 has no deactivated or suspended state; an account is either present or removed. BalkanID shows people who have accepted their invitation as **Active**, and people whose invitation is still outstanding as **Inactive**, so that pending accounts remain visible for review.

Manager and reporter access in Reach 360 is granted per group rather than across the whole account. BalkanID keeps that detail, so a review of a group shows who merely belongs to it and who can manage or report on it.

Course and learning path enrollment is not extracted. Reach 360 provides no way to read enrollment back, and a training assignment is not an access grant.


---

# 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.balkan.id/getting-started/setting-up-your-tenant/application-integrations/direct-application-integrations/articulate-360-integration-setup.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.
