One conversational turn. The chat surface uses this.
One turn: an answer about hooks or the tool (action "answer", no credits), one clarifying question (action "clarify"), or a started run (action "research", with the run in run, reserving credits like POST /v1/research). A deck size typed into the message ("..., 15 hooks") and a recency phrase ("this month", "last week") set the run's count and posted_within_days; the body's posted_within_days (the recency chip) wins over the phrase and is kept on the conversation for later turns (an explicit null clears it); seed_hook_ids applies to this turn's research ("find more like these"); count sets how many hooks a run this turn starts delivers (a size typed into the message wins). Asked to make one of the conversation's hooks yours for a niche ("make hook 2 mine for dentists"), the turn writes lines from that hook's structure (1 credit, like POST /v1/hooks/{hook_id}/remix) and answers with them labelled, the result in remix. Every response includes suggestions (0 to 4 follow-ups, [] for research). Each turn is a model call, so turns are limited per account per hour. 503 model_unavailable when the model is down; nothing is charged then. Needs write, and research for a turn that starts a run (403 insufficient_scope before anything is reserved). MCP: chat.
Request
- Base URL: https://api.hookdetector.com (the document declares no server; this is the origin it was published from)
- URL: https://api.hookdetector.com/v1/chat
- Auth: none declared
Headers
retry safely: the same key and body within 24 hours answer the first turn again (its conversation, its answer, its run or its remix): no model call, no new message, nothing charged. The same key with another body is 422 idempotency_key_reused
Bearer hd_... from POST /v1/accounts or POST /v1/keys
Request body
Example request
{
"message": "hooks about cold plunge recovery",
"language": "Moroccan Darija",
"country": "MA",
"platforms": [
"instagram"
]
}Response
Successful Response
Example response
{
"action": "research",
"conversation_id": "5e6f7a8b-9c0d-4e1f-8a2b-3c4d5e6f7a8b",
"message": "Researching cold plunge recovery.",
"run": {
"created_at": "2026-09-23T10:00:00.000000+00:00",
"credits_reserved": 200,
"requested": 10,
"run_id": "8f1c2d3e-4b5a-4c6d-8e7f-9a0b1c2d3e4f",
"status": "queued",
"topic": "cold plunge recovery"
},
"suggestions": []
}Changes
No recorded changes to this operation across all 1 revision of this API.