Skip to main content
All endpoints are prefixed with your COLOSSEUM_COPILOT_API_BASE (default: https://copilot.colosseum.com/api/v1). All requests require a Bearer token:

Rate limits

All limits are per-user (keyed by your Colosseum account). Exceeding a limit returns 429 with a Retry-After header. When rate limited (429), honor the Retry-After header. Most agent runtimes handle this automatically.

Endpoints

GET /colosseum_copilot/status

Auth pre-flight check. Call this first to verify your token is valid before making other API calls.
Response:

GET /colosseum_copilot/filters

Fetch available filters and canonical hackathon chronology. Use to translate hackathon or track names into valid slugs/keys before searching, and to get startDate values for chronology-sensitive answers.
Response includes:
  • tracks[]: { key, name, hackathonSlug, projectCount }
  • hackathons[]: { slug, name, startDate, projectCount, winnerCount } — ordered chronologically (oldest first)
  • acceleratorBatches[]: { key, name, companyCount }
  • prizeTypes[]: prize category names
  • prizePlacements[]: placement ranks
  • problemTags[]: { tag, count } (top 25 by frequency)
  • solutionTags[]: { tag, count } (top 25 by frequency)
  • primitives[]: { tag, count } (top 25 by frequency)
  • techStack[]: { tag, count } (top 25 by frequency)
  • targetUsers[]: { tag, count } (top 25 by frequency)
  • clusters[]: { key, label, projectCount } (key format v<N>-c<N>)
  • archiveSources[]: { key, label, documentCount? } (documentCount is optional)

POST /colosseum_copilot/search/projects

Primary similarity search for hackathon projects.
Recommended defaults: limit 8–12, includeFacets false. Request parameters: Filter parameters (filters object): Discover valid filter values via GET /filters. Facet parameters: Response: Result object (results[]): Facet bucket shape: { key, label, count, sampleProjectSlugs[] } Diagnostics object (when includeDiagnostics=true): Score interpretation: Scores reflect hybrid RRF fusion across vector, text, and semantic tag channels. Use relative ranking within a result set rather than absolute thresholds.

POST /colosseum_copilot/search/archives

Search archival documents for conceptual precedents. Auto-cascades through tiers (vector → chunk text → document text) when a tier returns no results.
Recommended defaults: limit 4–6, maxChunksPerDoc 2, minSimilarity 0.2. Request parameters: Response: Result object (results[]): Score interpretation: Similarity above 0.4 is a strong topical match. 0.2–0.4 is worth reading but verify relevance. Below 0.2 is usually tangential. These thresholds apply to vector tier results. For chunk_text and doc_text tiers, prioritize snippet relevance over score magnitude. Query tips:
  • Keep to 3–6 focused keywords. Too short is vague; too long dilutes embedding similarity.
  • If results are all pre-2010 for a modern query, re-query with ecosystem-specific terms.
  • If empty, try conceptual synonyms (e.g., "prediction markets""futarchy").

GET /colosseum_copilot/archives/:documentId

Fetch a paged archive document slice.
Parameters: Use offset + maxChars to page through long documents. Check hasMore and use nextOffset for the next page. Response:

GET /colosseum_copilot/projects/by-slug/:slug

Fetch full project details by slug.
Use for 1–2 top results when evidence from search results is insufficient. Response:

Cohort definition

The /analyze and /compare endpoints accept a shared cohort definition to scope which projects are included: All fields are optional. An empty cohort {} includes all projects.

POST /colosseum_copilot/analyze

Summarize tag/track distributions for a cohort.
Request parameters: Response:

POST /colosseum_copilot/compare

Compare two cohorts across the same dimensions.
Request parameters: Response: Comparison item shape:

GET /colosseum_copilot/clusters/:key

Fetch cluster details.
Response:

POST /colosseum_copilot/source-suggestions

Suggest a new source for the archive corpus.
Parameters: Response: 201 Created
Every submission is reviewed by the team. Approved sources are added to the archive pipeline.

POST /colosseum_copilot/feedback

Report errors, quality issues, or suggestions to help improve Copilot.
Parameters: Response: 201 Created
High and critical severity feedback is escalated to the team immediately.

Error handling

All errors return:
Server errors (5xx) also include a requestId field for log correlation when reporting issues. Some 5xx responses may use a more specific code derived from the server-side error class instead of INTERNAL_ERROR. Treat any 5xx with retryable: true as transient and include the requestId when reporting issues. For 429: check the Retry-After header for seconds to wait.