IntegrationMember
The `IntegrationMember` entity.
Definition
TypeScript
interface IntegrationMember {
id: string;
integrationInstallId: string;
workspaceId: string;
entityId: string;
entityVersionId: string | null;
sourceMemberSlug: string;
isClone: boolean;
sourceVersionId: string | null;
detached: boolean;
enabled: boolean;
permissions: Record<string, unknown>;
addedBy: string;
deletedAt: string | null;
retentionTier: "short" | "medium" | "long" | "none" | null;
addedAt: string;
}Fields
| Field | Type | Notes |
|---|---|---|
id | string | readonly required |
integrationInstallId | string | required |
workspaceId | string | required |
entityId | string | required — Polymorphic prefixed entity ID. Could be the publisher's source entity (reference) or a workspace-owned fork (clone). |
entityVersionId | string | null | required — Pinned entity version. NULL = track latest within the installed integration_version. |
sourceMemberSlug | string | required — Which entry in the integration manifest this member corresponds to. |
isClone | boolean | required — true = workspace fork (the entity is a local clone the workspace owns). |
sourceVersionId | string | null | required — Publisher integration_version this clone was made from; upgrade diffs against the current version and re-clones changed members in place. |
detached | boolean | required — Workspace edited this clone, so upgrade skips it (no clobbering local changes). |
enabled | boolean | required |
permissions | Record<string, unknown> | required — Scoped access metadata the dispatcher checks (v1.1+). |
addedBy | string | required |
deletedAt | string | null | required |
retentionTier | "short" | "medium" | "long" | "none" | null | required |
addedAt | string | required |