{"components":{"securitySchemes":{"bearerAuth":{"scheme":"bearer","type":"http"}}},"info":{"description":"Public Causerie endpoints. A conversation is addressable only while its owner keeps the endpoint toggle enabled. Responses preserve the generation manifest used for replay.","title":"Causerie API","version":"2026-09-05"},"openapi":"3.1.0","paths":{"/v1/causeries":{"get":{"operationId":"listCauseries","responses":{"200":{"description":"Endpoint-enabled causeries"}},"security":[{"bearerAuth":[]}]},"post":{"description":"Creates and exposes a causerie inside a project allowed by the token.","operationId":"createCauserie","requestBody":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"project":{"maxLength":128,"minLength":1,"type":"string"},"title":{"maxLength":160,"minLength":1,"type":"string"}},"required":["project"],"type":"object"}}},"required":true},"responses":{"201":{"description":"New endpoint-enabled causerie"},"404":{"description":"Project outside the token scope"}},"security":[{"bearerAuth":[]}]}},"/v1/causeries/{id}":{"get":{"operationId":"getCauserie","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Causerie with messages and manifests"}},"security":[{"bearerAuth":[]}]}},"/v1/causeries/{id}/messages":{"post":{"description":"Creates a hosted OpenRouter turn. Supply Idempotency-Key or idempotencyKey to make retries safe.","operationId":"sendMessage","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string"}},{"in":"header","name":"Idempotency-Key","required":false,"schema":{"maxLength":128,"minLength":8,"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"content":{"maxLength":32000,"minLength":1,"type":"string"},"idempotencyKey":{"maxLength":128,"minLength":8,"type":"string"},"model":{"type":"string"},"parentId":{"type":["string","null"]},"reasoning":{"enum":["none","low","medium","high","xhigh"]}},"required":["content"],"type":"object"}}},"required":true},"responses":{"201":{"description":"Persisted user and assistant messages"},"400":{"description":"Invalid request or unsupported model"},"402":{"description":"Hosted credit or budget exhausted"},"409":{"description":"Active generation or idempotency conflict"}},"security":[{"bearerAuth":[]}]}}},"servers":[{"url":"https://causerie.sh"}]}