Skip to main content
PUT
/
actions
/
{selector}
Replace action completely
curl --request PUT \
  --url https://api.getmembrane.com/actions/{selector} \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "uuid": "<string>",
  "key": "<string>",
  "name": "<string>",
  "description": "<string>",
  "meta": {},
  "integrationId": "<string>",
  "integrationUuid": "<string>",
  "integrationKey": "<string>",
  "parentId": "<string>",
  "parentUuid": "<string>",
  "parentKey": "<string>",
  "connectionId": "<string>",
  "instanceKey": "<string>",
  "isUniversal": true,
  "externalAppId": "<string>",
  "externalAppUuid": "<string>",
  "externalAppKey": "<string>",
  "inputSchema": {
    "type": "<string>",
    "title": "<string>",
    "description": "<string>",
    "format": "<string>",
    "properties": {},
    "items": "<unknown>",
    "additionalProperties": true,
    "enum": [
      "<string>"
    ],
    "referenceRecords": [
      {}
    ],
    "referenceCollection": {
      "key": {},
      "parameters": {}
    },
    "referenceUdm": "<string>",
    "default": {},
    "allowCustom": true,
    "required": [
      "<string>"
    ],
    "minLength": 123,
    "maxLength": 123,
    "minimum": 123,
    "maximum": 123,
    "maxItems": 123,
    "readOnly": true,
    "writeOnly": true,
    "examples": [
      {}
    ],
    "anyOf": "<array>",
    "isImplied": true,
    "isSensitive": true,
    "referenceCollectionPath": "<string>",
    "referenceCollectionUri": "<string>"
  },
  "type": "list-data-records",
  "config": {},
  "outputMapping": "<unknown>",
  "customOutputSchema": {
    "type": "<string>",
    "title": "<string>",
    "description": "<string>",
    "format": "<string>",
    "properties": {},
    "items": "<unknown>",
    "additionalProperties": true,
    "enum": [
      "<string>"
    ],
    "referenceRecords": [
      {}
    ],
    "referenceCollection": {
      "key": {},
      "parameters": {}
    },
    "referenceUdm": "<string>",
    "default": {},
    "allowCustom": true,
    "required": [
      "<string>"
    ],
    "minLength": 123,
    "maxLength": 123,
    "minimum": 123,
    "maximum": 123,
    "maxItems": 123,
    "readOnly": true,
    "writeOnly": true,
    "examples": [
      {}
    ],
    "anyOf": "<array>",
    "isImplied": true,
    "isSensitive": true,
    "referenceCollectionPath": "<string>",
    "referenceCollectionUri": "<string>"
  },
  "intent": "<string>"
}
'
{
  "id": "<string>",
  "name": "<string>",
  "uuid": "<string>",
  "key": "<string>",
  "description": "<string>",
  "meta": {},
  "state": "BUILDING",
  "errors": [
    {
      "message": "<string>",
      "type": "bad_request",
      "key": "<string>",
      "data": {},
      "stack": {},
      "causedByError": "<unknown>",
      "logs": [
        {}
      ]
    }
  ],
  "revision": "<string>",
  "createdAt": "<string>",
  "updatedAt": "<string>",
  "archivedAt": "<string>",
  "isDeactivated": true,
  "isReadOnly": true,
  "integrationId": "<string>",
  "integrationUuid": "<string>",
  "integrationKey": "<string>",
  "parentId": "<string>",
  "parentUuid": "<string>",
  "parentKey": "<string>",
  "connectionId": "<string>",
  "instanceKey": "<string>",
  "isUniversal": true,
  "externalAppId": "<string>",
  "externalAppUuid": "<string>",
  "externalAppKey": "<string>",
  "inputSchema": {
    "type": "<string>",
    "title": "<string>",
    "description": "<string>",
    "format": "<string>",
    "properties": {},
    "items": "<unknown>",
    "additionalProperties": true,
    "enum": [
      "<string>"
    ],
    "referenceRecords": [
      {}
    ],
    "referenceCollection": {
      "key": {},
      "parameters": {}
    },
    "referenceUdm": "<string>",
    "default": {},
    "allowCustom": true,
    "required": [
      "<string>"
    ],
    "minLength": 123,
    "maxLength": 123,
    "minimum": 123,
    "maximum": 123,
    "maxItems": 123,
    "readOnly": true,
    "writeOnly": true,
    "examples": [
      {}
    ],
    "anyOf": "<array>",
    "isImplied": true,
    "isSensitive": true,
    "referenceCollectionPath": "<string>",
    "referenceCollectionUri": "<string>"
  },
  "type": "list-data-records",
  "config": {},
  "outputMapping": "<unknown>",
  "customOutputSchema": {
    "type": "<string>",
    "title": "<string>",
    "description": "<string>",
    "format": "<string>",
    "properties": {},
    "items": "<unknown>",
    "additionalProperties": true,
    "enum": [
      "<string>"
    ],
    "referenceRecords": [
      {}
    ],
    "referenceCollection": {
      "key": {},
      "parameters": {}
    },
    "referenceUdm": "<string>",
    "default": {},
    "allowCustom": true,
    "required": [
      "<string>"
    ],
    "minLength": 123,
    "maxLength": 123,
    "minimum": 123,
    "maximum": 123,
    "maxItems": 123,
    "readOnly": true,
    "writeOnly": true,
    "examples": [
      {}
    ],
    "anyOf": "<array>",
    "isImplied": true,
    "isSensitive": true,
    "referenceCollectionPath": "<string>",
    "referenceCollectionUri": "<string>"
  },
  "isCustomized": true,
  "userId": "<string>",
  "tenantId": "<string>",
  "universalParentId": "<string>",
  "outputSchema": {
    "type": "<string>",
    "title": "<string>",
    "description": "<string>",
    "format": "<string>",
    "properties": {},
    "items": "<unknown>",
    "additionalProperties": true,
    "enum": [
      "<string>"
    ],
    "referenceRecords": [
      {}
    ],
    "referenceCollection": {
      "key": {},
      "parameters": {}
    },
    "referenceUdm": "<string>",
    "default": {},
    "allowCustom": true,
    "required": [
      "<string>"
    ],
    "minLength": 123,
    "maxLength": 123,
    "minimum": 123,
    "maximum": 123,
    "maxItems": 123,
    "readOnly": true,
    "writeOnly": true,
    "examples": [
      {}
    ],
    "anyOf": "<array>",
    "isImplied": true,
    "isSensitive": true,
    "referenceCollectionPath": "<string>",
    "referenceCollectionUri": "<string>"
  },
  "isPublic": true,
  "integration": {
    "id": "<string>",
    "name": "<string>",
    "logoUri": "<string>",
    "uuid": "<string>",
    "key": "<string>",
    "description": "<string>",
    "meta": {},
    "state": "BUILDING",
    "errors": [
      {
        "message": "<string>",
        "type": "bad_request",
        "key": "<string>",
        "data": {},
        "stack": {},
        "causedByError": "<unknown>",
        "logs": [
          {}
        ]
      }
    ],
    "revision": "<string>",
    "createdAt": "<string>",
    "updatedAt": "<string>",
    "archivedAt": "<string>",
    "isDeactivated": true,
    "isReadOnly": true,
    "connectorId": "<string>",
    "connectorVersion": "<string>",
    "oAuthCallbackUri": "<string>",
    "parameters": {},
    "hasMissingParameters": true,
    "hasDocumentation": true,
    "hasOperations": true,
    "operationsCount": 123,
    "hasData": true,
    "dataCollectionsCount": 123,
    "hasEvents": true,
    "eventsCount": 123,
    "hasGlobalWebhooks": true,
    "hasUdm": true,
    "isTest": true,
    "externalAppId": "<string>",
    "authType": "integration-app-token",
    "optionsConfig": {}
  },
  "user": {
    "id": "<string>",
    "name": "<string>",
    "internalId": "<string>",
    "meta": {},
    "fields": {},
    "credentials": {},
    "lastActiveAt": "<string>",
    "isTest": true,
    "isBillable": true,
    "isActive": true,
    "aiCreditsRolling30DayLimit": 1,
    "createdAt": "<string>",
    "archivedAt": "<string>"
  },
  "parent": {
    "id": "<string>",
    "name": "<string>",
    "uuid": "<string>",
    "key": "<string>",
    "description": "<string>",
    "meta": {},
    "state": "BUILDING",
    "errors": [
      {
        "message": "<string>",
        "type": "bad_request",
        "key": "<string>",
        "data": {},
        "stack": {},
        "causedByError": "<unknown>",
        "logs": [
          {}
        ]
      }
    ],
    "revision": "<string>",
    "createdAt": "<string>",
    "updatedAt": "<string>",
    "archivedAt": "<string>",
    "isDeactivated": true,
    "isReadOnly": true,
    "integrationId": "<string>",
    "integrationUuid": "<string>",
    "integrationKey": "<string>",
    "parentId": "<string>",
    "parentUuid": "<string>",
    "parentKey": "<string>",
    "connectionId": "<string>",
    "instanceKey": "<string>",
    "isUniversal": true,
    "externalAppId": "<string>",
    "externalAppUuid": "<string>",
    "externalAppKey": "<string>",
    "inputSchema": {
      "type": "<string>",
      "title": "<string>",
      "description": "<string>",
      "format": "<string>",
      "properties": {},
      "items": "<unknown>",
      "additionalProperties": true,
      "enum": [
        "<string>"
      ],
      "referenceRecords": [
        {}
      ],
      "referenceCollection": {
        "key": {},
        "parameters": {}
      },
      "referenceUdm": "<string>",
      "default": {},
      "allowCustom": true,
      "required": [
        "<string>"
      ],
      "minLength": 123,
      "maxLength": 123,
      "minimum": 123,
      "maximum": 123,
      "maxItems": 123,
      "readOnly": true,
      "writeOnly": true,
      "examples": [
        {}
      ],
      "anyOf": "<array>",
      "isImplied": true,
      "isSensitive": true,
      "referenceCollectionPath": "<string>",
      "referenceCollectionUri": "<string>"
    },
    "type": "list-data-records",
    "config": {},
    "outputMapping": "<unknown>",
    "customOutputSchema": {
      "type": "<string>",
      "title": "<string>",
      "description": "<string>",
      "format": "<string>",
      "properties": {},
      "items": "<unknown>",
      "additionalProperties": true,
      "enum": [
        "<string>"
      ],
      "referenceRecords": [
        {}
      ],
      "referenceCollection": {
        "key": {},
        "parameters": {}
      },
      "referenceUdm": "<string>",
      "default": {},
      "allowCustom": true,
      "required": [
        "<string>"
      ],
      "minLength": 123,
      "maxLength": 123,
      "minimum": 123,
      "maximum": 123,
      "maxItems": 123,
      "readOnly": true,
      "writeOnly": true,
      "examples": [
        {}
      ],
      "anyOf": "<array>",
      "isImplied": true,
      "isSensitive": true,
      "referenceCollectionPath": "<string>",
      "referenceCollectionUri": "<string>"
    },
    "isCustomized": true,
    "userId": "<string>",
    "tenantId": "<string>",
    "universalParentId": "<string>",
    "outputSchema": "<unknown>",
    "isPublic": true
  },
  "appliedToIntegrations": [
    {
      "element": {
        "id": "<string>",
        "name": "<string>",
        "uuid": "<string>",
        "key": "<string>",
        "description": "<string>",
        "meta": {},
        "state": "BUILDING",
        "errors": [
          {
            "message": "<string>",
            "type": "bad_request",
            "key": "<string>",
            "data": {},
            "stack": {},
            "causedByError": "<unknown>",
            "logs": [
              {}
            ]
          }
        ],
        "revision": "<string>",
        "createdAt": "<string>",
        "updatedAt": "<string>",
        "archivedAt": "<string>",
        "isDeactivated": true,
        "isReadOnly": true,
        "integrationId": "<string>",
        "integrationUuid": "<string>",
        "integrationKey": "<string>",
        "parentId": "<string>",
        "parentUuid": "<string>",
        "parentKey": "<string>",
        "connectionId": "<string>",
        "instanceKey": "<string>",
        "isUniversal": true,
        "externalAppId": "<string>",
        "externalAppUuid": "<string>",
        "externalAppKey": "<string>",
        "inputSchema": {
          "type": "<string>",
          "title": "<string>",
          "description": "<string>",
          "format": "<string>",
          "properties": {},
          "items": "<unknown>",
          "additionalProperties": true,
          "enum": [
            "<string>"
          ],
          "referenceRecords": [
            {}
          ],
          "referenceCollection": {
            "key": {},
            "parameters": {}
          },
          "referenceUdm": "<string>",
          "default": {},
          "allowCustom": true,
          "required": [
            "<string>"
          ],
          "minLength": 123,
          "maxLength": 123,
          "minimum": 123,
          "maximum": 123,
          "maxItems": 123,
          "readOnly": true,
          "writeOnly": true,
          "examples": [
            {}
          ],
          "anyOf": "<array>",
          "isImplied": true,
          "isSensitive": true,
          "referenceCollectionPath": "<string>",
          "referenceCollectionUri": "<string>"
        },
        "type": "list-data-records",
        "config": {},
        "outputMapping": "<unknown>",
        "customOutputSchema": {
          "type": "<string>",
          "title": "<string>",
          "description": "<string>",
          "format": "<string>",
          "properties": {},
          "items": "<unknown>",
          "additionalProperties": true,
          "enum": [
            "<string>"
          ],
          "referenceRecords": [
            {}
          ],
          "referenceCollection": {
            "key": {},
            "parameters": {}
          },
          "referenceUdm": "<string>",
          "default": {},
          "allowCustom": true,
          "required": [
            "<string>"
          ],
          "minLength": 123,
          "maxLength": 123,
          "minimum": 123,
          "maximum": 123,
          "maxItems": 123,
          "readOnly": true,
          "writeOnly": true,
          "examples": [
            {}
          ],
          "anyOf": "<array>",
          "isImplied": true,
          "isSensitive": true,
          "referenceCollectionPath": "<string>",
          "referenceCollectionUri": "<string>"
        },
        "isCustomized": true,
        "userId": "<string>",
        "tenantId": "<string>",
        "universalParentId": "<string>",
        "outputSchema": "<unknown>",
        "isPublic": true
      },
      "integration": {
        "id": "<string>",
        "name": "<string>",
        "logoUri": "<string>",
        "uuid": "<string>",
        "key": "<string>",
        "description": "<string>",
        "meta": {},
        "state": "BUILDING",
        "errors": [
          {
            "message": "<string>",
            "type": "bad_request",
            "key": "<string>",
            "data": {},
            "stack": {},
            "causedByError": "<unknown>",
            "logs": [
              {}
            ]
          }
        ],
        "revision": "<string>",
        "createdAt": "<string>",
        "updatedAt": "<string>",
        "archivedAt": "<string>",
        "isDeactivated": true,
        "isReadOnly": true,
        "connectorId": "<string>",
        "connectorVersion": "<string>",
        "oAuthCallbackUri": "<string>",
        "parameters": {},
        "hasMissingParameters": true,
        "hasDocumentation": true,
        "hasOperations": true,
        "operationsCount": 123,
        "hasData": true,
        "dataCollectionsCount": 123,
        "hasEvents": true,
        "eventsCount": 123,
        "hasGlobalWebhooks": true,
        "hasUdm": true,
        "isTest": true,
        "externalAppId": "<string>",
        "authType": "integration-app-token",
        "optionsConfig": {}
      }
    }
  ],
  "defaultOutputSchema": {
    "type": "<string>",
    "title": "<string>",
    "description": "<string>",
    "format": "<string>",
    "properties": {},
    "items": "<unknown>",
    "additionalProperties": true,
    "enum": [
      "<string>"
    ],
    "referenceRecords": [
      {}
    ],
    "referenceCollection": {
      "key": {},
      "parameters": {}
    },
    "referenceUdm": "<string>",
    "default": {},
    "allowCustom": true,
    "required": [
      "<string>"
    ],
    "minLength": 123,
    "maxLength": 123,
    "minimum": 123,
    "maximum": 123,
    "maxItems": 123,
    "readOnly": true,
    "writeOnly": true,
    "examples": [
      {}
    ],
    "anyOf": "<array>",
    "isImplied": true,
    "isSensitive": true,
    "referenceCollectionPath": "<string>",
    "referenceCollectionUri": "<string>"
  },
  "transformedOutputSchema": {
    "type": "<string>",
    "title": "<string>",
    "description": "<string>",
    "format": "<string>",
    "properties": {},
    "items": "<unknown>",
    "additionalProperties": true,
    "enum": [
      "<string>"
    ],
    "referenceRecords": [
      {}
    ],
    "referenceCollection": {
      "key": {},
      "parameters": {}
    },
    "referenceUdm": "<string>",
    "default": {},
    "allowCustom": true,
    "required": [
      "<string>"
    ],
    "minLength": 123,
    "maxLength": 123,
    "minimum": 123,
    "maximum": 123,
    "maxItems": 123,
    "readOnly": true,
    "writeOnly": true,
    "examples": [
      {}
    ],
    "anyOf": "<array>",
    "isImplied": true,
    "isSensitive": true,
    "referenceCollectionPath": "<string>",
    "referenceCollectionUri": "<string>"
  },
  "dependencies": [
    {}
  ]
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

selector
string
required

Query Parameters

layer
enum<string>
Available options:
universal,
integration,
connection
integrationKey
string
integrationId
string
connectionId
string
connectionKey
string
instanceKey
string

Body

application/json
uuid
string

Stable unique identifier (UUID). Can be provided on create; otherwise generated. Must be unique across elements of this type.

key
string

Stable key for referencing the element (e.g. in selectors). Unique per (parent, integration) scope. Generated from name if not provided on create.

name
string

Display name. Optional on create; used to generate key when key is omitted.

description
string

Optional human-readable description.

meta
object

Optional key-value metadata.

integrationId
string

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.

integrationUuid
string

UUID of the integration; alternative to integrationId when creating from export. Resolved to integrationId by the API.

integrationKey
string

Key of the integration; alternative to integrationId. Resolved to integrationId by the API.

parentId
string

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.

parentUuid
string

UUID of the parent element; alternative to parentId when creating (e.g. from export). Resolved to parentId by the API.

parentKey
string

Key of the parent element; alternative to parentId. Resolved to parentId by the API.

connectionId
string

Connection ID for filtering or for connection-level instances. Same semantics as base integration-level property.

instanceKey
string

Key for the connection-level instance when multiple exist per connection. Same semantics as base integration-level property.

isUniversal
boolean

When true, the element is universal (shared across all integrations). Requires universal-element access. Omit or false for integration-specific elements.

externalAppId
string

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.

externalAppUuid
string

UUID of the external app; alternative to externalAppId when creating from export. Resolved to externalAppId by the API.

externalAppKey
string

Key of the external app; alternative to externalAppId. Resolved to externalAppId by the API.

inputSchema
object

JSON Schema for the action input. Used by the action engine for template output schema, run-time variables, and output mapping.

type
enum<string>

Action type (e.g. ConnectorOperation, RunJavascript). Determines which handler runs and which config schema is used for validation.

Available options:
list-data-records,
find-data-record-by-id,
match-data-record,
create-data-record,
find-or-create-data-record,
update-data-record,
delete-data-record,
search-data-record,
connector-operation,
api-request-to-external-app,
api-request-to-your-app,
http-request,
run-javascript,
api-request
config
object

Type-specific configuration object. Validated by the handler's config schema; passed to handler setup/run and getTemplateOutputSchema.

outputMapping
any

Mapping expression to transform the action's raw output. Evaluated with access to input, output, and user; used to compute transformed output schema and at run time.

customOutputSchema
object

Explicit output schema for the action. Takes precedence over the transformed or default output schema when resolving outputSchema.

intent
string

[Experimental] Intent-based instruction for an agent to configure this element.

Response

200 - application/json
id
string
required

Internal database ID of the element. Assigned by the API; unique per element.

name
string
required

Display name. Always present in API responses (filled by API if not set on create).

uuid
string

Stable unique identifier (UUID). Can be provided on create; otherwise generated. Must be unique across elements of this type.

key
string

Stable key for referencing the element (e.g. in selectors). Unique per (parent, integration) scope. Generated from name if not provided on create.

description
string

Optional human-readable description.

meta
object

Optional key-value metadata.

state
enum<string>

Current lifecycle or health state (e.g. READY, SETUP_FAILED, CONFIGURATION_ERROR, BUILDING). Set by the engine during setup and validation.

Available options:
BUILDING,
CLIENT_ACTION_REQUIRED,
CONFIGURATION_ERROR,
SETUP_FAILED,
READY,
DISCONNECTING
errors
object[]

Validation or setup errors when state is not READY.

revision
string

Opaque revision token; changes on each update. Used for optimistic concurrency.

createdAt
string

ISO date when the element was created.

updatedAt
string

ISO date when the element was last updated.

archivedAt
string

When set, the element is archived (soft-deleted). Archived elements cannot be patched.

isDeactivated
boolean

When true, setup is skipped and the element is treated as inactive (e.g. when dependencies are deactivated or the element is archived).

isReadOnly
boolean

When true, the element cannot be modified (e.g. published package elements or elements from another workspace).

integrationId
string

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.

integrationUuid
string

UUID of the integration; alternative to integrationId when creating from export. Resolved to integrationId by the API.

integrationKey
string

Key of the integration; alternative to integrationId. Resolved to integrationId by the API.

parentId
string

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.

parentUuid
string

UUID of the parent element; alternative to parentId when creating (e.g. from export). Resolved to parentId by the API.

parentKey
string

Key of the parent element; alternative to parentId. Resolved to parentId by the API.

connectionId
string

Connection ID for filtering or for connection-level instances. Same semantics as base integration-level property.

instanceKey
string

Key for the connection-level instance when multiple exist per connection. Same semantics as base integration-level property.

isUniversal
boolean

When true, the element is universal (shared across all integrations). Requires universal-element access. Omit or false for integration-specific elements.

externalAppId
string

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.

externalAppUuid
string

UUID of the external app when this action is published in a package that has an external app. Populated in API responses for published actions.

externalAppKey
string

Key of the external app; alternative to externalAppId. Resolved to externalAppId by the API.

inputSchema
object

JSON Schema for the action input. Used by the action engine for template output schema, run-time variables, and output mapping.

type
enum<string>

Action type (e.g. ConnectorOperation, RunJavascript). Determines which handler runs and which config schema is used for validation.

Available options:
list-data-records,
find-data-record-by-id,
match-data-record,
create-data-record,
find-or-create-data-record,
update-data-record,
delete-data-record,
search-data-record,
connector-operation,
api-request-to-external-app,
api-request-to-your-app,
http-request,
run-javascript,
api-request
config
object

Type-specific configuration object. Validated by the handler's config schema; passed to handler setup/run and getTemplateOutputSchema.

outputMapping
any

Mapping expression to transform the action's raw output. Evaluated with access to input, output, and user; used to compute transformed output schema and at run time.

customOutputSchema
object

Explicit output schema for the action. Takes precedence over the transformed or default output schema when resolving outputSchema.

isCustomized
boolean
userId
string
tenantId
string
universalParentId
string

For connection-level instances: ID of the universal (root) action in the hierarchy. Set automatically when creating an instance; used in list/selector queries to filter by universal parent.

outputSchema
object
isPublic
boolean

When true, the element is publicly listed (e.g. in universe). Used for published packages; publish/unpublish updates this on published elements.

integration
object
user
object
parent
object
appliedToIntegrations
object[]
defaultOutputSchema
object
transformedOutputSchema
object
dependencies
object[]