Skip to content

@W-24145098 - docs: document WIF admin REST API endpoints - #1895

Open
sushmasreedharan-tableau wants to merge 3 commits into
tableau:gh-pagesfrom
sushmasreedharan-tableau:dev/sreedharan/w-24145098-wif-admin-docs
Open

sushmasreedharan-tableau wants to merge 3 commits into
tableau:gh-pagesfrom
sushmasreedharan-tableau:dev/sreedharan/w-24145098-wif-admin-docs

Conversation

@sushmasreedharan-tableau

@sushmasreedharan-tableau sushmasreedharan-tableau commented Oct 21, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Documents the new server.auth_federation endpoint added to tableauserverclient in PR #1894 (on main). Companion to the already-merged connection-field docs in PR #1892 (W-24145082).

  • New top-level section Auth Federation in docs/api-ref.md, placed between Authentication and Connections (alphabetical with the existing sidebar).
  • Documents AuthFederationItem, AuthFederationConnectorItem, and AuthFederationKeyItem class attributes.
  • Documents the 12 endpoint methods — config: get, enable, update, delete; connectors: create_connector, list_connectors, get_connector, delete_connector; keys: create_key, activate_key, deactivate_key, delete_key. Each method has signature, version note, parameter table, return type, exceptions where relevant, and example.
  • Captures server behavior callers cannot derive from the signature: per-method 403 / 404 semantics, PAT and password sessions bypass NO_ACCESS while scoped sessions see 401, orphan-key risk when create_key is called before enable, safe-rotation order (create_key -> activate_key(new) -> delete_key(old)), and client-side UUID validation that raises ValueError on malformed ids before any HTTP call.
  • _includes/docs_menu.html: adds an Auth Federation entry to the API Reference sidebar between Authentication and Connections.

Requires REST API 3.30+ (Tableau Server release 26.3) and the WIF feature enabled on the site; the server returns 403 otherwise, including on get().

Pair PR: #1894 - @W-24145098 - Add Workload Identity Federation (WIF) admin REST API
GUS: W-24145098

🤖 Generated with Claude Code

Documents the new server.auth_federation endpoint added in PR tableau#1894 on the
tableau/server-client-python main branch.

- New top-level section 'Auth Federation' in docs/api-ref.md, between
  'Authentication' and 'Connections'. Documents:
  - AuthFederationItem, AuthFederationConnectorItem, AuthFederationKeyItem
    class attribute tables.
  - 12 endpoint methods: get, enable, update, delete; create_connector,
    list_connectors, get_connector, delete_connector; create_key,
    activate_key, deactivate_key, delete_key.
  - Signature, parameters, return type, and example per method.
  - Server behavior notes callers can't derive from the signature:
    per-method 403/404 semantics, PAT/scope acceptance, orphan-key risk
    when create_key runs before enable, safe-rotation order for keys,
    and client-side UUID validation that raises ValueError on malformed
    ids before any HTTP call.
- _includes/docs_menu.html: adds an 'Auth Federation' entry in the API
  Reference sidebar between 'Authentication' and 'Connections'.

Requires REST API 3.30+ (Tableau Server release 26.3) and the WIF
feature enabled on the site; the server returns 403 otherwise, including
on get().

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
The code PR's docstring + CHANGELOG now clarify that the old key must be
retained in the site's JWKS until every JWT it signed has expired, and
only then deleted. The previous `create_key() -> activate_key(new) ->
delete_key(old)` sequence skipped that retain step; deleting the old key
immediately removes it from the JWKS and verifiers that fetch the key
set afterwards reject the still-valid tokens signed with it. Updated
the `auth_federation.delete_key` section here to match.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Code PR dropped the activate_key chain from `delete_key` and refocused
the docstring on the delete-vs-deactivate distinction (both stop new
signing with the key, but delete also pulls it from the JWKS, breaking
verification for still-unexpired tokens). Mirror that framing here.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

This branch has not been deployed

No deployments
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