# Submit a post

Submits a post.

```http
POST https://api.pozy.ai/public/creator-campaigns/{token}/submissions
```

- Area: Creators / Creator Portal
- Auth: none (public endpoint)

## Path parameters

- `token` (string, required)

## Request body

Content type: `application/json`

- `url`, string, required: 1 to 2048 characters

## Example request

```bash
curl -X POST "https://api.pozy.ai/public/creator-campaigns/string/submissions" \
  -H "Content-Type: application/json" \
  -d '{
  "url": "https://pozy.ai/media/example-1.jpg"
}'
```

```ts
const res = await fetch("https://api.pozy.ai/public/creator-campaigns/string/submissions", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({
    url: "https://pozy.ai/media/example-1.jpg"
  }),
});
const data = await res.json();
if (!res.ok) throw new Error(data?.error ?? `Request failed with status ${res.status}`);
console.log(data);
```

```python
import os
import requests

resp = requests.post(
    "https://api.pozy.ai/public/creator-campaigns/string/submissions",
    json={
        "url": "https://pozy.ai/media/example-1.jpg",
    },
    timeout=30,
)
resp.raise_for_status()
print(resp.json())
```

## Response 201

- `submission`, object, required
  - `id`, string, required
  - `platform`, string, required
  - `postId`, string, required
  - `url`, string, required: Can be null
  - `status`, string, required: One of `received`, `tracking`, `pending_review`, `approved`, `rejected`, `expired`, `withdrawn`
  - `submittedAt`, string (date-time), required
  - `publishedAt`, string (date-time), required: Can be null
  - `views`, integer, required
  - `earnedCents`, integer, required
  - `rejectReason`, string, required: Can be null
  - `flags`, array of string, required: Each item: one of `unreachable`, `post_deleted`, `duplicate_post`, `under_review`
  - `trackingEndsAt`, string (date-time), required: Can be null

```json
{
  "submission": {
    "id": "6bfebd43ddc270f6d2c56fc5",
    "platform": "instagram",
    "postId": "6108a2cc742cb4e991051e0c",
    "url": "https://pozy.ai/media/example-1.jpg",
    "status": "received",
    "submittedAt": "2026-10-02T09:00:00.000Z",
    "publishedAt": "2026-10-02T09:00:00.000Z",
    "views": 1,
    "earnedCents": 1,
    "rejectReason": "string",
    "flags": [
      "unreachable"
    ],
    "trackingEndsAt": "2026-10-02T09:00:00.000Z"
  }
}
```
