Spaces:
Running
Running
openapi: 3.0.3 | |
info: | |
title: TypingMind API Documentation | |
version: 1.1.0 | |
description: " | |
<h5 class='mt-8 mb-2'><b>API Hosts:</b></h5> | |
<ol class='list-decimal mt-2'> | |
<li>For US instances: <code>https://api.typingmind.com</code></li> | |
<li>For EU instances: <code>https://api.eu.typingmind.com</code></li> | |
</ol> | |
<h5 class='mt-8 mb-2'><b>How to use the API:</b></h5> | |
<ol class='list-decimal mt-2'> | |
<li>Generate an API key by accessing the custom instance admin page (go to Integrations > API Integration).</li> | |
<li>When making a request, include the API key in the request headers as <code>X-API-KEY</code>.</li> | |
</ol> | |
" | |
servers: | |
- url: https://api.typingmind.com/api/v1 | |
tags: | |
- name: Users | |
- name: Characters | |
- name: Chat | |
- name: Chatlogs | |
paths: | |
/users: | |
post: | |
operationId: addUser | |
tags: | |
- Users | |
summary: Add a user to your chat instance | |
requestBody: | |
content: | |
application/json: | |
schema: | |
type: object | |
properties: | |
email: | |
type: string | |
example: [email protected] | |
tags: | |
type: array | |
items: | |
type: string | |
example: ['tag1', 'tag2'] | |
required: true | |
responses: | |
'200': | |
description: OK | |
content: | |
application/json: | |
schema: | |
$ref: '#/components/schemas/User' | |
'401': | |
description: Unauthorized (API Key is missing or invalid) | |
'500': | |
description: Internal Server Error | |
security: | |
- ApiKeyAuth: [] | |
get: | |
operationId: getUsers | |
tags: | |
- Users | |
summary: Get all users in your chat instance | |
parameters: | |
- in: query | |
name: email | |
schema: | |
type: string | |
description: Email of the user | |
example: email%40example.com | |
responses: | |
'200': | |
description: OK | |
content: | |
application/json: | |
schema: | |
type: object | |
properties: | |
data: | |
type: array | |
items: | |
oneOf: | |
- $ref: '#/components/schemas/User' | |
'401': | |
description: Unauthorized (API Key is missing or invalid) | |
'500': | |
description: Internal Server Error | |
security: | |
- ApiKeyAuth: [] | |
/ai-characters: | |
get: | |
operationId: getCharacters | |
tags: | |
- Characters | |
summary: Get all AI characters in your chat instance | |
responses: | |
'200': | |
description: OK | |
content: | |
application/json: | |
schema: | |
type: object | |
properties: | |
data: | |
type: array | |
items: | |
oneOf: | |
- $ref: '#/components/schemas/Character' | |
'401': | |
description: Unauthorized (API Key is missing or invalid) | |
'500': | |
description: Internal Server Error | |
security: | |
- ApiKeyAuth: [] | |
/users/{id}: | |
delete: | |
operationId: deleteUser | |
tags: | |
- Users | |
summary: Remove a user from your chat instance | |
parameters: | |
- in: path | |
name: id | |
schema: | |
type: integer | |
required: true | |
description: ID of the user | |
example: 123456 | |
responses: | |
'200': | |
description: Successful | |
'401': | |
description: Unauthorized (API Key is missing or invalid) | |
'404': | |
description: User Not Found | |
'500': | |
description: Internal Server Error | |
security: | |
- ApiKeyAuth: [] | |
patch: | |
operationId: updateUser | |
tags: | |
- Users | |
summary: Update a user | |
parameters: | |
- in: path | |
name: id | |
schema: | |
type: integer | |
required: true | |
description: ID of the user | |
example: 123456 | |
requestBody: | |
content: | |
application/json: | |
schema: | |
type: object | |
properties: | |
tags: | |
type: array | |
items: | |
type: string | |
example: ['tag1', 'tag2'] | |
required: true | |
responses: | |
'200': | |
description: Successful | |
'401': | |
description: Unauthorized (API Key is missing or invalid) | |
'404': | |
description: User Not Found | |
'500': | |
description: Internal Server Error | |
security: | |
- ApiKeyAuth: [] | |
/chat/completions: | |
post: | |
operationId: createChatCompletions | |
tags: | |
- Chat | |
summary: Create a model response for the given chat conversation | |
requestBody: | |
description: '<br>Find more information about the request body here:<br> | |
<a href="https://platform.openai.com/docs/api-reference/chat/create" target="_blank">OpenAI API Reference</a><br> | |
<a href="https://docs.anthropic.com/claude/reference/complete_post" target="_blank">Anthropic API Reference</a><br><br>' | |
content: | |
application/json: | |
schema: | |
type: object | |
properties: | |
model: | |
type: string | |
enum: | |
[ | |
'gpt-3.5-turbo', | |
'gpt-3.5-turbo-16k', | |
'gpt-4', | |
'gpt-4-32k', | |
'claude-2', | |
'claude-1', | |
'claude-instant-1', | |
'claude-instant-1.2', | |
'gpt-3.5-turbo-0301', | |
'gpt-4-0314', | |
'gpt-4-32k-0314', | |
] | |
stream: | |
type: boolean | |
messages: | |
type: array | |
items: | |
type: object | |
description: Use for GPT models | |
prompt: | |
type: string | |
description: Use for Claude models | |
activatedCharacterID: | |
type: string | |
description: AI character for this completion | |
required: | |
- model | |
- messages | |
- prompt | |
example: | |
model: 'gpt-3.5-turbo' | |
stream: true | |
messages: | |
[ | |
{ | |
'role': 'system', | |
'content': 'You are a helpful AI assistant.', | |
}, | |
{ 'role': 'user', 'content': 'hi' }, | |
] | |
required: true | |
responses: | |
'200': | |
description: OK | |
'401': | |
description: Unauthorized (API Key is missing or invalid) | |
'500': | |
description: Internal Server Error | |
security: | |
- ApiKeyAuth: [] | |
/chatlogs: | |
get: | |
operationId: getChatlogs | |
tags: | |
- Chatlogs | |
summary: Get chat logs in your chat instance | |
parameters: | |
- in: query | |
name: startUnixTime | |
schema: | |
type: number | |
description: Unix time of the start time | |
example: 1640995200 | |
- in: query | |
name: endUnixTime | |
schema: | |
type: number | |
description: Unix time of the end time | |
example: 1640995200 | |
responses: | |
'200': | |
description: OK | |
content: | |
application/json: | |
schema: | |
type: object | |
properties: | |
data: | |
type: array | |
items: | |
oneOf: | |
- $ref: '#/components/schemas/Chatlog' | |
'401': | |
description: Unauthorized (API Key is missing or invalid) | |
'500': | |
description: Internal Server Error | |
security: | |
- ApiKeyAuth: [] | |
components: | |
securitySchemes: | |
ApiKeyAuth: | |
type: apiKey | |
in: header | |
name: X-API-KEY | |
schemas: | |
User: | |
type: object | |
properties: | |
id: | |
type: string | |
example: 123456 | |
email: | |
type: string | |
example: [email protected] | |
createdAt: | |
type: string | |
tags: | |
type: array | |
items: | |
type: string | |
example: ['tag1', 'tag2'] | |
Character: | |
type: object | |
properties: | |
id: | |
type: string | |
title: | |
type: string | |
description: | |
type: string | |
instruction: | |
type: string | |
defaultModel: | |
type: string | |
createdAt: | |
type: string | |
Chatlog: | |
type: object | |
properties: | |
chatID: | |
type: string | |
example: 'U9H8EEJpLL' | |
chatTitle: | |
type: string | |
example: 'Chat with an AI assistant' | |
createdAt: | |
type: string | |
example: '2024-08-14T04:18:53.000Z' | |
recordedAt: | |
type: string | |
example: '2024-08-14T04:18:53.000Z' | |
conversationText: | |
type: string | |
example: 'User: Hello\n\nAssistant: Hi there!' | |