UNPKG

@unkey/api

Version:

Developer-friendly & type-safe Typescript SDK specifically catered to leverage *@unkey/api* API.

87 lines 3.46 kB
/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import { identitiesCreateIdentity } from "../funcs/identitiesCreateIdentity.js"; import { identitiesDeleteIdentity } from "../funcs/identitiesDeleteIdentity.js"; import { identitiesGetIdentity } from "../funcs/identitiesGetIdentity.js"; import { identitiesListIdentities } from "../funcs/identitiesListIdentities.js"; import { identitiesUpdateIdentity } from "../funcs/identitiesUpdateIdentity.js"; import { ClientSDK } from "../lib/sdks.js"; import { unwrapAsync } from "../types/fp.js"; import { unwrapResultIterator } from "../types/operations.js"; export class Identities extends ClientSDK { /** * Create Identity * * @remarks * Create an identity to group multiple API keys under a single entity. Identities enable shared rate limits and metadata across all associated keys. * * Perfect for users with multiple devices, organizations with multiple API keys, or when you need unified rate limiting across different services. * * **Important** * Requires `identity.*.create_identity` permission */ async createIdentity(request, options) { return unwrapAsync(identitiesCreateIdentity(this, request, options)); } /** * Delete Identity * * @remarks * Permanently delete an identity. This operation cannot be undone. * * Use this for data cleanup, compliance requirements, or when removing entities from your system. * * > **Important** * > Requires `identity.*.delete_identity` permission * > Associated API keys remain functional but lose shared resources * > External ID becomes available for reuse immediately */ async deleteIdentity(request, options) { return unwrapAsync(identitiesDeleteIdentity(this, request, options)); } /** * Get Identity * * @remarks * Retrieve an identity by external ID. Returns metadata, rate limits, and other associated data. * * Use this to check if an identity exists, view configurations, or build management dashboards. * * > **Important** * > Requires `identity.*.read_identity` permission */ async getIdentity(request, options) { return unwrapAsync(identitiesGetIdentity(this, request, options)); } /** * List Identities * * @remarks * Get a paginated list of all identities in your workspace. Returns metadata and rate limit configurations. * * Perfect for building management dashboards, auditing configurations, or browsing your identities. * * > **Important** * > Requires `identity.*.read_identity` permission */ async listIdentities(request, options) { return unwrapResultIterator(identitiesListIdentities(this, request, options)); } /** * Update Identity * * @remarks * Update an identity's metadata and rate limits. Only specified fields are modified - others remain unchanged. * * Perfect for subscription changes, plan upgrades, or updating user information. Changes take effect immediately. * * > **Important** * > Requires `identity.*.update_identity` permission * > Rate limit changes propagate within 30 seconds */ async updateIdentity(request, options) { return unwrapAsync(identitiesUpdateIdentity(this, request, options)); } } //# sourceMappingURL=identities.js.map