1250 lines
43 KiB
JSON
1250 lines
43 KiB
JSON
[
|
|
{
|
|
"title": "Commands",
|
|
"parameters": {},
|
|
"entrypoint": "commands",
|
|
"path": "/commands",
|
|
"authentication": [],
|
|
"apis": [
|
|
{
|
|
"name": "list",
|
|
"path": "/",
|
|
"method": "GET",
|
|
"title": "List of available commands"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"title": "Status",
|
|
"parameters": {},
|
|
"entrypoint": "status",
|
|
"path": "/status",
|
|
"authentication": [],
|
|
"apis": [
|
|
{
|
|
"name": "list",
|
|
"path": "/",
|
|
"method": "GET",
|
|
"title": "See all current statuses"
|
|
},
|
|
{
|
|
"name": "set",
|
|
"path": "/",
|
|
"method": "POST",
|
|
"title": "Set user's status",
|
|
"parameters": {
|
|
"post": [
|
|
{
|
|
"type": "string",
|
|
"name": "icon",
|
|
"required": false,
|
|
"title": "Status icon"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"name": "message",
|
|
"required": false,
|
|
"title": "Status message"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"name": "expires",
|
|
"required": false,
|
|
"title": "Clear status when it expires (eg: when-active, afternoon, tomorrow 1h, 30m, 1 PM, 2019-05-20)"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "delete",
|
|
"path": "/",
|
|
"method": "DELETE",
|
|
"title": "Clear status"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "activity",
|
|
"path": "/activity",
|
|
"entrypoint": "activity",
|
|
"title": "User activity",
|
|
"parameters": {},
|
|
"authentication": [],
|
|
"apis": [
|
|
{
|
|
"name": "send",
|
|
"method": "POST",
|
|
"title": "Sends user's activity to all subscribers; globally or per channel/message.",
|
|
"path": "/",
|
|
"parameters": {
|
|
"post": [
|
|
{
|
|
"name": "channelID",
|
|
"type": "uint64",
|
|
"required": false,
|
|
"title": "Channel ID, if set, activity will be send only to subscribed users"
|
|
},
|
|
{
|
|
"name": "messageID",
|
|
"type": "uint64",
|
|
"required": false,
|
|
"title": "Message ID, if set, channelID must be set as well"
|
|
},
|
|
{
|
|
"name": "kind",
|
|
"type": "string",
|
|
"required": true,
|
|
"title": "Arbitrary string"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"title": "Channels",
|
|
"description": "A channel is a representation of a sequence of messages. It has meta data like channel subject. Channels may be public, private or group.",
|
|
"entrypoint": "channel",
|
|
"path": "/channels",
|
|
"authentication": [
|
|
"Client ID",
|
|
"Session ID"
|
|
],
|
|
"struct": [
|
|
{
|
|
"imports": [
|
|
"github.com/cortezaproject/corteza-server/messaging/types"
|
|
]
|
|
}
|
|
],
|
|
"apis": [
|
|
{
|
|
"name": "list",
|
|
"method": "GET",
|
|
"title": "List channels",
|
|
"path": "/",
|
|
"parameters": {
|
|
"get": [
|
|
{
|
|
"type": "string",
|
|
"name": "query",
|
|
"required": false,
|
|
"title": "Search query"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "create",
|
|
"method": "POST",
|
|
"title": "Create new channel",
|
|
"path": "/",
|
|
"parameters": {
|
|
"post": [
|
|
{
|
|
"type": "string",
|
|
"name": "name",
|
|
"required": false,
|
|
"title": "Name of Channel"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"name": "topic",
|
|
"required": false,
|
|
"title": "Subject of Channel"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"name": "type",
|
|
"required": false,
|
|
"title": "Channel type"
|
|
},
|
|
{
|
|
"type": "types.ChannelMembershipPolicy",
|
|
"name": "membershipPolicy",
|
|
"required": false,
|
|
"title": "Membership policy (eg: featured, forced)?"
|
|
},
|
|
{
|
|
"type": "[]string",
|
|
"name": "members",
|
|
"required": false,
|
|
"title": "Initial members of the channel"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "update",
|
|
"method": "PUT",
|
|
"path": "/{channelID}",
|
|
"title": "Update channel details",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"type": "uint64",
|
|
"name": "channelID",
|
|
"required": true,
|
|
"title": "Channel ID"
|
|
}
|
|
],
|
|
"post": [
|
|
{
|
|
"type": "string",
|
|
"name": "name",
|
|
"required": false,
|
|
"title": "Name of Channel"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"name": "topic",
|
|
"required": false,
|
|
"title": "Subject of Channel"
|
|
},
|
|
{
|
|
"type": "types.ChannelMembershipPolicy",
|
|
"name": "membershipPolicy",
|
|
"required": false,
|
|
"title": "Membership policy (eg: featured, forced)?"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"name": "type",
|
|
"required": false,
|
|
"title": "Channel type"
|
|
},
|
|
{
|
|
"type": "uint64",
|
|
"name": "organisationID",
|
|
"required": false,
|
|
"title": "Move channel to different organisation"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "state",
|
|
"method": "PUT",
|
|
"path": "/{channelID}/state",
|
|
"title": "Update channel state",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"type": "uint64",
|
|
"name": "channelID",
|
|
"required": true,
|
|
"title": "Channel ID"
|
|
}
|
|
],
|
|
"post": [
|
|
{
|
|
"type": "string",
|
|
"name": "state",
|
|
"required": true,
|
|
"title": "Valid values: delete, undelete, archive, unarchive"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "setFlag",
|
|
"method": "PUT",
|
|
"path": "/{channelID}/flag",
|
|
"title": "Update channel membership flag",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"type": "uint64",
|
|
"name": "channelID",
|
|
"required": true,
|
|
"title": "Channel ID"
|
|
}
|
|
],
|
|
"post": [
|
|
{
|
|
"type": "string",
|
|
"name": "flag",
|
|
"required": true,
|
|
"title": "Valid values: pinned, hidden, ignored"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "removeFlag",
|
|
"method": "DELETE",
|
|
"path": "/{channelID}/flag",
|
|
"title": "Remove channel membership flag",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"type": "uint64",
|
|
"name": "channelID",
|
|
"required": true,
|
|
"title": "Channel ID"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "read",
|
|
"method": "GET",
|
|
"path": "/{channelID}",
|
|
"title": "Read channel details",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"type": "uint64",
|
|
"name": "channelID",
|
|
"required": true,
|
|
"title": "Channel ID"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "members",
|
|
"method": "GET",
|
|
"path": "/{channelID}/members",
|
|
"title": "List channel members",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"name": "channelID",
|
|
"type": "uint64",
|
|
"required": true,
|
|
"title": "Channel ID"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "join",
|
|
"method": "PUT",
|
|
"path": "/{channelID}/members/{userID}",
|
|
"title": "Join channel",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"name": "channelID",
|
|
"type": "uint64",
|
|
"required": true,
|
|
"title": "Channel ID"
|
|
},
|
|
{
|
|
"name": "userID",
|
|
"type": "uint64",
|
|
"required": false,
|
|
"title": "Member ID"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "part",
|
|
"method": "DELETE",
|
|
"path": "/{channelID}/members/{userID}",
|
|
"title": "Remove member from channel",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"name": "channelID",
|
|
"type": "uint64",
|
|
"required": true,
|
|
"title": "Channel ID"
|
|
},
|
|
{
|
|
"name": "userID",
|
|
"type": "uint64",
|
|
"required": false,
|
|
"title": "Member ID"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "invite",
|
|
"method": "POST",
|
|
"path": "/{channelID}/invite",
|
|
"title": "Join channel",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"name": "channelID",
|
|
"type": "uint64",
|
|
"required": true,
|
|
"title": "Channel ID"
|
|
}
|
|
],
|
|
"post": [
|
|
{
|
|
"name": "userID",
|
|
"type": "[]string",
|
|
"required": false,
|
|
"title": "User ID"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "attach",
|
|
"path": "/{channelID}/attach",
|
|
"method": "POST",
|
|
"title": "Attach file to channel",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"name": "channelID",
|
|
"type": "uint64",
|
|
"required": true,
|
|
"title": "Channel ID"
|
|
}
|
|
],
|
|
"post": [
|
|
{
|
|
"name": "replyTo",
|
|
"type": "uint64",
|
|
"required": false,
|
|
"title": "Upload as a reply"
|
|
},
|
|
{
|
|
"name": "upload",
|
|
"type": "*multipart.FileHeader",
|
|
"required": true,
|
|
"title": "File to upload"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"title": "Messages",
|
|
"path": "/channels/{channelID}/messages",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"name": "channelID",
|
|
"type": "uint64",
|
|
"required": true,
|
|
"title": "Channel ID"
|
|
}
|
|
]
|
|
},
|
|
"entrypoint": "message",
|
|
"authentication": [
|
|
"Client ID",
|
|
"Session ID"
|
|
],
|
|
"apis": [
|
|
{
|
|
"name": "create",
|
|
"path": "/",
|
|
"method": "POST",
|
|
"title": "Post new message to the channel",
|
|
"parameters": {
|
|
"post": [
|
|
{
|
|
"type": "string",
|
|
"name": "message",
|
|
"required": true,
|
|
"sensitive": true,
|
|
"title": "Message contents (markdown)"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "executeCommand",
|
|
"path": "/command/{command}/exec",
|
|
"method": "POST",
|
|
"title": "Execute command",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"name": "command",
|
|
"type": "string",
|
|
"required": true,
|
|
"title": "Command to be executed"
|
|
}
|
|
],
|
|
"post": [
|
|
{
|
|
"type": "string",
|
|
"name": "input",
|
|
"required": false,
|
|
"title": "Arbitrary command input"
|
|
},
|
|
{
|
|
"type": "[]string",
|
|
"name": "params",
|
|
"required": false,
|
|
"title": "Command parameters"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "markAsRead",
|
|
"path": "/mark-as-read",
|
|
"method": "GET",
|
|
"title": "Manages read/unread messages in a channel or a thread",
|
|
"parameters": {
|
|
"path": [],
|
|
"get": [
|
|
{
|
|
"type": "uint64",
|
|
"name": "threadID",
|
|
"required": false,
|
|
"title": "ID of thread (messageID) "
|
|
},
|
|
{
|
|
"type": "uint64",
|
|
"name": "lastReadMessageID",
|
|
"required": false,
|
|
"title": "ID of the last read message"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "edit",
|
|
"path": "/{messageID}",
|
|
"method": "PUT",
|
|
"title": "Edit existing message",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"name": "messageID",
|
|
"type": "uint64",
|
|
"required": true,
|
|
"title": "Message ID"
|
|
}
|
|
],
|
|
"post": [
|
|
{
|
|
"type": "string",
|
|
"name": "message",
|
|
"required": true,
|
|
"sensitive": true,
|
|
"title": "Message contents (markdown)"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "delete",
|
|
"path": "/{messageID}",
|
|
"method": "DELETE",
|
|
"title": "Delete existing message",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"name": "messageID",
|
|
"type": "uint64",
|
|
"required": true,
|
|
"title": "Message ID"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "replyCreate",
|
|
"path": "/{messageID}/replies",
|
|
"method": "POST",
|
|
"title": "Reply to a message",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"name": "messageID",
|
|
"type": "uint64",
|
|
"required": true,
|
|
"title": "Message ID"
|
|
}
|
|
],
|
|
"post": [
|
|
{
|
|
"type": "string",
|
|
"name": "message",
|
|
"required": true,
|
|
"sensitive": true,
|
|
"title": "Message contents (markdown)"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "pinCreate",
|
|
"path": "/{messageID}/pin",
|
|
"method": "POST",
|
|
"title": "Pin message to channel (public bookmark)",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"name": "messageID",
|
|
"type": "uint64",
|
|
"required": true,
|
|
"title": "Message ID"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "pinRemove",
|
|
"path": "/{messageID}/pin",
|
|
"method": "DELETE",
|
|
"title": "Pin message to channel (public bookmark)",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"name": "messageID",
|
|
"type": "uint64",
|
|
"required": true,
|
|
"title": "Message ID"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "bookmarkCreate",
|
|
"path": "/{messageID}/bookmark",
|
|
"method": "POST",
|
|
"title": "Bookmark a message (private bookmark)",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"name": "messageID",
|
|
"type": "uint64",
|
|
"required": true,
|
|
"title": "Message ID"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "bookmarkRemove",
|
|
"path": "/{messageID}/bookmark",
|
|
"method": "DELETE",
|
|
"title": "Remove boomark from message (private bookmark)",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"name": "messageID",
|
|
"type": "uint64",
|
|
"required": true,
|
|
"title": "Message ID"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "reactionCreate",
|
|
"path": "/{messageID}/reaction/{reaction}",
|
|
"method": "POST",
|
|
"title": "React to a message",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"name": "messageID",
|
|
"type": "uint64",
|
|
"required": true,
|
|
"title": "Message ID"
|
|
},
|
|
{
|
|
"name": "reaction",
|
|
"type": "string",
|
|
"required": true,
|
|
"title": "Reaction"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "reactionRemove",
|
|
"path": "/{messageID}/reaction/{reaction}",
|
|
"method": "DELETE",
|
|
"title": "Delete reaction from a message",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"name": "messageID",
|
|
"type": "uint64",
|
|
"required": true,
|
|
"title": "Message ID"
|
|
},
|
|
{
|
|
"name": "reaction",
|
|
"type": "string",
|
|
"required": true,
|
|
"title": "Reaction"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"title": "Attachments",
|
|
"path": "/attachment/{attachmentID}",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"name": "attachmentID",
|
|
"type": "uint64",
|
|
"required": true,
|
|
"title": "Attachment ID"
|
|
}
|
|
],
|
|
"get": [
|
|
{
|
|
"type": "string",
|
|
"name": "sign",
|
|
"required": true,
|
|
"title": "Signature"
|
|
},
|
|
{
|
|
"type": "uint64",
|
|
"name": "userID",
|
|
"required": true,
|
|
"title": "User ID"
|
|
}
|
|
]
|
|
},
|
|
"entrypoint": "attachment",
|
|
"authentication": [
|
|
"Client ID",
|
|
"Session ID"
|
|
],
|
|
"apis": [
|
|
{
|
|
"name": "original",
|
|
"path": "/original/{name}",
|
|
"method": "GET",
|
|
"title": "Serves attached file",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"name": "name",
|
|
"type": "string",
|
|
"required": true,
|
|
"title": "File name"
|
|
}
|
|
],
|
|
"get": [
|
|
{
|
|
"type": "bool",
|
|
"name": "download",
|
|
"required": false,
|
|
"title": "Force file download"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "preview",
|
|
"path": "/preview.{ext}",
|
|
"method": "GET",
|
|
"title": "Serves preview of an attached file",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"name": "ext",
|
|
"type": "string",
|
|
"required": true,
|
|
"title": "Preview extension/format"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "search",
|
|
"entrypoint": "search",
|
|
"authentication": [
|
|
"Client ID",
|
|
"Session ID"
|
|
],
|
|
"path": "/search",
|
|
"method": "GET",
|
|
"title": "Search entry point",
|
|
"parameters": {
|
|
"get": [
|
|
{
|
|
"name": "query",
|
|
"type": "string",
|
|
"required": false,
|
|
"title": "Search query"
|
|
}
|
|
]
|
|
},
|
|
"apis": [
|
|
{
|
|
"method": "GET",
|
|
"name": "messages",
|
|
"path": "/messages",
|
|
"title": "Search for messages",
|
|
"parameters": {
|
|
"get": [
|
|
{
|
|
"name": "channelID",
|
|
"type": "[]string",
|
|
"required": false,
|
|
"title": "Filter by channels"
|
|
},
|
|
{
|
|
"name": "afterMessageID",
|
|
"type": "uint64",
|
|
"required": false,
|
|
"title": "ID of the first message in the list (exclusive)"
|
|
},
|
|
{
|
|
"name": "beforeMessageID",
|
|
"type": "uint64",
|
|
"required": false,
|
|
"title": "ID of the last message in the list (exclusive)"
|
|
},
|
|
{
|
|
"name": "fromMessageID",
|
|
"type": "uint64",
|
|
"required": false,
|
|
"title": "ID of the first message in the list (inclusive)"
|
|
},
|
|
{
|
|
"name": "toMessageID",
|
|
"type": "uint64",
|
|
"required": false,
|
|
"title": "ID of the last message the list (inclusive)"
|
|
},
|
|
{
|
|
"name": "threadID",
|
|
"type": "[]string",
|
|
"required": false,
|
|
"title": "Filter by thread message ID"
|
|
},
|
|
{
|
|
"name": "userID",
|
|
"type": "[]string",
|
|
"required": false,
|
|
"title": "Filter by one or more user"
|
|
},
|
|
{
|
|
"name": "type",
|
|
"type": "[]string",
|
|
"required": false,
|
|
"title": "Filter by message type (text, inlineImage, attachment, ...)"
|
|
},
|
|
{
|
|
"name": "pinnedOnly",
|
|
"type": "bool",
|
|
"required": false,
|
|
"title": "Return only pinned messages"
|
|
},
|
|
{
|
|
"name": "bookmarkedOnly",
|
|
"type": "bool",
|
|
"required": false,
|
|
"title": "Only bookmarked messages"
|
|
},
|
|
{
|
|
"name": "limit",
|
|
"type": "uint",
|
|
"required": false,
|
|
"title": "Max number of messages"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"name": "threads",
|
|
"path": "/threads",
|
|
"title": "Search for threads",
|
|
"parameters": {
|
|
"get": [
|
|
{
|
|
"name": "channelID",
|
|
"type": "[]string",
|
|
"required": false,
|
|
"title": "Filter by channels"
|
|
},
|
|
{
|
|
"name": "limit",
|
|
"type": "uint",
|
|
"required": false,
|
|
"title": "Max number of messages"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"entrypoint": "webhooks",
|
|
"authentication": [],
|
|
"path": "/webhooks",
|
|
"method": "GET",
|
|
"title": "Webhooks",
|
|
"struct": [
|
|
{
|
|
"imports": [
|
|
"github.com/cortezaproject/corteza-server/messaging/types"
|
|
]
|
|
}
|
|
],
|
|
"parameters": {},
|
|
"apis": [
|
|
{
|
|
"name": "list",
|
|
"path": "/",
|
|
"method": "GET",
|
|
"title": "List created webhooks",
|
|
"parameters": {
|
|
"get": [
|
|
{
|
|
"name": "channelID",
|
|
"type": "uint64",
|
|
"required": false,
|
|
"title": "Channel ID"
|
|
},
|
|
{
|
|
"name": "userID",
|
|
"type": "uint64",
|
|
"required": false,
|
|
"title": "Owner user ID"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "create",
|
|
"path": "/",
|
|
"method": "POST",
|
|
"title": "Create webhook",
|
|
"parameters": {
|
|
"post": [
|
|
{
|
|
"name": "channelID",
|
|
"type": "uint64",
|
|
"required": true,
|
|
"title": "Channel ID"
|
|
},
|
|
{
|
|
"name": "kind",
|
|
"type": "types.WebhookKind",
|
|
"required": true,
|
|
"title": "Kind (incoming, outgoing)"
|
|
},
|
|
{
|
|
"name": "userID",
|
|
"type": "uint64",
|
|
"required": true,
|
|
"title": "Bot User ID"
|
|
},
|
|
{
|
|
"name": "trigger",
|
|
"type": "string",
|
|
"required": false,
|
|
"title": "Trigger word"
|
|
},
|
|
{
|
|
"name": "url",
|
|
"type": "string",
|
|
"required": false,
|
|
"title": "POST URL"
|
|
},
|
|
{
|
|
"name": "username",
|
|
"type": "string",
|
|
"required": false,
|
|
"title": "Default user name"
|
|
},
|
|
{
|
|
"name": "avatar",
|
|
"type": "*multipart.FileHeader",
|
|
"required": false,
|
|
"title": "Default avatar"
|
|
},
|
|
{
|
|
"name": "avatarURL",
|
|
"type": "string",
|
|
"required": false,
|
|
"title": "Default avatar (from URL)"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "update",
|
|
"path": "/{webhookID}",
|
|
"method": "POST",
|
|
"title": "Attach file to channel",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"name": "webhookID",
|
|
"type": "uint64",
|
|
"required": true,
|
|
"title": "Webhook ID"
|
|
}
|
|
],
|
|
"post": [
|
|
{
|
|
"name": "channelID",
|
|
"type": "uint64",
|
|
"required": true,
|
|
"title": "Channel ID"
|
|
},
|
|
{
|
|
"name": "kind",
|
|
"type": "types.WebhookKind",
|
|
"required": true,
|
|
"title": "Kind (incoming, outgoing)"
|
|
},
|
|
{
|
|
"name": "userID",
|
|
"type": "uint64",
|
|
"required": true,
|
|
"title": "Bot User ID"
|
|
},
|
|
{
|
|
"name": "trigger",
|
|
"type": "string",
|
|
"required": false,
|
|
"title": "Trigger word"
|
|
},
|
|
{
|
|
"name": "url",
|
|
"type": "string",
|
|
"required": false,
|
|
"title": "POST URL"
|
|
},
|
|
{
|
|
"name": "username",
|
|
"type": "string",
|
|
"required": false,
|
|
"title": "Default user name"
|
|
},
|
|
{
|
|
"name": "avatar",
|
|
"type": "*multipart.FileHeader",
|
|
"required": false,
|
|
"title": "Default avatar"
|
|
},
|
|
{
|
|
"name": "avatarURL",
|
|
"type": "string",
|
|
"required": false,
|
|
"title": "Default avatar (from URL)"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"name": "get",
|
|
"path": "/{webhookID}",
|
|
"title": "Get webhook details",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"name": "webhookID",
|
|
"type": "uint64",
|
|
"required": true,
|
|
"title": "Webhook ID"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"method": "DELETE",
|
|
"name": "delete",
|
|
"path": "/{webhookID}",
|
|
"title": "Delete webhook",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"name": "webhookID",
|
|
"type": "uint64",
|
|
"required": true,
|
|
"title": "Webhook ID"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"entrypoint": "webhooks_public",
|
|
"authentication": [],
|
|
"path": "/webhooks",
|
|
"method": "GET",
|
|
"title": "Webhooks (Public)",
|
|
"parameters": {},
|
|
"apis": [
|
|
{
|
|
"method": "DELETE",
|
|
"name": "delete",
|
|
"path": "/{webhookID}/{webhookToken}",
|
|
"title": "Delete webhook",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"name": "webhookID",
|
|
"type": "uint64",
|
|
"required": true,
|
|
"title": "Webhook ID"
|
|
},
|
|
{
|
|
"name": "webhookToken",
|
|
"type": "string",
|
|
"required": true,
|
|
"title": "Authentication token"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"name": "create",
|
|
"path": "/{webhookID}/{webhookToken}",
|
|
"title": "Create a message from a webhook payload",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"name": "webhookID",
|
|
"type": "uint64",
|
|
"required": true,
|
|
"title": "Webhook ID"
|
|
},
|
|
{
|
|
"name": "webhookToken",
|
|
"type": "string",
|
|
"required": true,
|
|
"title": "Authentication token"
|
|
}
|
|
],
|
|
"get": [
|
|
{
|
|
"name": "username",
|
|
"type": "string",
|
|
"required": false,
|
|
"title": "Custom username for webhook message"
|
|
},
|
|
{
|
|
"name": "avatarURL",
|
|
"type": "string",
|
|
"required": false,
|
|
"title": "Custom avatar picture for webhook message"
|
|
},
|
|
{
|
|
"name": "content",
|
|
"type": "string",
|
|
"required": true,
|
|
"title": "Message contents"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"title": "Permissions",
|
|
"parameters": {},
|
|
"entrypoint": "permissions",
|
|
"path": "/permissions",
|
|
"authentication": [
|
|
"Client ID",
|
|
"Session ID"
|
|
],
|
|
"struct": [
|
|
{
|
|
"imports": [
|
|
"github.com/cortezaproject/corteza-server/internal/permissions"
|
|
]
|
|
}
|
|
],
|
|
"apis": [
|
|
{
|
|
"name": "list",
|
|
"path": "/",
|
|
"method": "GET",
|
|
"title": "Retrieve defined permissions",
|
|
"parameters": {}
|
|
},
|
|
{
|
|
"name": "effective",
|
|
"path": "/effective",
|
|
"method": "GET",
|
|
"title": "Effective rules for current user",
|
|
"parameters": {
|
|
"get": [
|
|
{
|
|
"name": "resource",
|
|
"type": "string",
|
|
"required": false,
|
|
"title": "Show only rules for a specific resource"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "read",
|
|
"path": "/{roleID}/rules",
|
|
"method": "GET",
|
|
"title": "Retrieve role permissions",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"name": "roleID",
|
|
"type": "uint64",
|
|
"required": true,
|
|
"title": "Role ID"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "delete",
|
|
"path": "/{roleID}/rules",
|
|
"method": "DELETE",
|
|
"title": "Remove all defined role permissions",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"name": "roleID",
|
|
"type": "uint64",
|
|
"required": true,
|
|
"title": "Role ID"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "update",
|
|
"path": "/{roleID}/rules",
|
|
"method": "PATCH",
|
|
"title": "Update permission settings",
|
|
"parameters": {
|
|
"path": [
|
|
{
|
|
"name": "roleID",
|
|
"type": "uint64",
|
|
"required": true,
|
|
"title": "Role ID"
|
|
}
|
|
],
|
|
"post": [
|
|
{
|
|
"name": "rules",
|
|
"type": "permissions.RuleSet",
|
|
"required": true,
|
|
"title": "List of permission rules to set"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|