ScalixScalix Docs

Integrations API

Source-control integrations and GitHub App

REST API endpoints for Integrations. 8 operations.

List source-control integrations

plaintext
GET /v1/integrations

Returns all GitHub/GitLab/Bitbucket integrations attached to the caller's project.

Auth: Bearer API key

Responses

StatusDescription
200All integrations for the caller's project
400API key must be project-scoped
401Missing or invalid credentials
500Internal error

operationId: listIntegrations

Create a source-control integration

plaintext
POST /v1/integrations

Attaches a Git provider repo to the caller's project and returns the created integration plus the webhook URL and secret to configure on the provider.

Auth: Bearer API key

Request body

application/json (required) — schema CreateIntegrationBody.

Responses

StatusDescription
201Integration created; returns webhook URL + secret
400Invalid provider or duplicate integration
401Missing or invalid credentials
500Internal error

operationId: createIntegration

Delete a source-control integration

plaintext
DELETE /v1/integrations/{id}

Detaches a Git provider repo from the caller's project and deletes the integration record.

Auth: Bearer API key

Parameters

NameInTypeRequiredDescription
idpathstringYesIntegration id (UUID)

Responses

StatusDescription
204Integration deleted
401Missing or invalid credentials
404Integration not found
500Internal error

operationId: deleteIntegration

Get a source-control integration

plaintext
GET /v1/integrations/{id}

Returns a single integration by id, scoped to the caller's project.

Auth: Bearer API key

Parameters

NameInTypeRequiredDescription
idpathstringYesIntegration id (UUID)

Responses

StatusDescription
200The integration
401Missing or invalid credentials
404Integration not found
500Internal error

operationId: getIntegration

Update a source-control integration

plaintext
PUT /v1/integrations/{id}

Updates an integration's build/deploy settings (branch filter, auto-build, auto-deploy, preview, status) and returns the updated record.

Auth: Bearer API key

Parameters

NameInTypeRequiredDescription
idpathstringYesIntegration id (UUID)

Request body

application/json (required) — schema UpdateIntegrationBody.

Responses

StatusDescription
200The updated integration
401Missing or invalid credentials
404Integration not found
500Internal error

operationId: updateIntegration

List GitHub App installations

plaintext
GET /v1/integrations/github/installations

Returns the GitHub App installations registered to the caller's project.

Auth: Bearer API key

Responses

StatusDescription
200GitHub App installations for the project
401Missing or invalid credentials
500Internal error

operationId: listGithubInstallations

Mint an installation token

plaintext
POST /v1/integrations/github/installations/{installation_id}/token

Returns a short-lived GitHub App installation access token for an installation owned by the caller's project.

Auth: Bearer API key

Parameters

NameInTypeRequiredDescription
installation_idpathinteger (int64)YesGitHub App installation id

Responses

StatusDescription
200A short-lived installation access token
401Missing or invalid credentials
404Installation not found or not owned by this project
500Internal error

operationId: createGithubInstallationToken

List accessible GitHub repos

plaintext
GET /v1/integrations/github/repos

Returns the repositories the project's GitHub App installations can access, aggregated across all active installations.

Auth: Bearer API key

Responses

StatusDescription
200Repositories accessible across the project's installations
401Missing or invalid credentials
500Internal error

operationId: listGithubRepos