---
title: "Post Signup Integration Choice"
method: POST
path: "/v2/signup/pending/{pending_id}/integration"
---

# Post Signup Integration Choice

`POST /v2/signup/pending/{pending_id}/integration`

## Request

- Base URL: `https://api.loyalty.dog`
- URL: `https://api.loyalty.dog/v2/signup/pending/{pending_id}/integration`
- Auth: none required
- TypeScript: <https://skmtc.dev/loyalty/apis/loyaltydog/docs/v2/signup/pending/:pending_id/integration/post.ts> (a function with typed inputs; its response is checked against the schema)

Step 2 of the dash signup funnel: record the merchant's wordpress|standalone
pick on a `pending` User row and bump the TTL.

Auth is implicit — the row must already be in `pending` status (rejected
via `pending_not_found` otherwise). Active/abandoned/cancelled rows can't
advance through this endpoint. Rate-limited per IP via slowapi.

## Path parameters

- `pending_id` string, required

## Request body

- SetIntegrationChoiceRequest
  - `integration` 'wordpress' | 'standalone', required

## Response `200`

Successful Response

- SetIntegrationChoiceResponse
  - `integrationChoice` string, required
  - `signupExpiresAt` string, date-time, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/loyalty/apis/loyaltydog.md) - [All operations](https://skmtc.dev/loyalty/apis/loyaltydog/llms.txt) - [OpenAPI document](https://skmtc.dev/loyalty/apis/loyaltydog/revisions/5803242b0551?raw)
