Skip to main content
POST
Bulk Upload Prompts
Uploads a CSV file containing multiple prompts. Each row creates a prompt and optionally triggers an immediate query run. The upload is processed asynchronously.
This endpoint uses multipart/form-data instead of JSON.

Parameters

string
required
Bearer token. Format: Bearer slat_<your-token>.
string
required
Unique key for this upload. Maximum 160 visible ASCII characters, no spaces. If you retry with the same key, the API returns the original job instead of creating a new one.
file
required
CSV file containing prompts. Maximum 32 MiB, UTF-8 encoded. Each row should include at least a prompt text column and a topic name column.
string[]
required
AI platforms to query for all uploaded prompts. One or more of: CHATGPT, PERPLEXITY, GOOGLE_AI_OVERVIEW, GOOGLE_AI_MODE, GEMINI, CLAUDE.
string
Cron expression applied to all uploaded prompts.
string
Timezone for the cron schedule. Default: UTC.
number
Brand ID to assign to all uploaded prompts.
boolean
Whether the uploaded prompts should be active. Default: true.
boolean
Whether to immediately trigger query runs for uploaded prompts. Default: true.
integer
Column index (0-based) for the prompt text in the CSV. Default: auto-detected.
integer
Column index (0-based) for the topic name in the CSV. Default: auto-detected. Must differ from promptColumnIndex.
boolean
Whether the CSV file has a header row. Default: true.
string
ISO 3166-1 alpha-2 country code applied to all uploaded prompts (e.g., US).

Response

Returns 202 Accepted. The upload job is queued for processing.
number
required
Unique identifier for the upload job.
string
required
Job status. PENDING for newly created jobs.
string
required
Storage key for the uploaded file.

Example

Response

Status codes

What’s next