---
title: "Create integration"
method: POST
path: "/learning/lms-integrations"
tags: ["Provider integrations"]
---

# Create integration

`POST /learning/lms-integrations`

## Request

- Base URL: `https://api.hibob.com/v1`
- URL: `https://api.hibob.com/v1/learning/lms-integrations`
- Auth: one of:
  - HTTP basic
  - HTTP bearer

Registers a new LMS integration for the company. Once created, use the `providerIdentifier` as the `provider-identifier` path parameter to push training content and submit learner progress.

**Before using this endpoint:**
<ul>
  <li>Obtain the provider identifier from your Learning provider — this is the stable key used to register the integration.</li>
  <li>If you are using a service user, ensure it has the relevant permissions. See <a href="/reference/provider-integrations#required-permissions" target="_blank">Required permissions</a>.</li>
  <li>If you are developing an app, ensure it has the relevant scopes. See <a href="/reference/provider-integrations#required-permissions" target="_blank">Required permissions</a>.</li>
</ul>

**Testing notes:** Open the **Examples** panel and select a **Request Example** to inspect the body parameters.

## Request body

- CreatePartnerIntegrationRequest: Request body for creating an LMS integration (flat structure).
  - `providerIdentifier` string, required: Stable provider key (for example `unlinked`). Validated by `PartnerIntegrationResolver.validateProviderIdentifier`.
  - `displayName` string: Display name for the integration. If omitted or blank, defaults to `{providerIdentifier}_Integration`. Maximum length 256 characters.

## Response `200`

Integration created successfully. Response body is empty.

## Other responses

- `400`: Bad request
- `401`: Authentication failed
- `403`: Forbidden — missing required permissions
- `404`: Not found — LMS integration feature is not enabled for this company
- `409`: Conflict — an integration for this provider already exists
- `422`: Unprocessable entity — invalid configuration (for example, display name exceeds 256 characters)
- `429`: Rate limit exceeded
- `500`: Internal server error

---

[API](https://skmtc.dev/hibob/apis/bob-learning-api.md) - [All operations](https://skmtc.dev/hibob/apis/bob-learning-api/llms.txt) - [OpenAPI document](https://skmtc.dev/hibob/apis/bob-learning-api/revisions/ee0ae2f3d3f8?raw)
