Create a prompt
/v1/promptsAdds a prompt to your brand, the same as Add prompt in the dashboard. The new prompt is active, and Lumirank asks it in the brand's next daily run.
A prompt counts once for each of its countries toward the prompt limit of your plan. All brands of the organization share this limit. A brand cannot have 2 prompts with the same text, in any status. So if a response is lost and you send the same request again, the prompt is not added twice: the 2nd request gets status 409 with the id of the prompt that the 1st request added.
Authorization
apiKey An API key that you create in the Lumirank dashboard, on the Settings > API keys page. Send it in the Authorization header: Bearer lr_....
In: header
Request Body
application/json
The prompt to add. Only text is required.
TypeScript Definitions
Use the request body type in TypeScript.
A new prompt for your brand.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/v1/prompts" \ -H "Content-Type: application/json" \ -d '{ "text": "What is the best CRM for a 5 person sales team?", "countries": [ "US", "GB" ], "intent": "comparison" }'prompt
{ "id": "a41e7c52-3d6b-4f0a-9c8e-1b2d3e4f5a60", "text": "What is the best CRM for a 5 person sales team?", "status": "active", "paused_reason": null, "countries": [ "US", "GB" ], "intent": "comparison", "language": null, "created_at": "2026-10-09T10:20:00Z", "updated_at": "2026-10-09T10:20:00Z"}List prompts GET
Returns the prompts of your brand, oldest first. By default the list has the active and paused prompts. To see the archived prompts, send `status=archived`. The list does not include numbers for each prompt. To get them, call the visibility report with `dimensions=prompt`.
Get a prompt GET
Returns 1 prompt of your brand, in any status. The id of another brand's prompt gets status `404`, the same as an id that does not exist.