Citra Space Chat API
The chat API from Citra Space — 5 operation(s) for chat.
The chat API from Citra Space — 5 operation(s) for chat.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/citra-space:citra-space-chat-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: SOICAT Chat API
version: 0.1.0
tags:
- name: Chat
paths:
/my/conversation:
get:
operationId: list_conversations_my_conversation_get
parameters:
- in: query
name: limit
required: false
schema:
format: int64
type: integer
- in: query
name: offset
required: false
schema:
format: int64
type: integer
responses:
'200':
content:
application/json:
schema:
items:
$ref: '#/components/schemas/Conversation'
type: array
description: ''
tags:
- Chat
summary: List conversations my conversation get
x-summary-source: derived
post:
operationId: create_conversation_my_conversation_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ConversationCreate'
required: true
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/Conversation'
description: ''
tags:
- Chat
summary: Create conversation my conversation post
x-summary-source: derived
/my/conversation/{conversation_id}:
delete:
operationId: delete_conversation_my_conversation__conversation_id__delete
parameters:
- in: path
name: conversation_id
required: true
schema:
format: uuid
type: string
responses:
'204':
description: ''
'409':
description: A reply is still running
tags:
- Chat
summary: Delete conversation my conversation conversation id delete
x-summary-source: derived
/my/conversation/{conversation_id}/feedback:
post:
operationId: create_chat_feedback_my_conversation__conversation_id__feedback_post
parameters:
- in: path
name: conversation_id
required: true
schema:
format: uuid
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ChatFeedbackCreate'
required: true
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/ChatFeedback'
description: ''
tags:
- Chat
summary: Create chat feedback my conversation conversation id feedback post
x-summary-source: derived
/my/conversation/{conversation_id}/messages:
get:
operationId: get_conversation_messages_my_conversation__conversation_id__messages_get
parameters:
- in: path
name: conversation_id
required: true
schema:
format: uuid
type: string
responses:
'200':
content:
application/json:
schema:
items:
$ref: '#/components/schemas/Message'
type: array
description: ''
tags:
- Chat
summary: Get conversation messages my conversation conversation id messages get
x-summary-source: derived
/my/conversation/{conversation_id}/messages/stream:
post:
operationId: post_message_stream_my_conversation__conversation_id__messages_stream_post
parameters:
- in: path
name: conversation_id
required: true
schema:
format: uuid
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/MessageCreate'
required: true
responses:
'200':
content:
text/event-stream:
schema:
type: string
description: 'SSE JSON envelopes: phase, tool, complete (ConversationMessageResponse), error'
tags:
- Chat
summary: Post message stream my conversation conversation id messages stream post
x-summary-source: derived
components:
schemas:
ConversationCreate:
properties:
metadata:
additionalProperties: {}
propertyNames:
type: string
type:
- object
- 'null'
title:
type:
- string
- 'null'
type: object
ChatFeedback:
properties:
comment:
type:
- string
- 'null'
conversationId:
format: uuid
type: string
createdAt:
format: date-time
type: string
environment:
type: string
feedbackType:
$ref: '#/components/schemas/FeedbackType'
id:
format: uuid
type: string
messageId:
format: uuid
type: string
userId:
format: uuid
type: string
required:
- id
- userId
- conversationId
- messageId
- environment
- feedbackType
- createdAt
type: object
FeedbackType:
enum:
- positive
- negative
type: string
ChatFeedbackCreate:
properties:
comment:
type:
- string
- 'null'
feedbackType:
$ref: '#/components/schemas/FeedbackType'
messageId:
format: uuid
type: string
required:
- messageId
- feedbackType
type: object
Message:
properties:
content:
items:
$ref: '#/components/schemas/TextBlock'
type: array
conversationId:
format: uuid
type: string
createdAt:
format: date-time
type: string
id:
format: uuid
type: string
role:
type: string
toolCalls:
additionalProperties: {}
propertyNames:
type: string
type:
- object
- 'null'
required:
- id
- conversationId
- role
- content
- createdAt
type: object
TextBlock:
properties:
text:
type: string
required:
- text
type: object
MessageCreate:
properties:
confirmedMessageId:
description: Confirm exactly the stored scheduling proposal from this assistant message.
format: uuid
type:
- string
- 'null'
content:
items:
$ref: '#/components/schemas/TextBlock'
type: array
required:
- content
type: object
Conversation:
properties:
createdAt:
format: date-time
type: string
id:
format: uuid
type: string
metadata: {}
title:
type:
- string
- 'null'
updatedAt:
format: date-time
type: string
userId:
format: uuid
type: string
required:
- id
- userId
- createdAt
- updatedAt
type: object
securitySchemes:
HTTPBearer:
scheme: bearer
type: http