Skip to content

Follow version 2026-10-16 of the API document - #138

Merged
Gorka Gonzalo (d0ubl3g) merged 1 commit into
devfrom
feat/spec-2026-10-16
Oct 12, 2026
Merged

Gorka Gonzalo (d0ubl3g) merged 1 commit into
devfrom
feat/spec-2026-10-16

Conversation

@d0ubl3g

Copy link
Copy Markdown
Contributor

Follow version 2026-10-16 of the published /v1 document.

  • openapi/v1.json: the document as the API publishes it (2026-10-16, 12 operations); hash and version recorded in xtask and openapi/README.md.
  • Generator (xtask):
    • the X-HS-Tenant header parameter is not part of a generated function; it marks the operation as tenant-scoped, which replaces the path rule. Any other header parameter is still an error.
    • x-hs-known-values, x-hs-deprecated-values and x-hs-deprecated-values-sunset are read from the parameter's schema, where the document puts them, then from the parameter itself.
    • Deprecated values and their sunset are emitted with each operation.
    • An object declared open (additionalProperties: true) stays a JSON map, so the error details keep every key.
  • Client: regenerated. Existing types only gain fields; none is removed or retyped. The tenant listing is now a generated operation, and the portfolio module uses it. Sign-in requests the same scopes as before.
  • CLI: the alert --severity filter lists its values in --help and warns about an unlisted or deprecated value. For the four deprecated values the warning names the replacement (alto → high). A test keeps that small table equal to the document's deprecated list, and the table goes after the sunset on 2027-01-14. Values are still sent as typed, and exit codes do not change.
  • CHANGELOG: one entry in Unreleased.

The document declares these filters as open vocabularies (known values, not an enum), so an unlisted value is warned about and sent, not refused.

Refs #53

Vendor the published /v1 document (2026-10-16) and regenerate the client.

- The generator accepts the X-HS-Tenant header parameter: it is not part
  of the generated function, and it marks the operation as tenant-scoped
  (replacing the path rule). Any other header parameter is still an error.
- x-hs-known-values, x-hs-deprecated-values and
  x-hs-deprecated-values-sunset are read from the parameter's schema,
  where the document puts them, and then from the parameter itself.
  Deprecated values and their sunset are emitted with each operation.
- An object declared open (additionalProperties: true) stays a JSON map,
  so error details keep every key.
- The tenant listing is now a generated operation; the portfolio module
  uses it, and sign-in does not ask for its scope.
- The alert severity filter warns about a deprecated value using the
  document's list and sunset. The four replacements stay in a small table,
  checked against the document's deprecated values by a test, until the
  sunset on 2027-01-14.

Refs #53

Signed-off-by: d0ubl3g <48954024+d0ubl3g@users.noreply.github.com>
@d0ubl3g
Gorka Gonzalo (d0ubl3g) merged commit e355837 into dev Oct 12, 2026
14 checks passed
@d0ubl3g
Gorka Gonzalo (d0ubl3g) deleted the feat/spec-2026-10-16 branch October 12, 2026 01:59
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.

1 participant