Contact activity timeline

GET/v1/contacts/{id}/timeline

Secret key — sk_… or sk_test_… · Base URL https://api.volanea.com

The contact plus their most recent 100 activities — events and emails merged, newest first.

Path parameters

  • idstringrequired

    Contact id.

Response

The merged timeline.

  • contactobjectrequired
    • contactIdstringrequired
    • projectIdstring
    • emailemailrequired
    • firstNamestring | null
    • lastNamestring | null
    • subscribedbooleanrequired
    • dataobject | null

      Arbitrary custom fields.

    • localestring | null
    • createdAtdate-timerequired
    • updatedAtdate-timerequired
  • timelineobject | object[]required

Errors

Every failure returns the standard envelope — branch on `code`, never on the wording of `error`.

  • 401Missing or invalid API key.
  • 404Not found.
  • 422Request validation failed (code `validation_error`, 422).

Request

curl https://api.volanea.com/v1/contacts/id_123/timeline \
  -H "Authorization: Bearer sk_..."

Response

200 · application/json

{
  "success": true,
  "data": {
    "contact": {
      "contactId": "con_5e90",
      "projectId": "<projectId>",
      "email": "ada@example.com",
      "firstName": "Ada",
      "lastName": "Lovelace",
      "subscribed": true,
      "data": {},
      "locale": "en",
      "createdAt": "2026-01-01T09:00:00.000Z",
      "updatedAt": "2026-01-01T09:00:00.000Z"
    },
    "timeline": [
      {
        "kind": "event",
        "at": 1,
        "name": "Welcome",
        "data": {},
        "emailId": "em_1c4f"
      }
    ]
  }
}

92 endpoints · OpenAPI document