Skip to content

docs: match Snowflake OAuth secret key casing returned by SYSTEM$SHOW_OAUTH_CLIENT_SECRETS - #226

Merged
qstearns merged 1 commit into
mainfrom
cursor/snowflake-oauth-secret-key-casing-2b68
Oct 23, 2026
Merged

qstearns merged 1 commit into
mainfrom
cursor/snowflake-oauth-secret-key-casing-2b68

Conversation

@simplesagar

Copy link
Copy Markdown
Member

Summary

The Snowflake guide's Copy the OAuth credentials step read lowercase JSON keys (secret_values:oauth_client_id). SYSTEM$SHOW_OAUTH_CLIENT_SECRETS actually returns uppercase keys:

{"OAUTH_CLIENT_SECRET_2":"…","OAUTH_CLIENT_SECRET":"…","OAUTH_CLIENT_ID":"…"}

Snowflake JSON element names are case-sensitive, so the old query did more than look inconsistent: it returned NULL for both credentials. The lowercase casing came from the function reference's output table, which lists the names in lowercase and has no sample output.

Changes

  • external.md: the query reads "OAUTH_CLIENT_ID" and "OAUTH_CLIENT_SECRET", and the copy steps name the uppercase result columns. The step also adds:
    • a recovery line for NULL cells,
    • a sanitized raw-output example,
    • a table mapping each Snowflake key to its Speakeasy field (OAUTH_CLIENT_SECRET_2 is marked not used).
  • research.md: the credential facts, field mapping table, walkthrough, and Speakeasy values now use the returned casing. Provenance records the casing source and notes the lowercase discrepancy in the function reference.
  • meta.yaml: adds the Snowflake Knowledge Base article as a provider-support source and re-stamps the function-reference and semi-structured-querying observations.

go/generated is not touched; the regen workflow syncs it after merge.

Sources

Verification

  • go run ./cmd/lint-guide ../guides/snowflake reports no findings, and the go/internal/gen generator succeeds (the same check as guide-validate CI).
  • No Snowflake account was available, so I ran the old and new queries in fakesnow, a DuckDB-backed Snowflake emulator, against the documented output string:
    • the old query returned (None, None);
    • the new query returned the client ID and primary secret under OAUTH_CLIENT_ID and OAUTH_CLIENT_SECRET.
  • Still open: confirming against a live Snowflake account.
Open in Web Open in Cursor 

Fixes AIM-683

SYSTEM$SHOW_OAUTH_CLIENT_SECRETS returns uppercase JSON keys
(OAUTH_CLIENT_SECRET_2, OAUTH_CLIENT_SECRET, OAUTH_CLIENT_ID), per
Snowflake's Knowledge Base sample output. The function reference lists
them in lowercase, and the guide copied that casing. Snowflake JSON
element names are case-sensitive, so the guide's lowercase paths
returned NULL for both credentials.

Read the uppercase keys, add a sanitized raw-output example and a
key-to-Speakeasy-field mapping, and record the new source in the dossier
and metadata.

Co-authored-by: Sagar Batchu <simplesagar@users.noreply.github.com>
@linear-code

linear-code Bot commented Oct 23, 2026

Copy link
Copy Markdown

AIM-683

@qstearns
qstearns merged commit 4588ae8 into main Oct 23, 2026
1 check passed
@qstearns
qstearns deleted the cursor/snowflake-oauth-secret-key-casing-2b68 branch October 23, 2026 01:13
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.

3 participants