---
title: "Step two: send the pages"
method: POST
path: "/pages/publish/confirm"
tags: ["Publish"]
---

# Step two: send the pages

`POST /pages/publish/confirm`

## Request

- Base URL: `https://pagefully.com/api/v1`
- URL: `https://pagefully.com/api/v1/pages/publish/confirm`
- Auth: HTTP bearer

Spends the token and starts one job for each page. Each page is made in App Store Connect with its screenshots and is not submitted for review. Only the API token that asked for the confirmation can spend it. A page changed since the summary is refused, with the rest, and nothing is sent.

## Request body

- object
  - `confirmation_token` string, required

## Response `202`

The jobs sending each page.

- object
  - `app_id` string, uuid, required
  - `jobs` object[], required
    - `page_id` string, uuid, required
    - `job_id` string, uuid, required
  - `already_sending` string[], required: Pages a job was already sending.

## Other responses

- `400`: `invalid_confirmation`: not a confirmation token of this workspace.
- `401`: No token, or one that is not valid or has been revoked.
- `402`: A plan's limit stopped the call. `error.code` is `upgrade_required`, `error.message` states the facts, and `error.upgrade.url` is the app's plan screen.
- `403`: The token's scope does not allow this call.
- `404`: Not found on this workspace.
- `409`: `confirmation_used`, `changed` (a page changed since the summary), or `key_required`.
- `410`: `confirmation_expired`: more than 10 minutes old.
- `422`: Understood, and refused by the product. The message says why, in a sentence that can be shown as it is.
- `429`: Too many calls: 120 requests a minute for a token, and 20 generation starts an hour. `retry_after` is seconds.

---

[API](https://skmtc.dev/pagefully/apis/pagefully-api.md) · [All operations](https://skmtc.dev/pagefully/apis/pagefully-api/llms.txt) · [OpenAPI document](https://skmtc.dev/pagefully/apis/pagefully-api/revisions/60e17ce09d31?raw)
