Skip to content

docs: update sdks #3712

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 8 commits into from
Aug 1, 2025
Merged

docs: update sdks #3712

merged 8 commits into from
Aug 1, 2025

Conversation

chronark
Copy link
Collaborator

@chronark chronark commented Aug 1, 2025

What does this PR do?

Fixes # (issue)

If there is not an issue for this, please create one first. This is used to tracking purposes and also helps use understand why this PR exists

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • Chore (refactoring code, technical debt, workflow improvements)
  • Enhancement (small improvements)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update

How should this be tested?

  • Test A
  • Test B

Checklist

Required

  • Filled out the "How to test" section in this PR
  • Read Contributing Guide
  • Self-reviewed my own code
  • Commented on my code in hard-to-understand areas
  • Ran pnpm build
  • Ran pnpm fmt
  • Checked for warnings, there are none
  • Removed all console.logs
  • Merged the latest changes from main onto my branch with git pull origin main
  • My changes don't cause any responsiveness issues

Appreciated

  • If a UI change was made: Added a screen recording or screenshots to this PR
  • Updated the Unkey Docs if changes were necessary

Summary by CodeRabbit

  • Documentation
    • Added new API documentation for Go, Python, and TypeScript SDKs, including installation and usage examples.
    • Updated TypeScript and Next.js SDK docs to require a root key for authentication and improved installation instructions.
    • Removed numerous detailed SDK endpoint documentation pages for TypeScript and Python, including guides for keys, identities, permissions, ratelimits, migrations, and analytics.
    • Simplified and restructured SDK documentation navigation for improved clarity.
    • Reformatted documentation configuration for better readability.

Copy link

changeset-bot bot commented Aug 1, 2025

⚠️ No Changeset found

Latest commit: 137ac8d

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

Copy link

vercel bot commented Aug 1, 2025

The latest updates on your projects. Learn more about Vercel for Git ↗︎

2 Skipped Deployments
Name Status Preview Comments Updated (UTC)
dashboard ⬜️ Ignored (Inspect) Visit Preview Aug 1, 2025 1:47pm
engineering ⬜️ Ignored (Inspect) Visit Preview Aug 1, 2025 1:47pm

Copy link
Contributor

coderabbitai bot commented Aug 1, 2025

Warning

Rate limit exceeded

@chronark has exceeded the limit for the number of commits or files that can be reviewed per hour. Please wait 15 minutes and 2 seconds before requesting another review.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

📥 Commits

Reviewing files that changed from the base of the PR and between 61a8bfd and 137ac8d.

📒 Files selected for processing (4)
  • apps/docs/docs.json (1 hunks)
  • apps/docs/libraries/py/api.mdx (1 hunks)
  • apps/docs/libraries/ts/hono.mdx (7 hunks)
  • apps/docs/libraries/ts/nextjs.mdx (2 hunks)
📝 Walkthrough

Walkthrough

This change restructures the SDK documentation navigation and content for Unkey. It deletes numerous detailed SDK documentation files for TypeScript and Python, replacing them with simplified overview and API documentation for Go, Python, and TypeScript SDKs. The navigation JSON is reformatted for readability and updated to reflect the new documentation structure.

Changes

Cohort / File(s) Change Summary
Navigation Structure & Formatting
apps/docs/docs.json
Reformatted all JSON arrays to multiline style for readability. The "SDKs" section is restructured: detailed nested TypeScript, Go, and Python SDK documentation entries are replaced with simplified, higher-level entries reflecting a new, flatter directory structure. Community libraries' arrays are also reformatted.
Go SDK Documentation
apps/docs/libraries/go/api.mdx, apps/docs/libraries/go/overview.mdx
Adds a new Go SDK API documentation file with installation and usage examples. Deletes the previous Go SDK overview, which included installation, usage, and error handling details.
Python SDK Documentation
apps/docs/libraries/py/api.mdx, apps/docs/libraries/py/overview.mdx, apps/docs/libraries/py/async.mdx, apps/docs/libraries/py/services/apis.mdx, apps/docs/libraries/py/services/identities.mdx, apps/docs/libraries/py/services/keys.mdx, apps/docs/libraries/py/services/migrations.mdx, apps/docs/libraries/py/services/permissions.mdx, apps/docs/libraries/py/services/ratelimits.mdx
Adds a new Python SDK API documentation file with installation and usage examples. Deletes the previous comprehensive overview, async usage, and all detailed service documentation files (apis, identities, keys, migrations, permissions, ratelimits).
TypeScript SDK Documentation – New/Updated
apps/docs/libraries/ts/api.mdx, apps/docs/libraries/ts/hono.mdx, apps/docs/libraries/ts/nextjs.mdx
Adds a new TypeScript SDK API documentation file. Updates the Hono and Next.js middleware documentation to use rootKey instead of apiId, improves formatting, expands installation instructions, and removes telemetry and some error documentation.
TypeScript SDK Documentation – Deleted
apps/docs/libraries/ts/sdk/overview.mdx, apps/docs/libraries/ts/sdk/analytics/get.mdx, apps/docs/libraries/ts/sdk/apis/create.mdx, apps/docs/libraries/ts/sdk/apis/delete.mdx, apps/docs/libraries/ts/sdk/apis/get.mdx, apps/docs/libraries/ts/sdk/apis/list-keys.mdx, apps/docs/libraries/ts/sdk/identities/create-identity.mdx, apps/docs/libraries/ts/sdk/identities/delete-identity.mdx, apps/docs/libraries/ts/sdk/identities/get-identity.mdx, apps/docs/libraries/ts/sdk/identities/list-identity.mdx, apps/docs/libraries/ts/sdk/identities/update-identity.mdx, apps/docs/libraries/ts/sdk/keys/add-permission.mdx, apps/docs/libraries/ts/sdk/keys/add-roles.mdx, apps/docs/libraries/ts/sdk/keys/create.mdx, apps/docs/libraries/ts/sdk/keys/delete.mdx, apps/docs/libraries/ts/sdk/keys/get.mdx, apps/docs/libraries/ts/sdk/keys/remove-permission.mdx, apps/docs/libraries/ts/sdk/keys/remove-roles.mdx, apps/docs/libraries/ts/sdk/keys/set-permission.mdx, apps/docs/libraries/ts/sdk/keys/set-roles.mdx, apps/docs/libraries/ts/sdk/keys/update-remaining.mdx, apps/docs/libraries/ts/sdk/keys/update.mdx, apps/docs/libraries/ts/sdk/keys/verifications.mdx, apps/docs/libraries/ts/sdk/keys/verify.mdx, apps/docs/libraries/ts/sdk/migrations/migrate-to-unkey.mdx, apps/docs/libraries/ts/sdk/permissions/create-permission.mdx, apps/docs/libraries/ts/sdk/permissions/create-role.mdx, apps/docs/libraries/ts/sdk/permissions/delete-permission.mdx, apps/docs/libraries/ts/sdk/permissions/delete-role.mdx, apps/docs/libraries/ts/sdk/permissions/get-permission.mdx, apps/docs/libraries/ts/sdk/permissions/get-role.mdx, apps/docs/libraries/ts/sdk/ratelimits/limit.mdx, apps/docs/libraries/ts/sdk/ratelimits/overrides/delete-override.mdx, apps/docs/libraries/ts/sdk/ratelimits/overrides/get-override.mdx, apps/docs/libraries/ts/sdk/ratelimits/overrides/list-overrides.mdx, apps/docs/libraries/ts/sdk/ratelimits/overrides/set-override.mdx
Deletes the comprehensive TypeScript SDK overview and all detailed endpoint documentation for analytics, apis, identities, keys, migrations, permissions, and ratelimits, including all sub-features and override endpoints.

