Skip to main content

Prerequisites

  • A PromptForge API key (set as PROMPTFORGE_API_KEY)
  • curl or any HTTP client

Step 1 — Init a job

Call /v1/jobs/init with your target provider and model. This creates the job and returns a signed URL to upload your prompts file.
Response:
The upload_url expires in 15 minutes. Upload your file before it expires.

Step 2 — Create your prompts file

Each line in the file is one prompt in JSONL format:
prompts.jsonl
  • prompt_id — your identifier, returned with results (any string, must be unique per file)
  • prompt — the text sent to the LLM

Step 3 — Upload the file

PUT the file directly to the signed URL. Do not add auth headers here — the URL is pre-signed.
curl
A 200 OK response means the upload succeeded and processing will start automatically within seconds.

Step 4 — Poll for status

curl
Response while processing:
Poll until status is COMPLETED or FAILED. Recommended interval: every 5–10 seconds.

Step 5 — Fetch results

curl
Response:
Download each file from its signed URL. Each line in results_part_NNN.jsonl looks like:
Signed result URLs expire in 60 minutes. Download your files promptly after fetching them.

Supported providers and models