---
title: "Gets a list of contacts who were sent a campaign, and retrieves only those contacts who showed activity (e.g. they clicked, opened) after a specified date."
method: GET
path: "/v2/campaigns/{campaignId}/activities/since-date/{date}"
tags: ["ApiCampaignReporting"]
---

# Gets a list of contacts who were sent a campaign, and retrieves only those contacts who showed activity (e.g. they clicked, opened) after a specified date.

`GET /v2/campaigns/{campaignId}/activities/since-date/{date}`

## Request

- Base URL: `https://api.dotdigital.com`
- URL: `https://api.dotdigital.com/v2/campaigns/{campaignId}/activities/since-date/{date}`
- Auth: none declared
- TypeScript: <https://skmtc.dev/dotdigital/apis/apiconnector-com/docs/v2/campaigns/:campaignId/activities/since-date/:date/get.ts> (a function with typed inputs; its response is checked against the schema)

## Path parameters

- `campaignId` integer, required
- `date` string, date-time, required

## Query parameters

- `select` integer
- `skip` integer

## Response `200`

- ApiCampaignContactSummary[]
  - `contactId` integer
  - `email` string, nullable
  - `numOpens` integer
  - `numPageViews` integer
  - `numClicks` integer
  - `numForwards` integer
  - `numEstimatedForwards` integer
  - `numReplies` integer
  - `dateSent` string, date-time
  - `dateFirstOpened` string, date-time
  - `dateLastOpened` string, date-time
  - `firstOpenIp` string, nullable: if the openip is null it doesn't get mapped so this defualt empty string is needed is required to maintain api usage.
  - `unsubscribed` boolean
  - `softBounced` boolean
  - `hardBounced` boolean

---

[API](https://skmtc.dev/dotdigital/apis/apiconnector-com.md) - [All operations](https://skmtc.dev/dotdigital/apis/apiconnector-com/llms.txt) - [OpenAPI document](https://skmtc.dev/dotdigital/apis/apiconnector-com/revisions/391b93e8d24a?raw)