Sequence Diagram(s)

sequenceDiagram
    participant User
    participant DocsSite
    participant SDKDocs (Go/Python/TS)

    User->>DocsSite: Navigate to SDK documentation
    DocsSite->>SDKDocs: Display high-level API/overview docs (Go/Python/TS)
    SDKDocs-->>User: Show installation, usage, and repo links
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~15–20 minutes

Possibly related PRs

Suggested labels

Documentation

Suggested reviewers

  • perkinsjr
  • mcstepp
  • MichaelUnkey
  • ogzhanolguncu
✨ Finishing Touches
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch 08-01-docs_update_sdks

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Explain this complex logic.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai explain this code block.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and explain its main purpose.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR.
  • @coderabbitai generate sequence diagram to generate a sequence diagram of the changes in this PR.
  • @coderabbitai generate unit tests to generate unit tests for this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

Copy link
Collaborator Author

chronark commented Aug 1, 2025

This stack of pull requests is managed by Graphite. Learn more about stacking.

Copy link
Contributor

github-actions bot commented Aug 1, 2025

Thank you for following the naming conventions for pull request titles! 🙏

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 6

🔭 Outside diff range comments (2)
apps/docs/libraries/ts/hono.mdx (2)

55-57: Placeholder ellipsis in sample code

const ... = c.get("unkey") is not valid code and will confuse readers. Replace with a real variable name (e.g. const auth = c.get("unkey")) or remove the assignment.


123-124: Broken link to removed path

/libraries/ts/sdk/keys/verify#response was deleted in this PR. Update the reference to the new consolidated docs or remove it to avoid a 404.

📜 Review details

Configuration used: CodeRabbit UI
Review profile: ASSERTIVE
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between f4d9f79 and 61a8bfd.

📒 Files selected for processing (51)
  • apps/docs/docs.json (7 hunks)
  • apps/docs/libraries/go/api.mdx (1 hunks)
  • apps/docs/libraries/go/overview.mdx (0 hunks)
  • apps/docs/libraries/py/api.mdx (1 hunks)
  • apps/docs/libraries/py/async.mdx (0 hunks)
  • apps/docs/libraries/py/overview.mdx (0 hunks)
  • apps/docs/libraries/py/services/apis.mdx (0 hunks)
  • apps/docs/libraries/py/services/identities.mdx (0 hunks)
  • apps/docs/libraries/py/services/keys.mdx (0 hunks)
  • apps/docs/libraries/py/services/migrations.mdx (0 hunks)
  • apps/docs/libraries/py/services/permissions.mdx (0 hunks)
  • apps/docs/libraries/py/services/ratelimits.mdx (0 hunks)
  • apps/docs/libraries/ts/api.mdx (1 hunks)
  • apps/docs/libraries/ts/hono.mdx (7 hunks)
  • apps/docs/libraries/ts/nextjs.mdx (2 hunks)
  • apps/docs/libraries/ts/sdk/analytics/get.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/apis/create.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/apis/delete.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/apis/get.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/apis/list-keys.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/identities/create-identity.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/identities/delete-identity.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/identities/get-identity.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/identities/list-identity.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/identities/update-identity.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/keys/add-permission.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/keys/add-roles.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/keys/create.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/keys/delete.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/keys/get.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/keys/remove-permission.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/keys/remove-roles.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/keys/set-permission.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/keys/set-roles.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/keys/update-remaining.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/keys/update.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/keys/verifications.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/keys/verify.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/migrations/migrate-to-unkey.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/overview.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/permissions/create-permission.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/permissions/create-role.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/permissions/delete-permission.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/permissions/delete-role.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/permissions/get-permission.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/permissions/get-role.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/ratelimits/limit.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/ratelimits/overrides/delete-override.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/ratelimits/overrides/get-override.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/ratelimits/overrides/list-overrides.mdx (0 hunks)
  • apps/docs/libraries/ts/sdk/ratelimits/overrides/set-override.mdx (0 hunks)
