---
title: "Posting rules and option catalog, per account"
method: GET
path: "/posting-rules"
---

# Posting rules and option catalog, per account

`GET /posting-rules`

## Request

- Base URL: `https://xpost.to/api/v1`
- URL: `https://xpost.to/api/v1/posting-rules`
- Auth: HTTP bearer

Everything a post to each account may carry, as data: the `limits`/`can` brief from GET /social-accounts plus `options` — every `platform_configurations.<platform>` key THIS account accepts, with kind (`text` | `textarea` | `list` | `toggle` | `select`), accepted `values`, `default`, `max_length`/`max_items` ceilings, placement gates (`only_placement`/`except_placement`) and a plain-English `note` where the key alone would mislead. Keys are filtered by the account's actual connection route — a key that would lose the whole post on this route (an Instagram first comment off bundle.social, reel music or a partnership label off Facebook Login) is simply absent. Pinterest accounts also answer `boards`: the live boards `board_ids` accepts, each `{ name, eligible, reason? }` (`null` = lookup unavailable right now). `board_ids` is optional on Pinterest — with none, the pin goes to the account's catch-all board ("Unorganized ideas") — but a board name must come from this list, never a guess. A board with `eligible: false` is listed rather than hidden and CANNOT take a pin — a sandbox board refuses every real pin, and sending it loses the delivery. Read this before building `platform_configurations` instead of guessing from prose.

## Query parameters

- `account_ids` string

## Response `200`

Per-account rules

- object
  - `data` object[]
    - `id` string
    - `ref` string: What to WRITE when posting here — "x:someone". The id is still accepted, but a person approving the call can check a handle where a uuid tells them nothing.
    - `platform` string
    - `username` string
    - `status` string
    - `limits` object
    - `can` object
    - `options` object
    - `boards` string[], nullable

## Other responses

- `401`: Missing or invalid API key
- `429`: Rate limited

---

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