Recommend
GET /api/recommend is the donor-influence surface. Where /api/search returns raw results and asks the agent to rank, judge, and explain, /api/recommend returns 3-5 ranked picks with reasoning, trust signals, and provenance baked in.
Use this endpoint when the user asks “where should I donate?” or “find me a credible nonprofit for X.” Use /api/search when the user asks “show me all nonprofits matching X.”
When to Use
Request
Parameters
At least one ofcause, country, or q must be present. Otherwise the endpoint returns 400.
Response
Response fields
Fallback Behaviour
When no curated recommendations exist for the query, the response is honest about it:Ranking Signals
The current weights (Phase 1) are documented publicly:
Editorial curation has the largest weight during Phase 1. The weight steps down once the consensus pathway scales (Phase 3).
Governance
The data behind this endpoint is curated under explicit governance phases:- Phase 1 (current): operator writes
recommended_for,why_recommended,best_next_actionmanually.editorial_curated: true. Speed matters more than scale. - Phase 2: agents draft, operator approves. Same restrained-language linter enforces guardrails.
- Phase 3: two-agent consensus. Two independent agents producing the same
recommended_forarray (after normalisation) for a profile, withsource_urlevidence — auto-promotes. Sensitive claims (impact, effectiveness) still require human review.
Restrained-language guardrails
The deterministic linter rejects ranking claims we don’t have an evaluation framework for:
This keeps GiveReady out of the editorial-rating game (Charity Navigator’s territory) and keeps the structural moat — open API, transparent ranking, machine-readable affordances — intact.
Telemetry
Every/api/recommend call is logged to the recommendation_attempts table with the query, response count, top slug, and ranking signals used. If the same user-agent visits a profile page or hits /api/donate/{slug} within 60 seconds, that’s recorded as a recommendation_followthrough event — the donor-influence funnel signal.
Related
- Search — for “show me all” queries.
- Nonprofits — for full profile after a recommendation lands.
- Arazzo workflow document — the structured equivalent of this page, including the
discover-via-recommendworkflow.