Authorization header required. Responses are aggressively cacheable and never expose user_id, project_id, or any user-identifiable data. Derivative idea texts only appear when the underlying project has been explicitly published.
Get a canonical company
Returns aggregate stats for a canonical company by slug. Rate limit: 60 requests per minute per IP+slug pair.Canonical company slug (lowercase, kebab-case).
200 response
Canonical entity descriptor:
name, slug, domain, description, category.Total number of artifacts (research runs, build nodes, etc.) referencing this company.
Appearance counts grouped by
artifact_type.Up to 3 anonymized idea texts from public projects that reference this company. Each entry has
idea and created_at. Empty array when no published projects reference the entity.Up to 5 features that co-occur with this company in artifact links. Sorted by frequency.
Up to 5 other companies that co-occur with this one. Sorted by frequency.
ISO 8601 timestamp of the most recent canonical row update, or
null.Cache-Control: public, max-age=300, s-maxage=3600 — browsers cache for 5 minutes, shared caches for 1 hour.
Returns 404 if the slug does not exist.
Get a canonical feature
Returns aggregate stats for a canonical feature by slug. Slugs are not globally unique on features — when collisions exist, the most-referenced row wins. Rate limit: 60 requests per minute per IP+slug pair.Canonical feature slug.
200 response
Canonical feature descriptor:
name, slug, category, description.Total number of artifacts referencing this feature.
Appearance counts grouped by
artifact_type.Up to 3 anonymized idea texts from public projects that reference this feature.
Up to 10 companies that co-occur with this feature in artifact links. Sorted by frequency.
ISO 8601 timestamp of the most recent canonical reference, or
null.404 if the slug does not exist.
Get similar companies
Returns the top-N canonical companies most similar to{slug} by embedding cosine distance. Powers “see also” surfaces on company pages.
Rate limit: 60 requests per minute per IP+slug pair.
Canonical company slug.
Maximum number of similar companies to return. Clamped to the range
1..50.200 response
The canonical company slug that was queried.
Companies ranked by descending embedding cosine similarity to the target. Each entry has
slug, name, domain, similarity (cosine, 0..1, may be null if undefined), and evidence_count — the count of inbound artifact links for the candidate company so callers can rank by both similarity and corpus presence.Returns an empty array when the target company exists but has no embedding, or when no other embedded companies are available.Number of entries returned in
similar.Cache-Control: public, max-age=3600, s-maxage=3600 — cacheable for 1 hour at every tier.
Returns 404 if the slug does not exist.
Get feature decompositions
Returns the child features connected to{slug} via decomposes_into edges in the canonical knowledge graph. Useful for breaking a high-level capability into its constituent sub-features.
When multiple feature rows share the same slug (slugs are not globally unique on features), the most-referenced row is selected — matching the resolution rule used by Get a canonical feature.
Rate limit: 60 requests per minute per IP+slug pair.
Canonical feature slug.
Maximum number of child features to return. Clamped to the range
1..100.200 response
The canonical feature slug that was queried.
Child features ranked by
evidence_count descending, then weight descending, then name ascending. Each entry has slug, name, category, weight (edge weight, may be null), evidence_count (number of artifacts supporting the edge), and updated_at (ISO 8601 timestamp of the most recent edge update, or null).Returns an empty array when the parent feature exists but has no outgoing decomposes_into edges.Number of entries returned in
decompositions.Cache-Control: public, max-age=3600, s-maxage=3600 — cacheable for 1 hour at every tier.
Returns 404 if the slug does not exist.
Get the canonical sitemap
Returns every canonical company and feature slug along with its display name and last-updated timestamp. Used by the public site to generatesitemap.xml.
Rate limit: 30 requests per minute per IP.
200 response
All canonical companies with non-null slug. Each entry has
slug, name, and last_updated.Distinct canonical feature slugs, deduplicated by slug. Each entry has
slug, name, and last_updated.Cache-Control: public, max-age=3600, s-maxage=3600 — cacheable for 1 hour at every tier.