For Developers

Create Integration

POST https://ed.link/api/v2/teams/:team_id/integrations

Creates a new integration connecting a source to an application.

Permissions

Requires either the integrations.create or integrations.update system permission.

Parameters

ParameterTypeRequiredDescription
:team_idUUIDYesThe ID of the team.

Request Body

PropertyTypeRequiredDescription
application_idUUIDYesThe ID of the application to integrate.
source_idUUIDYesThe ID of the school data source.
permissionsArrayNoScoped permission IDs granted to this integration.
destination_idUUIDNoOptional destination identifier for data delivery.
onboarding_idUUIDNoOptional onboarding workflow identifier.

Sample Request

const response = await axios.post(
    `https://ed.link/api/v2/teams/${team_id}/integrations`,
    {
        application_id: '4b7b2520-410a-4bf3-9118-2e11893c5289',
        source_id: '7b5a19cb-9ea8-4b71-9b16-564ec5ea0b12'
    },
    {
        headers: {
            authorization: `Bearer ${user_session_token}`,
            'content-type': 'application/json'
        }
    }
);

Sample Response

{
    "$data": {
        "id": "fd8e2612-1329-4d85-bb56-95dcb27d7c92",
        "status": "active",
        "created_date": "2024-06-21T10:00:00.000Z",
        "application_id": "4b7b2520-410a-4bf3-9118-2e11893c5289",
        "source_id": "7b5a19cb-9ea8-4b71-9b16-564ec5ea0b12"
    }
}