# Posts

Create, approve, schedule, publish, and manage posts.

GET `/brands/:slug/posts`

List posts, optionally filtered by status.

Query

`?status=pending_user | approved | scheduled | published | failed`

Responses

200 Array of posts

401 Invalid token

Use your running CRUMBLESS\_API\_BASE\_URL and matching CRUMBLESS\_API\_TOKEN. [API setup](/docs/api)

```
curl -X GET \
  "$CRUMBLESS_API_BASE_URL/brands/:slug/posts" \
  -H "Authorization: Bearer $CRUMBLESS_API_TOKEN"
```

PUT `/brands/:slug/posts/:id`

Update a post.

Request Body

```
{ "caption": "New text", "platforms": ["instagram"] }
```

Responses

200 Updated

404 Not found

Use your running CRUMBLESS\_API\_BASE\_URL and matching CRUMBLESS\_API\_TOKEN. [API setup](/docs/api)

```
curl -X PUT \
  "$CRUMBLESS_API_BASE_URL/brands/:slug/posts/:id" \
  -H "Authorization: Bearer $CRUMBLESS_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ "caption": "New text", "platforms": ["instagram"] }'
```

POST `/brands/:slug/posts/:id/approve`

Approve and publish a single post.

Responses

200 Approved

Use your running CRUMBLESS\_API\_BASE\_URL and matching CRUMBLESS\_API\_TOKEN. [API setup](/docs/api)

```
curl -X POST \
  "$CRUMBLESS_API_BASE_URL/brands/:slug/posts/:id/approve" \
  -H "Authorization: Bearer $CRUMBLESS_API_TOKEN"
```

POST `/brands/:slug/posts/approve-all`

Approve all pending posts.

Responses

200 Bulk result

Use your running CRUMBLESS\_API\_BASE\_URL and matching CRUMBLESS\_API\_TOKEN. [API setup](/docs/api)

```
curl -X POST \
  "$CRUMBLESS_API_BASE_URL/brands/:slug/posts/approve-all" \
  -H "Authorization: Bearer $CRUMBLESS_API_TOKEN"
```

POST `/brands/:slug/posts/:id/publish`

Publish immediately.

Responses

200 Published

Use your running CRUMBLESS\_API\_BASE\_URL and matching CRUMBLESS\_API\_TOKEN. [API setup](/docs/api)

```
curl -X POST \
  "$CRUMBLESS_API_BASE_URL/brands/:slug/posts/:id/publish" \
  -H "Authorization: Bearer $CRUMBLESS_API_TOKEN"
```

POST `/brands/:slug/posts/:id/reschedule`

Reschedule a post.

Request Body

```
{ "scheduled_for": "2026-06-22T14:00:00Z" }
```

Responses

200 Rescheduled

Use your running CRUMBLESS\_API\_BASE\_URL and matching CRUMBLESS\_API\_TOKEN. [API setup](/docs/api)

```
curl -X POST \
  "$CRUMBLESS_API_BASE_URL/brands/:slug/posts/:id/reschedule" \
  -H "Authorization: Bearer $CRUMBLESS_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ "scheduled_for": "2026-06-22T14:00:00Z" }'
```

DELETE `/brands/:slug/posts/:id`

Delete a post (pending\_user only).

Responses

200 Deleted

Use your running CRUMBLESS\_API\_BASE\_URL and matching CRUMBLESS\_API\_TOKEN. [API setup](/docs/api)

```
curl -X DELETE \
  "$CRUMBLESS_API_BASE_URL/brands/:slug/posts/:id" \
  -H "Authorization: Bearer $CRUMBLESS_API_TOKEN"
```

---
Source: https://crumbless.app/docs/api/posts
