---
title: "Record on a case that a message was sent to the partner or advertiser"
method: POST
path: "/projects/{project_id}/outreach-records"
tags: ["Case actions"]
---

# Record on a case that a message was sent to the partner or advertiser

`POST /projects/{project_id}/outreach-records`

## Request

- Base URL: `https://adslighthouse.com/api/v1`
- URL: `https://adslighthouse.com/api/v1/projects/{project_id}/outreach-records`
- Auth: HTTP bearer

Records on a case that the person sent a message from their own email: the template used, the date sent (YYYY-MM-DD, not in the future), an optional recipient address and note. The subject recorded is the template's subject filled for the case. It is added to the case timeline. Requires the write scope and an idempotency key.

## Path parameters

- `project_id` string, required: The project: its id, its brand domain (for example nike.example) or its exact project or brand name. Unknown or ambiguous references return not_found; call list_projects then.

## Headers

- `Idempotency-Key` string, required: A unique value you choose for this request, such as a UUID. Repeating the same key returns the first result instead of starting paid work again.

## Request body

- object
  - `case_type` 'policy' | 'affiliate', required: policy for a case from list_policy_cases; affiliate for a non-compliant affiliate case from list_affiliate_findings.
  - `case_id` string: The policy case id. Required when case_type is policy.
  - `affiliate_id` string: The affiliate ID exactly as list_affiliate_findings returns it. Required when case_type is affiliate.
  - `template_id` string, required: The template id from list_outreach_templates.
  - `sent_on` string, required: YYYY-MM-DD in your time zone.
  - `recipient` string
  - `note` string

## Response `201`

Record on a case that a message was sent to the partner or advertiser

- object
  - `created` boolean, required
  - `event_id` string, required
  - `subject` string, required
  - `request_id` string

## Other responses

- `400`: Invalid parameters, cursor or body.
- `401`: Missing, invalid, expired or revoked credential.
- `403`: The credential lacks the write scope, the plan does not include the API, or the allowance is used up.
- `404`: Unknown project, keyword or run in this account.
- `409`: The idempotency key was already used for a different request.
- `429`: Rate limit reached. Retry after the Retry-After seconds.
- `503`: The requested service or file is temporarily unavailable.

---

[API](https://skmtc.dev/adslighthouse/apis/ads-lighthouse-api.md) · [All operations](https://skmtc.dev/adslighthouse/apis/ads-lighthouse-api/llms.txt) · [OpenAPI document](https://skmtc.dev/adslighthouse/apis/ads-lighthouse-api/revisions/e1a4a40b11a9?raw)
