openapi: 3.2.0 info: title: Membrane Packages API description: API documentation for Membrane Engine version: '1.0' contact: {} servers: - url: https://api.getmembrane.com security: - bearer: [] tags: - name: Packages paths: /packages: get: operationId: listPackages parameters: - name: layer required: false in: query schema: type: string enum: - universal - integration - connection - name: integrationKey required: false in: query schema: type: string - name: integrationId required: false in: query schema: type: string - name: connectionId required: false in: query schema: type: string - name: connectionKey required: false in: query schema: type: string - name: instanceKey required: false in: query schema: type: string - name: search required: false in: query description: Text search query to filter results schema: type: string - name: limit required: false in: query description: Maximum number of items to return (1-1000) schema: minimum: 1 maximum: 1000 type: integer - name: cursor required: false in: query description: Pagination cursor from a previous response schema: type: string - name: includeArchived required: false in: query schema: type: boolean - name: parentId required: false in: query schema: type: string - name: universalParentId required: false in: query schema: type: string - name: tenantId required: false in: query schema: type: string - name: userId required: false in: query schema: type: string - name: isUniversal required: false in: query schema: type: boolean - name: externalAppId required: false in: query schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PackagesPaginatedResponseDto' summary: List packages tags: - Packages post: operationId: createPackage parameters: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreatePackage' responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PackageApiResponse' summary: Create a new package tags: - Packages /packages/{id}/versions: get: operationId: getPackageVersions parameters: - name: id required: true in: path description: Package ID schema: type: string - name: limit required: false in: query description: Maximum number of items to return (1-1000) schema: minimum: 1 maximum: 1000 type: integer - name: cursor required: false in: query description: Pagination cursor from a previous response schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PackageVersionsResponseDto' summary: Get all versions of a package tags: - Packages /packages/{selector}: get: operationId: getPackage parameters: - name: selector required: true in: path schema: type: string - name: layer required: false in: query schema: type: string enum: - universal - integration - connection - name: integrationKey required: false in: query schema: type: string - name: integrationId required: false in: query schema: type: string - name: connectionId required: false in: query schema: type: string - name: connectionKey required: false in: query schema: type: string - name: instanceKey required: false in: query schema: type: string - name: version required: false in: query schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PackageApiResponseDto' summary: Get package by selector tags: - Packages patch: operationId: patchPackage parameters: - name: selector required: true in: path schema: type: string - name: layer required: false in: query schema: type: string enum: - universal - integration - connection - name: integrationKey required: false in: query schema: type: string - name: integrationId required: false in: query schema: type: string - name: connectionId required: false in: query schema: type: string - name: connectionKey required: false in: query schema: type: string - name: instanceKey required: false in: query schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdatePackage' responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PackageApiResponse' summary: Update package partially tags: - Packages put: operationId: replacePackage parameters: - name: selector required: true in: path schema: type: string - name: layer required: false in: query schema: type: string enum: - universal - integration - connection - name: integrationKey required: false in: query schema: type: string - name: integrationId required: false in: query schema: type: string - name: connectionId required: false in: query schema: type: string - name: connectionKey required: false in: query schema: type: string - name: instanceKey required: false in: query schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreatePackage' responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PackageApiResponse' summary: Replace package completely tags: - Packages delete: operationId: archivePackage parameters: - name: selector required: true in: path schema: type: string - name: layer required: false in: query schema: type: string enum: - universal - integration - connection - name: integrationKey required: false in: query schema: type: string - name: integrationId required: false in: query schema: type: string - name: connectionId required: false in: query schema: type: string - name: connectionKey required: false in: query schema: type: string - name: instanceKey required: false in: query schema: type: string responses: '200': description: '' summary: Archive package tags: - Packages /packages/{selector}/clone: post: operationId: clonePackage parameters: - name: selector required: true in: path schema: type: string - name: layer required: false in: query schema: type: string enum: - universal - integration - connection - name: integrationKey required: false in: query schema: type: string - name: integrationId required: false in: query schema: type: string - name: connectionId required: false in: query schema: type: string - name: connectionKey required: false in: query schema: type: string - name: instanceKey required: false in: query schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PackageApiResponse' summary: Clone package tags: - Packages /packages/{selector}/dependencies: get: operationId: getPackageDependencies parameters: - name: selector required: true in: path schema: type: string - name: layer required: false in: query schema: type: string enum: - universal - integration - connection - name: integrationKey required: false in: query schema: type: string - name: integrationId required: false in: query schema: type: string - name: connectionId required: false in: query schema: type: string - name: connectionKey required: false in: query schema: type: string - name: instanceKey required: false in: query schema: type: string responses: '200': description: '' content: application/json: schema: type: array items: type: object summary: Get dependencies of package (flat interface) tags: - Packages /packages/{selector}/export: get: operationId: exportPackage parameters: - name: selector required: true in: path schema: type: string - name: layer required: false in: query schema: type: string enum: - universal - integration - connection - name: integrationKey required: false in: query schema: type: string - name: integrationId required: false in: query schema: type: string - name: connectionId required: false in: query schema: type: string - name: connectionKey required: false in: query schema: type: string - name: instanceKey required: false in: query schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PackageExportProperties' summary: Export package (flat interface) tags: - Packages /packages/{selector}/refresh: post: operationId: refreshPackage parameters: - name: selector required: true in: path schema: type: string - name: layer required: false in: query schema: type: string enum: - universal - integration - connection - name: integrationKey required: false in: query schema: type: string - name: integrationId required: false in: query schema: type: string - name: connectionId required: false in: query schema: type: string - name: connectionKey required: false in: query schema: type: string - name: instanceKey required: false in: query schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PackageApiResponse' summary: Refresh package tags: - Packages /packages/{selector}/reset: post: description: Refreshes all the dependencies, then resets the element to the default state (from parent) operationId: resetPackage parameters: - name: selector required: true in: path schema: type: string - name: layer required: false in: query schema: type: string enum: - universal - integration - connection - name: integrationKey required: false in: query schema: type: string - name: integrationId required: false in: query schema: type: string - name: connectionId required: false in: query schema: type: string - name: connectionKey required: false in: query schema: type: string - name: instanceKey required: false in: query schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PackageApiResponse' summary: Reset package tags: - Packages /packages/{selector}/restore: post: operationId: restorePackage parameters: - name: selector required: true in: path schema: type: string - name: layer required: false in: query schema: type: string enum: - universal - integration - connection - name: integrationKey required: false in: query schema: type: string - name: integrationId required: false in: query schema: type: string - name: connectionId required: false in: query schema: type: string - name: connectionKey required: false in: query schema: type: string - name: instanceKey required: false in: query schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PackageApiResponse' summary: Restore package (flat interface) tags: - Packages components: schemas: PackageExportProperties: type: object properties: uuid: description: Stable unique identifier (UUID). Can be provided on create; otherwise generated. Must be unique across elements of this type. type: string key: description: Stable key for referencing the element (e.g. in selectors). Unique per (parent, integration) scope. Generated from name if not provided on create. type: string name: description: Display name. Optional on create; used to generate key when key is omitted. type: string description: description: Optional human-readable description. type: string meta: description: Optional key-value metadata. type: object additionalProperties: type: object integrationUuid: type: string parentUuid: type: string externalAppUuid: type: string isCustomized: type: boolean isUniversal: type: boolean elements: type: array items: type: object properties: uuid: type: string type: type: string enum: - customer - app - connector - integration - flow - flow-instance - flow-run - action - package - action-instance - connection - field-mapping - field-mapping-instance - data-source - data-source-instance - data-link-table - data-link-table-instance - app-event-type - app-event-subscription - app-event-log-record - app-data-schema - app-data-schema-instance - external-event-subscription - external-event-log-record - external-event-pull - external-event-type - screen - action-run-log-record - external-api-log-record - incoming-webhook-log-record - connected-product element: type: object required: - uuid - type required: - uuid - key UpdatePackage: type: object properties: uuid: description: Stable unique identifier (UUID). Can be provided on create; otherwise generated. Must be unique across elements of this type. type: string key: description: Stable key for referencing the element (e.g. in selectors). Unique per (parent, integration) scope. Generated from name if not provided on create. type: string name: description: Display name. Optional on create; used to generate key when key is omitted. type: string description: description: Optional human-readable description. type: string meta: description: Optional key-value metadata. type: object additionalProperties: type: object integrationId: description: Internal ID of the integration this element belongs to. Omit for universal elements; set for integration-specific elements. Uniqueness of key is scoped per integration. type: string integrationUuid: description: UUID of the integration; alternative to integrationId when creating from export. Resolved to integrationId by the API. type: string integrationKey: description: Key of the integration; alternative to integrationId. Resolved to integrationId by the API. type: string parentId: description: Internal ID of the parent workspace element. Used for hierarchy (e.g. integration-level under universal). Child key uniqueness is scoped by parent and integration. type: string parentUuid: description: UUID of the parent element; alternative to parentId when creating (e.g. from export). Resolved to parentId by the API. type: string parentKey: description: Key of the parent element; alternative to parentId. Resolved to parentId by the API. type: string connectionId: description: Connection ID. Used when filtering by connection in list/selector queries, or when creating or identifying connection-level instances. type: string instanceKey: description: Key identifying a specific connection-level instance when multiple instances exist per (element, connection). Used in selector queries and when creating instances. type: string isUniversal: description: When true, the element is universal (shared across all integrations). Requires universal-element access. Omit or false for integration-specific elements. type: boolean externalAppId: description: Internal ID of the external app this element belongs to. Auto-populated from the integration when integrationId is set and the integration has an externalAppId. type: string externalAppUuid: description: UUID of the external app; alternative to externalAppId when creating from export. Resolved to externalAppId by the API. type: string externalAppKey: description: Key of the external app; alternative to externalAppId. Resolved to externalAppId by the API. type: string scenarioTemplateId: type: string elements: type: array items: type: object properties: id: type: string type: type: string enum: - customer - app - connector - integration - flow - flow-instance - flow-run - action - package - action-instance - connection - field-mapping - field-mapping-instance - data-source - data-source-instance - data-link-table - data-link-table-instance - app-event-type - app-event-subscription - app-event-log-record - app-data-schema - app-data-schema-instance - external-event-subscription - external-event-log-record - external-event-pull - external-event-type - screen - action-run-log-record - external-api-log-record - incoming-webhook-log-record - connected-product element: type: object required: - id - type CreatePackage: type: object properties: uuid: description: Stable unique identifier (UUID). Can be provided on create; otherwise generated. Must be unique across elements of this type. type: string key: description: Stable key for referencing the element (e.g. in selectors). Unique per (parent, integration) scope. Generated from name if not provided on create. type: string name: description: Display name. Optional on create; used to generate key when key is omitted. type: string description: description: Optional human-readable description. type: string meta: description: Optional key-value metadata. type: object additionalProperties: type: object integrationId: description: Internal ID of the integration this element belongs to. Omit for universal elements; set for integration-specific elements. Uniqueness of key is scoped per integration. type: string integrationUuid: description: UUID of the integration; alternative to integrationId when creating from export. Resolved to integrationId by the API. type: string integrationKey: description: Key of the integration; alternative to integrationId. Resolved to integrationId by the API. type: string parentId: description: Internal ID of the parent workspace element. Used for hierarchy (e.g. integration-level under universal). Child key uniqueness is scoped by parent and integration. type: string parentUuid: description: UUID of the parent element; alternative to parentId when creating (e.g. from export). Resolved to parentId by the API. type: string parentKey: description: Key of the parent element; alternative to parentId. Resolved to parentId by the API. type: string connectionId: description: Connection ID. Used when filtering by connection in list/selector queries, or when creating or identifying connection-level instances. type: string instanceKey: description: Key identifying a specific connection-level instance when multiple instances exist per (element, connection). Used in selector queries and when creating instances. type: string isUniversal: description: When true, the element is universal (shared across all integrations). Requires universal-element access. Omit or false for integration-specific elements. type: boolean externalAppId: description: Internal ID of the external app this element belongs to. Auto-populated from the integration when integrationId is set and the integration has an externalAppId. type: string externalAppUuid: description: UUID of the external app; alternative to externalAppId when creating from export. Resolved to externalAppId by the API. type: string externalAppKey: description: Key of the external app; alternative to externalAppId. Resolved to externalAppId by the API. type: string scenarioTemplateId: type: string elements: type: array items: type: object properties: id: type: string type: type: string enum: - customer - app - connector - integration - flow - flow-instance - flow-run - action - package - action-instance - connection - field-mapping - field-mapping-instance - data-source - data-source-instance - data-link-table - data-link-table-instance - app-event-type - app-event-subscription - app-event-log-record - app-data-schema - app-data-schema-instance - external-event-subscription - external-event-log-record - external-event-pull - external-event-type - screen - action-run-log-record - external-api-log-record - incoming-webhook-log-record - connected-product element: type: object required: - id - type PackageApiResponseDto: type: object properties: id: type: string description: Internal database ID of the element. Assigned by the API; unique per element. name: type: string uuid: description: Stable unique identifier (UUID). Can be provided on create; otherwise generated. Must be unique across elements of this type. type: string key: type: string description: description: Optional human-readable description. type: string meta: description: Optional key-value metadata. type: object additionalProperties: type: object state: description: Current lifecycle or health state (e.g. READY, SETUP_FAILED, CONFIGURATION_ERROR, BUILDING). Set by the engine during setup and validation. type: string enum: - BUILDING - CLIENT_ACTION_REQUIRED - CONFIGURATION_ERROR - SETUP_FAILED - READY - DISCONNECTING errors: description: Validation or setup errors when state is not READY. type: array items: $ref: '#/components/schemas/PackageApiResponseDto__schema0' revision: description: Opaque revision token; changes on each update. Used for optimistic concurrency. type: string createdAt: description: ISO date when the element was created. type: string updatedAt: description: ISO date when the element was last updated. type: string archivedAt: description: When set, the element is archived (soft-deleted). Archived elements cannot be patched. type: string isDeactivated: description: When true, setup is skipped and the element is treated as inactive (e.g. when dependencies are deactivated or the element is archived). type: boolean isReadOnly: description: When true, the element cannot be modified (e.g. published package elements or elements from another workspace). type: boolean integrationId: description: Internal ID of the integration this element belongs to. Omit for universal elements; set for integration-specific elements. Uniqueness of key is scoped per integration. type: string integrationUuid: description: UUID of the integration; alternative to integrationId when creating from export. Resolved to integrationId by the API. type: string integrationKey: description: Key of the integration; alternative to integrationId. Resolved to integrationId by the API. type: string parentId: description: Internal ID of the parent workspace element. Used for hierarchy (e.g. integration-level under universal). Child key uniqueness is scoped by parent and integration. type: string parentUuid: description: UUID of the parent element; alternative to parentId when creating (e.g. from export). Resolved to parentId by the API. type: string parentKey: description: Key of the parent element; alternative to parentId. Resolved to parentId by the API. type: string connectionId: description: Connection ID. Used when filtering by connection in list/selector queries, or when creating or identifying connection-level instances. type: string instanceKey: description: Key identifying a specific connection-level instance when multiple instances exist per (element, connection). Used in selector queries and when creating instances. type: string isUniversal: description: When true, the element is universal (shared across all integrations). Requires universal-element access. Omit or false for integration-specific elements. type: boolean externalAppId: description: Internal ID of the external app this element belongs to. Auto-populated from the integration when integrationId is set and the integration has an externalAppId. type: string externalAppUuid: description: UUID of the external app; alternative to externalAppId when creating from export. Resolved to externalAppId by the API. type: string externalAppKey: description: Key of the external app; alternative to externalAppId. Resolved to externalAppId by the API. type: string scenarioTemplateId: type: string elements: type: array items: type: object properties: id: type: string type: type: string enum: - customer - app - connector - integration - flow - flow-instance - flow-run - action - package - action-instance - connection - field-mapping - field-mapping-instance - data-source - data-source-instance - data-link-table - data-link-table-instance - app-event-type - app-event-subscription - app-event-log-record - app-data-schema - app-data-schema-instance - external-event-subscription - external-event-log-record - external-event-pull - external-event-type - screen - action-run-log-record - external-api-log-record - incoming-webhook-log-record - connected-product element: type: object required: - id - type isCustomized: type: boolean isPublic: type: boolean version: type: string changelog: type: string parentPackageVersion: type: string appliedToIntegrations: type: array items: type: object properties: element: type: object properties: id: type: string description: Internal database ID of the element. Assigned by the API; unique per element. name: type: string uuid: description: Stable unique identifier (UUID). Can be provided on create; otherwise generated. Must be unique across elements of this type. type: string key: type: string description: description: Optional human-readable description. type: string meta: description: Optional key-value metadata. type: object additionalProperties: type: object state: description: Current lifecycle or health state (e.g. READY, SETUP_FAILED, CONFIGURATION_ERROR, BUILDING). Set by the engine during setup and validation. type: string enum: - BUILDING - CLIENT_ACTION_REQUIRED - CONFIGURATION_ERROR - SETUP_FAILED - READY - DISCONNECTING errors: description: Validation or setup errors when state is not READY. type: array items: $ref: '#/components/schemas/PackageApiResponseDto__schema0' revision: description: Opaque revision token; changes on each update. Used for optimistic concurrency. type: string createdAt: description: ISO date when the element was created. type: string updatedAt: description: ISO date when the element was last updated. type: string archivedAt: description: When set, the element is archived (soft-deleted). Archived elements cannot be patched. type: string isDeactivated: description: When true, setup is skipped and the element is treated as inactive (e.g. when dependencies are deactivated or the element is archived). type: boolean isReadOnly: description: When true, the element cannot be modified (e.g. published package elements or elements from another workspace). type: boolean integrationId: description: Internal ID of the integration this element belongs to. Omit for universal elements; set for integration-specific elements. Uniqueness of key is scoped per integration. type: string integrationUuid: description: UUID of the integration; alternative to integrationId when creating from export. Resolved to integrationId by the API. type: string integrationKey: description: Key of the integration; alternative to integrationId. Resolved to integrationId by the API. type: string parentId: description: Internal ID of the parent workspace element. Used for hierarchy (e.g. integration-level under universal). Child key uniqueness is scoped by parent and integration. type: string parentUuid: description: UUID of the parent element; alternative to parentId when creating (e.g. from export). Resolved to parentId by the API. type: string parentKey: description: Key of the parent element; alternative to parentId. Resolved to parentId by the API. type: string connectionId: description: Connection ID. Used when filtering by connection in list/selector queries, or when creating or identifying connection-level instances. type: string instanceKey: description: Key identifying a specific connection-level instance when multiple instances exist per (element, connection). Used in selector queries and when creating instances. type: string isUniversal: description: When true, the element is universal (shared across all integrations). Requires universal-element access. Omit or false for integration-specific elements. type: boolean externalAppId: description: Internal ID of the external app this element belongs to. Auto-populated from the integration when integrationId is set and the integration has an externalAppId. type: string externalAppUuid: description: UUID of the external app; alternative to externalAppId when creating from export. Resolved to externalAppId by the API. type: string externalAppKey: description: Key of the external app; alternative to externalAppId. Resolved to externalAppId by the API. type: string scenarioTemplateId: type: string elements: type: array items: type: object properties: id: type: string type: type: string enum: - customer - app - connector - integration - flow - flow-instance - flow-run - action - package - action-instance - connection - field-mapping - field-mapping-instance - data-source - data-source-instance - data-link-table - data-link-table-instance - app-event-type - app-event-subscription - app-event-log-record - app-data-schema - app-data-schema-instance - external-event-subscription - external-event-log-record - external-event-pull - external-event-type - screen - action-run-log-record - external-api-log-record - incoming-webhook-log-record - connected-product element: type: object required: - id - type isCustomized: type: boolean isPublic: type: boolean required: - id - name - key integration: type: object properties: id: type: string description: Internal database ID of the element. Assigned by the API; unique per element. name: type: string description: Display name. Always present in API responses (filled by API if not set on create). uuid: description: Stable unique identifier (UUID). Can be provided on create; otherwise generated. Must be unique across elements of this type. type: string key: description: Stable key for referencing the element (e.g. in selectors). Unique per (parent, integration) scope. Generated from name if not provided on create. type: string description: description: Optional human-readable description. type: string meta: description: Optional key-value metadata. type: object additionalProperties: type: object state: description: Current lifecycle or health state (e.g. READY, SETUP_FAILED, CONFIGURATION_ERROR, BUILDING). Set by the engine during setup and validation. type: string enum: - BUILDING - CLIENT_ACTION_REQUIRED - CONFIGURATION_ERROR - SETUP_FAILED - READY - DISCONNECTING errors: description: Validation or setup errors when state is not READY. type: array items: $ref: '#/components/schemas/PackageApiResponseDto__schema0' revision: description: Opaque revision token; changes on each update. Used for optimistic concurrency. type: string createdAt: description: ISO date when the element was created. type: string updatedAt: description: ISO date when the element was last updated. type: string archivedAt: type: string isDeactivated: type: boolean isReadOnly: description: When true, the element cannot be modified (e.g. published package elements or elements from another workspace). type: boolean logoUri: type: string connectorId: type: string connectorVersion: type: string oAuthCallbackUri: type: string parameters: type: object hasMissingParameters: type: boolean hasDocumentation: type: boolean hasOperations: type: boolean operationsCount: type: number hasData: type: boolean dataCollectionsCount: type: number hasEvents: type: boolean eventsCount: type: number hasGlobalWebhooks: type: boolean hasUdm: type: boolean isTest: type: boolean externalAppId: type: string authType: type: string enum: - integration-app-token - membrane-token - oauth2 - oauth1 - client-credentials - proxy optionsConfig: type: object additionalProperties: type: object properties: disabled: type: boolean parameters: type: object additionalProperties: type: object required: - id - name - logoUri required: - element - integration required: - id - name - key PackageApiResponse: type: object properties: id: type: string description: Internal database ID of the element. Assigned by the API; unique per element. name: type: string uuid: description: Stable unique identifier (UUID). Can be provided on create; otherwise generated. Must be unique across elements of this type. type: string key: type: string description: description: Optional human-readable description. type: string meta: description: Optional key-value metadata. type: object additionalProperties: type: object state: description: Current lifecycle or health state (e.g. READY, SETUP_FAILED, CONFIGURATION_ERROR, BUILDING). Set by the engine during setup and validation. type: string enum: - BUILDING - CLIENT_ACTION_REQUIRED - CONFIGURATION_ERROR - SETUP_FAILED - READY - DISCONNECTING errors: description: Validation or setup errors when state is not READY. type: array items: $ref: '#/components/schemas/PackageApiResponse__schema0' revision: description: Opaque revision token; changes on each update. Used for optimistic concurrency. type: string createdAt: description: ISO date when the element was created. type: string updatedAt: description: ISO date when the element was last updated. type: string archivedAt: description: When set, the element is archived (soft-deleted). Archived elements cannot be patched. type: string isDeactivated: description: When true, setup is skipped and the element is treated as inactive (e.g. when dependencies are deactivated or the element is archived). type: boolean isReadOnly: description: When true, the element cannot be modified (e.g. published package elements or elements from another workspace). type: boolean integrationId: description: Internal ID of the integration this element belongs to. Omit for universal elements; set for integration-specific elements. Uniqueness of key is scoped per integration. type: string integrationUuid: description: UUID of the integration; alternative to integrationId when creating from export. Resolved to integrationId by the API. type: string integrationKey: description: Key of the integration; alternative to integrationId. Resolved to integrationId by the API. type: string parentId: description: Internal ID of the parent workspace element. Used for hierarchy (e.g. integration-level under universal). Child key uniqueness is scoped by parent and integration. type: string parentUuid: description: UUID of the parent element; alternative to parentId when creating (e.g. from export). Resolved to parentId by the API. type: string parentKey: description: Key of the parent element; alternative to parentId. Resolved to parentId by the API. type: string connectionId: description: Connection ID. Used when filtering by connection in list/selector queries, or when creating or identifying connection-level instances. type: string instanceKey: description: Key identifying a specific connection-level instance when multiple instances exist per (element, connection). Used in selector queries and when creating instances. type: string isUniversal: description: When true, the element is universal (shared across all integrations). Requires universal-element access. Omit or false for integration-specific elements. type: boolean externalAppId: description: Internal ID of the external app this element belongs to. Auto-populated from the integration when integrationId is set and the integration has an externalAppId. type: string externalAppUuid: description: UUID of the external app; alternative to externalAppId when creating from export. Resolved to externalAppId by the API. type: string externalAppKey: description: Key of the external app; alternative to externalAppId. Resolved to externalAppId by the API. type: string scenarioTemplateId: type: string elements: type: array items: type: object properties: id: type: string type: type: string enum: - customer - app - connector - integration - flow - flow-instance - flow-run - action - package - action-instance - connection - field-mapping - field-mapping-instance - data-source - data-source-instance - data-link-table - data-link-table-instance - app-event-type - app-event-subscription - app-event-log-record - app-data-schema - app-data-schema-instance - external-event-subscription - external-event-log-record - external-event-pull - external-event-type - screen - action-run-log-record - external-api-log-record - incoming-webhook-log-record - connected-product element: type: object required: - id - type isCustomized: type: boolean isPublic: type: boolean version: type: string changelog: type: string parentPackageVersion: type: string appliedToIntegrations: type: array items: type: object properties: element: type: object properties: id: type: string description: Internal database ID of the element. Assigned by the API; unique per element. name: type: string uuid: description: Stable unique identifier (UUID). Can be provided on create; otherwise generated. Must be unique across elements of this type. type: string key: type: string description: description: Optional human-readable description. type: string meta: description: Optional key-value metadata. type: object additionalProperties: type: object state: description: Current lifecycle or health state (e.g. READY, SETUP_FAILED, CONFIGURATION_ERROR, BUILDING). Set by the engine during setup and validation. type: string enum: - BUILDING - CLIENT_ACTION_REQUIRED - CONFIGURATION_ERROR - SETUP_FAILED - READY - DISCONNECTING errors: description: Validation or setup errors when state is not READY. type: array items: $ref: '#/components/schemas/PackageApiResponse__schema0' revision: description: Opaque revision token; changes on each update. Used for optimistic concurrency. type: string createdAt: description: ISO date when the element was created. type: string updatedAt: description: ISO date when the element was last updated. type: string archivedAt: description: When set, the element is archived (soft-deleted). Archived elements cannot be patched. type: string isDeactivated: description: When true, setup is skipped and the element is treated as inactive (e.g. when dependencies are deactivated or the element is archived). type: boolean isReadOnly: description: When true, the element cannot be modified (e.g. published package elements or elements from another workspace). type: boolean integrationId: description: Internal ID of the integration this element belongs to. Omit for universal elements; set for integration-specific elements. Uniqueness of key is scoped per integration. type: string integrationUuid: description: UUID of the integration; alternative to integrationId when creating from export. Resolved to integrationId by the API. type: string integrationKey: description: Key of the integration; alternative to integrationId. Resolved to integrationId by the API. type: string parentId: description: Internal ID of the parent workspace element. Used for hierarchy (e.g. integration-level under universal). Child key uniqueness is scoped by parent and integration. type: string parentUuid: description: UUID of the parent element; alternative to parentId when creating (e.g. from export). Resolved to parentId by the API. type: string parentKey: description: Key of the parent element; alternative to parentId. Resolved to parentId by the API. type: string connectionId: description: Connection ID. Used when filtering by connection in list/selector queries, or when creating or identifying connection-level instances. type: string instanceKey: description: Key identifying a specific connection-level instance when multiple instances exist per (element, connection). Used in selector queries and when creating instances. type: string isUniversal: description: When true, the element is universal (shared across all integrations). Requires universal-element access. Omit or false for integration-specific elements. type: boolean externalAppId: description: Internal ID of the external app this element belongs to. Auto-populated from the integration when integrationId is set and the integration has an externalAppId. type: string externalAppUuid: description: UUID of the external app; alternative to externalAppId when creating from export. Resolved to externalAppId by the API. type: string externalAppKey: description: Key of the external app; alternative to externalAppId. Resolved to externalAppId by the API. type: string scenarioTemplateId: type: string elements: type: array items: type: object properties: id: type: string type: type: string enum: - customer - app - connector - integration - flow - flow-instance - flow-run - action - package - action-instance - connection - field-mapping - field-mapping-instance - data-source - data-source-instance - data-link-table - data-link-table-instance - app-event-type - app-event-subscription - app-event-log-record - app-data-schema - app-data-schema-instance - external-event-subscription - external-event-log-record - external-event-pull - external-event-type - screen - action-run-log-record - external-api-log-record - incoming-webhook-log-record - connected-product element: type: object required: - id - type isCustomized: type: boolean isPublic: type: boolean required: - id - name - key integration: type: object properties: id: type: string description: Internal database ID of the element. Assigned by the API; unique per element. name: type: string description: Display name. Always present in API responses (filled by API if not set on create). uuid: description: Stable unique identifier (UUID). Can be provided on create; otherwise generated. Must be unique across elements of this type. type: string key: description: Stable key for referencing the element (e.g. in selectors). Unique per (parent, integration) scope. Generated from name if not provided on create. type: string description: description: Optional human-readable description. type: string meta: description: Optional key-value metadata. type: object additionalProperties: type: object state: description: Current lifecycle or health state (e.g. READY, SETUP_FAILED, CONFIGURATION_ERROR, BUILDING). Set by the engine during setup and validation. type: string enum: - BUILDING - CLIENT_ACTION_REQUIRED - CONFIGURATION_ERROR - SETUP_FAILED - READY - DISCONNECTING errors: description: Validation or setup errors when state is not READY. type: array items: $ref: '#/components/schemas/PackageApiResponse__schema0' revision: description: Opaque revision token; changes on each update. Used for optimistic concurrency. type: string createdAt: description: ISO date when the element was created. type: string updatedAt: description: ISO date when the element was last updated. type: string archivedAt: type: string isDeactivated: type: boolean isReadOnly: description: When true, the element cannot be modified (e.g. published package elements or elements from another workspace). type: boolean logoUri: type: string connectorId: type: string connectorVersion: type: string oAuthCallbackUri: type: string parameters: type: object hasMissingParameters: type: boolean hasDocumentation: type: boolean hasOperations: type: boolean operationsCount: type: number hasData: type: boolean dataCollectionsCount: type: number hasEvents: type: boolean eventsCount: type: number hasGlobalWebhooks: type: boolean hasUdm: type: boolean isTest: type: boolean externalAppId: type: string authType: type: string enum: - integration-app-token - membrane-token - oauth2 - oauth1 - client-credentials - proxy optionsConfig: type: object additionalProperties: type: object properties: disabled: type: boolean parameters: type: object additionalProperties: type: object required: - id - name - logoUri required: - element - integration required: - id - name - key PackageApiResponse__schema0: type: object properties: type: type: string enum: - bad_request - connection - configuration - dependency_error - flow_run - flow_instance_setup - concurrency - internal - action_run - action_instance_setup - unit_run - custom_code - insufficient_credit - openrouter_not_configured key: type: string message: type: string data: type: object stack: type: object causedByError: $ref: '#/components/schemas/PackageApiResponse__schema0' logs: type: array items: type: object required: - message PackagesPaginatedResponseDto__schema0: type: object properties: type: type: string enum: - bad_request - connection - configuration - dependency_error - flow_run - flow_instance_setup - concurrency - internal - action_run - action_instance_setup - unit_run - custom_code - insufficient_credit - openrouter_not_configured key: type: string message: type: string data: type: object stack: type: object causedByError: $ref: '#/components/schemas/PackagesPaginatedResponseDto__schema0' logs: type: array items: type: object required: - message PackageApiResponseDto__schema0: type: object properties: type: type: string enum: - bad_request - connection - configuration - dependency_error - flow_run - flow_instance_setup - concurrency - internal - action_run - action_instance_setup - unit_run - custom_code - insufficient_credit - openrouter_not_configured key: type: string message: type: string data: type: object stack: type: object causedByError: $ref: '#/components/schemas/PackageApiResponseDto__schema0' logs: type: array items: type: object required: - message PackageVersionsResponseDto: type: object properties: items: type: array items: type: object properties: id: type: string version: type: string changelog: type: string parentPackageVersion: type: string required: - id - version cursor: type: string required: - items PackagesPaginatedResponseDto: type: object properties: items: type: array items: type: object properties: id: type: string description: Internal database ID of the element. Assigned by the API; unique per element. name: type: string uuid: description: Stable unique identifier (UUID). Can be provided on create; otherwise generated. Must be unique across elements of this type. type: string key: type: string description: description: Optional human-readable description. type: string meta: description: Optional key-value metadata. type: object additionalProperties: type: object state: description: Current lifecycle or health state (e.g. READY, SETUP_FAILED, CONFIGURATION_ERROR, BUILDING). Set by the engine during setup and validation. type: string enum: - BUILDING - CLIENT_ACTION_REQUIRED - CONFIGURATION_ERROR - SETUP_FAILED - READY - DISCONNECTING errors: description: Validation or setup errors when state is not READY. type: array items: $ref: '#/components/schemas/PackagesPaginatedResponseDto__schema0' revision: description: Opaque revision token; changes on each update. Used for optimistic concurrency. type: string createdAt: description: ISO date when the element was created. type: string updatedAt: description: ISO date when the element was last updated. type: string archivedAt: description: When set, the element is archived (soft-deleted). Archived elements cannot be patched. type: string isDeactivated: description: When true, setup is skipped and the element is treated as inactive (e.g. when dependencies are deactivated or the element is archived). type: boolean isReadOnly: description: When true, the element cannot be modified (e.g. published package elements or elements from another workspace). type: boolean integrationId: description: Internal ID of the integration this element belongs to. Omit for universal elements; set for integration-specific elements. Uniqueness of key is scoped per integration. type: string integrationUuid: description: UUID of the integration; alternative to integrationId when creating from export. Resolved to integrationId by the API. type: string integrationKey: description: Key of the integration; alternative to integrationId. Resolved to integrationId by the API. type: string parentId: description: Internal ID of the parent workspace element. Used for hierarchy (e.g. integration-level under universal). Child key uniqueness is scoped by parent and integration. type: string parentUuid: description: UUID of the parent element; alternative to parentId when creating (e.g. from export). Resolved to parentId by the API. type: string parentKey: description: Key of the parent element; alternative to parentId. Resolved to parentId by the API. type: string connectionId: description: Connection ID. Used when filtering by connection in list/selector queries, or when creating or identifying connection-level instances. type: string instanceKey: description: Key identifying a specific connection-level instance when multiple instances exist per (element, connection). Used in selector queries and when creating instances. type: string isUniversal: description: When true, the element is universal (shared across all integrations). Requires universal-element access. Omit or false for integration-specific elements. type: boolean externalAppId: description: Internal ID of the external app this element belongs to. Auto-populated from the integration when integrationId is set and the integration has an externalAppId. type: string externalAppUuid: description: UUID of the external app; alternative to externalAppId when creating from export. Resolved to externalAppId by the API. type: string externalAppKey: description: Key of the external app; alternative to externalAppId. Resolved to externalAppId by the API. type: string scenarioTemplateId: type: string elements: type: array items: type: object properties: id: type: string type: type: string enum: - customer - app - connector - integration - flow - flow-instance - flow-run - action - package - action-instance - connection - field-mapping - field-mapping-instance - data-source - data-source-instance - data-link-table - data-link-table-instance - app-event-type - app-event-subscription - app-event-log-record - app-data-schema - app-data-schema-instance - external-event-subscription - external-event-log-record - external-event-pull - external-event-type - screen - action-run-log-record - external-api-log-record - incoming-webhook-log-record - connected-product element: type: object required: - id - type isCustomized: type: boolean isPublic: type: boolean version: type: string changelog: type: string parentPackageVersion: type: string appliedToIntegrations: type: array items: type: object properties: element: type: object properties: id: type: string description: Internal database ID of the element. Assigned by the API; unique per element. name: type: string uuid: description: Stable unique identifier (UUID). Can be provided on create; otherwise generated. Must be unique across elements of this type. type: string key: type: string description: description: Optional human-readable description. type: string meta: description: Optional key-value metadata. type: object additionalProperties: type: object state: description: Current lifecycle or health state (e.g. READY, SETUP_FAILED, CONFIGURATION_ERROR, BUILDING). Set by the engine during setup and validation. type: string enum: - BUILDING - CLIENT_ACTION_REQUIRED - CONFIGURATION_ERROR - SETUP_FAILED - READY - DISCONNECTING errors: description: Validation or setup errors when state is not READY. type: array items: $ref: '#/components/schemas/PackagesPaginatedResponseDto__schema0' revision: description: Opaque revision token; changes on each update. Used for optimistic concurrency. type: string createdAt: description: ISO date when the element was created. type: string updatedAt: description: ISO date when the element was last updated. type: string archivedAt: description: When set, the element is archived (soft-deleted). Archived elements cannot be patched. type: string isDeactivated: description: When true, setup is skipped and the element is treated as inactive (e.g. when dependencies are deactivated or the element is archived). type: boolean isReadOnly: description: When true, the element cannot be modified (e.g. published package elements or elements from another workspace). type: boolean integrationId: description: Internal ID of the integration this element belongs to. Omit for universal elements; set for integration-specific elements. Uniqueness of key is scoped per integration. type: string integrationUuid: description: UUID of the integration; alternative to integrationId when creating from export. Resolved to integrationId by the API. type: string integrationKey: description: Key of the integration; alternative to integrationId. Resolved to integrationId by the API. type: string parentId: description: Internal ID of the parent workspace element. Used for hierarchy (e.g. integration-level under universal). Child key uniqueness is scoped by parent and integration. type: string parentUuid: description: UUID of the parent element; alternative to parentId when creating (e.g. from export). Resolved to parentId by the API. type: string parentKey: description: Key of the parent element; alternative to parentId. Resolved to parentId by the API. type: string connectionId: description: Connection ID. Used when filtering by connection in list/selector queries, or when creating or identifying connection-level instances. type: string instanceKey: description: Key identifying a specific connection-level instance when multiple instances exist per (element, connection). Used in selector queries and when creating instances. type: string isUniversal: description: When true, the element is universal (shared across all integrations). Requires universal-element access. Omit or false for integration-specific elements. type: boolean externalAppId: description: Internal ID of the external app this element belongs to. Auto-populated from the integration when integrationId is set and the integration has an externalAppId. type: string externalAppUuid: description: UUID of the external app; alternative to externalAppId when creating from export. Resolved to externalAppId by the API. type: string externalAppKey: description: Key of the external app; alternative to externalAppId. Resolved to externalAppId by the API. type: string scenarioTemplateId: type: string elements: type: array items: type: object properties: id: type: string type: type: string enum: - customer - app - connector - integration - flow - flow-instance - flow-run - action - package - action-instance - connection - field-mapping - field-mapping-instance - data-source - data-source-instance - data-link-table - data-link-table-instance - app-event-type - app-event-subscription - app-event-log-record - app-data-schema - app-data-schema-instance - external-event-subscription - external-event-log-record - external-event-pull - external-event-type - screen - action-run-log-record - external-api-log-record - incoming-webhook-log-record - connected-product element: type: object required: - id - type isCustomized: type: boolean isPublic: type: boolean required: - id - name - key integration: type: object properties: id: type: string description: Internal database ID of the element. Assigned by the API; unique per element. name: type: string description: Display name. Always present in API responses (filled by API if not set on create). uuid: description: Stable unique identifier (UUID). Can be provided on create; otherwise generated. Must be unique across elements of this type. type: string key: description: Stable key for referencing the element (e.g. in selectors). Unique per (parent, integration) scope. Generated from name if not provided on create. type: string description: description: Optional human-readable description. type: string meta: description: Optional key-value metadata. type: object additionalProperties: type: object state: description: Current lifecycle or health state (e.g. READY, SETUP_FAILED, CONFIGURATION_ERROR, BUILDING). Set by the engine during setup and validation. type: string enum: - BUILDING - CLIENT_ACTION_REQUIRED - CONFIGURATION_ERROR - SETUP_FAILED - READY - DISCONNECTING errors: description: Validation or setup errors when state is not READY. type: array items: $ref: '#/components/schemas/PackagesPaginatedResponseDto__schema0' revision: description: Opaque revision token; changes on each update. Used for optimistic concurrency. type: string createdAt: description: ISO date when the element was created. type: string updatedAt: description: ISO date when the element was last updated. type: string archivedAt: type: string isDeactivated: type: boolean isReadOnly: description: When true, the element cannot be modified (e.g. published package elements or elements from another workspace). type: boolean logoUri: type: string connectorId: type: string connectorVersion: type: string oAuthCallbackUri: type: string parameters: type: object hasMissingParameters: type: boolean hasDocumentation: type: boolean hasOperations: type: boolean operationsCount: type: number hasData: type: boolean dataCollectionsCount: type: number hasEvents: type: boolean eventsCount: type: number hasGlobalWebhooks: type: boolean hasUdm: type: boolean isTest: type: boolean externalAppId: type: string authType: type: string enum: - integration-app-token - membrane-token - oauth2 - oauth1 - client-credentials - proxy optionsConfig: type: object additionalProperties: type: object properties: disabled: type: boolean parameters: type: object additionalProperties: type: object required: - id - name - logoUri required: - element - integration required: - id - name - key cursor: type: string required: - items securitySchemes: bearer: scheme: bearer bearerFormat: JWT type: http