💤 Files with no reviewable changes (45)
  • apps/docs/libraries/py/async.mdx
  • apps/docs/libraries/ts/sdk/keys/delete.mdx
  • apps/docs/libraries/ts/sdk/ratelimits/overrides/set-override.mdx
  • apps/docs/libraries/ts/sdk/permissions/create-role.mdx
  • apps/docs/libraries/ts/sdk/ratelimits/overrides/delete-override.mdx
  • apps/docs/libraries/ts/sdk/apis/delete.mdx
  • apps/docs/libraries/ts/sdk/identities/delete-identity.mdx
  • apps/docs/libraries/py/services/ratelimits.mdx
  • apps/docs/libraries/ts/sdk/apis/create.mdx
  • apps/docs/libraries/ts/sdk/permissions/delete-permission.mdx
  • apps/docs/libraries/ts/sdk/permissions/delete-role.mdx
  • apps/docs/libraries/ts/sdk/permissions/get-role.mdx
  • apps/docs/libraries/ts/sdk/apis/get.mdx
  • apps/docs/libraries/ts/sdk/ratelimits/overrides/list-overrides.mdx
  • apps/docs/libraries/py/services/permissions.mdx
  • apps/docs/libraries/ts/sdk/identities/list-identity.mdx
  • apps/docs/libraries/ts/sdk/ratelimits/overrides/get-override.mdx
  • apps/docs/libraries/py/services/migrations.mdx
  • apps/docs/libraries/ts/sdk/identities/create-identity.mdx
  • apps/docs/libraries/go/overview.mdx
  • apps/docs/libraries/ts/sdk/keys/remove-roles.mdx
  • apps/docs/libraries/ts/sdk/keys/set-roles.mdx
  • apps/docs/libraries/py/services/identities.mdx
  • apps/docs/libraries/ts/sdk/keys/add-roles.mdx
  • apps/docs/libraries/ts/sdk/keys/add-permission.mdx
  • apps/docs/libraries/py/services/apis.mdx
  • apps/docs/libraries/ts/sdk/permissions/get-permission.mdx
  • apps/docs/libraries/ts/sdk/permissions/create-permission.mdx
  • apps/docs/libraries/ts/sdk/keys/verifications.mdx
  • apps/docs/libraries/ts/sdk/keys/remove-permission.mdx
  • apps/docs/libraries/ts/sdk/keys/update-remaining.mdx
  • apps/docs/libraries/ts/sdk/keys/get.mdx
  • apps/docs/libraries/ts/sdk/keys/set-permission.mdx
  • apps/docs/libraries/ts/sdk/identities/update-identity.mdx
  • apps/docs/libraries/ts/sdk/ratelimits/limit.mdx
  • apps/docs/libraries/py/services/keys.mdx
  • apps/docs/libraries/ts/sdk/identities/get-identity.mdx
  • apps/docs/libraries/ts/sdk/analytics/get.mdx
  • apps/docs/libraries/ts/sdk/migrations/migrate-to-unkey.mdx
  • apps/docs/libraries/ts/sdk/apis/list-keys.mdx
  • apps/docs/libraries/ts/sdk/overview.mdx
  • apps/docs/libraries/ts/sdk/keys/verify.mdx
  • apps/docs/libraries/ts/sdk/keys/create.mdx
  • apps/docs/libraries/ts/sdk/keys/update.mdx
  • apps/docs/libraries/py/overview.mdx
🧰 Additional context used
🧠 Learnings (19)
📓 Common learnings
Learnt from: Flo4604
PR: unkeyed/unkey#3421
File: go/apps/api/openapi/openapi.yaml:196-200
Timestamp: 2025-07-03T05:58:10.699Z
Learning: In the Unkey codebase, OpenAPI 3.1 is used, which allows sibling keys (such as `description`) alongside `$ref` in schema objects. Do not flag this as an error in future reviews.
Learnt from: CR
PR: unkeyed/unkey#0
File: go/deploy/CLAUDE.md:0-0
Timestamp: 2025-07-21T18:05:58.236Z
Learning: Applies to go/deploy/**/*.{go,js,ts,tsx,py,sh,md,txt,json,yaml,yml,ini,env,conf,html,css,scss,xml,c,h,cpp,java,rb,rs,php,pl,sql} : Update relevant anchors when modifying associated code.
📚 Learning: in the go/cmd/cli/commands/deploy/ directory, ogzhanolguncu prefers to keep potentially temporary fe...
Learnt from: ogzhanolguncu
PR: unkeyed/unkey#3564
File: go/cmd/cli/commands/deploy/flags.go:17-20
Timestamp: 2025-07-15T14:45:18.920Z
Learning: In the go/cmd/cli/commands/deploy/ directory, ogzhanolguncu prefers to keep potentially temporary features (like UNKEY_DOCKER_REGISTRY environment variable) undocumented in help text if they might be deleted in the future, to avoid documentation churn.

Applied to files:

  • apps/docs/libraries/go/api.mdx
