Skip to content

docs(partner-sdk): pages contradict each other on which fields accept -1 for unlimited #124

Description

Summary

The partner SDK reference pages disagree with each other about which numeric entitlement fields
accept -1 as an "unlimited" sentinel. A reader following one page gets a different mental model
than a reader following another.

The contradiction

docs/SDKs/partner-go.md:693 states it exclusively:

Every counter except CurrentAICredits floors at 0. Only CurrentAICredits accepts -1, meaning unlimited.

But docs/SDKs/partner-javascript.md:617 and docs/SDKs/partner-python.md:605 both document
a second field as accepting it:

maxUsers | number | Maximum users allowed (-1 = unlimited)

Both cannot be right. Testing against a live API confirms the Go page is the inaccurate one — at least
one field besides CurrentAICredits accepts -1 and returns 200.

The gap

Separately, no page states which numeric fields reject -1. maxStorage is documented only as:

maxStorage | number | Maximum storage in bytes

That line is not wrong, and no example tells a reader to send maxStorage: -1 — so nothing published
is actively broken. But given that neighbouring fields in the same table are annotated
(-1 = unlimited), a reader can reasonably infer the sentinel is universal across the numeric
entitlements. It is not: sending -1 for storage fails.

Suggested fix

Make the unlimited-sentinel rule explicit and consistent across all six partner SDK pages
(partner-{javascript,python,go,php,java,ruby}.md):

  • State per-field, in the entitlements table, whether -1 is accepted — rather than annotating
    some fields and leaving others ambiguous.
  • Correct the blanket claim in partner-go.md:693.
  • Explicitly note the fields where -1 is not valid, so the omission reads as deliberate
    rather than as an oversight.

Happy to supply the verified per-field matrix once the API side confirms the intended semantics —
there's a corresponding API-side issue open to pin those down.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions