venice-ai-sdk-apl
Version:
A comprehensive SDK for the Venice AI API with CLI support, programmatic CLI usage, CLI-style interface, and interactive demo
104 lines • 2.84 kB
JavaScript
;
/**
* API Keys Resource
*
* This module provides access to the API Keys API resources.
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.ApiKeysResource = void 0;
const list_1 = require("./list");
const create_1 = require("./create");
const delete_1 = require("./delete");
const rate_limits_1 = require("./rate-limits");
const web3_1 = require("./web3");
/**
* API Keys Resource
*/
class ApiKeysResource {
/**
* Creates a new API keys resource
*
* @param http - HTTP client
*/
constructor(http) {
this.listResource = new list_1.ApiKeysListResource(http);
this.createResource = new create_1.ApiKeysCreateResource(http);
this.deleteResource = new delete_1.ApiKeysDeleteResource(http);
this.rateLimitsResource = new rate_limits_1.ApiKeysRateLimitsResource(http);
this.web3 = new web3_1.Web3ApiKeyResource(http);
}
/**
* Lists your API keys
*
* @returns Promise that resolves with the list of API keys
*
* @example
* ```typescript
* const response = await venice.apiKeys.list();
* ```
*/
list() {
return this.listResource.list();
}
/**
* Creates a new API key
*
* @param params - Parameters for creating an API key
* @returns Promise that resolves with the created API key
*
* @example
* ```typescript
* const response = await venice.apiKeys.create({
* name: 'My New API Key'
* });
* ```
*/
create(params) {
return this.createResource.create(params);
}
/**
* Deletes an API key
*
* @param params - Parameters for deleting an API key
* @returns Promise that resolves with the deletion result
*
* @example
* ```typescript
* const response = await venice.apiKeys.delete({
* id: 'api-key-id'
* });
* ```
*/
delete(params) {
return this.deleteResource.deleteKey(params);
}
/**
* Gets rate limits for your API keys
*
* @returns Promise that resolves with the API key rate limits
*
* @example
* ```typescript
* const response = await venice.apiKeys.rateLimits();
* ```
*/
rateLimits() {
return this.rateLimitsResource.getRateLimits();
}
/**
* Gets rate limits for a specific model
*
* @param modelId - Model ID
* @returns Promise that resolves with the rate limits for the specified model
*
* @example
* ```typescript
* const limits = await venice.apiKeys.getModelRateLimits('llama-3.3-70b');
* ```
*/
getModelRateLimits(modelId) {
return this.rateLimitsResource.getModelRateLimits(modelId);
}
}
exports.ApiKeysResource = ApiKeysResource;
//# sourceMappingURL=index.js.map