chatkitty
Version:
OpenAPI client for chatkitty
484 lines (377 loc) • 26.9 kB
Markdown
## chatkitty@2.106.8
TypeScript/JavaScript client for the **ChatKitty API**, powered by [axios](https://github.com/axios/axios) and an OAuth2 Client Credentials flow that’s handled for you.
This package ships:
- A `ChatKitty` wrapper that:
- Exchanges your **client ID/secret** for an access token using **OAuth 2.0 Client Credentials**.
- Caches and auto-refreshes tokens with `axios-token-interceptor` based on `expires_in`.
- Instantiates all generated API classes with a preconfigured `Configuration`.
- Generated API classes and models from the ChatKitty OpenAPI spec.
> ⚠️ **Security note:** Because this library uses the Client Credentials flow (requires a client secret), it is **intended for server-side use**. Do not embed your client secret in browser apps.
---
### Environments
- **Recommended:** Node.js (server/runtime)
- Bundlers (Webpack/Browserify) are technically supported, but **not recommended** due to the secret requirement.
### Language level
- ES2015+ (ES6)
- Type definitions for TypeScript are included.
### Module systems
- CommonJS (CJS)
- ES Modules (ESM)
TypeScript consumers will get types automatically via `package.json` ([ref](https://www.typescriptlang.org/docs/handbook/declaration-files/consumption.html)).
---
## Installation
From npm (recommended):
```bash
npm install chatkitty@2.106.8
````
---
## Quick Start
```ts
import { ChatKitty } from 'chatkitty';
const kitty = new ChatKitty({
clientId: process.env.CHATKITTY_CLIENT_ID!,
clientSecret: process.env.CHATKITTY_CLIENT_SECRET!,
// Optional overrides:
// basePath: 'https://api.chatkitty.com', // API base
// authorizationBasePath: 'https://authorization.chatkitty.com/oauth/token', // OAuth token URL
});
// Use generated APIs via strongly-typed properties:
// Example: AnalyticsApi
await kitty.AnalyticsApi; // instance of AnalyticsApi
// Example: ApplicationApi
await kitty.ApplicationApi; // instance of ApplicationApi
// Example: ChannelsApi
await kitty.ChannelsApi; // instance of ChannelsApi
// Example: ChatSessionsApi
await kitty.ChatSessionsApi; // instance of ChatSessionsApi
// Example: FunctionVersionsApi
await kitty.FunctionVersionsApi; // instance of FunctionVersionsApi
// Example: FunctionsApi
await kitty.FunctionsApi; // instance of FunctionsApi
// Example: ImportsApi
await kitty.ImportsApi; // instance of ImportsApi
// Example: JobsApi
await kitty.JobsApi; // instance of JobsApi
// Example: MessagesApi
await kitty.MessagesApi; // instance of MessagesApi
// Example: RuntimeApi
await kitty.RuntimeApi; // instance of RuntimeApi
// Example: ThreadsApi
await kitty.ThreadsApi; // instance of ThreadsApi
// Example: UserSessionsApi
await kitty.UserSessionsApi; // instance of UserSessionsApi
// Example: UsersApi
await kitty.UsersApi; // instance of UsersApi
// Example call (replace with a real operation from the docs):
// const res = await kitty.<SomeApi>.<someOperation>(params);
// console.log(res.data);
```
---
## Configuration
```ts
export interface ChatKittyConfiguration {
clientId: string; // REQUIRED
clientSecret: string; // REQUIRED
basePath?: string; // Optional: override API base URL
authorizationBasePath?: string; // Optional: override OAuth token URL
}
```
* **`clientId` / `clientSecret`** – Your OAuth2 Client Credentials.
* **`basePath`** – Override the API base URL if needed.
* **`authorizationBasePath`** – Override the OAuth token endpoint. Defaults to `https://authorization.chatkitty.com/oauth/token`.
### How authentication works
* The client requests an access token with `grant_type=client_credentials`.
* Tokens are cached and automatically refreshed using `expires_in` to determine max age.
* Each API call includes `Authorization: Bearer <token>` and:
* `Accept: application/vnd.chatkitty+json,*/*;q=0.8`
No extra work is required—just provide your credentials.
---
## Consuming in Your Project
Install:
```bash
npm install chatkitty@2.106.8 --save
```
Use:
```ts
import { ChatKitty } from 'chatkitty';
const kitty = new ChatKitty({
clientId: 'YOUR_CLIENT_ID',
clientSecret: 'YOUR_CLIENT_SECRET',
});
// Call any generated API:
const AnalyticsApi = kitty.AnalyticsApi; // instance is ready to use
const ApplicationApi = kitty.ApplicationApi; // instance is ready to use
const ChannelsApi = kitty.ChannelsApi; // instance is ready to use
const ChatSessionsApi = kitty.ChatSessionsApi; // instance is ready to use
const FunctionVersionsApi = kitty.FunctionVersionsApi; // instance is ready to use
const FunctionsApi = kitty.FunctionsApi; // instance is ready to use
const ImportsApi = kitty.ImportsApi; // instance is ready to use
const JobsApi = kitty.JobsApi; // instance is ready to use
const MessagesApi = kitty.MessagesApi; // instance is ready to use
const RuntimeApi = kitty.RuntimeApi; // instance is ready to use
const ThreadsApi = kitty.ThreadsApi; // instance is ready to use
const UserSessionsApi = kitty.UserSessionsApi; // instance is ready to use
const UsersApi = kitty.UsersApi; // instance is ready to use
```
---
## Documentation for API Endpoints
All URIs are relative to **https://api.chatkitty.com**
| Class | Method | HTTP request | Description |
| ----------------------------------------------------------------- | ------------------------------------------------------------------------------ | --------------------------- | ----------- |
| *AnalyticsApi* | [**exportMessageAnalytics**](docs/AnalyticsApi.md#exportmessageanalytics) | **POST** /analytics/messages | Export message analytics |
| *AnalyticsApi* | [**exportUserAnalytics**](docs/AnalyticsApi.md#exportuseranalytics) | **POST** /analytics/users | Export user analytics |
| *ApplicationApi* | [**retrieveApplication**](docs/ApplicationApi.md#retrieveapplication) | **GET** /application | Retrieve the authenticated application |
| *ApplicationApi* | [**retrieveApplicationMessageReadReceiptSummaries**](docs/ApplicationApi.md#retrieveapplicationmessagereadreceiptsummaries) | **GET** /application/message-read-receipt-summaries | Retrieve the authenticated application message read receipt summaries |
| *ApplicationApi* | [**retrieveApplicationSettings**](docs/ApplicationApi.md#retrieveapplicationsettings) | **GET** /application/settings | Retrieve the authenticated application settings |
| *ApplicationApi* | [**updateApplicationSettings**](docs/ApplicationApi.md#updateapplicationsettings) | **PUT** /application/settings | Update the authenticated application settings |
| *ChannelsApi* | [**addChannelMember**](docs/ChannelsApi.md#addchannelmember) | **POST** /channels/{id}/members | Add a channel member |
| *ChannelsApi* | [**addChannelModerator**](docs/ChannelsApi.md#addchannelmoderator) | **POST** /channels/{id}/moderators | Add a channel moderator |
| *ChannelsApi* | [**createChannel**](docs/ChannelsApi.md#createchannel) | **POST** /channels | Create a channel |
| *ChannelsApi* | [**deleteChannel**](docs/ChannelsApi.md#deletechannel) | **DELETE** /channels/{id} | Delete a channel |
| *ChannelsApi* | [**listChannelInvites**](docs/ChannelsApi.md#listchannelinvites) | **GET** /channels/{id}/invites | List channel invites |
| *ChannelsApi* | [**listChannelMembers**](docs/ChannelsApi.md#listchannelmembers) | **GET** /channels/{id}/members | List a channel\'s members |
| *ChannelsApi* | [**listChannelMemberships**](docs/ChannelsApi.md#listchannelmemberships) | **GET** /channels/{id}/memberships | List channel memberships |
| *ChannelsApi* | [**listChannelMessages**](docs/ChannelsApi.md#listchannelmessages) | **GET** /channels/{id}/messages | List channel messages |
| *ChannelsApi* | [**listChannelModerators**](docs/ChannelsApi.md#listchannelmoderators) | **GET** /channels/{id}/moderators | Lists a channel\'s moderators |
| *ChannelsApi* | [**listChannelParticipants**](docs/ChannelsApi.md#listchannelparticipants) | **GET** /channels/{id}/participants | List channel participants |
| *ChannelsApi* | [**listChannelReportedMessages**](docs/ChannelsApi.md#listchannelreportedmessages) | **GET** /channels/{id}/reported-messages | List channel reported messages |
| *ChannelsApi* | [**listChannels**](docs/ChannelsApi.md#listchannels) | **GET** /channels | List channels |
| *ChannelsApi* | [**removeChannelMember**](docs/ChannelsApi.md#removechannelmember) | **DELETE** /channels/{id}/members/{user_id} | Remove a channel member |
| *ChannelsApi* | [**removeChannelModerator**](docs/ChannelsApi.md#removechannelmoderator) | **DELETE** /channels/{id}/moderators/{user_id} | Remove a channel moderator |
| *ChannelsApi* | [**retrieveChannel**](docs/ChannelsApi.md#retrievechannel) | **GET** /channels/{id} | Retrieve a channel |
| *ChannelsApi* | [**sendChannelEvent**](docs/ChannelsApi.md#sendchannelevent) | **POST** /channels/{id}/events | Send a channel event |
| *ChannelsApi* | [**sendChannelInvite**](docs/ChannelsApi.md#sendchannelinvite) | **POST** /channels/{id}/invites | Send a channel invite |
| *ChannelsApi* | [**sendChannelKeystrokes**](docs/ChannelsApi.md#sendchannelkeystrokes) | **POST** /channels/{id}/keystrokes | Send channel keystrokes |
| *ChannelsApi* | [**sendChannelMessage**](docs/ChannelsApi.md#sendchannelmessage) | **POST** /channels/{id}/messages | Send a channel message |
| *ChannelsApi* | [**updateChannel**](docs/ChannelsApi.md#updatechannel) | **PATCH** /channels/{id} | Update a channel |
| *ChatSessionsApi* | [**listChatSessions**](docs/ChatSessionsApi.md#listchatsessions) | **GET** /chat-sessions | List chat sessions |
| *FunctionVersionsApi* | [**retrieveFunctionVersion**](docs/FunctionVersionsApi.md#retrievefunctionversion) | **GET** /function-versions/{id} | Retrieve a chat function version |
| *FunctionsApi* | [**createFunctionVersion**](docs/FunctionsApi.md#createfunctionversion) | **POST** /functions/{id}/versions | Create a chat function version |
| *FunctionsApi* | [**listFunctionInvocations**](docs/FunctionsApi.md#listfunctioninvocations) | **GET** /functions/{id}/invocations | List chat function invocations |
| *FunctionsApi* | [**listFunctionVersions**](docs/FunctionsApi.md#listfunctionversions) | **GET** /functions/{id}/versions | List chat function versions |
| *FunctionsApi* | [**retrieveFunction**](docs/FunctionsApi.md#retrievefunction) | **GET** /functions/{id} | Retrieve a chat function |
| *FunctionsApi* | [**retrieveFunctionCurrentVersion**](docs/FunctionsApi.md#retrievefunctioncurrentversion) | **GET** /functions/{id}/current-version | Retrieve chat function current version |
| *ImportsApi* | [**importChannelMembers**](docs/ImportsApi.md#importchannelmembers) | **POST** /imports/channels/{id}/members | Import channel members |
| *ImportsApi* | [**importChannels**](docs/ImportsApi.md#importchannels) | **POST** /imports/channels | Import channels |
| *ImportsApi* | [**importMessages**](docs/ImportsApi.md#importmessages) | **POST** /imports/messages | Import messages |
| *ImportsApi* | [**importUsers**](docs/ImportsApi.md#importusers) | **POST** /imports/users | Import users |
| *JobsApi* | [**listJobs**](docs/JobsApi.md#listjobs) | **GET** /jobs | List jobs |
| *JobsApi* | [**retrieveJob**](docs/JobsApi.md#retrievejob) | **GET** /jobs/{id} | Retrieve a job |
| *MessagesApi* | [**deleteMessage**](docs/MessagesApi.md#deletemessage) | **DELETE** /messages/{id} | Delete a message |
| *MessagesApi* | [**deleteMessages**](docs/MessagesApi.md#deletemessages) | **DELETE** /messages | Delete messages |
| *MessagesApi* | [**listMessageReadReceipts**](docs/MessagesApi.md#listmessagereadreceipts) | **GET** /messages/{id}/read-receipts | List message read receipts |
| *MessagesApi* | [**listMessages**](docs/MessagesApi.md#listmessages) | **GET** /messages | List messages |
| *MessagesApi* | [**retrieveMessage**](docs/MessagesApi.md#retrievemessage) | **GET** /messages/{id} | Retrieve a message |
| *MessagesApi* | [**updateMessage**](docs/MessagesApi.md#updatemessage) | **PATCH** /messages/{id} | Update a message |
| *RuntimeApi* | [**createNodejsRuntimeFunction**](docs/RuntimeApi.md#createnodejsruntimefunction) | **POST** /runtimes/nodejs/functions | Create a NodeJS chat runtime function |
| *RuntimeApi* | [**listNodejsRuntimeFunctions**](docs/RuntimeApi.md#listnodejsruntimefunctions) | **GET** /runtimes/nodejs/functions | List NodeJS chat runtime functions |
| *RuntimeApi* | [**retrieveNodejsRuntime**](docs/RuntimeApi.md#retrievenodejsruntime) | **GET** /runtimes/nodejs | Retrieve NodeJS chat runtime |
| *RuntimeApi* | [**updateNodejsRuntimeDependencies**](docs/RuntimeApi.md#updatenodejsruntimedependencies) | **PUT** /runtimes/nodejs/dependencies | Update NodeJS chat runtime NPM dependencies |
| *RuntimeApi* | [**updateNodejsRuntimeEnvironmentVariables**](docs/RuntimeApi.md#updatenodejsruntimeenvironmentvariables) | **PUT** /runtimes/nodejs/environment-variables | Update NodeJS chat runtime environment variables |
| *RuntimeApi* | [**updateNodejsRuntimeInitializationScript**](docs/RuntimeApi.md#updatenodejsruntimeinitializationscript) | **PUT** /runtimes/nodejs/initialization-script | Update NodeJS chat runtime initialization script |
| *ThreadsApi* | [**listThreadMessages**](docs/ThreadsApi.md#listthreadmessages) | **GET** /threads/{id}/messages | List reply thread messages |
| *ThreadsApi* | [**retrieveThread**](docs/ThreadsApi.md#retrievethread) | **GET** /threads/{id} | Retrieve a thread |
| *ThreadsApi* | [**sendThreadKeystrokes**](docs/ThreadsApi.md#sendthreadkeystrokes) | **POST** /threads/{id}/keystrokes | Send thread keystrokes |
| *ThreadsApi* | [**sendThreadMessage**](docs/ThreadsApi.md#sendthreadmessage) | **POST** /threads/{id}/messages | Send a reply thread message |
| *UserSessionsApi* | [**listUserSessions**](docs/UserSessionsApi.md#listusersessions) | **GET** /user-sessions | List user sessions |
| *UsersApi* | [**checkUserExists**](docs/UsersApi.md#checkuserexists) | **HEAD** /users | Check a user exists |
| *UsersApi* | [**countUserUnreadMessages**](docs/UsersApi.md#countuserunreadmessages) | **GET** /users/{id}/messages/unread/count | Counts the number of unread messages for a user |
| *UsersApi* | [**createUser**](docs/UsersApi.md#createuser) | **POST** /users | Create a user |
| *UsersApi* | [**deleteUser**](docs/UsersApi.md#deleteuser) | **DELETE** /users/{id} | Delete a user |
| *UsersApi* | [**listUserChannels**](docs/UsersApi.md#listuserchannels) | **GET** /users/{id}/channels | List a user\'s channels |
| *UsersApi* | [**listUserMessages**](docs/UsersApi.md#listusermessages) | **GET** /users/{id}/messages | List a user\'s messages |
| *UsersApi* | [**listUserNotifications**](docs/UsersApi.md#listusernotifications) | **GET** /users/{id}/notifications | List a user\'s notifications |
| *UsersApi* | [**listUsers**](docs/UsersApi.md#listusers) | **GET** /users | List users |
| *UsersApi* | [**removeUserSecret**](docs/UsersApi.md#removeusersecret) | **DELETE** /users/{id}/secrets/{name} | Remove a user secret |
| *UsersApi* | [**retrieveUser**](docs/UsersApi.md#retrieveuser) | **GET** /users/{id} | Retrieve a user |
| *UsersApi* | [**retrieveUserSecret**](docs/UsersApi.md#retrieveusersecret) | **GET** /users/{id}/secrets/{name} | Retrieve a user secret |
| *UsersApi* | [**setUserSecret**](docs/UsersApi.md#setusersecret) | **PUT** /users/{id}/secrets/{name} | Set a user secret |
| *UsersApi* | [**updateUser**](docs/UsersApi.md#updateuser) | **PATCH** /users/{id} | Update a user |
| *UsersApi* | [**updateUserDisplayPicture**](docs/UsersApi.md#updateuserdisplaypicture) | **POST** /users/{id}/display-picture | Update a user\'s display picture |
| | | | |
---
## Documentation for Models
- [ApiError](docs/ApiError.md)
- [ApplicationFeatureSettingsProperties](docs/ApplicationFeatureSettingsProperties.md)
- [ApplicationJobResource](docs/ApplicationJobResource.md)
- [ApplicationResource](docs/ApplicationResource.md)
- [ApplicationSentSystemMessageNotificationData](docs/ApplicationSentSystemMessageNotificationData.md)
- [ApplicationSettingsProperties](docs/ApplicationSettingsProperties.md)
- [ApplicationSettingsResource](docs/ApplicationSettingsResource.md)
- [AuthenticationError](docs/AuthenticationError.md)
- [ChannelGenericEventResource](docs/ChannelGenericEventResource.md)
- [ChannelImport](docs/ChannelImport.md)
- [ChannelInviteResource](docs/ChannelInviteResource.md)
- [ChannelMembershipImport](docs/ChannelMembershipImport.md)
- [ChannelMembershipResource](docs/ChannelMembershipResource.md)
- [ChannelMessageMentionProperties](docs/ChannelMessageMentionProperties.md)
- [ChannelProperties](docs/ChannelProperties.md)
- [ChannelResource](docs/ChannelResource.md)
- [ChatFunctionChatRuntimeProperties](docs/ChatFunctionChatRuntimeProperties.md)
- [ChatFunctionInvocationResource](docs/ChatFunctionInvocationResource.md)
- [ChatFunctionResource](docs/ChatFunctionResource.md)
- [ChatFunctionVersionResource](docs/ChatFunctionVersionResource.md)
- [ChatRuntimeDependencyProperties](docs/ChatRuntimeDependencyProperties.md)
- [ChatRuntimeProperties](docs/ChatRuntimeProperties.md)
- [ChatRuntimeResource](docs/ChatRuntimeResource.md)
- [ChatRuntimeScriptProperties](docs/ChatRuntimeScriptProperties.md)
- [ChatSessionResource](docs/ChatSessionResource.md)
- [ChatUserIdReference](docs/ChatUserIdReference.md)
- [ChatUserImport](docs/ChatUserImport.md)
- [ChatUserMentionedChannelNotificationData](docs/ChatUserMentionedChannelNotificationData.md)
- [ChatUserMentionedChatUserNotificationData](docs/ChatUserMentionedChatUserNotificationData.md)
- [ChatUserMessageMentionProperties](docs/ChatUserMessageMentionProperties.md)
- [ChatUserMessageResource](docs/ChatUserMessageResource.md)
- [ChatUserPresenceProperties](docs/ChatUserPresenceProperties.md)
- [ChatUserProperties](docs/ChatUserProperties.md)
- [ChatUserRepliedToChatUserMessageNotificationData](docs/ChatUserRepliedToChatUserMessageNotificationData.md)
- [ChatUserResource](docs/ChatUserResource.md)
- [ChatUserSentChatUserMessageNotificationData](docs/ChatUserSentChatUserMessageNotificationData.md)
- [ChatUserSessionProperties](docs/ChatUserSessionProperties.md)
- [ChatUserSessionResource](docs/ChatUserSessionResource.md)
- [ChatUserUsernameReference](docs/ChatUserUsernameReference.md)
- [CountResource](docs/CountResource.md)
- [CreateChannelGenericEventResource](docs/CreateChannelGenericEventResource.md)
- [CreateChannelInviteResource](docs/CreateChannelInviteResource.md)
- [CreateChannelResource](docs/CreateChannelResource.md)
- [CreateChatFunctionResource](docs/CreateChatFunctionResource.md)
- [CreateChatFunctionVersionResource](docs/CreateChatFunctionVersionResource.md)
- [CreateDelegatedReplyThreadKeystrokesResource](docs/CreateDelegatedReplyThreadKeystrokesResource.md)
- [CreateDirectChannelResource](docs/CreateDirectChannelResource.md)
- [CreateExternalFileProperties](docs/CreateExternalFileProperties.md)
- [CreateFileMessageResource](docs/CreateFileMessageResource.md)
- [CreateGroupChannelResource](docs/CreateGroupChannelResource.md)
- [CreateMessageResource](docs/CreateMessageResource.md)
- [CreatePersonChatUserResource](docs/CreatePersonChatUserResource.md)
- [CreatePrivateChannelResource](docs/CreatePrivateChannelResource.md)
- [CreatePublicChannelResource](docs/CreatePublicChannelResource.md)
- [CreateTextMessageResource](docs/CreateTextMessageResource.md)
- [CursorPageMetadata](docs/CursorPageMetadata.md)
- [CursorPagedModelMessageResource](docs/CursorPagedModelMessageResource.md)
- [CursorPagedModelMessageResourceEmbedded](docs/CursorPagedModelMessageResourceEmbedded.md)
- [CursorPagedModelNotificationResource](docs/CursorPagedModelNotificationResource.md)
- [CursorPagedModelNotificationResourceEmbedded](docs/CursorPagedModelNotificationResourceEmbedded.md)
- [DirectChannelImport](docs/DirectChannelImport.md)
- [DirectChannelProperties](docs/DirectChannelProperties.md)
- [DirectChannelResource](docs/DirectChannelResource.md)
- [EmojiProperties](docs/EmojiProperties.md)
- [FileChatUserMessageProperties](docs/FileChatUserMessageProperties.md)
- [FileChatUserMessageResource](docs/FileChatUserMessageResource.md)
- [FileImport](docs/FileImport.md)
- [FileMessageProperties](docs/FileMessageProperties.md)
- [FileProperties](docs/FileProperties.md)
- [FileSystemMessageProperties](docs/FileSystemMessageProperties.md)
- [FileSystemMessageResource](docs/FileSystemMessageResource.md)
- [GroupChannelImport](docs/GroupChannelImport.md)
- [GroupChannelProperties](docs/GroupChannelProperties.md)
- [Link](docs/Link.md)
- [MessageImport](docs/MessageImport.md)
- [MessageLinkPreviewImageProperties](docs/MessageLinkPreviewImageProperties.md)
- [MessageLinkPreviewProperties](docs/MessageLinkPreviewProperties.md)
- [MessageLinkProperties](docs/MessageLinkProperties.md)
- [MessageMentionChannelProperties](docs/MessageMentionChannelProperties.md)
- [MessageMentionProperties](docs/MessageMentionProperties.md)
- [MessageProperties](docs/MessageProperties.md)
- [MessageReactionsSummaryProperties](docs/MessageReactionsSummaryProperties.md)
- [MessageReadReceiptResource](docs/MessageReadReceiptResource.md)
- [MessageReadReceiptSummaryResource](docs/MessageReadReceiptSummaryResource.md)
- [MessageResource](docs/MessageResource.md)
- [NotificationData](docs/NotificationData.md)
- [NotificationResource](docs/NotificationResource.md)
- [PageMetadata](docs/PageMetadata.md)
- [Pageable](docs/Pageable.md)
- [PagedModelApplicationJobResource](docs/PagedModelApplicationJobResource.md)
- [PagedModelApplicationJobResourceEmbedded](docs/PagedModelApplicationJobResourceEmbedded.md)
- [PagedModelChannelInviteResource](docs/PagedModelChannelInviteResource.md)
- [PagedModelChannelInviteResourceEmbedded](docs/PagedModelChannelInviteResourceEmbedded.md)
- [PagedModelChannelMembershipResource](docs/PagedModelChannelMembershipResource.md)
- [PagedModelChannelMembershipResourceEmbedded](docs/PagedModelChannelMembershipResourceEmbedded.md)
- [PagedModelChannelResource](docs/PagedModelChannelResource.md)
- [PagedModelChannelResourceEmbedded](docs/PagedModelChannelResourceEmbedded.md)
- [PagedModelChatFunctionInvocationResource](docs/PagedModelChatFunctionInvocationResource.md)
- [PagedModelChatFunctionInvocationResourceEmbedded](docs/PagedModelChatFunctionInvocationResourceEmbedded.md)
- [PagedModelChatFunctionResource](docs/PagedModelChatFunctionResource.md)
- [PagedModelChatFunctionResourceEmbedded](docs/PagedModelChatFunctionResourceEmbedded.md)
- [PagedModelChatFunctionVersionResource](docs/PagedModelChatFunctionVersionResource.md)
- [PagedModelChatFunctionVersionResourceEmbedded](docs/PagedModelChatFunctionVersionResourceEmbedded.md)
- [PagedModelChatSessionResource](docs/PagedModelChatSessionResource.md)
- [PagedModelChatSessionResourceEmbedded](docs/PagedModelChatSessionResourceEmbedded.md)
- [PagedModelChatUserResource](docs/PagedModelChatUserResource.md)
- [PagedModelChatUserResourceEmbedded](docs/PagedModelChatUserResourceEmbedded.md)
- [PagedModelChatUserSessionResource](docs/PagedModelChatUserSessionResource.md)
- [PagedModelChatUserSessionResourceEmbedded](docs/PagedModelChatUserSessionResourceEmbedded.md)
- [PagedModelMessageReadReceiptResource](docs/PagedModelMessageReadReceiptResource.md)
- [PagedModelMessageReadReceiptResourceEmbedded](docs/PagedModelMessageReadReceiptResourceEmbedded.md)
- [PagedModelMessageReadReceiptSummaryResource](docs/PagedModelMessageReadReceiptSummaryResource.md)
- [PagedModelMessageReadReceiptSummaryResourceEmbedded](docs/PagedModelMessageReadReceiptSummaryResourceEmbedded.md)
- [PagedModelMessageResource](docs/PagedModelMessageResource.md)
- [PrivateChannelImport](docs/PrivateChannelImport.md)
- [PrivateChannelProperties](docs/PrivateChannelProperties.md)
- [PrivateChannelResource](docs/PrivateChannelResource.md)
- [PublicChannelImport](docs/PublicChannelImport.md)
- [PublicChannelProperties](docs/PublicChannelProperties.md)
- [PublicChannelResource](docs/PublicChannelResource.md)
- [ReplyThreadKeystrokesResource](docs/ReplyThreadKeystrokesResource.md)
- [ReplyThreadResource](docs/ReplyThreadResource.md)
- [SecretResource](docs/SecretResource.md)
- [SystemMessageResource](docs/SystemMessageResource.md)
- [TextChatUserMessageImport](docs/TextChatUserMessageImport.md)
- [TextChatUserMessageProperties](docs/TextChatUserMessageProperties.md)
- [TextChatUserMessageResource](docs/TextChatUserMessageResource.md)
- [TextMessageImport](docs/TextMessageImport.md)
- [TextMessageProperties](docs/TextMessageProperties.md)
- [TextMessageResource](docs/TextMessageResource.md)
- [TextSystemMessageImport](docs/TextSystemMessageImport.md)
- [TextSystemMessageProperties](docs/TextSystemMessageProperties.md)
- [TextSystemMessageResource](docs/TextSystemMessageResource.md)
---
<a id="documentation-for-authorization"></a>
## Authorization
This client uses **OAuth 2.0 – Client Credentials** automatically.
* **Flow:** `client_credentials`
* **Token URL (default):** `https://authorization.chatkitty.com/oauth/token`
* **Headers:** `Accept: application/vnd.chatkitty+json,*/*;q=0.8`
* **Token caching:** Based on `expires_in` via `axios-token-interceptor`
> Provide `clientId` and `clientSecret` to the `ChatKitty` constructor. Tokens are fetched and attached to requests automatically.
Authentication schemes defined for the API:
<a id="password_reset_token_authorization"></a>
### password_reset_token_authorization
* **Type:** API key
* **API key parameter name:** X-Token
* **Location:** HTTP header
<a id="application_authorization"></a>
### application_authorization
* **Type:** OAuth
* **Flow:** application
* **Authorization URL:**
* **Scopes:**
* **create:***: Create application resources
* **read:***: Read application resources
* **update:***: Update application resources
* **delete:***: Delete application resources
---
## Error Handling
Errors are standard Axios errors. Example:
```ts
try {
// await kitty.<SomeApi>.<someOperation>(...);
} catch (e: any) {
console.error('Request failed', {
status: e?.response?.status,
data: e?.response?.data,
});
}
```
---
## FAQ
**Can I use this in the browser?**
Not recommended. The Client Credentials flow requires a **client secret**, which must not be exposed to end users.
**How do I change the API base URL?**
Pass `basePath` when constructing `ChatKitty`.
**How do I point to a different OAuth server?**
Pass `authorizationBasePath` when constructing `ChatKitty`.
---
## Support
* Refer to the per-class endpoint docs listed above.
* Inspect Axios request/response with your own interceptors if needed.
---