iAdvizeDocs

Add pages

Judges a list of addresses and, unless `dryRun` is true, adds the accepted ones as pages and starts reading them in the background. The rules are the dashboard's: an address must be https and on the site's own origin, it is normalized (fragment, `utm_` parameters and a trailing slash removed), a repeat is ignored, and above 50 non-empty lines the whole request is refused with `invalid_request` and nothing is created. The answer names the outcome of every line. The answer is `202` when a read was started: read the progress from the pages. It is `200` for a dry run, and when no line was accepted.

POST
/api/v1/sites/{siteId}/pages

Authorization

ApiKeyAuth
AuthorizationBearer <token>

A WorkOS org-scoped API key, created from the dashboard's organization settings page. Identifies the tenant every read and write is scoped to. Missing, malformed, unknown, revoked, expired, or non-organization-owned keys all return 401 (no distinction, so the response can't be used to probe which keys or org ids exist).

In: header

Path Parameters

siteId*string

The site id (prefixed site_). A site id that isn't yours is a 404, same as any other cross-tenant id.

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

curl -X POST "https://example.com/api/v1/sites/string/pages" \  -H "Content-Type: application/json" \  -d '{    "lines": [      "/products/trail-shoe",      "https://shop.example/collections/summer"    ],    "dryRun": false  }'
{  "data": {    "dryRun": true,    "counts": {      "accepted": 1,      "ignored": 0,      "refused": 0    },    "started": false,    "lines": [      {        "line": 1,        "input": "/products/trail-shoe",        "status": "accepted",        "reason": null,        "url": "https://shop.example/products/trail-shoe",        "cleaned": false,        "pageId": null      }    ]  }}