📚 Learning: applies to go/deploy/**/*.{go,js,ts,tsx,py,sh,md,txt,json,yaml,yml,ini,env,conf,html,css,scss,xml,c,...
Learnt from: CR
PR: unkeyed/unkey#0
File: go/deploy/CLAUDE.md:0-0
Timestamp: 2025-07-21T18:05:58.236Z
Learning: Applies to go/deploy/**/*.{go,js,ts,tsx,py,sh,md,txt,json,yaml,yml,ini,env,conf,html,css,scss,xml,c,h,cpp,java,rb,rs,php,pl,sql} : Update relevant anchors when modifying associated code.

Applied to files:

  • apps/docs/docs.json
📚 Learning: in the unkey codebase, openapi 3.1 is used, which allows sibling keys (such as `description`) alongs...
Learnt from: Flo4604
PR: unkeyed/unkey#3421
File: go/apps/api/openapi/openapi.yaml:196-200
Timestamp: 2025-07-03T05:58:10.699Z
Learning: In the Unkey codebase, OpenAPI 3.1 is used, which allows sibling keys (such as `description`) alongside `$ref` in schema objects. Do not flag this as an error in future reviews.

Applied to files:

  • apps/docs/libraries/ts/api.mdx
  • apps/docs/libraries/ts/nextjs.mdx
  • apps/docs/libraries/ts/hono.mdx
📚 Learning: the codebase for unkey allows the use of modern javascript features like array.prototype.tosorted() ...
Learnt from: ogzhanolguncu
PR: unkeyed/unkey#3242
File: apps/dashboard/app/(app)/apis/[apiId]/keys/[keyAuthId]/[keyId]/components/table/hooks/use-logs-query.ts:228-231
Timestamp: 2025-05-15T16:21:50.911Z
Learning: The codebase for Unkey allows the use of modern JavaScript features like Array.prototype.toSorted() even though they may not be supported in all browsers.

Applied to files:

  • apps/docs/libraries/ts/api.mdx
  • apps/docs/libraries/ts/nextjs.mdx
  • apps/docs/libraries/ts/hono.mdx
📚 Learning: in the unkey codebase, typescript and the env() function implementation already provide sufficient v...
Learnt from: ogzhanolguncu
PR: unkeyed/unkey#3292
File: apps/dashboard/lib/trpc/routers/key/create.ts:11-14
Timestamp: 2025-06-02T11:09:58.791Z
Learning: In the unkey codebase, TypeScript and the env() function implementation already provide sufficient validation for environment variables, so additional runtime error handling for missing env vars is not needed.

Applied to files:

  • apps/docs/libraries/ts/api.mdx
  • apps/docs/libraries/ts/nextjs.mdx
  • apps/docs/libraries/ts/hono.mdx
📚 Learning: in the unkey dashboard, next.js router (router.push) should be used for client-side navigation inste...
Learnt from: ogzhanolguncu
PR: unkeyed/unkey#3242
File: apps/dashboard/app/(app)/apis/[apiId]/_overview/components/table/components/override-indicator.tsx:50-65
Timestamp: 2025-05-15T16:26:08.666Z
Learning: In the Unkey dashboard, Next.js router (router.push) should be used for client-side navigation instead of window.location.href to preserve client state and enable smoother transitions between pages.

Applied to files:

  • apps/docs/libraries/ts/nextjs.mdx
  • apps/docs/libraries/ts/hono.mdx
📚 Learning: in the unkey codebase, example values in documentation and demo components intentionally use themed ...
Learnt from: ogzhanolguncu
PR: unkeyed/unkey#2910
File: apps/engineering/content/design/components/form/form-input.variants.tsx:38-38
Timestamp: 2025-02-24T13:35:00.816Z
Learning: In the Unkey codebase, example values in documentation and demo components intentionally use themed fake data (e.g., Middle Earth references) rather than generic placeholder text.

Applied to files:

  • apps/docs/libraries/ts/nextjs.mdx
📚 Learning: in next.js applications, importing backend modules into frontend components causes bundling issues a...
Learnt from: ogzhanolguncu
PR: unkeyed/unkey#3311
File: apps/dashboard/components/logs/llm-search/components/search-input.tsx:14-14
Timestamp: 2025-06-10T14:21:42.413Z
Learning: In Next.js applications, importing backend modules into frontend components causes bundling issues and can expose server-side code to the client bundle. For simple constants like limits, it's acceptable to duplicate the value rather than compromise the frontend/backend architectural separation.

Applied to files:

  • apps/docs/libraries/ts/nextjs.mdx
📚 Learning: there are two different `getauth` functions in the unkey codebase with different purposes: 1. `@/lib...
Learnt from: mcstepp
PR: unkeyed/unkey#3210
File: apps/dashboard/app/new/page.tsx:3-3
Timestamp: 2025-04-30T15:25:33.917Z
Learning: There are two different `getAuth` functions in the Unkey codebase with different purposes:
1. `@/lib/auth/get-auth` - Base function without redirects, used in special cases on the dashboard where redirect control is needed (like `/new` page) and within tRPC context
2. `@/lib/auth` - Helper function with redirects, used in most dashboard cases (approximately 98%)

Applied to files:

  • apps/docs/libraries/ts/nextjs.mdx
  • apps/docs/libraries/ts/hono.mdx
📚 Learning: in the unkey codebase, input validation for api endpoints is handled at the openapi schema layer, wh...
Learnt from: chronark
PR: unkeyed/unkey#3560
File: go/apps/api/routes/v2_keys_create_key/handler.go:353-466
Timestamp: 2025-07-15T14:25:05.608Z
Learning: In the Unkey codebase, input validation for API endpoints is handled at the OpenAPI schema layer, which validates request fields like permission slugs (pattern: "^[a-zA-Z0-9_]+$", length: 1-100 characters) before requests reach the handler code. This validation occurs during the zen.BindBody call in handlers.

Applied to files:

  • apps/docs/libraries/ts/nextjs.mdx
  • apps/docs/libraries/ts/hono.mdx
📚 Learning: in the unkey codebase, input validation for api endpoints is primarily handled through openapi schem...
Learnt from: Flo4604
PR: unkeyed/unkey#2955
File: go/apps/api/routes/v2_identities_create_identity/handler.go:162-202
Timestamp: 2025-03-19T09:25:59.751Z
Learning: In the Unkey codebase, input validation for API endpoints is primarily handled through OpenAPI schema validation, which occurs before requests reach the handler code. For example, in the identities.createIdentity endpoint, minimum values for ratelimit duration and limit are defined in the OpenAPI schema rather than duplicating these checks in the handler.

Applied to files:

  • apps/docs/libraries/ts/nextjs.mdx
  • apps/docs/libraries/ts/hono.mdx
📚 Learning: in `apps/api/src/routes/v1_keys_updatekey.ts`, the code intentionally handles `externalid` and `owne...
Learnt from: chronark
PR: unkeyed/unkey#2693
File: apps/api/src/routes/v1_keys_updateKey.ts:350-368
Timestamp: 2024-11-29T15:15:47.308Z
Learning: In `apps/api/src/routes/v1_keys_updateKey.ts`, the code intentionally handles `externalId` and `ownerId` separately for clarity. The `ownerId` field will be removed in the future, simplifying the code.

Applied to files:

  • apps/docs/libraries/ts/hono.mdx
📚 Learning: in hono & cloudflare workers templates, the 'setup and installation' section in the readme serves as...
Learnt from: Devansh-Baghel
PR: unkeyed/unkey#2452
File: oss.gg/7_create_a_template.md:42-42
Timestamp: 2024-10-15T19:57:16.520Z
Learning: In Hono & Cloudflare Workers templates, the 'Setup and Installation' section in the README serves as the quickstart guide.

Applied to files:

  • apps/docs/libraries/ts/hono.mdx
📚 Learning: the dashboard app in the unkey codebase uses direct console.* methods (console.info, console.error, ...
Learnt from: ogzhanolguncu
PR: unkeyed/unkey#3196
File: apps/dashboard/lib/audit.ts:105-108
Timestamp: 2025-04-25T14:16:27.152Z
Learning: The dashboard app in the Unkey codebase uses direct console.* methods (console.info, console.error, etc.) for logging rather than a structured logger utility.

Applied to files:

  • apps/docs/libraries/ts/hono.mdx
📚 Learning: in the unkey dashboard application, api validation for pagination limits is controlled at the ui lev...
Learnt from: ogzhanolguncu
PR: unkeyed/unkey#3321
File: apps/dashboard/lib/trpc/routers/authorization/roles/keys/schema-with-helpers.ts:5-8
Timestamp: 2025-06-18T12:28:10.449Z
Learning: In the unkey dashboard application, API validation for pagination limits is controlled at the UI level rather than requiring additional server-side validation, as the APIs are internal and protected by UI logic.

Applied to files:

  • apps/docs/libraries/ts/hono.mdx
📚 Learning: sensitive data in logs is masked at the api layer (apps/api/src/pkg/middleware/metrics.ts) before be...
Learnt from: chronark
PR: unkeyed/unkey#2825
File: apps/dashboard/app/(app)/logs/components/table/logs-table.tsx:100-118
Timestamp: 2025-01-31T13:50:45.004Z
Learning: Sensitive data in logs is masked at the API layer (apps/api/src/pkg/middleware/metrics.ts) before being written to Clickhouse. This includes redacting API keys, plaintext values, and authorization headers using regex replacements.

Applied to files:

  • apps/docs/libraries/ts/hono.mdx
📚 Learning: when implementing endpoints that require a key, avoid sending the key as part of the url. use post m...
Learnt from: chronark
PR: unkeyed/unkey#2159
File: apps/api/src/routes/v1_keys_getWhoAmI.ts:12-13
Timestamp: 2024-10-03T09:51:43.832Z
Learning: When implementing endpoints that require a key, avoid sending the key as part of the URL. Use POST methods with the key in the request body instead, as URLs get logged and could leak sensitive information.

Applied to files:

  • apps/docs/libraries/ts/hono.mdx
📚 Learning: when reviewing code for unkey, prefer using `boolean()` over the double negation (`!!`) operator for...
Learnt from: mcstepp
PR: unkeyed/unkey#3242
File: apps/dashboard/app/(app)/apis/[apiId]/api-id-navbar.tsx:47-50
Timestamp: 2025-05-15T15:57:02.128Z
Learning: When reviewing code for Unkey, prefer using `Boolean()` over the double negation (`!!`) operator for boolean coercion, as their linter rules favor this pattern.

Applied to files:

  • apps/docs/libraries/ts/hono.mdx
🪛 LanguageTool
apps/docs/libraries/py/api.mdx

[grammar] ~6-~6: Use correct spacing
Context: ...urces within our platform." --- ## SDK Installation > [!NOTE] > **Python version upgrade polic...

(QB_NEW_EN_OTHER_ERROR_IDS_5)


[grammar] ~8-~8: Use correct spacing
Context: ...n > [!NOTE] > Python version upgrade policy > > Once a Python version reaches its [offic...

(QB_NEW_EN_OTHER_ERROR_IDS_5)


[grammar] ~10-~10: Use hyphens correctly
Context: ...Python version reaches its [official end of life date](https://devguide.python.org/v...

(QB_NEW_EN_OTHER_ERROR_IDS_29)


[grammar] ~10-~10: Use correct spacing
Context: ...on version supported in the SDK will be updated. The SDK can be installed with either _pi...

(QB_NEW_EN_OTHER_ERROR_IDS_5)


[grammar] ~12-~12: Insert the missing word
Context: ...updated. The SDK can be installed with either pip or poetry package managers. ### PIP _P...

(QB_NEW_EN_OTHER_ERROR_IDS_32)


[grammar] ~12-~12: Use correct spacing
Context: ...d with either pip or poetry package managers. ### PIP PIP is the default package instal...

(QB_NEW_EN_OTHER_ERROR_IDS_5)


[grammar] ~16-~16: Avoid extra words
Context: ...r poetry package managers. ### PIP PIP is the default package installer for Pytho...

(QB_NEW_EN_OTHER_ERROR_IDS_12)


[grammar] ~16-~16: Use correct spacing
Context: ...t of packages from PyPI via the command line. bash pip install unkey.py ### Poetry Poetry is a modern tool that s...

(QB_NEW_EN_OTHER_ERROR_IDS_5)


[grammar] ~24-~24: Avoid extra words
Context: ... pip install unkey.py ``` ### Poetry Poetry is a modern tool that simplifies dependenc...

(QB_NEW_EN_OTHER_ERROR_IDS_12)


[grammar] ~24-~24: Use correct spacing
Context: ...mlfile to handle project metadata and dependencies. ```bash poetry add unkey.py ``` ### Shell and script usage withuv` You ca...

(QB_NEW_EN_OTHER_ERROR_IDS_5)


[grammar] ~30-~30: Use correct spacing
Context: ...nkey.py ``` ### Shell and script usage with uv You can use this SDK in a Python shell w...

(QB_NEW_EN_OTHER_ERROR_IDS_5)


[grammar] ~32-~32: Use correct spacing
Context: ...e uvx command that comes with it like so: shell uvx --from unkey.py python It's also possible to write a standalone...

(QB_NEW_EN_OTHER_ERROR_IDS_5)


[grammar] ~38-~38: Use correct spacing
Context: ... needing to set up a whole project like so: python #!/usr/bin/env -S uv run --script # /// script # requires-python = ">=3.9" # dependencies = [ # "unkey.py", # ] # /// from unkey.py import Unkey sdk = Unkey( # SDK arguments ) # Rest of script here... Once that is saved to a file, you can ru...

(QB_NEW_EN_OTHER_ERROR_IDS_5)


[grammar] ~59-~59: Use correct spacing
Context: ...y` can be replaced with the actual file name. ## SDK Example Usage ### Example ```pytho...

(QB_NEW_EN_OTHER_ERROR_IDS_5)


[grammar] ~61-~61: Use correct spacing
Context: ...h the actual file name. ## SDK Example Usage ### Example ```python # Synchronous Example...

(QB_NEW_EN_OTHER_ERROR_IDS_5)


[grammar] ~80-~80: Ensure spelling is correct
Context: ...ame SDK client can also be used to make asychronous requests by importing asyncio. ```pyth...

(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)


[grammar] ~80-~80: Use correct spacing
Context: ... make asychronous requests by importing asyncio. python # Asynchronous Example import asyncio from unkey.py import Unkey async def main(): async with Unkey( root_key="<YOUR_BEARER_TOKEN_HERE>", ) as unkey: res = await unkey.apis.create_api_async(name="payment-service-production") # Handle response print(res) asyncio.run(main()) ## Repository {" "} <Card title="GitHub"...

(QB_NEW_EN_OTHER_ERROR_IDS_5)


[grammar] ~108-~108: Use correct spacing
Context: ...eyed/sdks/blob/main/api/py/README.md" cta="README" > The full autogenerated documentation can...

(QB_NEW_EN_OTHER_ERROR_IDS_5)


[grammar] ~110-~110: Use correct spacing
Context: ...generated documentation can be found on GitHub.

(QB_NEW_EN_OTHER_ERROR_IDS_5)

apps/docs/libraries/go/api.mdx

[grammar] ~6-~6: Use correct spacing
Context: ...urces within our platform." --- ## SDK Installation To add the SDK as a dependency to your p...

(QB_NEW_EN_OTHER_ERROR_IDS_5)


[grammar] ~8-~8: Use correct spacing
Context: ... To add the SDK as a dependency to your project: bash go get github.com/unkeyed/sdks/api/go/v2 ## SDK Example Usage ### Example ```go pa...

(QB_NEW_EN_OTHER_ERROR_IDS_5)


[grammar] ~14-~14: Use correct spacing
Context: ...eyed/sdks/api/go/v2 ## SDK Example Usage ### Example go package main import ( "...

(QB_NEW_EN_OTHER_ERROR_IDS_5)


[grammar] ~49-~49: Use correct spacing
Context: ...il { // handle response } } ``` ## Repository {" "} <Card title="GitHub" icon="git...

(QB_NEW_EN_OTHER_ERROR_IDS_5)


[grammar] ~56-~56: Use correct spacing
Context: ...eyed/sdks/blob/main/api/go/README.md" cta="README" > The full autogenerated documentation can...

(QB_NEW_EN_OTHER_ERROR_IDS_5)


[grammar] ~58-~58: Use correct spacing
Context: ...generated documentation can be found on GitHub.

(QB_NEW_EN_OTHER_ERROR_IDS_5)

apps/docs/libraries/ts/nextjs.mdx

[grammar] ~36-~36: Use correct spacing
Context: ...e as wrapping them with the withUnkey handler: ts import { NextRequestWithUnkeyContext, withUnkey } from "@unkey/nextjs"; export const POST = withUnkey( async (req) => { // Process the request here // You have access to the verification response using `req.unkey` console.log(req.unkey); return new Response("Your API key is valid!"); }, { rootKey: process.env.UNKEY_ROOT_KEY! } ); That's it! Since this is just handling k...

(QB_NEW_EN_OTHER_ERROR_IDS_5)


[grammar] ~75-~75: Use a comma after introductory words or phrases
Context: ...u can specify custom error handling. By default errors will be logged to the console, a...

(QB_NEW_EN_OTHER_ERROR_IDS_19)


[grammar] ~75-~75: Use correct spacing
Context: ... will return a NextResponse with status 500. ts export const GET = withUnkey( async (req) => { // ... }, { rootKey: process.env.UNKEY_ROOT_KEY!, onError: async (req, res) => { await analytics.trackEvent(`Error ${res.code}: ${res.message}`); return new NextResponse("Unkey error", { status: 500 }); }, } ); ### handleInvalidKey Specify what to do if Unkey reports that...

(QB_NEW_EN_OTHER_ERROR_IDS_5)


[grammar] ~94-~94: Use correct spacing
Context: ...to do if Unkey reports that your key is invalid. ts export const GET = withUnkey( async (req) => { // ... }, { rootKey: process.env.UNKEY_ROOT_KEY!, handleInvalidKey: (req, res) => { return new Response("Unauthorized", { status: 401 }); }, } );

(QB_NEW_EN_OTHER_ERROR_IDS_5)

⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: Test Packages / Test
🔇 Additional comments (3)
apps/docs/libraries/py/api.mdx (1)

65-76: Verify method names match generated client

The examples call unkey.apis.create_api / create_api_async. Depending on the OpenAPI generator these methods may be create_api, create_api_v2, or create_api_asyncio. Please confirm the exact method names in the published client.

apps/docs/libraries/ts/api.mdx (1)

54-58: Confirm SDK method casing

The snippet calls unkey.apis.createApi. Earlier versions of the TS SDK exposed createAPI. Make sure the method name matches the released package to prevent copy-paste errors.

apps/docs/docs.json (1)

301-323: Navigation points to new SDK docs – ensure files exist

The JSON now lists:

  • libraries/ts/cache/overview
  • libraries/ts/ratelimit/override/*

Double-check that these paths still exist after the big doc cull; otherwise the sidebar will render broken links.

Copy link

graphite-app bot commented Aug 1, 2025

TV gif. Timmy from Shaun the Sheep blinks and extends 2 thumbs up as a lopsided grin emerges on the side of his face. (Added via Giphy)

Copy link

graphite-app bot commented Aug 1, 2025

Graphite Automations

"Post a GIF when PR approved" took an action on this PR • (08/01/25)

1 gif was posted to this PR based on Andreas Thomas's automation.

@chronark chronark merged commit 28444de into main Aug 1, 2025
18 checks passed
@chronark chronark deleted the 08-01-docs_update_sdks branch August 1, 2025 13:58
chronark added a commit that referenced this pull request Aug 7, 2025
* Dialog created

* small changes

* half functional

* small spacing changes and chevron

* Rabbit Changes

* remove useffect

* almost

* re ordered badge list collapse

* undo rabbit

* [autofix.ci] apply automated fixes

* fix scroll

* changes before merge

* chore: deprecate v1 endpoints (#3680)

* fix: openapi

* chore: deprecate v1 endpoints

* fix: vault credentials and chproxy config (#3681)

* fix: openapi

* fix: vault credentials and chproxy config

* fix: rename flag accessor too

* fix: linter issues

* fix: some more v2 api changes (#3677)

* remove namespaceID

* actually use limit and cursor

* filter out delted overrides

* fix error messages list endpoints

* fix more error messages

* ensure identity create handles like permission/role create

* fix regex for roles

* fix regex for roles

* fix list keys cursor

* fix: uppercase common files (#3683)

* name files uppercase

* name files uppercase

* [autofix.ci] apply automated fixes

* name files uppercase

* name files uppercase

---------

Co-authored-by: Andreas Thomas <[email protected]>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* fix: conflicting casing (#3689)

* fix the openapi spec again (#3692)

* dont trace chproxy endpoints (#3691)

* fix: log verifications to the owning workspace (#3693)

* functioning again

* style change

* more tweaks

* fix: validate s3 config (#3694)

* Fix all the fucking things

* remove close button

* fmt

* fix: speakeasy ignore directive is ignored if it's a string (#3699)

* fix: upsert permissions with slug or name colission (#3696)

* fix: upsert permissions with slug or name colission

* chore: also remove index

* fix permission test and remove unnnecessary test

---------

Co-authored-by: Flo <[email protected]>

* docs: migration (#3678)

* fix: openapi

* docs: migration from v1 to v2

* fix: remove binaries

* [autofix.ci] apply automated fixes

* docs: add james' feedback

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* fix: api list keys zod errors (#3702)

* fix api zod errors

* [autofix.ci] apply automated fixes

* make array handling uniform

* make array handling uniform

* fix rabbi comment

* fix: permission array for roles

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* ci: don't build for windows and freebsd (#3700)

* docs: errors (#3703)

* chore: move sdks to unkeyed/sdks (#3701)

* fix: omitting array vs null (#3704)

* fix omitting array vs null

* [autofix.ci] apply automated fixes

* fix flakey test

* fix flakey test

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* fix: panics not being catched (#3706)

* fix panics not being catched

* feat: add counter to track panics

Signed-off-by: Ian Meyer <[email protected]>

---------

Signed-off-by: Ian Meyer <[email protected]>
Co-authored-by: Ian Meyer <[email protected]>

* docs: use `CodeGroup` in hono/nextjs TS libraries (#3708)

* Update hono.mdx

* Update nextjs.mdx

* ci: remove outdated steps and flows (#3709)

* docs: update sdks (#3712)

* docs: update sdks

* Update nextjs.mdx

* [autofix.ci] apply automated fixes

* fix: rabbit feedback

* Update nextjs.mdx

* fix: root key is required

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* dialog and confirm added

* feat(deployment beta): projects UI for Unkey Deploy (#3662)

* projects and branches

* wip

* wip

* spec differ wip

* fix some docker, add some trpc, integrate diff viewer

* change version to deployments, add feature flag, update go schema

* update versions page

* fix null condition

* delete old router, fix null assertion

* fmt

* fmt

* fmt again

* apply auth and feature flagging access to projects, remove versions

* yolo

* stable yolo

* stable yolo

* style: fmt

* fix: hardcode time, so it doesn't fail on the first of a month

* [autofix.ci] apply automated fixes

---------

Co-authored-by: chronark <[email protected]>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* chore: add missingd delete endpoint for v2 (#3711)

* only log key at the end (#3716)

* fix: allow wildcard and colon in permissions query (#3717)

* remove regex for permissions

* allow for asterix and colon in permissions

* fix: update identity by identity key instead of externalId and fix wrong body for permission and role (#3713)

* docs and remove externalId from keyResponse

* fix updateIdentity to take in an identity parameter instead of an externalId

* fix get role/permission

* Update go/apps/api/openapi/spec/common/Permission.yaml

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Update openapi-generated.yaml

* fix comment

---------

Co-authored-by: Andreas Thomas <[email protected]>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* chore: openapi references (#3723)

* feat: add paginated tRPC endpoint for projects (#3697)

* feat: add new endpoint for deploy projects

* chore: replace file path

* [autofix.ci] apply automated fixes

* feat: add missing endpoint

* fix: trpc path

* fix: add feature flag

* chore: remove optin

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* fix: region not showing and wrong rl id (#3722)

* fix: region not showing and wrong rl id

* pass region down

* perf: bad get key performance (#3724)

* perf: make getKey 2 seperate queries so mysql chooses correct idx

* fix query

* fix query name

* docs: verify identities endpoints (#3727)

* chore: docs (#3728)

* chore: fixup migration guide

* adjust more

* adjust more

* adjust more

* rabbit comments

* Update index.mdx

* working updates

* re factor for clarity

* only update if diff than existing

* [autofix.ci] apply automated fixes

* re name create-root-key to root-key folder

---------

Signed-off-by: Ian Meyer <[email protected]>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Andreas Thomas <[email protected]>
Co-authored-by: Flo <[email protected]>
Co-authored-by: Oğuzhan Olguncu <[email protected]>
Co-authored-by: James Perkins <[email protected]>
Co-authored-by: Ian Meyer <[email protected]>
Co-authored-by: JA Castro <[email protected]>
Co-authored-by: Meg Stepp <[email protected]>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
perkinsjr added a commit that referenced this pull request Aug 20, 2025
* chore: new root key dialog (#3637)

* Dialog created

* small changes

* feat: ui show permission side bar when select permission button is (#3654)

* Dialog created

* small changes

* half functional

* small spacing changes and chevron

* Rabbit Changes

* remove useffect

* feat: UI when a permission is selected it should show in the modal (#3663)

* Dialog created

* small changes

* half functional

* small spacing changes and chevron

* Rabbit Changes

* remove useffect

* almost

* re ordered badge list collapse

* undo rabbit

* [autofix.ci] apply automated fixes

* fix scroll

* button size and margin

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* feat: UI when a user searches for a permission it should show (#3695)

* Dialog created

* small changes

* half functional

* small spacing changes and chevron

* Rabbit Changes

* remove useffect

* almost

* re ordered badge list collapse

* undo rabbit

* [autofix.ci] apply automated fixes

* fix scroll

* changes before merge

* functioning again

* style change

* more tweaks

* Fix all the fucking things

* remove close button

* fmt

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: James Perkins <[email protected]>

* feat: rootkey create with success dialog and confirm close (#3714)

* Dialog created

* small changes

* half functional

* small spacing changes and chevron

* Rabbit Changes

* remove useffect

* almost

* re ordered badge list collapse

* undo rabbit

* [autofix.ci] apply automated fixes

* fix scroll

* changes before merge

* functioning again

* style change

* more tweaks

* Fix all the fucking things

* remove close button

* fmt

* dialog and confirm added

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: James Perkins <[email protected]>

* feat: a user selects edit root key and an edit root key modal (#3731)

* Dialog created

* small changes

* half functional

* small spacing changes and chevron

* Rabbit Changes

* remove useffect

* almost

* re ordered badge list collapse

* undo rabbit

* [autofix.ci] apply automated fixes

* fix scroll

* changes before merge

* chore: deprecate v1 endpoints (#3680)

* fix: openapi

* chore: deprecate v1 endpoints

* fix: vault credentials and chproxy config (#3681)

* fix: openapi

* fix: vault credentials and chproxy config

* fix: rename flag accessor too

* fix: linter issues

* fix: some more v2 api changes (#3677)

* remove namespaceID

* actually use limit and cursor

* filter out delted overrides

* fix error messages list endpoints

* fix more error messages

* ensure identity create handles like permission/role create

* fix regex for roles

* fix regex for roles

* fix list keys cursor

* fix: uppercase common files (#3683)

* name files uppercase

* name files uppercase

* [autofix.ci] apply automated fixes

* name files uppercase

* name files uppercase

---------

Co-authored-by: Andreas Thomas <[email protected]>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* fix: conflicting casing (#3689)

* fix the openapi spec again (#3692)

* dont trace chproxy endpoints (#3691)

* fix: log verifications to the owning workspace (#3693)

* functioning again

* style change

* more tweaks

* fix: validate s3 config (#3694)

* Fix all the fucking things

* remove close button

* fmt

* fix: speakeasy ignore directive is ignored if it's a string (#3699)

* fix: upsert permissions with slug or name colission (#3696)

* fix: upsert permissions with slug or name colission

* chore: also remove index

* fix permission test and remove unnnecessary test

---------

Co-authored-by: Flo <[email protected]>

* docs: migration (#3678)

* fix: openapi

* docs: migration from v1 to v2

* fix: remove binaries

* [autofix.ci] apply automated fixes

* docs: add james' feedback

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* fix: api list keys zod errors (#3702)

* fix api zod errors

* [autofix.ci] apply automated fixes

* make array handling uniform

* make array handling uniform

* fix rabbi comment

* fix: permission array for roles

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* ci: don't build for windows and freebsd (#3700)

* docs: errors (#3703)

* chore: move sdks to unkeyed/sdks (#3701)

* fix: omitting array vs null (#3704)

* fix omitting array vs null

* [autofix.ci] apply automated fixes

* fix flakey test

* fix flakey test

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* fix: panics not being catched (#3706)

* fix panics not being catched

* feat: add counter to track panics

Signed-off-by: Ian Meyer <[email protected]>

---------

Signed-off-by: Ian Meyer <[email protected]>
Co-authored-by: Ian Meyer <[email protected]>

* docs: use `CodeGroup` in hono/nextjs TS libraries (#3708)

* Update hono.mdx

* Update nextjs.mdx

* ci: remove outdated steps and flows (#3709)

* docs: update sdks (#3712)

* docs: update sdks

* Update nextjs.mdx

* [autofix.ci] apply automated fixes

* fix: rabbit feedback

* Update nextjs.mdx

* fix: root key is required

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* dialog and confirm added

* feat(deployment beta): projects UI for Unkey Deploy (#3662)

* projects and branches

* wip

* wip

* spec differ wip

* fix some docker, add some trpc, integrate diff viewer

* change version to deployments, add feature flag, update go schema

* update versions page

* fix null condition

* delete old router, fix null assertion

* fmt

* fmt

* fmt again

* apply auth and feature flagging access to projects, remove versions

* yolo

* stable yolo

* stable yolo

* style: fmt

* fix: hardcode time, so it doesn't fail on the first of a month

* [autofix.ci] apply automated fixes

---------

Co-authored-by: chronark <[email protected]>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* chore: add missingd delete endpoint for v2 (#3711)

* only log key at the end (#3716)

* fix: allow wildcard and colon in permissions query (#3717)

* remove regex for permissions

* allow for asterix and colon in permissions

* fix: update identity by identity key instead of externalId and fix wrong body for permission and role (#3713)

* docs and remove externalId from keyResponse

* fix updateIdentity to take in an identity parameter instead of an externalId

* fix get role/permission

* Update go/apps/api/openapi/spec/common/Permission.yaml

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Update openapi-generated.yaml

* fix comment

---------

Co-authored-by: Andreas Thomas <[email protected]>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* chore: openapi references (#3723)

* feat: add paginated tRPC endpoint for projects (#3697)

* feat: add new endpoint for deploy projects

* chore: replace file path

* [autofix.ci] apply automated fixes

* feat: add missing endpoint

* fix: trpc path

* fix: add feature flag

* chore: remove optin

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* fix: region not showing and wrong rl id (#3722)

* fix: region not showing and wrong rl id

* pass region down

* perf: bad get key performance (#3724)

* perf: make getKey 2 seperate queries so mysql chooses correct idx

* fix query

* fix query name

* docs: verify identities endpoints (#3727)

* chore: docs (#3728)

* chore: fixup migration guide

* adjust more

* adjust more

* adjust more

* rabbit comments

* Update index.mdx

* working updates

* re factor for clarity

* only update if diff than existing

* [autofix.ci] apply automated fixes

* re name create-root-key to root-key folder

---------

Signed-off-by: Ian Meyer <[email protected]>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Andreas Thomas <[email protected]>
Co-authored-by: Flo <[email protected]>
Co-authored-by: Oğuzhan Olguncu <[email protected]>
Co-authored-by: James Perkins <[email protected]>
Co-authored-by: Ian Meyer <[email protected]>
Co-authored-by: JA Castro <[email protected]>
Co-authored-by: Meg Stepp <[email protected]>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* fresh

* start rabbit changes

* rabbits

* missing processing

* Update apps/dashboard/lib/trpc/routers/index.ts

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Update apps/dashboard/app/(app)/settings/root-keys/components/root-key/components/permission-badge-list.tsx

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* more rabbit

* function name

* [autofix.ci] apply automated fixes

* minor changes

* rabbit checked locally

* comment changes

* light mode fix

* removed old page files

* updated success

* slack comment changes

* cleanup

* rabbit

* more rabbits

* most consts

* change clear and details

* cleanup

* pr suggested changes

* few nits

---------

Signed-off-by: Ian Meyer <[email protected]>
Co-authored-by: CodeReaper <[email protected]>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Andreas Thomas <[email protected]>
Co-authored-by: Flo <[email protected]>
Co-authored-by: Oğuzhan Olguncu <[email protected]>
Co-authored-by: Ian Meyer <[email protected]>
Co-authored-by: JA Castro <[email protected]>
Co-authored-by: Meg Stepp <[email protected]>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: MichaelUnkey <[email protected]>
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