jan/docs/openapi/specs/messages.yaml
2023-11-28 08:01:17 +09:00

334 lines
11 KiB
YAML

components:
schemas:
MessageObject:
type: object
properties:
id:
type: string
description: |
"Sequential or UUID identifier of the message."
<span style="color:#0ca47c">OpenAI compatible</span>
example: 0
object:
type: string
description: |
"Type of the object, defaults to 'thread.message'."
<span style="color:#0ca47c">OpenAI compatible</span>
example: thread.message
created_at:
type: integer
format: int64
description: |
"Unix timestamp representing the creation time of the message."
<span style="color:#0ca47c">OpenAI compatible</span>
thread_id:
type: string
description: |
"Identifier of the thread to which this message belongs. Defaults to parent thread."
<span style="color:#0ca47c">OpenAI compatible</span>
example: "thread_asdf"
assistant_id:
type: string
description: |
"Identifier of the assistant involved in the message. Defaults to parent thread."
<span style="color:#0ca47c">OpenAI compatible</span>
example: jan
role:
type: string
enum: ["user", "assistant"]
description: |
"Role of the sender, either 'user' or 'assistant'."
<span style="color:#0ca47c">OpenAI compatible</span>
content:
type: array
items:
type: object
properties:
type:
type: string
description: |
"Type of content, e.g., 'text'."
<span style="color:#0ca47c">OpenAI compatible</span>
text:
type: object
properties:
value:
type: string
description: |
"Text content of the message."
<span style="color:#0ca47c">OpenAI compatible</span>
example: "Hi!?"
annotations:
type: array
items:
type: string
description: |
"Annotations for the text content, if any."
<span style="color:#0ca47c">OpenAI compatible</span>
example: []
metadata:
type: object
description: |
"Metadata associated with the message, defaults to an empty object."
<span style="color:#0ca47c">OpenAI compatible</span>
example: {}
GetMessageResponse:
type: object
properties:
id:
type: string
description: "The identifier of the message."
example: msg_abc123
object:
type: string
description: "Type of the object, indicating it's a thread message."
default: thread.message
created_at:
type: integer
format: int64
description: "Unix timestamp representing the creation time of the message."
example: 1699017614
thread_id:
type: string
description: "Identifier of the thread to which this message belongs."
example: thread_abc123
role:
type: string
description: "Role of the sender, either 'user' or 'assistant'."
example: user
content:
type: array
items:
type: object
properties:
type:
type: string
description: "Type of content, e.g., 'text'."
example: text
text:
type: object
properties:
value:
type: string
description: "Text content of the message."
example: "How does AI work? Explain it in simple terms."
annotations:
type: array
items:
type: string
description: "Annotations for the text content, if any."
example: []
file_ids:
type: array
items:
type: string
description: "Array of file IDs associated with the message, if any."
example: []
assistant_id:
type: string
description: "Identifier of the assistant involved in the message, if applicable."
example: null
run_id:
type: string
description: "Run ID associated with the message, if applicable."
example: null
metadata:
type: object
description: "Metadata associated with the message."
example: {}
CreateMessageResponse:
type: object
properties:
id:
type: string
description: "The identifier of the created message."
example: msg_abc123
object:
type: string
description: "Type of the object, indicating it's a thread message."
example: thread.message
created_at:
type: integer
format: int64
description: "Unix timestamp representing the creation time of the message."
example: 1699017614
thread_id:
type: string
description: "Identifier of the thread to which this message belongs."
example: thread_abc123
role:
type: string
description: "Role of the sender, either 'user' or 'assistant'."
example: user
content:
type: array
items:
type: object
properties:
type:
type: string
description: "Type of content, e.g., 'text'."
example: text
text:
type: object
properties:
value:
type: string
description: "Text content of the message."
example: "How does AI work? Explain it in simple terms."
annotations:
type: array
items:
type: string
description: "Annotations for the text content, if any."
example: []
file_ids:
type: array
items:
type: string
description: "Array of file IDs associated with the message, if any."
example: []
assistant_id:
type: string
description: "Identifier of the assistant involved in the message, if applicable."
example: null
run_id:
type: string
description: "Run ID associated with the message, if applicable."
example: null
metadata:
type: object
description: "Metadata associated with the message."
example: {}
ListMessagesResponse:
type: object
properties:
object:
type: string
description: "Type of the object, indicating it's a list."
default: "list"
data:
type: array
items:
$ref: '#/components/schemas/ListMessageObject'
first_id:
type: string
description: "Identifier of the first message in the list."
example: "msg_abc123"
last_id:
type: string
description: "Identifier of the last message in the list."
example: "msg_abc456"
has_more:
type: boolean
description: "Indicates whether there are more messages to retrieve."
example: false
ListMessageObject:
type: object
properties:
id:
type: string
description: "The identifier of the message."
example: msg_abc123
object:
type: string
description: "Type of the object, indicating it's a thread message."
example: thread.message
created_at:
type: integer
format: int64
description: "Unix timestamp representing the creation time of the message."
example: 1699017614
thread_id:
type: string
description: "Identifier of the thread to which this message belongs."
example: thread_abc123
role:
type: string
description: "Role of the sender, either 'user' or 'assistant'."
example: user
content:
type: array
items:
type: object
properties:
type:
type: string
description: "Type of content, e.g., 'text'."
text:
type: object
properties:
value:
type: string
description: "Text content of the message."
example: "How does AI work? Explain it in simple terms."
annotations:
type: array
items:
type: string
description: "Annotations for the text content, if any."
file_ids:
type: array
items:
type: string
description: "Array of file IDs associated with the message, if any."
example: []
assistant_id:
type: string
description: "Identifier of the assistant involved in the message, if applicable."
example: null
run_id:
type: string
description: "Run ID associated with the message, if applicable."
example: null
metadata:
type: object
description: "Metadata associated with the message."
example: {}
MessageFileObject:
type: object
properties:
id:
type: string
description: "The identifier of the file."
example: file-abc123
object:
type: string
description: "Type of the object, indicating it's a thread message file."
example: thread.message.file
created_at:
type: integer
format: int64
description: "Unix timestamp representing the creation time of the file."
example: 1699061776
message_id:
type: string
description: "Identifier of the message to which this file is associated."
example: msg_abc123
ListMessageFilesResponse:
type: object
properties:
object:
type: string
description: "Type of the object, indicating it's a list."
default: "list"
data:
type: array
items:
$ref: '#/components/schemas/MessageFileObject'