---
title: "Parse a tracked-items CSV"
method: POST
path: "/api/crawl/settings/upload-csv"
tags: ["Crawl Settings"]
---

# Parse a tracked-items CSV

`POST /api/crawl/settings/upload-csv`

## Request

- Base URL: `https://api.xpoz.ai`
- URL: `https://api.xpoz.ai/api/crawl/settings/upload-csv`
- Auth: HTTP bearer

Parse a CSV (`platform,type,value,country`) into tracked items without saving. Max 5 MiB. Requires the `uploadCrawlSettingsCsv` flag.

## Response `200`

Parsed items.

- object
  - `success` true, required
  - `data` CrawlSettings, required: Tracked items per platform.
    - `twitter` object
      - `keywords` TrackedKeyword[]
        - union
          - string
          - object
            - `value` string, required
            - `country` string
      - `users` string[]
    - `instagram` object
      - `keywords` TrackedKeyword[]
        - union
          - string
          - object
            - `value` string, required
            - `country` string
      - `users` string[]
    - `reddit` object
      - `keywords` TrackedKeyword[]
        - union
          - string
          - object
            - `value` string, required
            - `country` string
      - `subreddits` string[]
      - `users` string[]
    - `tiktok` object
      - `keywords` TrackedKeyword[]
        - union
          - string
          - object
            - `value` string, required
            - `country` string
      - `users` string[]
      - `hashtags` string[]

## Other responses

- `400`: Query or body validation failed. `message` joins all validation issues with `, `.
- `401`: Missing or invalid credentials.
- `403`: Missing flag or plan limit exceeded.
- `500`: Server error.

---

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