mirror of
https://github.com/wassname/talk.git
synced 2026-06-30 23:12:34 +08:00
215 lines
4.7 KiB
YAML
215 lines
4.7 KiB
YAML
swagger: '2.0'
|
|
info:
|
|
title: Talk API
|
|
description: A commenting platform from The Coral Project. https://coralproject.net
|
|
version: "0.0.1"
|
|
host: api.talk-coralproject.net
|
|
schemes:
|
|
- https
|
|
basePath: /v1
|
|
produces:
|
|
- application/json
|
|
paths:
|
|
/comments:
|
|
# get:
|
|
# tags:
|
|
# - Comments
|
|
# produces:
|
|
# - application/json
|
|
# summary: Comment Types
|
|
# description: |
|
|
# This endpoint retrieves comments
|
|
# parameters:
|
|
# - name: id
|
|
# in: query
|
|
# description: Comment by id
|
|
# required: false
|
|
# type: string
|
|
# responses:
|
|
# 200:
|
|
# description: An array of comments
|
|
# schema:
|
|
# type: array
|
|
# items:
|
|
# $ref: '#/definitions/Comment'
|
|
post:
|
|
description: Add a new comment
|
|
parameters:
|
|
- name: body
|
|
in: body
|
|
description: Body
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/Comment'
|
|
responses:
|
|
201:
|
|
description: "OK: Comment Added"
|
|
schema:
|
|
$ref: '#/definitions/Comment'
|
|
500:
|
|
description: "Error"
|
|
/comments/{comment_id}/actions:
|
|
post:
|
|
tags:
|
|
- Comments
|
|
description: Add a action
|
|
parameters:
|
|
- name: comment_id
|
|
in: path
|
|
description: Comment ID
|
|
required: true
|
|
type: string
|
|
- name: body
|
|
in: body
|
|
description: comment
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/Action'
|
|
responses:
|
|
201:
|
|
description: Action Added
|
|
schema:
|
|
type: array
|
|
items:
|
|
$ref: '#/definitions/Comment'
|
|
/comments/{comment_id}/status:
|
|
post:
|
|
tags:
|
|
- Comments
|
|
description: Add a new status
|
|
parameters:
|
|
- name: comment_id
|
|
in: path
|
|
description: Comment ID
|
|
required: true
|
|
type: string
|
|
- name: body
|
|
in: body
|
|
description: comment
|
|
required: true
|
|
schema:
|
|
$ref: '#/definitions/ModerationAction'
|
|
responses:
|
|
204:
|
|
description: ModerationAction Added
|
|
/queue:
|
|
get:
|
|
tags:
|
|
- Queue
|
|
description: Queue
|
|
parameters:
|
|
- name: type
|
|
in: query
|
|
description:
|
|
"pending: no status | flagged: flagged action + no status | rejected: rejected status"
|
|
required: true
|
|
type: string
|
|
enum:
|
|
- pending
|
|
- flagged
|
|
- rejected
|
|
- name: limit
|
|
in: query
|
|
description: Queue limit
|
|
required: false
|
|
type: integer
|
|
- name: skip
|
|
in: query
|
|
description: Skip
|
|
required: false
|
|
type: integer
|
|
responses:
|
|
200:
|
|
description: ModerationAction Added
|
|
schema:
|
|
type: array
|
|
items:
|
|
$ref: '#/definitions/ModerationAction'
|
|
/stream:
|
|
get:
|
|
tags:
|
|
- Stream
|
|
description: Stream
|
|
parameters:
|
|
- name: asset_id
|
|
in: query
|
|
description: Description
|
|
required: true
|
|
type: string
|
|
responses:
|
|
200:
|
|
description: OK
|
|
schema:
|
|
type: array
|
|
items:
|
|
$ref: '#/definitions/Item'
|
|
/settings:
|
|
get:
|
|
tags:
|
|
- Settings
|
|
description: Settings
|
|
responses:
|
|
200:
|
|
description: OK
|
|
put:
|
|
tags:
|
|
- Settings
|
|
description: Settings
|
|
responses:
|
|
204:
|
|
description: OK
|
|
|
|
|
|
|
|
definitions:
|
|
Item:
|
|
type: object
|
|
ModerationAction:
|
|
type: string
|
|
Comment:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
description: Unique identifier
|
|
body:
|
|
type: string
|
|
description: Description of comment
|
|
created_at:
|
|
type: string
|
|
format: date-time
|
|
description: Display name of comment
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
description: Display name of comment
|
|
user_id:
|
|
type: string
|
|
description: Display name of comment
|
|
parent_id:
|
|
type: string
|
|
description: Display name of comment
|
|
asset_id:
|
|
type: string
|
|
description: Display name of comment
|
|
Actions:
|
|
type: object
|
|
properties:
|
|
item_id:
|
|
type: string
|
|
item_type:
|
|
type: string # comment, user...
|
|
type:
|
|
type: string # flagged, likes, upvotes...
|
|
count:
|
|
type: integer
|
|
current_user:
|
|
type: boolean
|
|
Action:
|
|
type: object
|
|
properties:
|
|
type:
|
|
type: string
|
|
user_id:
|
|
type: string
|