---
title: "Book Campaign Job"
method: POST
path: "/campaigns/{campaign_id}/customers/{customer_id}/book"
tags: ["campaigns"]
---

# Book Campaign Job

`POST /campaigns/{campaign_id}/customers/{customer_id}/book`

Book a ServiceTitan job from the campaign dashboard.

## Path parameters

- `campaign_id` string, required
- `customer_id` string, required

## Request body

- CampaignBookJobRequest
  - `item_id` string, required
  - `business_unit_id` integer, required
  - `job_type_id` integer, required
  - `st_campaign_id` integer, required
  - `appointment_start` string, required
  - `appointment_end` string, required
  - `summary` string, nullable
  - `tag_type_ids` integer[], nullable

## Response `200`

Successful Response

- CampaignBookJobResponse
  - `job_id` integer, required
  - `item_id` string, required
  - `customer_status` string, required
  - `message` string, required

## Other responses

- `404` — Not found
- `422` — Validation Error

---

[API](https://skmtc.dev/noso/apis/crucible-backend-api.md) · [All operations](https://skmtc.dev/noso/apis/crucible-backend-api/llms.txt) · [OpenAPI document](https://skmtc.dev/noso/apis/crucible-backend-api/revisions/94953390bbd8?raw)
