Skip to content
Sursa Developers

Events · Cards

card.moved

Card moved

A card moved to another collection or folder (data.from, data.to), including cards lifted to the parent folder when their folder was deleted.

Object type
card
Delivered to
Endpoints that can see the object: by role, data profile and collections

Payload

Object: EventCardMoved

  • idstringrequired

    Event ID (evt_…), also sent as the webhook-id header. Use it to drop duplicate deliveries.

  • typestringrequired

    Allowed values: card.moved

  • created_atstring (date-time)required

    When the change happened (UTC).

  • org_idintegerrequired
  • api_versionstringrequired

    Contract version of the data schema.

  • sequenceinteger

    Delivery sequence number within the endpoint (absent for a test event).

  • objectWebhookEventObjectrequired
  • payloadstringrequired

    thin means no data: read the object through the API.

    Allowed values: fullthin

  • dataobject
    Fields
    • cardEventCardrequired
    • actor_idinteger | nullrequired

      The user who performed the action; null for an organization API key or the platform itself.

    • fromEventPlacerequired
    • toEventPlacerequired
  • testbooleanrequired

    A test event sent by POST /v1/webhooks/{webhook_id}/test.

Example delivery

{
  "id": "evt_0123456789abcdef0123456789abcdef",
  "type": "card.moved",
  "created_at": "2026-10-24T10:00:03Z",
  "org_id": 1,
  "api_version": "1.62.0",
  "sequence": 1042,
  "object": {
    "type": "card",
    "id": "c_9f2e41"
  },
  "payload": "full",
  "data": {
    "card": {
      "id": "c_9f2e41",
      "title": "Refund policy",
      "collection": "support",
      "collection_id": 3,
      "version": 4,
      "kind": "text",
      "status": "ready",
      "verification_state": "trusted",
      "owner_id": 7,
      "tags": [
        "billing"
      ],
      "external_id": null,
      "metadata": {}
    },
    "actor_id": 7,
    "from": {
      "collection": "support",
      "collection_id": 3,
      "folder_id": "41"
    },
    "to": {
      "collection": "support",
      "collection_id": 3,
      "folder_id": null
    }
  },
  "test": false
}

Receiving events

Each delivery is a POST request with this JSON body to your endpoint. Verify the webhook-signature header (Standard Webhooks) before you trust the body, answer with a 2xx status within a few seconds, and do the work afterwards. Deliveries to one endpoint keep the order of events; a failed delivery is retried with growing pauses.

New event types and new fields can appear at any time: skip the types and fields you do not know.

The same events are in the event feed for 30 days →