@unkey/api
Version:
Developer-friendly & type-safe Typescript SDK specifically catered to leverage *@unkey/api* API.
91 lines • 3.87 kB
JavaScript
;
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.Identities = void 0;
const identitiesCreateIdentity_js_1 = require("../funcs/identitiesCreateIdentity.js");
const identitiesDeleteIdentity_js_1 = require("../funcs/identitiesDeleteIdentity.js");
const identitiesGetIdentity_js_1 = require("../funcs/identitiesGetIdentity.js");
const identitiesListIdentities_js_1 = require("../funcs/identitiesListIdentities.js");
const identitiesUpdateIdentity_js_1 = require("../funcs/identitiesUpdateIdentity.js");
const sdks_js_1 = require("../lib/sdks.js");
const fp_js_1 = require("../types/fp.js");
const operations_js_1 = require("../types/operations.js");
class Identities extends sdks_js_1.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 (0, fp_js_1.unwrapAsync)((0, identitiesCreateIdentity_js_1.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 (0, fp_js_1.unwrapAsync)((0, identitiesDeleteIdentity_js_1.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 (0, fp_js_1.unwrapAsync)((0, identitiesGetIdentity_js_1.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 (0, operations_js_1.unwrapResultIterator)((0, identitiesListIdentities_js_1.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 (0, fp_js_1.unwrapAsync)((0, identitiesUpdateIdentity_js_1.identitiesUpdateIdentity)(this, request, options));
}
}
exports.Identities = Identities;
//# sourceMappingURL=identities.js.map