Skip to content

docs(api): publish per-plan limits and the codes refusals carry (PRO-2965) - #333

Open
prathamgarg911 wants to merge 2 commits into
mainfrom
pratham/pro-2965-error-semantics-docs
Open

prathamgarg911 wants to merge 2 commits into
mainfrom
pratham/pro-2965-error-semantics-docs

Conversation

@prathamgarg911

@prathamgarg911 prathamgarg911 commented Oct 26, 2026 •

Copy link
Copy Markdown
Contributor

What

The v2 error reference said "Contact founders@hydradb.com for current limit values" while the API refused requests against numbers published nowhere (reliability audit 2026-10-26, D-customer-journey Journey 3 and §3 row 12; C §8 gap G8-3). The v1 reference was live with no retirement notice and copy-paste curl to routes that answered a text/plain 404 (row 4).

Change

  • api-reference/v2/error-responses.mdx: a "Limits per plan" table (query, ingest, items, upload volume, context volume, monthly enrichment tokens, storage, connectors, the transport caps) at #limits-per-plan, which is the anchor the API's 413 messages link; a "what each refusal looks like" table; status rows for 402 (PLAN_LIMIT_REACHED, PAYMENT_REQUIRED, FREE_PLAN_DEPRECATED), 403 PLAN_UNRESOLVED, the JSON 404 NOT_FOUND for unknown paths, 410 ENDPOINT_RETIRED, 413 as a per-request allowance, Retry-After on every 429; the codes table and retry pattern updated to match; meta.api_version and detail in the envelope table.
  • api-reference/v2/index.mdx: status rows for 402/410/413, the rate-limits paragraph points at the table and explains Retry-After, and the "v1 endpoints remain available" line says what v1 does instead.
  • v1 pages (api-reference/index.mdx, error-responses.mdx, sdks.mdx, every api-reference/endpoint/*.mdx): one retirement notice through snippets/v1-retired.mdx; the two "contact founders@ for current limits" lines point at the table.

Companion

hydradb-application PR: https://github.com/hydra-db/hydradb-application/pull/2780 (PRO-2965: 402 for entitlement, 429 with Retry-After for velocity, 413 for size, 403 for an unresolved plan, JSON 404/410 for unknown and retired routes). The numbers in the table are the ones in application/internal/ratelimit/policy.go and domain/ingestion/models.go on staging (Ship context volume is 20,000 words after #2617).

Rollout notes

Publish together with, or after, the application PR: the table describes the refusals as that PR sends them. The v1 banner is accurate once that PR is in prod (today three v1 routes already answer 410 and three are aliased; the other sixteen still answer 404).

🤖 Generated with Claude Code


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need.

@mintlify

mintlify Bot commented Oct 26, 2026 •

Copy link
Copy Markdown
Contributor

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated
cortex-ai 🟢 Ready View Preview Oct 26, 2026, 4:42 PM

💡 Tip: Enable Automations to automatically generate PRs for you.

@github-actions

Copy link
Copy Markdown

✅ Mintlify Hygiene

No issues found.

@openhack-agent

openhack-agent Bot commented Oct 26, 2026 •

Copy link
Copy Markdown

✅ OpenHack Summary

Security review of docs(api): publish per-plan limits and the codes refusals carry (PRO-2965). 28 changed files; 0 findings at or above the low reporting threshold.

P1: Critical 0   P2: High 0   P3: Medium 0   P4: Low 0

Confidence Score: 5/5

No reportable security findings were detected in this scan.

Security merge-readiness rubric: 1 = critical, 2 = high, 3 = medium, 4 = low, 5 = no reportable findings. This score reflects scan findings, not a guarantee of correctness or complete coverage.

Files Needing Attention: None

Important Files Changed
  • api-reference/endpoint/add-memory.mdx (modified)
  • api-reference/endpoint/boolean-recall.mdx (modified)
  • api-reference/endpoint/create-tenant.mdx (modified)
  • api-reference/endpoint/delete-knowledge.mdx (modified)
  • api-reference/endpoint/delete-memory.mdx (modified)
  • api-reference/endpoint/delete-tenant.mdx (modified)
  • api-reference/endpoint/fetch-content.mdx (modified)
  • api-reference/endpoint/full-recall.mdx (modified)
  • api-reference/endpoint/graph-relations.mdx (modified)
  • api-reference/endpoint/infra-status.mdx (modified)
  • api-reference/endpoint/ingestion-overview.mdx (modified)
  • api-reference/endpoint/list-data.mdx (modified)
  • api-reference/endpoint/list-overview.mdx (modified)
  • api-reference/endpoint/list-sub-tenant-ids.mdx (modified)
  • api-reference/endpoint/list-tenant-ids.mdx (modified)
  • api-reference/endpoint/memories-overview.mdx (modified)
  • api-reference/endpoint/monitor-tenant.mdx (modified)
  • api-reference/endpoint/recall-overview.mdx (modified)
  • api-reference/endpoint/recall-preferences.mdx (modified)
  • api-reference/endpoint/tenants-overview.mdx (modified)
  • api-reference/endpoint/upload-knowledge.mdx (modified)
  • api-reference/endpoint/verify-processing.mdx (modified)
  • api-reference/error-responses.mdx (modified)
  • api-reference/index.mdx (modified)
  • api-reference/sdks.mdx (modified)

View all 28 changed files

Last reviewed commit: 8aa7e6d · View review on OpenHack


TIP: Mention @openhack-agent in a PR comment to request a review or ask a question. Use @openhack-agent fix all for every finding, or @openhack-agent fix unresolved threads for open review threads only.

@openhack-agent openhack-agent Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OpenHack reviewed this commit. See the OpenHack Summary for the confidence score and fix actions.

…2965)

The error reference said "Contact founders@hydradb.com for current limit
values" while the API refused requests against numbers published nowhere.
This publishes the per-plan limits table (query, ingest, items, upload
volume, context volume, monthly tokens, storage, connectors) and what each
refusal looks like, documents 402 PLAN_LIMIT_REACHED (monthly and storage
caps, with reset date and upgrade link), 403 PLAN_UNRESOLVED (a key whose
workspace has no plan on record), 410 ENDPOINT_RETIRED (retired v1 routes),
the JSON 404 for unknown paths, Retry-After on every 429, and the 413 as a
per-request allowance. Every v1 page carries a retirement notice naming the
v2 reference, through one snippet.

Companion to hydradb-application PRO-2965 (honest error semantics).

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Signed-off-by: Pratham Garg <pratham@hydradb.com>
@greptile-apps

greptile-apps Bot commented Oct 26, 2026 •

Copy link
Copy Markdown
Contributor

RetriggerView in GreptileConfidence Score: 5/5

[Low impact] The PR appears safe to merge alongside or after the companion application change, as planned.

Summary

The PR publishes plan limits and error codes, and adds a shared v1 retirement notice.

  • The v2 reference shows plan limits and what common refusals mean.
  • Raw HTTP retry examples honor the server's requested wait.
  • V1 reference pages show a retirement warning and point readers to v2.

Reviews (2) · Last reviewed commit: "docs(api): the raw fetch retry example w..." · Reviewed by Greptile

Comment thread api-reference/v2/error-responses.mdx Resolved
The retry pattern says to honour Retry-After on every 429, and the SDK
examples do through the SDKs; the raw fetch example still backed off 1, 2
and 4 seconds. It reads Retry-After (seconds or an HTTP-date) and falls back
to exponential backoff only when the server did not say.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Signed-off-by: Pratham Garg <pratham@hydradb.com>

This branch was successfully deployed

1 active deployment
staging — 8aa7e6d1 Deployed Oct 26, 2026 by mintlify[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants