Integration Installs
REST endpoints for integration installs. Bearer-auth required.
GET /api/integration-installs
List integration installs, optionally filtered by workspace or integration.
Query parameters
limit(optional): Page size (1–100, default 100).after(optional): Keyset cursor — return the page after this row (next page).before(optional): Keyset cursor — return the page before this row (prev page).ids(optional): Comma-separated list of IDs. Narrows results to these IDs within the caller's accessible scope (does not bypass access checks).filter(optional): Nested filter expression (<Entity>Filter): AND/OR/NOT + per-field comparison operators + relation traversal. JSON-encoded on the query string.orderBy(optional): Multi-key sort (<Entity>OrderBy[]): array of{ field: direction }applied in order. Directions: asc/desc plus the four explicit nulls variants. JSON-encoded on the query string.integration_id(optional): Filter to installs of a specific integration.workspace_id(optional): Filter to installs in a specific workspace.integration_version_id(optional): Shorthand: filter whereintegrationVersionIdequals this value.member_policy(optional): Shorthand: filter wherememberPolicyequals this value.parent_install_id(optional): Shorthand: filter whereparentInstallIdequals this value.solution_id(optional): Shorthand: filter wheresolutionIdequals this value.installed_by(optional): Shorthand: filter whereinstalledByequals this value.retention_tier(optional): Shorthand: filter whereretentionTierequals this value.
Response
JSON
{
"data": [
{
"id": "<...>",
"integrationId": "<...>",
"integrationVersionId": "<...>",
"workspaceId": "<...>",
"variables": "<...>",
"authStateId": "<...>",
"memberPolicy": "<...>",
"parentInstallId": "<...>",
"solutionId": "<...>",
"installedBy": "<...>",
"installedAt": "<...>",
"lastUpgradedAt": "<...>",
"deletedAt": "<...>",
"retentionTier": "<...>"
}
],
"pageInfo": {
"total": "number",
"hasNextPage": "boolean",
"hasPreviousPage": "boolean",
"startCursor": "string",
"endCursor": "string"
}
}GET /api/integration-installs/{id}
Get an integration install by ID.
Path parameters
id(required):
Response
JSON
{
"id": "string",
"integrationId": "string",
"integrationVersionId": "string",
"workspaceId": "string",
"variables": {},
"authStateId": "string",
"memberPolicy": "auto_all | auto_defaults | manual",
"parentInstallId": "string",
"solutionId": "string",
"installedBy": "string",
"installedAt": "string",
"lastUpgradedAt": "string",
"deletedAt": "string",
"retentionTier": "short | medium | long | none"
}DELETE /api/integration-installs/{id}
Uninstall — soft-delete the install; its members + grouping solution are torn down by the cascade handler.
Path parameters
id(required):
Response
JSON
{
"success": "boolean"
}DELETE /api/integration-installs/{id}/purge
Permanently delete a soft-deleted install.
Path parameters
id(required):
Response
JSON
{
"success": "boolean"
}POST /api/integration-installs/{id}/restore
Restore a soft-deleted install (re-enables members + solution).
Path parameters
id(required):
Response
JSON
{
"id": "string",
"integrationId": "string",
"integrationVersionId": "string",
"workspaceId": "string",
"variables": {},
"authStateId": "string",
"memberPolicy": "auto_all | auto_defaults | manual",
"parentInstallId": "string",
"solutionId": "string",
"installedBy": "string",
"installedAt": "string",
"lastUpgradedAt": "string",
"deletedAt": "string",
"retentionTier": "short | medium | long | none"
}