---
title: "Upload a style file"
method: POST
path: "/v3/ai-sdr/playbooks/{playbook_id}/style-files"
tags: ["AI SDR Playbooks"]
---

# Upload a style file

`POST /v3/ai-sdr/playbooks/{playbook_id}/style-files`

<small>_Requires the `ai-sdr:write` scope (or a broader one that includes it)._</small>

Uploads a style file (reference document) to a playbook. Style files inform tone and voice when the playbook is applied. Maximum upload size: 100 MB.

Requires the AI SDR feature on the caller's team.

## Path parameters

- `playbook_id` string, required

## Response `201`

Style file uploaded successfully

- object — A single style file attached to a playbook. Style files are reference documents (PDFs, text excerpts, etc.) that inform tone and voice when the playbook is applied.
  - `id` integer — Unique identifier for the style file
  - `fileName` string — Original name of the uploaded file

## Other responses

- `400` — Missing/empty file, malformed playbook id, or upstream rejection (file too large, unsupported format)
- `401` — Unauthorized. The response body is empty; check the `WWW-Authenticate` header for the expected scheme.
- `403` — AI SDR feature is not available for the caller's team
- `404` — Playbook not found
- `502` — Upstream AI SDR service failure

---

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