Anonymous recommendations. No memory, no shelf. Perfect for one-off asks.
session_id for follow-ups./recommend/more with exclude_book_ids for more under the same ask.Preserve constraint words exactly: no, not, only, avoid, without, must, under, beginner, advanced.
If constraint_check.failed is non-empty, never claim that title satisfies the failed constraint.
If recommendation.zero_result is true, show the refinement chips. Never silently relax a hard constraint.
Allow up to 90 seconds. A real failure is HTTP 503 with spine_timeout — honor Retry-After.
POST https://pagecompass.onrender.com/agent/v1/recommend
Content-Type: application/json
{
"query": "cozy mystery under 350 pages, no graphic violence"
}
Present recommendation.primary first, then alternatives in order.