---
title: "Get email activity for a contact"
method: GET
path: "/contacts/{id}/activity"
tags: ["Contacts"]
---

# Get email activity for a contact

`GET /contacts/{id}/activity`

Returns paginated email deliverables and contact-level engagement summary

## Response `200`

Successful response

- object
  - `contact` object
    - `last_sent_at` string, date-time, nullable
    - `last_opened_at` string, date-time, nullable
    - `last_clicked_at` string, date-time, nullable
    - `unsubscribed_at` string, date-time, nullable
    - `bounced_at` string, date-time, nullable
  - `deliverables` object
    - `data` object[]
      - `campaign_title` string
      - `campaign_id` integer
      - `sent_at` string, date-time, nullable
      - `opened_at` string, date-time, nullable
      - `clicked_at` string, date-time, nullable
      - `bounced_at` string, date-time, nullable
      - `unsubscribed_at` string, date-time, nullable
      - `spam_at` string, date-time, nullable

## Other responses

- `403` — Forbidden. Most often an ownership/authorization failure (Laravel's default `{"message": "..."}` shape). If the account is restricted by SendFox, the response instead carries the structured `account_restricted` body with a link to the account status page.
- `404` — Contact not found

---

[API](https://skmtc.net/sendfox/apis/sendfox-api.md) · [All operations](https://skmtc.net/sendfox/apis/sendfox-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/sendfox/sendfox-api/revisions/c5728da3037f/schema)
