mirror of
https://github.com/overleaf/overleaf.git
synced 2024-12-22 21:43:47 +00:00
c29c151c9f
[web+chat] Redo deploy GitOrigin-RevId: a056bf20d49a39e71e03db740f57e8506dfc6b71
388 lines
9.9 KiB
YAML
388 lines
9.9 KiB
YAML
openapi: 3.1.0
|
|
x-stoplight:
|
|
id: okoe8mh50pjec
|
|
info:
|
|
title: chat
|
|
version: '1.0'
|
|
servers:
|
|
- url: 'http://chat:3010'
|
|
x-exegesis-controller: messagesController
|
|
paths:
|
|
'/project/{projectId}/messages':
|
|
parameters:
|
|
- schema:
|
|
type: string
|
|
name: projectId
|
|
in: path
|
|
required: true
|
|
get:
|
|
summary: Get Global messages
|
|
tags: []
|
|
responses:
|
|
'201':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/Message'
|
|
operationId: getGlobalMessages
|
|
description: Get global messages for the project with Project ID provided
|
|
parameters:
|
|
- schema:
|
|
type: string
|
|
in: query
|
|
name: before
|
|
- schema:
|
|
type: string
|
|
in: query
|
|
name: limit
|
|
post:
|
|
summary: Send Global message
|
|
operationId: sendGlobalMessage
|
|
responses:
|
|
'201':
|
|
description: OK
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Message'
|
|
examples:
|
|
example-1:
|
|
value:
|
|
user_id: string
|
|
content: string
|
|
description: 'UserID and Content of the message to be posted. '
|
|
description: Send global message for the project with Project ID provided
|
|
'/project/{projectId}/thread/{threadId}/messages':
|
|
parameters:
|
|
- schema:
|
|
type: string
|
|
name: projectId
|
|
in: path
|
|
required: true
|
|
- schema:
|
|
type: string
|
|
name: threadId
|
|
in: path
|
|
required: true
|
|
post:
|
|
summary: Send message
|
|
operationId: sendMessage
|
|
responses:
|
|
'201':
|
|
description: Created
|
|
description: Add a message to the thread with thread ID provided from the Project with Project ID provided.
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/Message'
|
|
description: |-
|
|
JSON object with :
|
|
- user_id: Id of the user
|
|
- content: Content of the message
|
|
'/project/{projectId}/threads':
|
|
parameters:
|
|
- schema:
|
|
type: string
|
|
name: projectId
|
|
in: path
|
|
required: true
|
|
get:
|
|
summary: Get Threads
|
|
tags: []
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/Thread'
|
|
examples: {}
|
|
'404':
|
|
description: Not Found
|
|
operationId: getThreads
|
|
description: Get the list of threads for the project with Project ID provided
|
|
'/project/{projectId}/thread/{threadId}/messages/{messageId}/edit':
|
|
parameters:
|
|
- schema:
|
|
type: string
|
|
name: projectId
|
|
in: path
|
|
required: true
|
|
- schema:
|
|
type: string
|
|
name: threadId
|
|
in: path
|
|
required: true
|
|
- schema:
|
|
type: string
|
|
name: messageId
|
|
in: path
|
|
required: true
|
|
post:
|
|
summary: Edit message
|
|
operationId: editMessage
|
|
responses:
|
|
'204':
|
|
description: No Content
|
|
'404':
|
|
description: Not Found
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
content:
|
|
type: string
|
|
user_id:
|
|
type: string
|
|
readOnly: true
|
|
required:
|
|
- content
|
|
examples: {}
|
|
description: |-
|
|
JSON object with :
|
|
- content: Content of the message to edit
|
|
- user_id: Id of the user (optional)
|
|
description: |
|
|
Update message with Message ID provided from the Thread ID and Project ID provided
|
|
'/project/{projectId}/thread/{threadId}/messages/{messageId}':
|
|
parameters:
|
|
- schema:
|
|
type: string
|
|
name: projectId
|
|
in: path
|
|
required: true
|
|
- schema:
|
|
type: string
|
|
name: threadId
|
|
in: path
|
|
required: true
|
|
- schema:
|
|
type: string
|
|
name: messageId
|
|
in: path
|
|
required: true
|
|
delete:
|
|
summary: Delete message
|
|
operationId: deleteMessage
|
|
responses:
|
|
'204':
|
|
description: No Content
|
|
description: 'Delete message with Message ID provided, from the Thread with ThreadID and ProjectID provided'
|
|
'/project/{projectId}/thread/{threadId}/resolve':
|
|
parameters:
|
|
- schema:
|
|
type: string
|
|
name: projectId
|
|
in: path
|
|
required: true
|
|
- schema:
|
|
type: string
|
|
name: threadId
|
|
in: path
|
|
required: true
|
|
post:
|
|
summary: Resolve Thread
|
|
operationId: resolveThread
|
|
responses:
|
|
'204':
|
|
description: No Content
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
user_id:
|
|
type: string
|
|
required:
|
|
- user_id
|
|
description: |-
|
|
JSON object with :
|
|
- user_id: Id of the user.
|
|
description: Mark Thread with ThreadID and ProjectID provided owned by the user with UserID provided as resolved.
|
|
'/project/{projectId}/thread/{threadId}/reopen':
|
|
parameters:
|
|
- schema:
|
|
type: string
|
|
name: projectId
|
|
in: path
|
|
required: true
|
|
- schema:
|
|
type: string
|
|
name: threadId
|
|
in: path
|
|
required: true
|
|
post:
|
|
summary: Reopen Thread
|
|
operationId: reopenThread
|
|
responses:
|
|
'204':
|
|
description: No Content
|
|
description: |-
|
|
Reopen Thread with ThreadID and ProjectID provided.
|
|
i.e unmark it as resolved.
|
|
'/project/{projectId}/thread/{threadId}':
|
|
parameters:
|
|
- schema:
|
|
type: string
|
|
name: projectId
|
|
in: path
|
|
required: true
|
|
- schema:
|
|
type: string
|
|
name: threadId
|
|
in: path
|
|
required: true
|
|
delete:
|
|
summary: Delete thread
|
|
operationId: deleteThread
|
|
responses:
|
|
'204':
|
|
description: No Content
|
|
description: Delete thread with ThreadID and ProjectID provided
|
|
'/project/{projectId}/resolved-thread-ids':
|
|
parameters:
|
|
- schema:
|
|
type: string
|
|
name: projectId
|
|
in: path
|
|
required: true
|
|
get:
|
|
summary: Get resolved thread ids
|
|
operationId: getResolvedThreadIds
|
|
responses:
|
|
'200':
|
|
description: Resolved thread ids
|
|
'/project/{projectId}':
|
|
parameters:
|
|
- schema:
|
|
type: string
|
|
name: projectId
|
|
in: path
|
|
required: true
|
|
delete:
|
|
summary: Destroy project
|
|
operationId: destroyProject
|
|
responses:
|
|
'204':
|
|
description: No Content
|
|
description: 'Delete all threads from Project with Project ID provided, and all messages in those threads.'
|
|
/status:
|
|
get:
|
|
summary: Check status
|
|
tags: []
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: string
|
|
description: chat is alive
|
|
operationId: getStatus
|
|
description: Check that the Chat service is alive
|
|
head:
|
|
summary: Check status
|
|
tags: []
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: string
|
|
description: chat is alive
|
|
operationId: getStatus
|
|
description: Check that the Chat service is alive
|
|
'/project/{projectId}/duplicate-comment-threads':
|
|
parameters:
|
|
- schema:
|
|
type: string
|
|
name: projectId
|
|
in: path
|
|
required: true
|
|
post:
|
|
summary: Duplicate comment threads
|
|
operationId: duplicateCommentThreads
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
threads:
|
|
type: array
|
|
items:
|
|
type: string
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
newThreads:
|
|
type: object
|
|
description: Mapping of old thread ids to their duplicated thread ids
|
|
description: Duplicate a list of comment threads
|
|
'/project/{projectId}/generate-thread-data':
|
|
parameters:
|
|
- schema:
|
|
type: string
|
|
name: projectId
|
|
in: path
|
|
required: true
|
|
post:
|
|
summary: Generate thread data to load into the frontend
|
|
operationId: generateThreadData
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
threads:
|
|
type: array
|
|
items:
|
|
type: string
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
description: Load threads and generate a json blob containing all messages in all the threads
|
|
components:
|
|
schemas:
|
|
Message:
|
|
title: Message
|
|
x-stoplight:
|
|
id: ue9n1vvezlutw
|
|
type: object
|
|
examples:
|
|
- user_id: string
|
|
- content: string
|
|
properties:
|
|
user_id:
|
|
type: string
|
|
content:
|
|
type: string
|
|
required:
|
|
- user_id
|
|
- content
|
|
Thread:
|
|
title: Thread
|
|
x-stoplight:
|
|
id: 0ppt3jw4h5bua
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/Message'
|