---
title: "Start a pursuit."
method: POST
path: "/strategy/pursuits"
tags: ["Strategy"]
---

# Start a pursuit.

`POST /strategy/pursuits`

## Request

- Base URL: `https://docs.sleeperhit.studio/api/v1`
- URL: `https://docs.sleeperhit.studio/api/v1/strategy/pursuits`
- Auth: HTTP bearer

A pursuit made directly rather than promoted from an opportunity: a title, and optionally a summary, due date, contact or company, the screenplay version it is for, and its first action items. Requires `Idempotency-Key`, so a retry makes one. Free. Scope: `story:write`.

## Headers

- `Idempotency-Key` string, required

## Request body

- CreatePursuitRequest
  - `title` string, required
  - `summary` string
  - `dueDate` string: A date (YYYY-MM-DD or ISO).
  - `personId` string: A person in your contacts.
  - `companyId` string: A company in your contacts.
  - `scriptUploadId` string: The screenplay version it is for.
  - `actionItems` AddStrategyActionItemRequest[]: First next steps, in order.
    - `title` string, required
    - `detail` string
    - `dueDate` string: A date (YYYY-MM-DD or ISO).

## Response `200`

The new pursuit.

- PursuitEnvelope
  - `pursuit` Pursuit, required
    - `id` string, required
    - `title` string, required
    - `summary` string, nullable, required
    - `status` 'active' | 'completed' | 'archived', required
    - `dueDate` string, date-time, nullable, required
    - `completedAt` string, date-time, nullable, required
    - `person` object, nullable, required
      - `id` string, required
      - `name` string, required
    - `company` object, nullable, required
      - `id` string, required
      - `name` string, required
    - `script` object, nullable, required: The screenplay version it is for.
      - `id` string, required
      - `title` string, required
    - `actionItems` StrategyActionItem[], required
      - `id` string, required
      - `title` string, required
      - `detail` string, nullable, required
      - `dueDate` string, date-time, nullable, required
      - `completedAt` string, date-time, nullable, required
    - `openActionItemCount` integer, required
    - `updatedAt` string, date-time, required

## Other responses

- `400`: `validation_failed`: the message names the field.
- `401`: Missing, malformed, revoked, or expired API key.
- `403`: API key is valid but lacks the scope, is blocked by IP allowlist, or the account is disabled.
- `404`: `strategy_item_not_found`: no such row in your Strategy, or it is another writer's.
- `429`: Rate limit for this API key + IP + route family was exceeded.
- `500`: The API failed unexpectedly. Safe to retry with the same Idempotency-Key.
- `503`: `strategy_unavailable`: Strategy, or its watches, is switched off right now.

---

[API](https://skmtc.dev/sleeperhit/apis/sleeper-hit-studio-story-api.md) · [All operations](https://skmtc.dev/sleeperhit/apis/sleeper-hit-studio-story-api/llms.txt) · [OpenAPI document](https://skmtc.dev/sleeperhit/apis/sleeper-hit-studio-story-api/revisions/4534f5d25540?raw)
