databag/doc/api.oa3

4542 lines
124 KiB
Plaintext
Raw Normal View History

2021-12-20 21:49:59 +00:00
openapi: 3.0.0
info:
description: |
DataBag provides storage for decentralized identity based self-hosting apps.
It is intended to support sharing of personal data and hosting group
conversations.
version: "0.0.1"
title: DataBag
contact:
email: roland.osborne@gmail.com
license:
name: Apache 2.0
url: 'http://www.apache.org/licenses/LICENSE-2.0.html'
tags:
2022-01-04 07:18:32 +00:00
- name: status
2021-12-20 21:49:59 +00:00
description: websocket endpoint for receiving module revision events
- name: admin
description: account creation for portal backend.
- name: account
description: account configuration for portal backend. supports app attachment
2022-01-05 05:31:18 +00:00
- name: authorize
description: authorize holder of identity for external service
2021-12-20 21:49:59 +00:00
- name: profile
description: getting and setting of the public profile
2021-12-24 22:59:24 +00:00
- name: share
2021-12-31 06:01:08 +00:00
description: access control for personal subjects, associates content and cards
2021-12-31 20:23:30 +00:00
- name: contact
description: connection to other identities, hook receiver
2021-12-22 05:50:25 +00:00
- name: content
description: posting and listing of personal subjects, group and tag managment
2021-12-20 21:49:59 +00:00
- name: converstaion
description: group sharing of subjects
paths:
2021-12-31 20:23:30 +00:00
# Concetps:
## access tokens for bearer auth:prefix for bearer tokens types
### app: app_
### contact: cnt_
2022-01-04 07:18:32 +00:00
### attach: atc_
### reset: res_
### create: act_
2021-12-31 20:23:30 +00:00
## subject based content provides external definition of datatypes
2021-12-26 07:19:25 +00:00
2022-01-04 07:18:32 +00:00
/status:
2021-12-20 21:49:59 +00:00
get:
tags:
2022-01-04 07:18:32 +00:00
- status
description: Websocket placeholder endpoint for receiving account status updates
operationId: status
2021-12-20 21:49:59 +00:00
responses:
'200':
description: Awaiting announce
2021-12-25 22:54:45 +00:00
/admin/claimable:
2021-12-20 21:49:59 +00:00
get:
tags:
- admin
2021-12-21 08:13:48 +00:00
description: Check if portal params have been set
2022-01-04 07:18:32 +00:00
operationId: get-node-claimable
2021-12-20 21:49:59 +00:00
responses:
'200':
description: success
2022-01-13 18:06:19 +00:00
content:
application/json:
schema:
type: boolean
2021-12-20 21:49:59 +00:00
'500':
description: internal server error
2022-01-05 05:31:18 +00:00
/admin/claim:
2021-12-20 21:49:59 +00:00
post:
tags:
- admin
2021-12-21 08:13:48 +00:00
description: Set admin password and node domain
2022-01-05 05:31:18 +00:00
operationId: set-node-claim
2021-12-20 21:49:59 +00:00
security:
2022-01-17 05:11:24 +00:00
- basicCredentials: []
2021-12-20 21:49:59 +00:00
parameters:
- name: domain
in: query
description: domain of node
required: true
schema:
type: string
responses:
'200':
description: success
2022-01-04 07:18:32 +00:00
'401':
description: permission denied
2021-12-20 21:49:59 +00:00
'500':
description: internal server error
2022-01-05 05:31:18 +00:00
/admin/config:
get:
tags:
- admin
description: Get node configuration. Access granted to admin username and password.
operationId: get-node-config
security:
- basicAuth: []
responses:
'200':
description: success
content:
application/json:
schema:
$ref: '#/components/schemas/NodeConfig'
'401':
description: permission denied
'500':
description: internal server error
2021-12-20 21:49:59 +00:00
put:
tags:
- admin
2022-01-05 05:31:18 +00:00
description: Set node config. Access granted to admin username and password.
operationId: set-node-config
security:
- basicAuth: []
responses:
'200':
description: success
'401':
2022-01-04 07:18:32 +00:00
description: permission denide
'500':
description: internal server error
2022-01-05 05:31:18 +00:00
2022-01-04 07:18:32 +00:00
/admin/accounts:
get:
tags:
- admin
2022-01-04 07:18:32 +00:00
description: Get list of accounts hosted on node. Access granted to admin username and password.
operationId: get-node-accounts
2021-12-20 21:49:59 +00:00
security:
- basicAuth: []
responses:
2022-01-04 07:18:32 +00:00
'200':
description: successful operation
content:
application/json:
schema:
2022-01-04 07:18:32 +00:00
type: array
items:
$ref: '#/components/schemas/Account'
'401':
description: invalid password
'404':
2022-01-04 07:18:32 +00:00
description: handle not found
'500':
description: internal server error
post:
tags:
- admin
2022-01-04 07:18:32 +00:00
description: Gernerate a url for creating a new account. Access granted to admin username and password.
operationId: add-node-account
security:
- basicAuth: []
responses:
'201':
2022-01-05 05:31:18 +00:00
description: success
content:
application/json:
schema:
type: string
'401':
description: invalid password
'500':
description: internal server error
2022-01-04 07:18:32 +00:00
/admin/accounts/{accountId}/reset:
put:
tags:
- admin
2022-01-04 07:18:32 +00:00
description: Generate a password reset url for specified account. Access granted to admin username and password.
operationId: set-node-account
security:
- basicAuth: []
2022-01-04 07:18:32 +00:00
parameters:
- name: accountId
in: path
description: id of profile to access
required: true
schema:
type: string
2021-12-20 21:49:59 +00:00
responses:
2022-01-04 07:18:32 +00:00
'201':
2022-01-05 05:31:18 +00:00
description: success
content:
application/json:
schema:
2022-01-04 07:18:32 +00:00
type: string
2021-12-20 21:49:59 +00:00
'401':
description: invalid password
'404':
2022-01-04 07:18:32 +00:00
description: unknown portal
2021-12-20 21:49:59 +00:00
'500':
description: internal server error
2022-01-04 07:18:32 +00:00
/admin/accounts/{accountId}/image:
get:
tags:
- admin
2022-01-04 07:18:32 +00:00
description: Get profile image of specified account. Access granted to admin username and password
operationId: get-node-account-image
security:
- basicAuth: []
parameters:
2022-01-04 07:18:32 +00:00
- name: accountId
in: path
2022-01-04 07:18:32 +00:00
description: id of specified account
required: true
schema:
type: string
2022-01-04 07:18:32 +00:00
responses:
'200':
2022-01-04 07:18:32 +00:00
description: success
content:
application/octet-stream: # content specific
schema:
type: string
format: binary
'401':
2022-01-04 07:18:32 +00:00
description: permission denied
'405':
description: invalid image
'500':
description: internal server error
2022-01-04 07:18:32 +00:00
/admin/accounts/{accountId}:
delete:
tags:
- admin
2022-01-04 07:18:32 +00:00
description: Remove account from node. Access granted to admin username and password.
operationId: remove-node-account
security:
- basicAuth: []
parameters:
2022-01-04 07:18:32 +00:00
- name: accountId
in: path
2022-01-04 07:18:32 +00:00
description: id of account to delete
required: true
schema:
type: string
responses:
'200':
description: successful operation
'401':
2022-01-04 07:18:32 +00:00
description: invalid authentication
'404':
description: account not found
'500':
description: internal server error
2022-01-13 05:00:52 +00:00
/admin/accounts/import:
post:
tags:
- admin
description: Import an account account from a backup archive. Access granted to the admin username and password.
operationId: import account
security:
- basicAuth: []
responses:
'201':
description: success
'401':
description: permission denied
'406':
description: account already imported
'500':
description: internal server error
requestBody:
content:
multipart/form-data:
schema:
type: object
properties:
fileName:
type: string
format: binary
/account/public/claimable:
get:
tags:
- account
description: Check if a public account can be created.
operationId: get-public-claimable
responses:
'200':
description: success
2022-01-13 18:06:19 +00:00
content:
application/json:
schema:
type: boolean
'500':
description: internal server error
/account/public/profile:
post:
tags:
- account
description: Add a new account. Basic auth will be used for the accounts username and password. Access granted to when public account available.
operationId: add-public-account
security:
- bearerAuth: []
2022-01-17 05:11:24 +00:00
- basicCredentials: []
responses:
'201':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/Profile'
'400':
description: invalid handle or password
'406':
description: accounts not available
'500':
description: internal server error
/account/claimable:
2021-12-20 21:49:59 +00:00
get:
tags:
- account
2022-01-04 07:18:32 +00:00
description: Check if username is available. Access granted account reset token or account create token.
operationId: get-account-username
2021-12-20 21:49:59 +00:00
security:
- bearerAuth: []
parameters:
- name: username
in: query
description: username to check
required: true
schema:
type: string
responses:
'200':
description: success
2022-01-13 18:06:19 +00:00
content:
application/json:
schema:
type: boolean
2021-12-20 21:49:59 +00:00
'401':
2022-01-04 07:18:32 +00:00
description: permission denied
2021-12-20 21:49:59 +00:00
'500':
description: internal server error
/account/token:
2021-12-20 21:49:59 +00:00
get:
tags:
- account
2022-01-04 07:18:32 +00:00
description: Check if account reset token or account create token is valid. Access granted to valid create or reset token.
operationId: get-account-token
security:
- bearerAuth: []
responses:
'200':
description: success
2022-01-15 22:54:49 +00:00
content:
application/json:
schema:
type: string
'401':
2022-01-04 07:18:32 +00:00
description: permission denied
'500':
description: internal server error
2022-01-13 05:00:52 +00:00
/account/did:
get:
tags:
- account
description: Retrieve account DIDkey. Authorized to account username and password.
operationId: get-account-did
security:
- basicAuth: []
responses:
'200':
description: successful operation
content:
application/json:
schema:
type: string
'401':
description: authentication error
'500':
description: internal server error
2022-01-13 05:08:44 +00:00
/account/status:
2022-01-13 05:00:52 +00:00
get:
tags:
- account
description: Get disabled status of account. Authorized to account username and password.
operationId: get-account-status
security:
- basicAuth: []
responses:
'200':
description: successful operation
content:
application/json:
schema:
2022-01-13 05:08:44 +00:00
$ref: '#/components/schemas/AccountStatus'
2022-01-13 05:00:52 +00:00
'401':
description: authentication error
'500':
description: internal server error
/account/profile:
get:
tags:
- account
2022-01-04 07:18:32 +00:00
description: Get account profile. Access granted to account's username and password.
operationId: get-account-profile
2021-12-20 21:49:59 +00:00
security:
- basicAuth: []
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/Profile'
'401':
description: authentication error
'500':
description: internal server error
post:
tags:
- account
2022-01-04 07:18:32 +00:00
description: Add a new account. Basic auth will be used for the accounts username and password. Access granted to valid create account token.
operationId: add-account
2021-12-20 21:49:59 +00:00
security:
- bearerAuth: []
2022-01-17 05:11:24 +00:00
- basicCredentials: []
2021-12-20 21:49:59 +00:00
responses:
'201':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/Profile'
'400':
description: invalid handle or password
'401':
description: permission denied
2021-12-20 21:49:59 +00:00
'500':
description: internal server error
2022-01-13 18:06:19 +00:00
delete:
tags:
- account
description: Delete account. Access granted to valid create account token.
operationId: remove-account
security:
- basicAuth: []
responses:
'201':
description: successful operation
'401':
description: permission denied
'500':
description: internal server error
2021-12-20 21:49:59 +00:00
2022-01-04 07:18:32 +00:00
/account/profile/image:
get:
tags:
- account
description: Get profile image. Access granted to account's username and password
operationId: get-account-image
security:
- basicAuth: []
responses:
'200':
description: success
content:
application/octet-stream: # content specific
schema:
type: string
format: binary
'401':
description: permission denied
'405':
description: invalid image
'500':
description: internal server error
2022-01-13 18:06:19 +00:00
/account/assets/{assetId}:
get:
tags:
- account
description: Get asset assigned to an account. The endpoint supports byte-range requests and responds with the content-type set appropriatly. Access granted to the app tokens of the account holder and in the case of non-original assets, the contact token for accounts with which the article is shared.
operationId: get-account-asset
security:
- basicAuth: []
parameters:
- name: assetId
in: path
description: specified asset id
required: true
schema:
type: string
responses:
'200':
description: success
content:
application/octet-stream: #asset specific
schema:
type: string
format: binary
'401':
description: permission denied
'404':
description: asset or article not found
'500':
description: internal server error
2022-01-04 07:18:32 +00:00
/account/auth:
2021-12-21 22:47:10 +00:00
post:
tags:
- account
2022-01-04 07:18:32 +00:00
description: Generate token to reset authentication. Access granted to account's login and password.
2021-12-21 22:47:10 +00:00
operationId: add-account-authentication
security:
- basicAuth: []
responses:
'201':
description: generated
content:
application/json:
schema:
type: string
'401':
description: invalid password
'500':
description: internal server error
put:
tags:
- account
2022-01-04 07:18:32 +00:00
description: Apply account reset token to set handle and password. Basic auth will be used for new login and password. Access granted to valid reset token.
2021-12-21 22:47:10 +00:00
operationId: set-account-authentication
security:
- bearerAuth: []
- basicAuth: []
responses:
'201':
2022-01-04 07:18:32 +00:00
description: success
2021-12-21 22:47:10 +00:00
'401':
2022-01-04 07:18:32 +00:00
description: permission denied
2021-12-21 22:47:10 +00:00
'500':
description: internal server error
2022-01-13 18:06:19 +00:00
/account/node:
put:
tags:
- account
description: Set forwarding address after export/import has completed. Access granted to valid reset token.
operationId: set-account-node
security:
- basicAuth: []
responses:
'201':
description: success
'401':
description: permission denied
'405':
description: failed to confirm
'500':
description: internal server error
2022-01-04 07:18:32 +00:00
/account/apps:
get:
tags:
- account
description: Get list of attached apps to account. Access granted to account's username and password.
operationId: get-account-apps
security:
- basicAuth: []
responses:
'200':
description: success
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/App'
'401':
description: permission denied
'500':
description: internal server error
2021-12-21 08:13:48 +00:00
post:
2021-12-20 21:49:59 +00:00
tags:
- account
2022-01-04 07:18:32 +00:00
description: Generate token to attach an app to the account. Access granted to account's username and password.
operationId: add-account-app
2021-12-20 21:49:59 +00:00
security:
- basicAuth: []
responses:
'201':
description: generated
content:
application/json:
schema:
type: string
'401':
description: invalid password
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-20 21:49:59 +00:00
'500':
description: internal server error
2021-12-21 08:13:48 +00:00
put:
tags:
- account
2022-01-04 07:18:32 +00:00
description: Apply the token to attach an app to the account. Access granted to valid attach token.
operationId: set-account-app
2021-12-21 08:13:48 +00:00
security:
- bearerAuth: []
responses:
'201':
description: generated
content:
application/json:
schema:
type: string
'401':
description: invalid token
'406':
description: app limit reached
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-21 08:13:48 +00:00
'500':
description: internal server error
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/AppData'
/account/apps/{appId}:
delete:
tags:
- account
2022-01-04 07:18:32 +00:00
description: Get list of attached apps. Access granted to account's username and password.
operationId: remove-account-app
security:
- basicAuth: []
parameters:
- name: appId
in: path
description: specified app id
required: true
schema:
type: string
responses:
'200':
description: successful operation
'401':
description: invalid password
'404':
description: app not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
'500':
description: internal server error
/account/export:
put:
tags:
- account
description: Export account from node. Account is automatically disabled afterwards. Authorized to account username and password.
operationId: set-account-export
security:
- basicAuth: []
responses:
'201':
description: success
'401':
description: permission denied
'500':
description: internal server error
2022-01-04 07:18:32 +00:00
2022-01-05 05:31:18 +00:00
/authorize:
put:
tags:
2022-01-05 05:31:18 +00:00
- authorize
2022-01-04 07:18:32 +00:00
description: Retrieve an authenticate data messaging verifying the account holder is accepting the action referenced by the token.
2022-01-13 05:23:18 +00:00
operationId: authorize
security:
- bearerAuth: []
responses:
2022-01-04 07:18:32 +00:00
'200':
description: success
content:
application/json:
schema:
$ref: '#/components/schemas/DataMessage'
'401':
2022-01-04 07:18:32 +00:00
description: permission denied
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
'500':
description: internal server error
2022-01-04 07:18:32 +00:00
requestBody:
content:
application/json:
schema:
type: string
2021-12-21 22:47:10 +00:00
/profile:
get:
tags:
- profile
2022-01-03 23:13:16 +00:00
description: Get profile of accunt. Access granted to app token of account holder.
2021-12-21 22:47:10 +00:00
operationId: get-profile
security:
- bearerAuth: []
responses:
'200':
2022-01-03 23:13:16 +00:00
description: success
2021-12-21 22:47:10 +00:00
content:
application/json:
schema:
2021-12-24 22:59:24 +00:00
$ref: '#/components/schemas/Profile'
2021-12-21 22:47:10 +00:00
'401':
2022-01-03 23:13:16 +00:00
description: permission denied
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-21 22:47:10 +00:00
'500':
description: internal server error
2022-01-19 08:03:46 +00:00
/profile/data:
2021-12-21 22:47:10 +00:00
put:
tags:
- profile
2022-01-03 23:13:16 +00:00
description: Set profile data. Access granted to app tokens of account holder.
2021-12-21 22:47:10 +00:00
operationId: set-profile
security:
- bearerAuth: []
responses:
'200':
2022-01-03 23:13:16 +00:00
description: success
2021-12-21 22:47:10 +00:00
'401':
2022-01-03 23:13:16 +00:00
description: permission denied
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-21 22:47:10 +00:00
'500':
description: internal server error
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ProfileData'
2021-12-22 05:50:25 +00:00
/profile/image:
get:
tags:
- profile
2022-01-03 23:13:16 +00:00
description: Download base64 decoded data of profile image. Access granted to app tokens of account holder.
2021-12-22 05:50:25 +00:00
operationId: get-profile-image
security:
- bearerAuth: []
responses:
'200':
2022-01-03 23:13:16 +00:00
description: success
2021-12-22 05:50:25 +00:00
content:
2022-01-03 23:13:16 +00:00
application/octet-stream: # content specific
2021-12-22 05:50:25 +00:00
schema:
type: string
format: binary
'401':
2022-01-03 23:13:16 +00:00
description: permission denied
2022-01-03 17:21:18 +00:00
'405':
description: invalid image
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-22 05:50:25 +00:00
'500':
description: internal server error
2022-01-19 08:03:46 +00:00
put:
tags:
- profile
description: Set base64 encode image data for profile. Access granted to app tokens of account holder.
operationId: set-profile-image
security:
- bearerAuth: []
responses:
'200':
description: success
'401':
description: permission denied
'405':
description: invalid image
'410':
description: account disabled
'500':
description: internal server error
requestBody:
content:
application/octet-stream:
schema:
type: string
format: binary
2021-12-22 05:50:25 +00:00
2021-12-21 22:47:10 +00:00
/profile/message:
get:
tags:
- profile
2022-01-03 23:13:16 +00:00
description: Get a profile data message. Access granted to app token of account holder or contact token of connected contact.
2021-12-21 22:47:10 +00:00
operationId: get-profile-message
2022-01-03 23:13:16 +00:00
security:
- bearerAuth: []
2021-12-21 22:47:10 +00:00
responses:
'200':
2022-01-03 23:13:16 +00:00
description: success
2021-12-21 22:47:10 +00:00
content:
application/json:
schema:
$ref: '#/components/schemas/DataMessage'
'401':
2022-01-03 23:13:16 +00:00
description: permission denied
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-21 22:47:10 +00:00
'500':
description: internal server error
2021-12-24 22:59:24 +00:00
/share/groups:
get:
tags:
- share
2022-01-03 17:21:18 +00:00
description: Get groups for sharing. Access granted to app tokens of the account holder.
operationId: get-groups
2021-12-24 22:59:24 +00:00
security:
- bearerAuth: []
responses:
'200':
description: successful operation
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Group'
'401':
description: invalid token
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-24 22:59:24 +00:00
'500':
description: internal server error
post:
tags:
- share
2022-01-03 17:21:18 +00:00
description: Add a group for sharing. Access granted to app tokens of account holder.
operationId: add-group
2021-12-24 22:59:24 +00:00
security:
- bearerAuth: []
responses:
2022-01-03 17:21:18 +00:00
'200':
2021-12-24 22:59:24 +00:00
description: entry created
'401':
2022-01-03 17:21:18 +00:00
description: permission denied
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-24 22:59:24 +00:00
'500':
description: internal server error
requestBody:
content:
application/json:
schema:
type: object
required:
- type
- data
properties:
type:
type: string
data:
type: string
2021-12-24 22:59:24 +00:00
/share/groups/{groupId}:
2021-12-28 05:07:43 +00:00
put:
2021-12-24 22:59:24 +00:00
tags:
- share
2022-01-03 17:21:18 +00:00
description: Update group description for sharing. Access granted to app tokens of account holder.
operationId: update-group
2021-12-24 22:59:24 +00:00
security:
- bearerAuth: []
parameters:
- name: groupId
in: path
description: specified group id
required: true
schema:
type: string
responses:
'200':
2022-01-03 17:21:18 +00:00
description: success
2021-12-24 22:59:24 +00:00
'401':
2022-01-03 17:21:18 +00:00
description: permission denied
'404':
description: group not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-24 22:59:24 +00:00
'500':
description: internal server error
2021-12-28 05:07:43 +00:00
requestBody:
content:
application/json:
schema:
type: object
required:
- type
- data
properties:
type:
type: string
data:
type: string
2021-12-28 05:07:43 +00:00
delete:
2021-12-24 22:59:24 +00:00
tags:
- share
2022-01-03 17:21:18 +00:00
description: Remove sharing group
operationId: remove-group
2021-12-24 22:59:24 +00:00
security:
- bearerAuth: []
parameters:
- name: groupId
in: path
description: specified group id
required: true
schema:
type: string
responses:
'200':
2022-01-03 17:21:18 +00:00
description: success
2021-12-24 22:59:24 +00:00
'401':
2022-01-03 17:21:18 +00:00
description: permission denied
'404':
description: group not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-24 22:59:24 +00:00
'500':
description: internal server error
2021-12-31 20:23:30 +00:00
/contact/cards:
post:
2021-12-25 22:54:45 +00:00
tags:
2021-12-31 20:23:30 +00:00
- contact
2022-01-02 20:11:51 +00:00
description: Add a contact card. Access granted to app tokens of account holder.
operationId: add-card
2021-12-25 22:54:45 +00:00
security:
- bearerAuth: []
responses:
'200':
2022-01-02 20:11:51 +00:00
description: success
2021-12-25 22:54:45 +00:00
content:
application/json:
schema:
2022-01-02 19:20:34 +00:00
$ref: '#/components/schemas/DataMessage'
2022-01-02 20:11:51 +00:00
'400':
description: invalid data message
2021-12-25 22:54:45 +00:00
'401':
2022-01-02 20:11:51 +00:00
description: permission denied
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-25 22:54:45 +00:00
'500':
description: internal server error
2021-12-24 22:59:24 +00:00
2021-12-31 20:23:30 +00:00
/contact/cards/view:
2021-12-24 22:59:24 +00:00
get:
tags:
2021-12-31 20:23:30 +00:00
- contact
2022-01-02 20:11:51 +00:00
description: Get list of card views. Access granted to app tokens of account holder.
operationId: get-card-view
2021-12-24 22:59:24 +00:00
security:
- bearerAuth: []
responses:
'200':
description: successful operation
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/CardView'
2021-12-24 22:59:24 +00:00
'401':
2022-01-02 20:11:51 +00:00
description: permission denied
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-24 22:59:24 +00:00
'500':
description: internal server error
2021-12-24 06:58:04 +00:00
2021-12-31 20:23:30 +00:00
/contact/cards/{cardId}:
2021-12-25 22:54:45 +00:00
get:
tags:
2021-12-31 20:23:30 +00:00
- contact
2022-01-02 20:11:51 +00:00
description: Retieve card entry. Permission granted to app tokens for account holder.
operationId: get-card
2021-12-25 22:54:45 +00:00
security:
- bearerAuth: []
parameters:
2021-12-31 20:23:30 +00:00
- name: cardId
2021-12-25 22:54:45 +00:00
in: path
2021-12-31 20:23:30 +00:00
description: specified card id
2021-12-25 22:54:45 +00:00
required: true
schema:
type: string
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/Card'
2021-12-25 22:54:45 +00:00
'401':
2022-01-02 20:11:51 +00:00
description: permission denied
2021-12-31 20:23:30 +00:00
'404':
2022-01-02 20:11:51 +00:00
description: card not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-25 22:54:45 +00:00
'500':
description: internal server error
2021-12-31 20:23:30 +00:00
delete:
2021-12-25 22:54:45 +00:00
tags:
2021-12-31 20:23:30 +00:00
- contact
2022-01-02 20:11:51 +00:00
description: Remove card entry. Access granted to app tokens of account holder.
operationId: remove-card
2021-12-25 22:54:45 +00:00
security:
- bearerAuth: []
2021-12-31 20:23:30 +00:00
parameters:
- name: cardId
in: path
description: specified card id
required: true
schema:
type: string
2021-12-25 22:54:45 +00:00
responses:
2021-12-31 20:23:30 +00:00
'200':
2022-01-02 20:11:51 +00:00
description: success
2021-12-25 22:54:45 +00:00
'401':
2022-01-02 20:11:51 +00:00
description: permission denied
2021-12-31 20:23:30 +00:00
'404':
2022-01-02 20:11:51 +00:00
description: card not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-25 22:54:45 +00:00
'500':
description: internal server error
2021-12-31 20:23:30 +00:00
/contact/cards/{cardId}/status:
put:
2021-12-25 22:54:45 +00:00
tags:
2021-12-31 20:23:30 +00:00
- contact
2022-01-02 20:11:51 +00:00
description: Updated connected status of contact. Access granted to app tokens of account holder.
operationId: set-card-status
2021-12-25 22:54:45 +00:00
security:
- bearerAuth: []
parameters:
2021-12-31 20:23:30 +00:00
- name: cardId
2021-12-25 22:54:45 +00:00
in: path
2021-12-31 20:23:30 +00:00
description: specified card id
required: true
schema:
type: string
- name: token
in: query
description: token for accessing card
2022-01-02 20:11:51 +00:00
required: false # required for connected
2021-12-25 22:54:45 +00:00
schema:
type: string
responses:
'200':
2022-01-02 20:11:51 +00:00
description: success
2021-12-25 22:54:45 +00:00
content:
application/json:
schema:
$ref: '#/components/schemas/CardData'
2021-12-25 22:54:45 +00:00
'401':
2022-01-02 20:11:51 +00:00
description: permission denied
2021-12-31 20:23:30 +00:00
'404':
2022-01-02 20:11:51 +00:00
description: card not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-25 22:54:45 +00:00
'500':
description: internal server error
2021-12-31 20:23:30 +00:00
requestBody:
content:
application/json:
schema:
type: string
enum: [ pending, confirmed, connecting, connected ]
/contact/cards/{cardId}/openMessage:
get:
2021-12-25 22:54:45 +00:00
tags:
2021-12-31 20:23:30 +00:00
- contact
2022-01-02 20:11:51 +00:00
description: Get message for connecting to other contacts. Access granted to app tokens for account holder.
operationId: get-open-message
2021-12-25 22:54:45 +00:00
security:
- bearerAuth: []
parameters:
2021-12-31 20:23:30 +00:00
- name: cardId
2021-12-25 22:54:45 +00:00
in: path
2021-12-31 20:23:30 +00:00
description: specified card id
2021-12-25 22:54:45 +00:00
required: true
schema:
type: string
responses:
'200':
2022-01-02 20:11:51 +00:00
description: success
2021-12-31 20:23:30 +00:00
content:
application/json:
schema:
$ref: '#/components/schemas/DataMessage'
2021-12-25 22:54:45 +00:00
'401':
2022-01-02 20:11:51 +00:00
description: permission denied
2021-12-31 20:23:30 +00:00
'404':
2022-01-02 20:11:51 +00:00
description: card not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-25 22:54:45 +00:00
'500':
description: internal server error
2022-01-03 23:13:16 +00:00
/contact/openMessage:
2021-12-25 22:54:45 +00:00
put:
tags:
2021-12-31 20:23:30 +00:00
- contact
2022-01-02 20:11:51 +00:00
description: Set message for connecting to a contact. If card has not already been added, the card will be created in the pending state. Access granted to public.
operationId: set-open-message
2021-12-25 22:54:45 +00:00
responses:
2021-12-31 20:23:30 +00:00
'200':
description: successful operation
content:
application/json:
schema:
2022-01-03 17:21:18 +00:00
type: object
required:
- status
properties:
token:
type: string
status:
type: string
enum: [ pending, confirmed, requested, connecting, connected ]
2022-01-02 20:11:51 +00:00
'400':
description: invalid data message
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-25 22:54:45 +00:00
'500':
description: internal server error
requestBody:
content:
application/json:
schema:
2021-12-31 20:23:30 +00:00
$ref: '#/components/schemas/DataMessage'
/contact/cards/{cardId}/closeMessage:
get:
2021-12-29 05:49:51 +00:00
tags:
2021-12-31 20:23:30 +00:00
- contact
2022-01-02 20:11:51 +00:00
description: Get message for closing connection with contact. Access granted to app tokens for account holder.
operationId: get-close-message
2021-12-29 05:49:51 +00:00
security:
- bearerAuth: []
parameters:
2021-12-31 20:23:30 +00:00
- name: cardId
2021-12-29 05:49:51 +00:00
in: path
2021-12-31 20:23:30 +00:00
description: specified card id
2021-12-29 05:49:51 +00:00
required: true
schema:
type: string
responses:
'200':
2021-12-31 20:23:30 +00:00
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/DataMessage'
2021-12-29 05:49:51 +00:00
'401':
2022-01-02 20:11:51 +00:00
description: permission denied
2021-12-31 20:23:30 +00:00
'404':
2022-01-02 20:11:51 +00:00
description: card not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
2022-01-03 23:13:16 +00:00
/contact/closeMessage:
2021-12-31 20:23:30 +00:00
put:
2021-12-29 05:49:51 +00:00
tags:
2021-12-31 20:23:30 +00:00
- contact
2022-01-02 20:11:51 +00:00
description: Set message for closing card connection. Access granted to public.
operationId: set-close-message
2021-12-29 05:49:51 +00:00
responses:
'200':
2021-12-31 20:23:30 +00:00
description: successful operation
content:
application/json:
schema:
2022-01-03 17:21:18 +00:00
type: object
required:
- status
properties:
token:
type: string
status:
type: string
enum: [ pending, confirmed, requested, connecting, connected ]
2022-01-02 20:11:51 +00:00
'400':
description: invalid data message
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
2021-12-31 20:23:30 +00:00
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/DataMessage'
/contact/cards/{cardId}/profile:
get:
2021-12-29 05:49:51 +00:00
tags:
2021-12-31 20:23:30 +00:00
- contact
2022-01-03 17:21:18 +00:00
description: Get profile of card entry. Access granted to app tokens of account holder.
operationId: get-card-profile
2021-12-29 05:49:51 +00:00
security:
- bearerAuth: []
parameters:
2021-12-31 20:23:30 +00:00
- name: cardId
2021-12-29 05:49:51 +00:00
in: path
2021-12-31 20:23:30 +00:00
description: specified card id
2021-12-29 05:49:51 +00:00
required: true
schema:
type: string
responses:
'200':
2021-12-31 20:23:30 +00:00
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/CardProfile'
2021-12-29 05:49:51 +00:00
'401':
2022-01-02 20:11:51 +00:00
description: permission denied
2021-12-31 20:23:30 +00:00
'404':
description: not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
2021-12-31 20:23:30 +00:00
put:
2021-12-29 05:49:51 +00:00
tags:
2021-12-31 20:23:30 +00:00
- contact
2022-01-03 17:21:18 +00:00
description: Set profile of card entry. Access granted to app tokens of account holder.
operationId: set-card-profile
2021-12-29 05:49:51 +00:00
security:
- bearerAuth: []
parameters:
2021-12-31 20:23:30 +00:00
- name: cardId
2021-12-29 05:49:51 +00:00
in: path
2021-12-31 20:23:30 +00:00
description: specified card id
2021-12-29 05:49:51 +00:00
required: true
schema:
type: string
responses:
'200':
2022-01-03 17:21:18 +00:00
description: success
2021-12-31 20:23:30 +00:00
content:
application/json:
schema:
2022-01-02 19:20:34 +00:00
$ref: '#/components/schemas/DataMessage'
2021-12-29 05:49:51 +00:00
'401':
2022-01-03 17:21:18 +00:00
description: permission denied
2021-12-31 20:23:30 +00:00
'404':
2022-01-03 17:21:18 +00:00
description: card not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
2021-12-31 20:23:30 +00:00
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Profile'
2021-12-29 05:49:51 +00:00
2022-01-02 19:20:34 +00:00
/contact/cards/{cardId}/profile/image:
get:
tags:
- contact
2022-01-03 17:21:18 +00:00
description: Get image of card profile. Access granted to app tokens of account holder.
operationId: get-card-profile-image
2022-01-02 19:20:34 +00:00
security:
- bearerAuth: []
parameters:
- name: cardId
in: path
description: specified card id
required: true
schema:
type: string
responses:
'200':
description: success
content:
application/octet-stream: #asset specific
schema:
type: string
format: binary
'401':
2022-01-03 17:21:18 +00:00
description: permission denied
2022-01-02 19:20:34 +00:00
'404':
2022-01-03 17:21:18 +00:00
description: card not found
'405':
description: invalid image
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2022-01-02 19:20:34 +00:00
'500':
description: internal server error
2021-12-31 20:23:30 +00:00
/contact/cards/{cardId}/data:
2021-12-29 05:49:51 +00:00
get:
tags:
2021-12-31 20:23:30 +00:00
- contact
2022-01-03 17:21:18 +00:00
description: Get specified card data. Access granted to app tokens for account holder.
operationId: get-card-data
2021-12-29 05:49:51 +00:00
security:
- bearerAuth: []
parameters:
2021-12-31 20:23:30 +00:00
- name: cardId
2021-12-29 05:49:51 +00:00
in: path
2021-12-31 20:23:30 +00:00
description: specified card id
2021-12-29 05:49:51 +00:00
required: true
schema:
type: string
responses:
'200':
2022-01-03 17:21:18 +00:00
description: success
2021-12-29 05:49:51 +00:00
content:
application/json:
schema:
$ref: '#/components/schemas/CardData'
2021-12-29 05:49:51 +00:00
'401':
2022-01-03 17:21:18 +00:00
description: permission denied
2021-12-31 20:23:30 +00:00
'404':
2022-01-03 17:21:18 +00:00
description: card not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
2021-12-31 20:23:30 +00:00
/contact/cards/{cardId}/notes:
put:
2021-12-29 05:49:51 +00:00
tags:
2021-12-31 20:23:30 +00:00
- contact
2022-01-03 17:21:18 +00:00
description: Update card notes for specified card. Access granted to app tokens for account holder.
operationId: set-card-notes
2021-12-29 05:49:51 +00:00
security:
- bearerAuth: []
parameters:
2021-12-31 20:23:30 +00:00
- name: cardId
2021-12-29 05:49:51 +00:00
in: path
2021-12-31 20:23:30 +00:00
description: specified card id
2021-12-29 05:49:51 +00:00
required: true
schema:
type: string
responses:
'200':
2022-01-03 17:21:18 +00:00
description: success
2021-12-29 05:49:51 +00:00
content:
application/json:
schema:
$ref: '#/components/schemas/CardData'
2021-12-29 05:49:51 +00:00
'401':
2022-01-03 17:21:18 +00:00
description: permission denied
2021-12-31 20:23:30 +00:00
'404':
2022-01-03 17:21:18 +00:00
description: card not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
2021-12-31 20:23:30 +00:00
requestBody:
content:
application/json:
schema:
type: string
delete:
2021-12-29 05:49:51 +00:00
tags:
2021-12-31 20:23:30 +00:00
- contact
2022-01-03 17:21:18 +00:00
description: Clear notes for specified card. Access granted to app tokens of account holder.
operationId: clear-card-notes
2021-12-29 05:49:51 +00:00
security:
- bearerAuth: []
parameters:
2021-12-31 20:23:30 +00:00
- name: cardId
2021-12-29 05:49:51 +00:00
in: path
2021-12-31 20:23:30 +00:00
description: specified card id
2021-12-29 05:49:51 +00:00
required: true
schema:
type: string
responses:
2021-12-31 20:23:30 +00:00
'200':
2022-01-03 17:21:18 +00:00
description: success
2021-12-29 05:49:51 +00:00
content:
application/json:
schema:
$ref: '#/components/schemas/CardData'
2021-12-29 05:49:51 +00:00
'401':
2022-01-03 17:21:18 +00:00
description: permission denied
2021-12-31 20:23:30 +00:00
'404':
2022-01-03 17:21:18 +00:00
description: card not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
2021-12-31 20:23:30 +00:00
2022-01-03 17:21:18 +00:00
/contact/cards/{cardId}/groups/{groupId}:
2021-12-31 20:23:30 +00:00
put:
2021-12-29 05:49:51 +00:00
tags:
2021-12-31 20:23:30 +00:00
- contact
2022-01-03 17:21:18 +00:00
description: Set sharing group for contact. Access granted to app tokens for account holder.
operationId: set-card-group
2021-12-29 05:49:51 +00:00
security:
- bearerAuth: []
parameters:
2021-12-31 20:23:30 +00:00
- name: cardId
2021-12-29 05:49:51 +00:00
in: path
2021-12-31 20:23:30 +00:00
description: specified card id
2021-12-29 05:49:51 +00:00
required: true
schema:
type: string
2022-01-03 17:21:18 +00:00
- name: groupId
2021-12-29 05:49:51 +00:00
in: path
2022-01-03 17:21:18 +00:00
description: specified group id
2021-12-29 05:49:51 +00:00
required: true
schema:
type: string
responses:
2021-12-31 20:23:30 +00:00
'200':
2022-01-03 17:21:18 +00:00
description: success
2021-12-29 05:49:51 +00:00
content:
application/json:
schema:
$ref: '#/components/schemas/CardData'
2021-12-29 05:49:51 +00:00
'401':
2022-01-03 17:21:18 +00:00
description: permission denied
2021-12-29 05:49:51 +00:00
'404':
2022-01-03 17:21:18 +00:00
description: card or group not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
delete:
tags:
2021-12-31 20:23:30 +00:00
- contact
2022-01-03 17:21:18 +00:00
description: Clear sharing group for card. Access granted to app tokens for account holder.
operationId: clear-card-group
2021-12-29 05:49:51 +00:00
security:
- bearerAuth: []
parameters:
2021-12-31 20:23:30 +00:00
- name: cardId
2021-12-29 05:49:51 +00:00
in: path
2021-12-31 20:23:30 +00:00
description: specified card id
2021-12-29 05:49:51 +00:00
required: true
schema:
type: string
2022-01-03 17:21:18 +00:00
- name: groupId
2021-12-29 05:49:51 +00:00
in: path
2021-12-31 20:23:30 +00:00
description: specified share id
2021-12-29 05:49:51 +00:00
required: true
schema:
type: string
responses:
'200':
2022-01-03 17:21:18 +00:00
description: success
2021-12-31 20:23:30 +00:00
content:
application/json:
schema:
$ref: '#/components/schemas/CardData'
2021-12-29 05:49:51 +00:00
'401':
2022-01-03 17:21:18 +00:00
description: permission denied
2021-12-29 05:49:51 +00:00
'404':
2022-01-03 17:21:18 +00:00
description: card or group not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
2021-12-31 20:23:30 +00:00
/contact/profile/revision:
put:
tags:
- contact
2022-01-03 17:21:18 +00:00
description: Set profile revision for contact. This is intend to be invoked automatically anytime a contact updates their profile. Access granted to contact tokens.
operationId: set-profile-revision
2021-12-31 20:23:30 +00:00
security:
- bearerAuth: []
responses:
'200':
description: revision set
'401':
description: not authorized
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-31 20:23:30 +00:00
'500':
description: internal server error
requestBody:
content:
application/json:
schema:
type: integer
format: int64
/contact/content/revision:
put:
tags:
- contact
2022-01-03 17:21:18 +00:00
description: Set content revision for contact. This is intend to be invoked automatically anytime a contact updates their content or sharing. Access granted to contact tokens.
operationId: set-content-revision
2021-12-31 20:23:30 +00:00
security:
- bearerAuth: []
responses:
'200':
description: revision set
'401':
description: not authorized
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-31 20:23:30 +00:00
'500':
description: internal server error
requestBody:
content:
application/json:
schema:
type: integer
format: int64
/content/articleBlocks/view:
get:
2021-12-31 06:01:08 +00:00
tags:
- content
2022-01-02 00:29:58 +00:00
description: Get article block views. Acess granted to account token or contact token. When the request is made with a contact token the account view revision will be added to the block revision.
2021-12-31 20:23:30 +00:00
operationId: get-article-block-view
2021-12-31 06:01:08 +00:00
security:
- bearerAuth: []
responses:
'200':
2021-12-31 20:23:30 +00:00
description: successful operation
2021-12-31 06:01:08 +00:00
content:
2021-12-31 20:23:30 +00:00
application/json:
2021-12-31 06:01:08 +00:00
schema:
2021-12-31 20:23:30 +00:00
type: array
items:
type: object
properties:
id:
type: string
revision:
type: integer
format: int64
2021-12-31 06:01:08 +00:00
'401':
2022-01-02 00:29:58 +00:00
description: permission denied
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-31 06:01:08 +00:00
'500':
description: internal server error
2021-12-29 05:49:51 +00:00
2021-12-31 20:23:30 +00:00
/content/articleBlocks/{blockId}:
get:
2021-12-29 05:49:51 +00:00
tags:
- content
2022-01-02 02:33:27 +00:00
description: Get the articles within specified block. Access granted for app token or contact token. All of the articles are returned for the app token, but only the shared articles are returned for the contact token. An article is shared by assigning a common group to an article or assigning a label to an article that has assigned a common group.
2022-01-02 00:29:58 +00:00
operationId: get-articles
2021-12-29 05:49:51 +00:00
security:
- bearerAuth: []
parameters:
2021-12-31 20:23:30 +00:00
- name: blockId
2021-12-29 05:49:51 +00:00
in: path
2021-12-31 20:23:30 +00:00
description: specified group id
2021-12-29 05:49:51 +00:00
required: true
schema:
type: string
responses:
'200':
2021-12-31 20:23:30 +00:00
description: successful operation
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Article'
2021-12-29 05:49:51 +00:00
'401':
2022-01-02 00:29:58 +00:00
description: permission denied
'404':
description: block not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
2021-12-31 20:23:30 +00:00
/content/articleBlocks/{blockId}/view:
2021-12-29 05:49:51 +00:00
get:
tags:
- content
2022-01-02 02:33:27 +00:00
description: Get the article views within specified block. Access granted for app token or contact token. All of the articles are returned for the app token, but only the shared articles are returned for the contact token. An article is shared by assigning a common group to an article or assigning a label to an article that has assigned a common group.
2022-01-02 00:29:58 +00:00
operationId: get-article-views
2021-12-29 05:49:51 +00:00
security:
- bearerAuth: []
2021-12-31 20:23:30 +00:00
parameters:
- name: blockId
in: path
description: specified group id
required: true
schema:
type: string
2021-12-29 05:49:51 +00:00
responses:
'200':
description: successful operation
content:
application/json:
schema:
type: array
items:
2021-12-31 20:23:30 +00:00
type: object
properties:
id:
type: string
revision:
type: integer
format: int64
2021-12-29 05:49:51 +00:00
'401':
2022-01-02 00:29:58 +00:00
description: permission denied
'404':
description: block not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
2021-12-31 20:23:30 +00:00
/content/articles:
2021-12-29 05:49:51 +00:00
post:
tags:
- content
description: Add a content article. Access granted to app token of the account holder.
2021-12-31 20:23:30 +00:00
operationId: add-article
2021-12-29 05:49:51 +00:00
security:
- bearerAuth: []
responses:
'201':
description: entry created
2021-12-31 20:23:30 +00:00
content:
application/json:
schema:
type: object
properties:
blockId:
type: string
blockRevision:
type: integer
format: int64
article:
$ref: '#/components/schemas/Article'
2021-12-29 05:49:51 +00:00
'401':
2022-01-02 00:29:58 +00:00
description: permission denied
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
2022-01-02 02:33:27 +00:00
requestBody:
content:
application/json:
schema:
type: object
required:
- labels
- groups
properties:
labels:
type: array
items:
type: string
groups:
type: array
items:
type: string
2021-12-31 20:23:30 +00:00
/content/articles/{articleId}:
get:
2021-12-29 05:49:51 +00:00
tags:
- content
2022-01-02 00:29:58 +00:00
description: Get specified article. Access granted to app token of account holder or contact token of account the article is shared with.
2021-12-31 20:23:30 +00:00
operationId: get-article
2021-12-29 05:49:51 +00:00
security:
- bearerAuth: []
parameters:
2021-12-31 20:23:30 +00:00
- name: articleId
2021-12-29 05:49:51 +00:00
in: path
2021-12-31 20:23:30 +00:00
description: specified article id
2021-12-29 05:49:51 +00:00
required: true
schema:
type: string
responses:
'200':
2022-01-02 00:29:58 +00:00
description: success
2021-12-31 20:23:30 +00:00
content:
application/json:
schema:
$ref: '#/components/schemas/Article'
2021-12-29 05:49:51 +00:00
'401':
2022-01-02 00:29:58 +00:00
description: permission denied
'404':
description: article not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
delete:
tags:
- content
2022-01-02 00:29:58 +00:00
description: Remove specified article. Access granted to app token of account holder.
2021-12-31 20:23:30 +00:00
operationId: remove-article
2021-12-29 05:49:51 +00:00
security:
- bearerAuth: []
parameters:
2021-12-31 20:23:30 +00:00
- name: articleId
2021-12-29 05:49:51 +00:00
in: path
2021-12-31 20:23:30 +00:00
description: specified article id
2021-12-29 05:49:51 +00:00
required: true
schema:
type: string
responses:
'200':
2022-01-02 00:29:58 +00:00
description: success
2021-12-29 05:49:51 +00:00
'401':
2021-12-31 20:23:30 +00:00
description: invalid password
2022-01-02 00:29:58 +00:00
'404':
description: article not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
2021-12-31 20:23:30 +00:00
2022-01-02 19:20:34 +00:00
/content/articles/{articleId}/subject/{field}:
get:
tags:
- content
description: Base64 decode and download specified field from the article's subject. Access granted to app token of account holder or contact token of account the article is shared with.
operationId: get-article-subject-field
security:
- bearerAuth: []
parameters:
- name: articleId
in: path
description: specified article id
required: true
schema:
type: string
- name: field
in: path
description: field from subject to base64 decode and download
required: true
schema:
type: string
responses:
'200':
description: success
content:
application/json:
schema:
$ref: '#/components/schemas/Article'
'401':
description: permission denied
'404':
description: field, article not found
'405':
description: invalid field
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2022-01-02 19:20:34 +00:00
'500':
description: internal server error
2021-12-31 20:23:30 +00:00
/content/articles/{articleId}/subject:
put:
2021-12-29 05:49:51 +00:00
tags:
2021-12-31 20:23:30 +00:00
- content
2022-01-02 00:29:58 +00:00
description: Set subject for article. Access granted to app token of account holder.
operationId: set-article-subject
2021-12-29 05:49:51 +00:00
security:
- bearerAuth: []
2021-12-31 20:23:30 +00:00
parameters:
- name: articleId
in: path
description: specified article id
required: true
schema:
type: string
2021-12-29 05:49:51 +00:00
responses:
2022-01-02 00:29:58 +00:00
'200':
description: success
2021-12-29 05:49:51 +00:00
'401':
2022-01-02 00:29:58 +00:00
description: permission denied
'404':
description: article not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
2021-12-31 20:23:30 +00:00
requestBody:
content:
application/json:
schema:
type: object
required:
- type
- data
properties:
type:
type: string
data:
type: string
/content/articles/{articleId}/groups/{groupId}:
post:
2021-12-29 05:49:51 +00:00
tags:
2021-12-31 20:23:30 +00:00
- content
description: Assign a sharing group for the specified article. Contacts with the same sharing group will have access to the article. Access granted to app token of account holder.
2021-12-31 20:23:30 +00:00
operationId: set-article-group
2021-12-29 05:49:51 +00:00
security:
- bearerAuth: []
2021-12-31 20:23:30 +00:00
parameters:
- name: articleId
in: path
description: specified article id
required: true
schema:
type: string
- name: groupId
in: path
description: specified share group id
required: true
schema:
type: string
2021-12-29 05:49:51 +00:00
responses:
'200':
description: success
2021-12-29 05:49:51 +00:00
'401':
description: permission denied
'404':
description: group or article not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
2021-12-31 20:23:30 +00:00
delete:
2021-12-29 05:49:51 +00:00
tags:
2021-12-31 20:23:30 +00:00
- content
description: Remove article from sharing group. Unless the article is shared through other groups or labels contacts within that group will no longer have access to the article. Access granted to app tokens of the account holder.
2021-12-31 20:23:30 +00:00
operationId: clear-article-group
2021-12-29 05:49:51 +00:00
security:
- bearerAuth: []
parameters:
2021-12-31 20:23:30 +00:00
- name: articleId
2021-12-29 05:49:51 +00:00
in: path
2021-12-31 20:23:30 +00:00
description: specified article id
required: true
schema:
type: string
- name: groupId
in: path
description: specified share id
2021-12-29 05:49:51 +00:00
required: true
schema:
type: string
responses:
'200':
description: success
2021-12-29 05:49:51 +00:00
'401':
description: permission denied
'404':
description: group or article not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
2021-12-31 20:23:30 +00:00
/content/articles/{articleId}/labels/{labelId}:
post:
2021-12-29 05:49:51 +00:00
tags:
2021-12-31 20:23:30 +00:00
- content
description: Assign a label to an article. If the label has been assigned a sharing group the article will be accessible by contacts within that group. Access is granted to app tokens of the account holder.
2021-12-31 20:23:30 +00:00
operationId: set-article-label
2021-12-29 05:49:51 +00:00
security:
- bearerAuth: []
parameters:
2021-12-31 20:23:30 +00:00
- name: articleId
2021-12-29 05:49:51 +00:00
in: path
2021-12-31 20:23:30 +00:00
description: specified article id
required: true
schema:
type: string
- name: labelId
in: path
description: specified label id
2021-12-29 05:49:51 +00:00
required: true
schema:
type: string
responses:
'200':
description: success
2021-12-29 05:49:51 +00:00
'401':
description: permission denied
'404':
description: label or article not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
2021-12-31 20:23:30 +00:00
delete:
2021-12-29 05:49:51 +00:00
tags:
2021-12-31 20:23:30 +00:00
- content
description: Remove a label from an article. If the label has been assigned a sharing group the article and the article is not shared in another way, the article will no longer be accessible to that group's contacts. Access is granted to app tokens of the account holder.
2021-12-31 20:23:30 +00:00
operationId: clear-article-label
2021-12-29 05:49:51 +00:00
security:
- bearerAuth: []
parameters:
2021-12-31 20:23:30 +00:00
- name: articleId
2021-12-29 05:49:51 +00:00
in: path
2021-12-31 20:23:30 +00:00
description: specified article id
2021-12-29 05:49:51 +00:00
required: true
schema:
type: string
2021-12-31 20:23:30 +00:00
- name: labelId
in: path
description: specified label id
2021-12-29 05:49:51 +00:00
required: true
schema:
type: string
responses:
'200':
description: success
'401':
description: permission denied
'404':
description: label or article not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
'500':
description: internal server error
/content/articles/{articleId}/assets:
get:
tags:
- content
description: Get list of assets assigned to an article. The original assets will only be available to the account holder to provent the accidental sharing of content metadata. Access is granted to the app token of the account holder and the contact token of accounts the article has been shared with.
operationId: get-article-assets
security:
- bearerAuth: []
parameters:
- name: articleId
in: path
description: specified article id
required: true
schema:
type: string
responses:
'201':
description: entry created
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Asset'
2021-12-29 05:49:51 +00:00
'401':
2021-12-31 20:23:30 +00:00
description: invalid token
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
post:
tags:
- content
description: Add an an asset to the to an article. The original posted asset is referenced in the asset list with a null transform. The transformed assets are referenced accordingly. Transforming the asset strips it of metadata and transcodes it into a specified format. Access is granted to the app token of the account holder.
operationId: add-article-asset
security:
- bearerAuth: []
parameters:
- name: articleId
in: path
description: specified article id
required: true
schema:
type: string
- name: transforms
in: query
description: transforms to apply
required: false
schema:
type: array
items:
type: string
responses:
'201':
description: success
content:
application/json:
schema:
$ref: '#/components/schemas/Asset'
'401':
description: permission denied
'404':
description: article not found
'406':
description: storage limit reached
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
'500':
description: internal server error
requestBody:
content:
multipart/form-data:
schema:
type: object
properties:
fileName:
type: string
format: binary
/content/articles/{articleId}/assets/{assetId}:
get:
tags:
- content
description: Get asset assigned to an article. The endpoint supports byte-range requests and responds with the content-type set appropriatly. Access granted to the app tokens of the account holder and in the case of non-original assets, the contact token for accounts with which the article is shared.
operationId: get-article-asset
security:
- bearerAuth: []
parameters:
- name: articleId
in: path
description: specified article id
required: true
schema:
type: string
- name: assetId
in: path
description: specified asset id
required: true
schema:
type: string
responses:
'200':
description: success
content:
application/octet-stream: #asset specific
schema:
type: string
format: binary
'401':
description: permission denied
'404':
description: asset or article not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
'500':
description: internal server error
delete:
tags:
- content
description: Remove an asset from an article. Access granted to app tokens of the account holder.
operationId: remove-article-asset
security:
- bearerAuth: []
parameters:
- name: articleId
in: path
description: specified article id
required: true
schema:
type: string
- name: assetId
in: path
description: specified asset id
required: true
schema:
type: string
responses:
'200':
description: success
'401':
description: permission denied
'404':
description: asset or article not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
'500':
description: internal server error
/content/articles/{articleId}/confirmed:
put:
tags:
- content
description: Set confirmed state of the article. Until the confirmed state has been set to true, the article will not be visible to contacts with which the article is shared. Access granted to the app tokens of the acocunt holder.
operationId: set-article-confirmed
security:
- bearerAuth: []
parameters:
- name: articleId
in: path
description: specified article id
required: true
schema:
type: string
responses:
'200':
description: success
'401':
description: permission denied
'404':
description: article not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
'500':
description: internal server error
requestBody:
content:
application/json:
schema:
type: boolean
2021-12-29 05:49:51 +00:00
2021-12-31 20:23:30 +00:00
/content/articles/{articleId}/tagBlocks/view:
2021-12-29 05:49:51 +00:00
get:
tags:
2021-12-31 20:23:30 +00:00
- content
description: Get view of tag blocks associated with specified article. Access granted to app tokens of account holder and contact tokens of account with which the article is shared.
2021-12-31 20:23:30 +00:00
operationId: get-article-tag-block-view
2021-12-29 05:49:51 +00:00
security:
- bearerAuth: []
parameters:
2021-12-31 20:23:30 +00:00
- name: articleId
2021-12-29 05:49:51 +00:00
in: path
2021-12-31 20:23:30 +00:00
description: specified article id
2021-12-29 05:49:51 +00:00
required: true
schema:
type: string
2022-01-02 02:33:27 +00:00
- name: types
in: query
description: limit results to tags of types
2022-01-02 02:33:27 +00:00
required: false
schema:
type: array
items:
type: string
2021-12-29 05:49:51 +00:00
responses:
'200':
description: success
2021-12-29 05:49:51 +00:00
content:
application/json:
schema:
2021-12-31 20:23:30 +00:00
type: array
items:
type: object
properties:
id:
type: string
revision:
type: integer
format: int64
2021-12-29 05:49:51 +00:00
'401':
description: permission denied
'404':
description: article not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
2021-12-31 20:23:30 +00:00
/content/articles/{articleId}/tagBlocks/{blockId}/view:
get:
2021-12-29 05:49:51 +00:00
tags:
2021-12-31 20:23:30 +00:00
- content
description: Get view of tags within speicified block. Access granted to app tokens of account holder and contact token of accounts with which the article is shared.
operationId: get-article-tag-view
2021-12-31 20:23:30 +00:00
security:
- bearerAuth: []
2021-12-29 05:49:51 +00:00
parameters:
2021-12-31 20:23:30 +00:00
- name: articleId
2021-12-29 05:49:51 +00:00
in: path
2021-12-31 20:23:30 +00:00
description: specified article id
required: true
schema:
type: string
- name: blockId
in: path
description: specified block id
2021-12-29 05:49:51 +00:00
required: true
schema:
type: string
2022-01-02 02:33:27 +00:00
- name: types
in: query
description: limit results to tags of types
2022-01-02 02:33:27 +00:00
required: false
schema:
type: array
items:
type: string
2021-12-29 05:49:51 +00:00
responses:
'200':
description: success
2021-12-29 05:49:51 +00:00
content:
application/json:
schema:
2021-12-31 20:23:30 +00:00
type: array
items:
type: object
properties:
id:
type: string
revision:
type: integer
format: int64
'401':
description: permission denied
'404':
description: block or article not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-31 20:23:30 +00:00
'500':
description: internal server error
2021-12-29 05:49:51 +00:00
2021-12-31 20:23:30 +00:00
/content/articles/{articleId}/tagBlocks/{blockId}:
2021-12-29 05:49:51 +00:00
get:
tags:
2021-12-31 20:23:30 +00:00
- content
description: Get tags within specified block. Access granted to app tokens of account holder and contact tokens of accounts with which the article is shared.
operationId: get-article-tags
2021-12-25 22:54:45 +00:00
security:
- bearerAuth: []
parameters:
2021-12-31 20:23:30 +00:00
- name: articleId
2021-12-25 22:54:45 +00:00
in: path
2021-12-31 20:23:30 +00:00
description: specified article id
required: true
schema:
type: string
- name: blockId
in: path
description: specified block id
2021-12-29 05:49:51 +00:00
required: true
schema:
type: string
2022-01-02 02:33:27 +00:00
- name: types
in: query
description: limit results to tags of types
2022-01-02 02:33:27 +00:00
required: false
schema:
type: array
items:
type: string
2021-12-29 05:49:51 +00:00
responses:
'200':
description: success
2021-12-29 05:49:51 +00:00
content:
application/json:
schema:
2021-12-31 20:23:30 +00:00
type: array
items:
type: object
properties:
id:
type: string
revision:
type: integer
format: int64
2021-12-29 05:49:51 +00:00
'401':
description: permission denied
'404':
description: block or article not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
2021-12-31 20:23:30 +00:00
/content/articles/{articleId}/tags:
post:
2021-12-29 05:49:51 +00:00
tags:
2021-12-31 20:23:30 +00:00
- content
description: Add a tag to an article. Access granted to app tokens of the account holder and contact tokens of accounts with which the article is shared.
2021-12-31 20:23:30 +00:00
operationId: add-article-tag
security:
- bearerAuth: []
2021-12-29 05:49:51 +00:00
parameters:
2021-12-31 20:23:30 +00:00
- name: articleId
2021-12-29 05:49:51 +00:00
in: path
2021-12-31 20:23:30 +00:00
description: specified article id
2021-12-29 05:49:51 +00:00
required: true
schema:
type: string
responses:
'200':
description: success
2021-12-29 05:49:51 +00:00
content:
application/json:
schema:
2021-12-31 20:23:30 +00:00
type: object
properties:
blockId:
type: string
blockRevision:
type: integer
format: int64
tag:
$ref: '#/components/schemas/Tag'
2021-12-29 05:49:51 +00:00
'401':
description: permission denied
'404':
description: article not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
2021-12-31 20:23:30 +00:00
/content/articles/{articleId}/tags/{tagId}:
2021-12-29 05:49:51 +00:00
get:
tags:
2021-12-31 20:23:30 +00:00
- content
description: Get specified tag. Access granted to app tokens of account holder and contact tokens of accounts with which the article is shared.
2021-12-31 20:23:30 +00:00
operationId: get-article-tag
2021-12-29 05:49:51 +00:00
security:
- bearerAuth: []
parameters:
2021-12-31 20:23:30 +00:00
- name: articleId
2021-12-29 05:49:51 +00:00
in: path
2021-12-31 20:23:30 +00:00
description: specified article id
required: true
schema:
type: string
- name: tagId
in: path
description: specified tag id
2021-12-29 05:49:51 +00:00
required: true
schema:
type: string
responses:
'200':
description: success
2021-12-29 05:49:51 +00:00
content:
application/json:
schema:
2021-12-31 20:23:30 +00:00
$ref: '#/components/schemas/Tag'
2021-12-29 05:49:51 +00:00
'401':
description: permission denied
2021-12-29 05:49:51 +00:00
'404':
description: tag or article not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
2021-12-31 20:23:30 +00:00
delete:
2021-12-29 05:49:51 +00:00
tags:
2021-12-31 20:23:30 +00:00
- content
description: Remove a tag from an article. Access granted to app tokens of account holder and the contact tokens of the account that created the tag.
2021-12-31 20:23:30 +00:00
operationId: remove-article-tag
2021-12-29 05:49:51 +00:00
security:
- bearerAuth: []
parameters:
2021-12-31 20:23:30 +00:00
- name: articleId
2021-12-29 05:49:51 +00:00
in: path
2021-12-31 20:23:30 +00:00
description: specified article id
required: true
schema:
type: string
- name: tagId
in: path
description: specified tag id
2021-12-29 05:49:51 +00:00
required: true
schema:
type: string
responses:
'200':
description: success
2021-12-29 05:49:51 +00:00
'401':
description: permission denied
2021-12-29 05:49:51 +00:00
'404':
description: tag or article not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
2021-12-31 20:23:30 +00:00
2022-01-02 19:20:34 +00:00
/content/articles/{articleId}/tags/{tagId}/subject/{field}:
get:
tags:
- content
description: Base64 decode and retrieve specified tag on the article. Access granted to app tokens of account holder and contact tokens of accounts with which the article is shared.
operationId: get-article-tag-subject-field
security:
- bearerAuth: []
parameters:
- name: articleId
in: path
description: specified article id
required: true
schema:
type: string
- name: tagId
in: path
description: specified tag id
required: true
schema:
type: string
- name: field
in: path
description: field to base64 decode and transfer
required: true
schema:
type: string
responses:
'200':
description: success
content:
application/json:
schema:
$ref: '#/components/schemas/Tag'
'401':
description: permission denied
'404':
description: field, tag or article not found
'405':
description: invalid field
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2022-01-02 19:20:34 +00:00
'500':
description: internal server error
/content/labels:
2021-12-29 05:49:51 +00:00
get:
tags:
2021-12-31 20:23:30 +00:00
- content
description: Get labels with which to organize the articles. Contacts requesting the labels will only retrieve the labels with which they are shared. Access granted to the app tokens of the account holder and connected contact tokens.
operationId: get-labels
2021-12-29 05:49:51 +00:00
security:
- bearerAuth: []
responses:
'200':
description: successful operation
2021-12-29 05:49:51 +00:00
content:
application/json:
schema:
2021-12-31 20:23:30 +00:00
type: array
items:
$ref: '#/components/schemas/Label'
2021-12-29 05:49:51 +00:00
'401':
2021-12-31 20:23:30 +00:00
description: invalid token
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
2021-12-31 20:23:30 +00:00
post:
2021-12-29 05:49:51 +00:00
tags:
2021-12-31 20:23:30 +00:00
- content
description: Add a new label for organizing the articles. Access granted to the app tokens of the account holder.
operationId: add-label
2021-12-29 05:49:51 +00:00
security:
- bearerAuth: []
responses:
'200':
description: success
2021-12-29 05:49:51 +00:00
'401':
description: permission denied
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
requestBody:
content:
application/json:
2021-12-29 05:49:51 +00:00
schema:
2021-12-31 20:23:30 +00:00
type: object
required:
- type
- data
2021-12-31 20:23:30 +00:00
properties:
type:
type: string
data:
2021-12-31 20:23:30 +00:00
type: string
/content/labels/{labelId}:
put:
2021-12-25 22:54:45 +00:00
tags:
2021-12-31 20:23:30 +00:00
- content
description: Update specified label. Access granted to app tokens of the account holder.
operationId: update-label
2021-12-25 22:54:45 +00:00
security:
- bearerAuth: []
parameters:
2021-12-31 20:23:30 +00:00
- name: labelId
2021-12-25 22:54:45 +00:00
in: path
2021-12-31 20:23:30 +00:00
description: specified group id
2021-12-25 22:54:45 +00:00
required: true
schema:
type: string
responses:
'200':
description: successful operation
'401':
2021-12-31 20:23:30 +00:00
description: invalid token
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
requestBody:
content:
application/json:
schema:
type: object
required:
- type
- data
properties:
type:
type: string
data:
type: string
2021-12-31 20:23:30 +00:00
delete:
2021-12-29 05:49:51 +00:00
tags:
2021-12-31 20:23:30 +00:00
- content
description: Remove specified label. Access granted the the app tokens of the account holder.
operationId: remove-label
2021-12-29 05:49:51 +00:00
security:
- bearerAuth: []
2021-12-31 20:23:30 +00:00
parameters:
- name: labelId
in: path
description: specified label id
required: true
schema:
type: string
2021-12-29 05:49:51 +00:00
responses:
'200':
description: success
2021-12-29 05:49:51 +00:00
'401':
description: permission denied
'404':
description: label not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
2022-01-02 02:33:27 +00:00
/content/labels/{labelId}/groups/{groupId}:
post:
tags:
- content
description: Set a sharing group for the label and articles assigned to the label. Access granted to app tokens of the account holder.
2022-01-02 02:33:27 +00:00
operationId: set-label-group
security:
- bearerAuth: []
parameters:
- name: labelId
in: path
description: specified label id
required: true
schema:
type: string
- name: groupId
in: path
description: specified group id
required: true
schema:
type: string
responses:
'200':
description: success
2022-01-02 02:33:27 +00:00
'401':
description: permission denied
'404':
description: group or label not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2022-01-02 02:33:27 +00:00
'500':
description: internal server error
delete:
tags:
- content
description: Clear a sharing group from a label. Access granted to app tokens of the account holder.
2022-01-02 02:33:27 +00:00
operationId: clear-label-group
security:
- bearerAuth: []
parameters:
- name: labelId
in: path
description: specified label id
required: true
schema:
type: string
- name: groupId
in: path
description: specified group id
required: true
schema:
type: string
responses:
'200':
description: success
2022-01-02 02:33:27 +00:00
'401':
description: permission denied
'404':
description: group or label not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2022-01-02 02:33:27 +00:00
'500':
description: internal server error
2021-12-29 05:49:51 +00:00
/conversation/dialogues:
get:
tags:
- conversation
description: Retrieve all dialogues.
operationId: get-dialogues
security:
- bearerAuth: []
responses:
'200':
description: success
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Dialogue'
'401':
description: permission denied
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
post:
tags:
- conversation
description: Create and host a new dialogue. Authroization granted to an app token of the account holder.
2021-12-29 05:49:51 +00:00
operationId: add-dialogue
security:
- bearerAuth: []
responses:
'200':
description: success
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Dialogue'
'401':
description: permission denied
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
/conversation/dialogues/{dialogueId}/subject:
put:
tags:
- conversation
description: Set the subject for a dialogue. Authorization granted the an app token for the account holder.
2021-12-29 05:49:51 +00:00
operationId: set-dialogue-subject
2021-12-25 22:54:45 +00:00
security:
- bearerAuth: []
parameters:
2021-12-29 05:49:51 +00:00
- name: dialogueId
2021-12-25 22:54:45 +00:00
in: path
2021-12-29 05:49:51 +00:00
description: specified dialogue id
2021-12-25 22:54:45 +00:00
required: true
schema:
type: string
responses:
2021-12-29 05:49:51 +00:00
'201':
description: success
2021-12-25 22:54:45 +00:00
'401':
description: permission denied
2021-12-25 22:54:45 +00:00
'404':
description: dialogue not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-25 22:54:45 +00:00
'500':
description: internal server error
requestBody:
content:
application/json:
schema:
2021-12-29 05:49:51 +00:00
type: object
required:
- type
- data
properties:
type:
type: string
data:
type: string
/conversation/dialogues/{dialogueId}/active:
put:
2021-12-25 22:54:45 +00:00
tags:
2021-12-29 05:49:51 +00:00
- conversation
description: Set active state of dialogue. If a dialogue is inactive any update to the topics will fail. Authorization is granted to an app token of the account holder.
2021-12-29 05:49:51 +00:00
operationId: set-dialogue-active
2021-12-25 22:54:45 +00:00
security:
- bearerAuth: []
parameters:
2021-12-29 05:49:51 +00:00
- name: dialogueId
2021-12-25 22:54:45 +00:00
in: path
2021-12-29 05:49:51 +00:00
description: specified dialogue id
2021-12-25 22:54:45 +00:00
required: true
schema:
type: string
responses:
'200':
2021-12-29 05:49:51 +00:00
description: success
2021-12-25 22:54:45 +00:00
'401':
description: permission denied
2021-12-25 22:54:45 +00:00
'404':
description: dialogue not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-25 22:54:45 +00:00
'500':
description: internal server error
2021-12-29 05:49:51 +00:00
requestBody:
content:
application/json:
schema:
type: boolean
2022-01-03 23:13:16 +00:00
/conversation/dialogues/{dialogueId}/cards/{cardId}:
put:
2021-12-25 22:54:45 +00:00
tags:
2021-12-29 05:49:51 +00:00
- conversation
description: Add insight to a dialogue. This endpoint will automatically invoke the add insight on the contact's node. Authorization is granted to the app token of the account holder.
operationId: add-dialogue-insight
2021-12-25 22:54:45 +00:00
security:
- bearerAuth: []
parameters:
2021-12-29 05:49:51 +00:00
- name: dialogueId
2021-12-25 22:54:45 +00:00
in: path
2021-12-29 05:49:51 +00:00
description: specified dialogue id
2021-12-25 22:54:45 +00:00
required: true
schema:
type: string
2022-01-03 23:13:16 +00:00
- name: cardId
2021-12-25 22:54:45 +00:00
in: path
2021-12-31 06:01:08 +00:00
description: specified card id
2021-12-25 22:54:45 +00:00
required: true
schema:
type: string
responses:
'200':
description: success
2021-12-25 22:54:45 +00:00
'401':
description: permission denied
2021-12-25 22:54:45 +00:00
'404':
2022-01-03 23:13:16 +00:00
description: cardId or dialogue not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-25 22:54:45 +00:00
'500':
description: internal server error
delete:
tags:
2021-12-29 05:49:51 +00:00
- conversation
description: Remove an insight from a dialogue. This endpoint will authomatically invoke the delete insight endpoint on the contact's node. Authorization is granted to the app token of the accoun holder.
operationId: remove-dialogue-insight
2021-12-25 22:54:45 +00:00
security:
- bearerAuth: []
parameters:
2021-12-29 05:49:51 +00:00
- name: dialogueId
in: path
description: specified dialogue id
required: true
schema:
type: string
2022-01-03 23:13:16 +00:00
- name: cardId
2021-12-25 22:54:45 +00:00
in: path
2022-01-02 00:29:58 +00:00
description: specified contact id
2021-12-25 22:54:45 +00:00
required: true
schema:
type: string
2021-12-29 05:49:51 +00:00
responses:
'200':
description: success
2021-12-29 05:49:51 +00:00
'401':
description: permission denied
'404':
2022-01-03 23:13:16 +00:00
description: cardId or dialogue not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
'500':
description: internal server error
2022-01-03 23:13:16 +00:00
/conversation/dialogues/{dialogueId}/status:
put:
tags:
- conversation
2022-01-03 23:13:16 +00:00
description: Set active status for contact on the host node. Access is granted to a contact token for an account with the specified contact
2022-01-02 00:29:58 +00:00
operationId: set-dialogue-insight-status
security:
- bearerAuth: []
parameters:
- name: dialogueId
in: path
description: specified dialogue id
required: true
schema:
type: string
responses:
'200':
description: success
'401':
description: permission denied
2021-12-29 05:49:51 +00:00
'404':
2022-01-03 23:13:16 +00:00
description: dialogue not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
requestBody:
content:
application/json:
schema:
type: string
enum: [ active, inactive, dismissed ]
2021-12-29 05:49:51 +00:00
/conversation/dialogues/{dialogueId}:
delete:
tags:
- conversation
description: Remove specified dialogue. This endpoint will authomatically invoke the delete insight endpoint on all of the contacts' nodes. Access is granted to an app token for the account holder.
2021-12-29 05:49:51 +00:00
operationId: remove-dialogue
security:
- bearerAuth: []
parameters:
- name: dialogueId
2021-12-25 22:54:45 +00:00
in: path
2021-12-29 05:49:51 +00:00
description: specified dialogue id
2021-12-25 22:54:45 +00:00
required: true
schema:
type: string
responses:
'200':
description: success
2021-12-25 22:54:45 +00:00
'401':
description: permission denied
2021-12-25 22:54:45 +00:00
'404':
description: dialogue not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-25 22:54:45 +00:00
'500':
description: internal server error
2021-12-29 05:49:51 +00:00
/conversation/insights:
2021-12-25 22:54:45 +00:00
get:
tags:
2021-12-29 05:49:51 +00:00
- conversation
description: Retrieve all insights. Access granted to app token for the account holder.
2021-12-29 05:49:51 +00:00
operationId: get-insights
2021-12-25 22:54:45 +00:00
security:
- bearerAuth: []
2022-01-04 17:18:01 +00:00
parameters:
- name: dismissed
in: query
description: if dismissed insights should be included
required: false
schema:
type: string
2021-12-25 22:54:45 +00:00
responses:
'200':
2021-12-29 05:49:51 +00:00
description: success
2021-12-25 22:54:45 +00:00
content:
application/json:
schema:
type: array
items:
2021-12-29 05:49:51 +00:00
$ref: '#/components/schemas/Insight'
2021-12-25 22:54:45 +00:00
'401':
description: permission denied
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-25 22:54:45 +00:00
'500':
description: internal server error
2022-01-03 23:13:16 +00:00
/conversation/insights/{dialogueId}:
2021-12-25 22:54:45 +00:00
post:
tags:
2021-12-29 05:49:51 +00:00
- conversation
2022-01-03 23:13:16 +00:00
description: Create or update an insight. Because the insightId is not know by the contact, it is determined from the token and the dialogueId. Access granted to a connected contact token.
operationId: add-insight-dialogue
2021-12-25 22:54:45 +00:00
security:
- bearerAuth: []
parameters:
2021-12-29 05:49:51 +00:00
- name: dialogueId
in: path
description: dialogue with insight id to update
2021-12-25 22:54:45 +00:00
required: true
schema:
type: string
responses:
'200':
description: success
content:
application/json:
schema:
type: string
enum: [ active, inactive, dismissed ]
2021-12-25 22:54:45 +00:00
'401':
description: permission denied
'404':
2022-01-03 23:13:16 +00:00
description: dialogue not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-25 22:54:45 +00:00
'500':
description: internal server error
2021-12-29 05:49:51 +00:00
requestBody:
content:
application/json:
schema:
type: integer
format: int64
2021-12-25 22:54:45 +00:00
delete:
tags:
2021-12-29 05:49:51 +00:00
- conversation
2022-01-03 23:13:16 +00:00
description: Remove a specified insight. If the referenced dialogue is still active, the insight will get recreated with the next hook receiver update. Access granted to contact token of a connected card.
operationId: set-insight-dialogue
2021-12-25 22:54:45 +00:00
security:
- bearerAuth: []
parameters:
2021-12-29 05:49:51 +00:00
- name: dialogueId
in: path
description: insight id to update
2021-12-25 22:54:45 +00:00
required: true
schema:
type: string
responses:
'200':
description: success
2021-12-25 22:54:45 +00:00
'401':
description: permission denied
'404':
2022-01-03 23:13:16 +00:00
description: dialogue not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-25 22:54:45 +00:00
'500':
description: internal server error
2021-12-29 05:49:51 +00:00
2022-01-03 23:13:16 +00:00
/conversation/insights/{insightId}/status:
put:
2021-12-29 05:49:51 +00:00
tags:
- conversation
2022-01-03 23:13:16 +00:00
description: Set the status of an insight. This will cause the hook receiver to return an inactive status. Access granted to app token of account holder.
operationId: set-insight-status
2021-12-29 05:49:51 +00:00
security:
- bearerAuth: []
parameters:
2022-01-03 23:13:16 +00:00
- name: insightId
2021-12-29 05:49:51 +00:00
in: path
description: dialogue with insight id to update
required: true
schema:
type: string
responses:
'200':
2021-12-31 20:23:30 +00:00
description: success
2021-12-29 05:49:51 +00:00
'401':
2021-12-31 20:23:30 +00:00
description: permission denied
2022-01-03 23:13:16 +00:00
'403':
description: invalid state # once dismissed always dismissed
2021-12-31 20:23:30 +00:00
'404':
2022-01-03 23:13:16 +00:00
description: insight not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
requestBody:
content:
application/json:
schema:
type: string
enum: [ active, inactive, dismissed ]
2021-12-29 05:49:51 +00:00
2021-12-31 06:01:08 +00:00
/conversation/dialogues/{dialogueId}/topicBlocks/view:
2021-12-27 23:15:54 +00:00
get:
tags:
2021-12-29 05:49:51 +00:00
- conversation
2021-12-31 20:23:30 +00:00
description: Get a view of the topicBlocks within a dialogue. Authorization granted to account holder app token or dialogue member contact token who is also a member of the dialogue
operationId: get-topic-block-view
2021-12-27 23:15:54 +00:00
security:
- bearerAuth: []
2021-12-29 05:49:51 +00:00
parameters:
- name: dialogueId
in: path
description: specified dialogue id
required: true
schema:
type: string
- name: types
in: query
description: limit results to topics of types
required: false
schema:
type: array
items:
type: string
2021-12-27 23:15:54 +00:00
responses:
'200':
2021-12-31 20:23:30 +00:00
description: success
2021-12-27 23:15:54 +00:00
content:
application/json:
schema:
type: array
items:
2021-12-28 05:07:43 +00:00
type: object
properties:
id:
type: string
revision:
type: integer
format: int64
2021-12-27 23:15:54 +00:00
'401':
2021-12-31 20:23:30 +00:00
description: permission denied
'404':
description: dialogue not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-27 23:15:54 +00:00
'500':
description: internal server error
2021-12-31 06:01:08 +00:00
/conversation/dialogues/{dialogueId}/topicBlocks/{blockId}:
2021-12-27 23:15:54 +00:00
get:
tags:
2021-12-29 05:49:51 +00:00
- conversation
2021-12-31 20:23:30 +00:00
description: Get the topics within a topicBlock. Only the account holder and the topic creator will retrieve pending topics. Authorization granted to account holder app token or dialogue member contact token who is also a member of the dialogue
operationId: get-topic-block
2021-12-27 23:15:54 +00:00
security:
- bearerAuth: []
parameters:
2021-12-29 05:49:51 +00:00
- name: dialogueId
in: path
description: specified dialogue id
required: true
schema:
type: string
2021-12-27 23:15:54 +00:00
- name: blockId
in: path
description: specified group id
required: true
schema:
type: string
2022-01-02 02:33:27 +00:00
- name: types
in: query
description: limit results to topics of types
2022-01-02 02:33:27 +00:00
required: false
schema:
type: array
items:
type: string
2021-12-27 23:15:54 +00:00
responses:
'200':
description: successful operation
content:
application/json:
schema:
type: array
items:
2021-12-31 06:01:08 +00:00
$ref: '#/components/schemas/Topic'
2021-12-27 23:15:54 +00:00
'401':
2021-12-31 20:23:30 +00:00
description: permission denied
'404':
description: block or dialogue not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-27 23:15:54 +00:00
'500':
description: internal server error
2021-12-31 06:01:08 +00:00
/conversation/dialogues/{dialogueId}/topicBlocks/{blockId}/view:
2021-12-27 23:15:54 +00:00
get:
tags:
2021-12-29 05:49:51 +00:00
- conversation
2021-12-31 20:23:30 +00:00
description: Get a view of the topics within a topicBlock. Authorization granted to account holder app token or dialogue member contact token who is also a member of the dialogue.
2022-01-02 00:29:58 +00:00
operationId: get-topic-views
2021-12-27 23:15:54 +00:00
security:
- bearerAuth: []
parameters:
2021-12-29 05:49:51 +00:00
- name: dialogueId
in: path
description: specified dialogue id
required: true
schema:
type: string
2021-12-27 23:15:54 +00:00
- name: blockId
in: path
description: specified group id
required: true
schema:
type: string
2022-01-02 02:33:27 +00:00
- name: types
in: query
description: limit results to topics of types
2022-01-02 02:33:27 +00:00
required: false
schema:
type: array
items:
type: string
2021-12-27 23:15:54 +00:00
responses:
'200':
description: successful operation
content:
application/json:
schema:
type: array
items:
2021-12-28 05:07:43 +00:00
type: object
properties:
id:
type: string
revision:
type: integer
format: int64
2021-12-27 23:15:54 +00:00
'401':
2021-12-31 20:23:30 +00:00
description: permission denied
'404':
description: block or dialogue not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-27 23:15:54 +00:00
'500':
description: internal server error
2021-12-31 06:01:08 +00:00
/conversation/dialogues/{dialogueId}/topics:
2021-12-27 23:15:54 +00:00
post:
tags:
2021-12-29 05:49:51 +00:00
- conversation
2021-12-31 20:23:30 +00:00
description: Add a topic to a dialogue. The response contains the topicBlock ID and topicBlock revision to which the topic is assigned. Authorization granted to account holder app token or dialogue member contact token who is a member of the dialogue.
operationId: add-dialogue-topic
2021-12-27 23:15:54 +00:00
security:
- bearerAuth: []
2021-12-29 05:49:51 +00:00
parameters:
- name: dialogueId
in: path
description: specified dialogue id
required: true
schema:
type: string
2021-12-27 23:15:54 +00:00
responses:
'201':
description: entry created
2021-12-28 05:07:43 +00:00
content:
application/json:
schema:
type: object
properties:
blockId:
type: string
blockRevision:
type: integer
format: int64
2021-12-31 06:01:08 +00:00
topic:
$ref: '#/components/schemas/Topic'
2021-12-27 23:15:54 +00:00
'401':
2021-12-31 20:23:30 +00:00
description: permission denied
'403':
description: inactive dialogue
2021-12-31 20:23:30 +00:00
'404':
description: dialogue not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-27 23:15:54 +00:00
'500':
description: internal server error
2021-12-31 06:01:08 +00:00
/conversation/dialogues/{dialogueId}/topics/{topicId}:
2021-12-27 23:15:54 +00:00
get:
tags:
2021-12-29 05:49:51 +00:00
- conversation
2021-12-31 20:23:30 +00:00
description: Retrieve a specified dialogue topic. Authorization granted to account holder app token or dialogue member contact token who is a member of the dialogue.
operationId: get-dialogue-topic
2021-12-27 23:15:54 +00:00
security:
- bearerAuth: []
parameters:
2021-12-29 05:49:51 +00:00
- name: dialogueId
2021-12-27 23:15:54 +00:00
in: path
2021-12-29 05:49:51 +00:00
description: specified dialogue id
required: true
schema:
type: string
2021-12-31 06:01:08 +00:00
- name: topicId
2021-12-29 05:49:51 +00:00
in: path
2021-12-31 06:01:08 +00:00
description: specified topic id
2021-12-27 23:15:54 +00:00
required: true
schema:
type: string
responses:
'200':
description: successful operation
content:
application/json:
schema:
2021-12-31 06:01:08 +00:00
$ref: '#/components/schemas/Topic'
2021-12-27 23:15:54 +00:00
'401':
2021-12-31 20:23:30 +00:00
description: permission denied
'404':
description: topic or dialogue not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-27 23:15:54 +00:00
'500':
description: internal server error
delete:
tags:
2021-12-29 05:49:51 +00:00
- conversation
2021-12-31 20:23:30 +00:00
description: Remove a topic from a dialogue. Authorization granted to account holder app token or dialogue member contact token who is either the topic createor or the account holder.
operationId: remove-dialogue-topic
2021-12-27 23:15:54 +00:00
security:
- bearerAuth: []
parameters:
2021-12-29 05:49:51 +00:00
- name: dialogueId
2021-12-27 23:15:54 +00:00
in: path
2021-12-29 05:49:51 +00:00
description: specified dialogue id
required: true
schema:
type: string
2021-12-31 06:01:08 +00:00
- name: topicId
2021-12-29 05:49:51 +00:00
in: path
2021-12-31 06:01:08 +00:00
description: specified topic id
2021-12-27 23:15:54 +00:00
required: true
schema:
type: string
responses:
'200':
description: successful operation
'401':
2021-12-31 20:23:30 +00:00
description: permission denied
'403':
description: inactive dialogue
2021-12-31 20:23:30 +00:00
'404':
description: topic or dilaogue not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-27 23:15:54 +00:00
'500':
description: internal server error
2022-01-02 19:20:34 +00:00
/conversation/dialogues/{dialogueId}/topics/{topicId}/subject/{field}:
get:
tags:
- conversation
description: Base64 decode and retrieve a specified field from subject of dialogue topic. Authorization granted to account holder app token or dialogue member contact token who is a member of the dialogue.
operationId: get-dialogue-topic-subject-field
security:
- bearerAuth: []
parameters:
- name: dialogueId
in: path
description: specified dialogue id
required: true
schema:
type: string
- name: topicId
in: path
description: specified topic id
required: true
schema:
type: string
- name: field
in: path
description: field to base64 decode and retrieve
required: true
schema:
type: string
responses:
'200':
description: success
content:
application/octet-stream: #asset specific
schema:
type: string
format: binary
'401':
description: permission denied
'404':
description: field, topic or dialogue not found
'405':
description: invalid field
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2022-01-02 19:20:34 +00:00
'500':
description: internal server error
2021-12-31 06:01:08 +00:00
/conversation/dialogues/{dialogueId}/topics/{topicId}/subject:
2021-12-28 05:07:43 +00:00
put:
tags:
2021-12-29 05:49:51 +00:00
- conversation
2021-12-31 20:23:30 +00:00
description: Set the subject for a topic. Authorization granted to account holder app token or dialogue member contact token who is also the creator of the topic.
operationId: set-topic-subject
2021-12-28 05:07:43 +00:00
security:
- bearerAuth: []
parameters:
2021-12-29 05:49:51 +00:00
- name: dialogueId
2021-12-28 05:07:43 +00:00
in: path
2021-12-29 05:49:51 +00:00
description: specified dialogue id
required: true
schema:
type: string
2021-12-31 06:01:08 +00:00
- name: topicId
2021-12-29 05:49:51 +00:00
in: path
2021-12-31 06:01:08 +00:00
description: specified topic id
2021-12-28 05:07:43 +00:00
required: true
schema:
type: string
responses:
'201':
description: entry created
'401':
description: invalid token
'403':
description: inactive dialogue
'404':
description: topic or dialogue not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-28 05:07:43 +00:00
'500':
description: internal server error
requestBody:
content:
application/json:
schema:
type: object
required:
- type
- data
properties:
type:
type: string
data:
type: string
/conversation/dialogues/{dialogueId}/topics/{topicId}/assets:
2021-12-31 20:23:30 +00:00
get:
tags:
- conversation
description: Get all assets associated with the specified topic. Authorization granted to account holder app token or dialogue member contact token who has access to the topic.
operationId: get-topic-assets
2021-12-31 20:23:30 +00:00
security:
- bearerAuth: []
parameters:
- name: dialogueId
in: path
description: specified dialogue id
required: true
schema:
type: string
- name: topicId
in: path
description: specified topic id
required: true
schema:
type: string
responses:
'201':
description: success
2021-12-31 20:23:30 +00:00
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Asset'
2021-12-31 20:23:30 +00:00
'401':
description: permission denied
'404':
description: topic or dialogue not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-31 20:23:30 +00:00
'500':
description: internal server error
post:
2021-12-28 05:07:43 +00:00
tags:
2021-12-29 05:49:51 +00:00
- conversation
description: Add an asset to a topic. The asset will be processed and transcoded according to the specified transformation. Authorization granted to account holder app token or dialogue member contact token who is also the creator of the topic.
operationId: add-topic-asset
2021-12-28 05:07:43 +00:00
security:
- bearerAuth: []
parameters:
2021-12-29 05:49:51 +00:00
- name: dialogueId
2021-12-28 05:07:43 +00:00
in: path
2021-12-29 05:49:51 +00:00
description: specified dialogue id
2021-12-28 05:07:43 +00:00
required: true
schema:
type: string
2021-12-31 06:01:08 +00:00
- name: topicId
2021-12-28 05:07:43 +00:00
in: path
2021-12-31 06:01:08 +00:00
description: specified topic id
2021-12-28 05:07:43 +00:00
required: true
schema:
type: string
- name: transforms
2022-01-02 02:33:27 +00:00
in: query
description: transforms to apply
2022-01-02 02:33:27 +00:00
required: false
schema:
type: array
items:
type: string
2021-12-28 05:07:43 +00:00
responses:
'201':
description: success
2021-12-28 05:07:43 +00:00
content:
application/json:
schema:
$ref: '#/components/schemas/Asset'
2021-12-28 05:07:43 +00:00
'401':
2021-12-31 20:23:30 +00:00
description: permission denied
'403':
description: inactive dialogue
2021-12-31 20:23:30 +00:00
'404':
description: topic or dialogue not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-28 05:07:43 +00:00
'500':
description: internal server error
requestBody:
content:
multipart/form-data:
schema:
type: object
properties:
fileName:
type: string
format: binary
/conversation/dialogues/{dialogueId}/topics/{topicId}/assets/{assetId}:
2021-12-28 05:07:43 +00:00
get:
tags:
2021-12-29 05:49:51 +00:00
- conversation
description: Retrieve an asset associated with a topic. All transformed assets can be retrieved by anyone with access to the topic, but the original asset can only be retrieved by the author of the topic. Authorization granted to account holder app token or dialogue member contact token who is also the creator of the topic.
operationId: get-topic-asset
2021-12-28 05:07:43 +00:00
security:
- bearerAuth: []
parameters:
2021-12-29 05:49:51 +00:00
- name: dialogueId
2021-12-28 05:07:43 +00:00
in: path
2021-12-29 05:49:51 +00:00
description: specified dialogue id
required: true
schema:
type: string
2021-12-31 06:01:08 +00:00
- name: topicId
2021-12-29 05:49:51 +00:00
in: path
2021-12-31 06:01:08 +00:00
description: specified topic id
2021-12-28 05:07:43 +00:00
required: true
schema:
type: string
- name: assetId
2021-12-28 05:07:43 +00:00
in: path
description: specified asset id
2021-12-28 05:07:43 +00:00
required: true
schema:
type: string
responses:
'200':
description: success
2021-12-28 05:07:43 +00:00
content:
application/octet-stream: #asset specific
2021-12-28 05:07:43 +00:00
schema:
type: string
format: binary
2021-12-28 05:07:43 +00:00
'401':
2021-12-31 20:23:30 +00:00
description: permission denied
'404':
description: asset, topic or dialogue not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
'500':
description: internal server error
delete:
tags:
- conversation
description: Remove and delete an asset associated with a topic. Authorization granted to account holder app token or dialogue member contact token who is also the creator of the topic.
operationId: remove-topic-asset
security:
- bearerAuth: []
parameters:
- name: dialogueId
in: path
description: specified dialogue id
required: true
schema:
type: string
- name: topicId
in: path
description: specified topic id
required: true
schema:
type: string
- name: assetId
in: path
description: specified asset id
required: true
schema:
type: string
responses:
'200':
description: success
'401':
description: permission denied
'403':
description: inactive dialogue
'404':
description: asset, topic or dialogue not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-28 05:07:43 +00:00
'500':
description: internal server error
/conversation/dialogues/{dialogueId}/topics/{topicId}/confirmed:
put:
2021-12-28 05:07:43 +00:00
tags:
2021-12-29 05:49:51 +00:00
- conversation
description: After the assets have been uploaded and the subject has been set, the topic should be set to confirmed (true) to make the topic available to others. Authorization granted to account holder app token or dialogue member contact token who is also the creator of the topic.
2021-12-28 05:07:43 +00:00
security:
- bearerAuth: []
parameters:
2021-12-29 05:49:51 +00:00
- name: dialogueId
2021-12-28 05:07:43 +00:00
in: path
2021-12-29 05:49:51 +00:00
description: specified dialogue id
required: true
schema:
type: string
2021-12-31 06:01:08 +00:00
- name: topicId
2021-12-29 05:49:51 +00:00
in: path
2021-12-31 06:01:08 +00:00
description: specified topic id
2021-12-28 05:07:43 +00:00
required: true
schema:
type: string
responses:
'200':
description: success
2021-12-28 05:07:43 +00:00
'401':
2021-12-31 20:23:30 +00:00
description: permission denied
'403':
description: inactive dialogue
2021-12-31 20:23:30 +00:00
'404':
description: topic or dialogue not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-28 05:07:43 +00:00
'500':
description: internal server error
2021-12-31 20:23:30 +00:00
requestBody:
content:
application/json:
schema:
type: boolean
2021-12-28 05:07:43 +00:00
/conversation/dialogues/{dialogueId}/topics/{topicId}/tagBlocks/view:
2021-12-28 05:07:43 +00:00
get:
tags:
2021-12-29 05:49:51 +00:00
- conversation
description: Get a view of all of all tagBlocks. Authorization granted to account holder app token or dialogue member contact token who has access to the topic.
operationId: get-topic-tag-block-view
2021-12-28 05:07:43 +00:00
security:
- bearerAuth: []
parameters:
2021-12-29 05:49:51 +00:00
- name: dialogueId
2021-12-28 05:07:43 +00:00
in: path
2021-12-29 05:49:51 +00:00
description: specified dialogue id
required: true
schema:
type: string
2021-12-31 06:01:08 +00:00
- name: topicId
2021-12-29 05:49:51 +00:00
in: path
2021-12-31 06:01:08 +00:00
description: specified topic id
2021-12-28 05:07:43 +00:00
required: true
schema:
type: string
- name: types
in: query
description: limit results to articles of types
required: false
2021-12-28 05:07:43 +00:00
schema:
type: array
items:
type: string
2021-12-28 05:07:43 +00:00
responses:
'200':
description: successful operation
2021-12-28 05:07:43 +00:00
content:
application/json:
schema:
type: array
items:
type: object
properties:
id:
type: string
revision:
type: integer
format: int64
2021-12-28 05:07:43 +00:00
'401':
2021-12-31 20:23:30 +00:00
description: permission denied
2021-12-28 05:07:43 +00:00
'404':
description: topic or dialogue not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-28 05:07:43 +00:00
'500':
description: internal server error
/conversation/dialogues/{dialogueId}/topics/{topicId}/tagBlocks/{blockId}/view:
get:
2021-12-28 05:07:43 +00:00
tags:
2021-12-29 05:49:51 +00:00
- conversation
description: Get a view of all of the tags within a block. Authorization granted to account holder app token or dialogue member contact token who has access to the topic.
operationId: get-topic-tag-view
2021-12-28 05:07:43 +00:00
security:
- bearerAuth: []
parameters:
2021-12-29 05:49:51 +00:00
- name: dialogueId
2021-12-28 05:07:43 +00:00
in: path
2021-12-29 05:49:51 +00:00
description: specified dialogue id
required: true
schema:
type: string
2021-12-31 06:01:08 +00:00
- name: topicId
2021-12-29 05:49:51 +00:00
in: path
2021-12-31 06:01:08 +00:00
description: specified topic id
2021-12-28 05:07:43 +00:00
required: true
schema:
type: string
- name: blockId
2021-12-28 05:07:43 +00:00
in: path
description: specified block id
2021-12-28 05:07:43 +00:00
required: true
schema:
type: string
- name: types
in: query
description: limit results to tags of types
required: false
schema:
type: array
items:
type: string
2021-12-28 05:07:43 +00:00
responses:
'200':
description: successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
id:
type: string
revision:
type: integer
format: int64
2021-12-28 05:07:43 +00:00
'401':
2021-12-31 20:23:30 +00:00
description: permission denied
2021-12-28 05:07:43 +00:00
'404':
description: block, topic or dialogue not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-28 05:07:43 +00:00
'500':
description: internal server error
/conversation/dialogues/{dialogueId}/topics/{topicId}/tagBlocks/{blockId}:
2021-12-28 05:07:43 +00:00
get:
tags:
2021-12-29 05:49:51 +00:00
- conversation
description: Get all of the tags within a tag block. Authorization granted to account holder app token or dialogue member contact token who has access to the topic.
operationId: get-topic-tags
2021-12-28 05:07:43 +00:00
security:
- bearerAuth: []
parameters:
2021-12-29 05:49:51 +00:00
- name: dialogueId
2021-12-28 05:07:43 +00:00
in: path
2021-12-29 05:49:51 +00:00
description: specified dialogue id
required: true
schema:
type: string
2021-12-31 06:01:08 +00:00
- name: topicId
2021-12-29 05:49:51 +00:00
in: path
2021-12-31 06:01:08 +00:00
description: specified topic id
2021-12-28 05:07:43 +00:00
required: true
schema:
type: string
- name: blockId
in: path
description: specified block id
required: true
schema:
type: string
- name: types
in: query
description: limit results to tags of types
required: false
schema:
type: array
items:
type: string
2021-12-28 05:07:43 +00:00
responses:
'200':
description: successful operation
2021-12-28 05:07:43 +00:00
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Tag'
2021-12-28 05:07:43 +00:00
'401':
2021-12-31 06:01:08 +00:00
description: permission denied
'404':
description: block, topic, or dialogue not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-28 05:07:43 +00:00
'500':
description: internal server error
/conversation/dialogues/{dialogueId}/topics/{topicId}/tags:
2021-12-28 05:07:43 +00:00
post:
tags:
2021-12-29 05:49:51 +00:00
- conversation
description: Add a tag to specified topic. Authorization granted to account holder app token or dialogue member contact token who has access to the topic. The body of the post contains the subject of the tag, which can have no associated assets.
operationId: add-topic-tag
2021-12-28 05:07:43 +00:00
security:
- bearerAuth: []
parameters:
2021-12-29 05:49:51 +00:00
- name: dialogueId
2021-12-28 05:07:43 +00:00
in: path
2021-12-29 05:49:51 +00:00
description: specified dialogue id
required: true
schema:
type: string
2021-12-31 06:01:08 +00:00
- name: topicId
2021-12-29 05:49:51 +00:00
in: path
2021-12-31 06:01:08 +00:00
description: specified topic id
2021-12-28 05:07:43 +00:00
required: true
schema:
type: string
responses:
'201':
description: entry created
2021-12-28 05:07:43 +00:00
content:
application/json:
schema:
type: object
properties:
blockId:
type: string
blockRevision:
type: integer
format: int64
tag:
$ref: '#/components/schemas/Tag'
2021-12-28 05:07:43 +00:00
'401':
2021-12-31 06:01:08 +00:00
description: permission denied
'403':
description: inactive dialogue
2021-12-31 06:01:08 +00:00
'404':
description: topic or dialogue not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-28 05:07:43 +00:00
'500':
description: internal server error
requestBody:
content:
application/json:
2021-12-28 05:07:43 +00:00
schema:
type: object
required:
- type
- data
2021-12-28 05:07:43 +00:00
properties:
type:
2021-12-28 05:07:43 +00:00
type: string
data:
type: string
/conversation/dialogues/{dialogueId}/topics/{topicId}/tags/{tagId}:
2021-12-28 05:07:43 +00:00
get:
tags:
2021-12-29 05:49:51 +00:00
- conversation
description: Retrieve specified tag on the topic. Authorization granted to account holder app token or dialogue member contact token who has access to the topic.
operationId: get-topic-tag
2021-12-28 05:07:43 +00:00
security:
- bearerAuth: []
parameters:
2021-12-29 05:49:51 +00:00
- name: dialogueId
2021-12-28 05:07:43 +00:00
in: path
2021-12-29 05:49:51 +00:00
description: specified dialogue id
required: true
schema:
type: string
2021-12-31 06:01:08 +00:00
- name: topicId
2021-12-29 05:49:51 +00:00
in: path
2021-12-31 06:01:08 +00:00
description: specified topic id
2021-12-28 05:07:43 +00:00
required: true
schema:
type: string
- name: tagId
2021-12-28 05:07:43 +00:00
in: path
description: specified tag id
2021-12-28 05:07:43 +00:00
required: true
schema:
type: string
responses:
'201':
2021-12-31 06:01:08 +00:00
description: success
2021-12-28 05:07:43 +00:00
content:
application/json:
2021-12-28 05:07:43 +00:00
schema:
$ref: '#/components/schemas/Tag'
2021-12-29 05:49:51 +00:00
'401':
2021-12-31 06:01:08 +00:00
description: permission denied
2021-12-29 05:49:51 +00:00
'404':
description: tag, topic, or dialogue not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-31 06:01:08 +00:00
'500':
description: internal server error
delete:
tags:
- conversation
description: Remove specified tag from the topic. Authorization granted to account holder app token or dialogue member contact token who has access to the topic.
operationId: remove-topic-tag
2021-12-31 06:01:08 +00:00
security:
- bearerAuth: []
parameters:
- name: dialogueId
in: path
description: specified dialogue id
required: true
schema:
type: string
- name: topicId
in: path
description: specified topic id
required: true
schema:
type: string
- name: tagId
2021-12-29 05:49:51 +00:00
in: path
description: specified tag id
2021-12-29 05:49:51 +00:00
required: true
schema:
type: string
responses:
'200':
2021-12-31 06:01:08 +00:00
description: success
2021-12-29 05:49:51 +00:00
'401':
2021-12-31 06:01:08 +00:00
description: permission denied
'403':
description: inactive dialogue
2021-12-29 05:49:51 +00:00
'404':
description: tag, topic, or dialogue not found
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2021-12-29 05:49:51 +00:00
'500':
description: internal server error
2022-01-02 19:20:34 +00:00
/conversation/dialogues/{dialogueId}/topics/{topicId}/tags/{tagId}/subject/{field}:
get:
tags:
- conversation
description: Base64 decode and retrieve specified field of tag subject on the topic. Authorization granted to account holder app token or dialogue member contact token who has access to the topic.
operationId: get-topic-tag-subject-field
security:
- bearerAuth: []
parameters:
- name: dialogueId
in: path
description: specified dialogue id
required: true
schema:
type: string
- name: topicId
in: path
description: specified topic id
required: true
schema:
type: string
- name: tagId
in: path
description: specified tag id
required: true
schema:
type: string
- name: field
in: path
description: field to base64 decode and download
required: true
schema:
type: string
responses:
'201':
description: success
content:
application/json:
schema:
$ref: '#/components/schemas/Tag'
'401':
description: permission denied
'404':
description: field, tag, topic, or dialogue not found
'405':
description: invalid field
2022-01-13 05:00:52 +00:00
'410':
description: account disabled
2022-01-02 19:20:34 +00:00
'500':
description: internal server error
2021-12-29 05:49:51 +00:00
externalDocs:
2022-01-04 07:18:32 +00:00
description: App overview
url: ''
2021-12-29 05:49:51 +00:00
components:
schemas:
Announce:
2021-12-27 06:57:34 +00:00
type: object
required:
2021-12-29 05:49:51 +00:00
- appToken
2021-12-27 06:57:34 +00:00
properties:
2021-12-29 05:49:51 +00:00
appToken:
2021-12-27 06:57:34 +00:00
type: string
2022-01-13 05:23:18 +00:00
Revision:
2021-12-20 21:49:59 +00:00
type: object
required:
- profile
- content
2022-01-02 00:29:58 +00:00
- view # revision increment on sharing changes
2022-01-14 21:36:02 +00:00
- group
2022-01-02 00:29:58 +00:00
- label
2021-12-31 06:01:08 +00:00
- card
2021-12-20 21:49:59 +00:00
- dialogue
- insight
properties:
profile:
type: integer
format: int64
content:
type: integer
format: int64
2022-01-04 07:18:32 +00:00
label:
2021-12-20 21:49:59 +00:00
type: integer
format: int64
2022-01-14 21:36:02 +00:00
group:
2021-12-20 21:49:59 +00:00
type: integer
format: int64
2021-12-31 06:01:08 +00:00
card:
2021-12-20 21:49:59 +00:00
type: integer
format: int64
dialogue:
type: integer
format: int64
insight:
type: integer
format: int64
2022-01-05 05:31:18 +00:00
NodeConfig:
type: object
2022-01-12 21:12:40 +00:00
required:
- domain
- publicLimit
- accountStorage
2022-01-05 05:31:18 +00:00
properties:
domain:
type: string
publicLimit:
type: integer
format: int64
2022-01-05 05:31:18 +00:00
accountStorage:
type: integer
format: int64
2022-01-13 05:08:44 +00:00
AccountStatus:
type: object
required:
- disabled
- storageUsed
- storageAvailable
2022-01-13 18:06:19 +00:00
- forwardingAddress
2022-01-13 05:08:44 +00:00
properties:
disabled:
type: boolean
storageUsed:
type: number
format: int64
storageAvailable:
type: number
format: int64
2022-01-13 18:06:19 +00:00
forwardingAddress:
type: string
2022-01-13 05:08:44 +00:00
2021-12-20 21:49:59 +00:00
Profile:
type: object
required:
2022-01-17 05:11:24 +00:00
- guid
2021-12-20 21:49:59 +00:00
- revision
- node
properties:
2022-01-17 05:11:24 +00:00
guid:
2021-12-21 08:13:48 +00:00
type: string
2021-12-21 22:47:10 +00:00
handle:
type: string
name:
type: string
description:
type: string
location:
type: string
image:
type: string
format: base64 encoded data
2021-12-21 08:13:48 +00:00
revision:
type: integer
format: int64
2022-01-04 07:18:32 +00:00
version:
type: string
2021-12-21 08:13:48 +00:00
node:
type: string
ProfileData:
type: object
properties:
2021-12-20 21:49:59 +00:00
name:
type: string
description:
type: string
location:
type: string
2021-12-21 08:13:48 +00:00
2022-01-04 07:18:32 +00:00
Account:
type: object
required:
- accountId
- profile
2022-01-13 05:00:52 +00:00
- disabled
2022-01-04 07:18:32 +00:00
properties:
accountId:
type: string
profile:
$ref: '#/components/schemas/Profile'
2022-01-13 05:00:52 +00:00
disabled:
type: boolean
2022-01-04 07:18:32 +00:00
2021-12-21 08:13:48 +00:00
App:
type: object
required:
- appId
- appData
- attached
properties:
appId:
type: string
appData:
$ref: '#/components/schemas/AppData'
attached:
2021-12-20 21:49:59 +00:00
type: integer
2022-01-18 08:40:39 +00:00
format: int64
2021-12-21 08:13:48 +00:00
AppData:
type: object
properties:
name:
2021-12-20 21:49:59 +00:00
type: string
2021-12-21 08:13:48 +00:00
description:
type: string
url:
type: string
image:
type: string
format: base64 encoded image
CardView:
2021-12-24 22:59:24 +00:00
type: object
required:
2022-01-03 23:13:16 +00:00
- cardId
2021-12-24 22:59:24 +00:00
- profileRevision
- contentRevision
2021-12-31 06:01:08 +00:00
- cardRevision
2021-12-24 22:59:24 +00:00
properties:
2022-01-03 23:13:16 +00:00
cardId:
2021-12-24 22:59:24 +00:00
type: string
2021-12-31 06:01:08 +00:00
cardRevision:
2021-12-24 22:59:24 +00:00
type: integer
format: int64
profileRevision:
type: integer
format: int64
contentRevision:
type: integer
format: int64
CardProfile:
2021-12-24 22:59:24 +00:00
type: object
required:
2021-12-25 22:54:45 +00:00
- node
2021-12-24 22:59:24 +00:00
properties:
handle:
type: string
name:
type: string
description:
type: string
location:
type: string
2021-12-25 22:54:45 +00:00
revision:
type: integer
format: int64
2021-12-24 22:59:24 +00:00
imageSet:
type: boolean
node:
type: string
2021-12-25 22:54:45 +00:00
CardData:
2021-12-25 22:54:45 +00:00
type: object
required:
- status
properties:
revision:
2021-12-24 22:59:24 +00:00
type: integer
format: int64
status:
type: string
2022-01-03 17:21:18 +00:00
enum: [ pending, confirmed, requested, connecting, connected ]
notes:
2021-12-24 22:59:24 +00:00
type: string
token:
type: string
groups:
type: array
items:
type: string
2021-12-25 22:54:45 +00:00
Card:
2021-12-25 22:54:45 +00:00
type: object
required:
2022-01-03 23:13:16 +00:00
- cardId
2021-12-31 06:01:08 +00:00
- cardProfile
- cardData
2022-01-08 07:00:12 +00:00
- profileRevision
2021-12-25 22:54:45 +00:00
- contentRevision
properties:
2022-01-03 23:13:16 +00:00
cardId:
type: string
2021-12-31 06:01:08 +00:00
cardProfile:
$ref: '#/components/schemas/CardProfile'
2021-12-31 06:01:08 +00:00
cardData:
$ref: '#/components/schemas/CardData'
2022-01-08 07:00:12 +00:00
profileRevision:
2021-12-25 22:54:45 +00:00
type: integer
format: int64
2022-01-08 07:00:12 +00:00
contentRevision:
2021-12-25 22:54:45 +00:00
type: integer
format: int64
2021-12-24 22:59:24 +00:00
2021-12-29 05:49:51 +00:00
Asset:
type: object
required:
- assetId
properties:
assetId:
type: string
transform:
type: string
status:
type: string
enum: [ pending, processing, ready, error ]
Tag:
type: object
required:
2022-01-10 22:18:18 +00:00
- tagId
- revision
- type
- data
- created
- modified
2021-12-29 05:49:51 +00:00
properties:
2022-01-10 22:18:18 +00:00
tagId:
type: string
2022-01-03 23:13:16 +00:00
cardId:
2021-12-29 05:49:51 +00:00
type: string
2022-01-10 22:18:18 +00:00
revision:
type: integer
format: int64
type:
type: string
data:
type: string
created:
type: integer
2022-01-18 08:40:39 +00:00
format: int64
2021-12-29 05:49:51 +00:00
Insight:
type: object
required:
- insightId
2022-01-10 22:18:18 +00:00
- insightRevision
2022-01-03 23:13:16 +00:00
- cardId
- status
2021-12-29 05:49:51 +00:00
properties:
insightId:
type: string
2022-01-10 22:18:18 +00:00
insightRevision:
2021-12-29 05:49:51 +00:00
type: integer
format: int64
2022-01-03 23:13:16 +00:00
cardId:
2021-12-29 05:49:51 +00:00
type: string
status:
type: string
enum: [ active, inactive, dismissed ]
2021-12-29 05:49:51 +00:00
Dialogue:
type: object
required:
- dialogueId
2022-01-10 22:18:18 +00:00
- dialogueRevision
- type
- data
- modified
- created
- active
2021-12-29 05:49:51 +00:00
- insights
properties:
dialogueId:
type: string
2022-01-10 22:18:18 +00:00
dialogueRevison:
2021-12-29 05:49:51 +00:00
type: integer
format: int64
2022-01-10 22:18:18 +00:00
type:
type: string
data:
type: string
created:
type: integer
2022-01-18 08:40:39 +00:00
format: int64
2021-12-29 05:49:51 +00:00
active:
type: boolean
2022-01-10 22:18:18 +00:00
insightRevision:
type: integer
format: int64
2021-12-29 05:49:51 +00:00
insights:
type: array
items:
type: object
properties:
2022-01-03 23:13:16 +00:00
cardId:
2021-12-29 05:49:51 +00:00
type: string
status:
type: string
enum: [ active, offsync, inactive, dismissed ]
2022-01-04 07:18:32 +00:00
Tunnel:
type: object
required:
- cardId
- type
properties:
cardId:
type: string
type:
type: string
data:
type: string
2021-12-29 05:49:51 +00:00
2021-12-31 06:01:08 +00:00
Topic:
2021-12-29 05:49:51 +00:00
type: object
required:
2021-12-31 06:01:08 +00:00
- topicId
2022-01-10 22:18:18 +00:00
- topicRevision
- type
- data
- created
- modified
2021-12-29 05:49:51 +00:00
- status
- tagCount
- tagUpdated
- tagRevision
properties:
2022-01-10 22:18:18 +00:00
topicId:
2021-12-29 05:49:51 +00:00
type: string
2022-01-10 22:18:18 +00:00
topicRevision:
2021-12-29 05:49:51 +00:00
type: integer
format: int64
2022-01-10 22:18:18 +00:00
type:
type: string
data:
type: string
created:
type: integer
2022-01-18 08:40:39 +00:00
format: int64
2022-01-10 22:18:18 +00:00
modified:
type: integer
2022-01-18 08:40:39 +00:00
format: int64
2021-12-29 05:49:51 +00:00
status:
type: string
enum: [ unconfirmed, confirmed, complete, error ]
tagCount:
type: integer
format: int32
tagUpdate:
type: integer
2022-01-18 08:40:39 +00:00
format: int64
2021-12-29 05:49:51 +00:00
tagRevision:
type: integer
format: int64
Article:
type: object
required:
2022-01-10 22:18:18 +00:00
- articleId
- articleRevision
- type
- data
- created
- modified
2021-12-29 05:49:51 +00:00
- status
- labels
- tagCount
- tagUpdated
- tagRevision
properties:
2022-01-10 22:18:18 +00:00
articleId:
type: string
articleRevision:
type: integer
format: int64
type:
type: string
data:
type: string
created:
type: integer
2022-01-18 08:40:39 +00:00
format: int64
2022-01-10 22:18:18 +00:00
modified:
type: integer
2022-01-18 08:40:39 +00:00
format: int64
2021-12-29 05:49:51 +00:00
status:
type: string
enum: [ unconfirmed, confirmed, complete, error ]
labels:
type: array
items:
type: string
2022-01-02 00:29:58 +00:00
groups: # present only in account holder responses
2021-12-29 05:49:51 +00:00
type: array
items:
type: string
tagCount:
type: integer
format: int32
tagUpdate:
type: integer
2022-01-18 08:40:39 +00:00
format: int64
2021-12-29 05:49:51 +00:00
tagRevision:
type: integer
format: int64
2021-12-24 22:59:24 +00:00
Group:
type: object
required:
2022-01-10 22:18:18 +00:00
- groupId
- groupRevision
- type
- data
- created
- modified
2021-12-24 22:59:24 +00:00
properties:
2022-01-10 22:18:18 +00:00
groupId:
type: string
groupRevision:
type: integer
format: int64
type:
type: string
data:
type: string
created:
type: integer
2022-01-18 08:40:39 +00:00
format: int64
2022-01-10 22:18:18 +00:00
modified:
type: integer
2022-01-18 08:40:39 +00:00
format: int64
2021-12-26 07:19:25 +00:00
Label:
type: object
required:
2022-01-10 22:18:18 +00:00
- labelId
- labelRevision
- type
- data
- created
- modified
2021-12-26 07:19:25 +00:00
properties:
2022-01-10 22:18:18 +00:00
labelId:
type: string
labelRevision:
type: integer
format: int64
type:
type: string
data:
type: string
created:
type: integer
2022-01-18 08:40:39 +00:00
format: int64
2022-01-02 02:33:27 +00:00
groups: # present only in account holder responses
type: array
items:
type: string
2021-12-24 22:59:24 +00:00
2021-12-22 05:50:25 +00:00
Authenticate:
type: object
required:
- token
properties:
token:
type: string
2022-01-20 07:45:53 +00:00
Identity:
type: object
required:
- revision
- version
- node
properties:
revision:
2021-12-22 05:50:25 +00:00
type: integer
2022-01-18 08:40:39 +00:00
format: int64
2022-01-20 07:45:53 +00:00
handle:
type: string
name:
type: string
description:
type: string
location:
type: string
image:
type: string
format: base64 encoded image
version:
type: string
node:
type: string
2021-12-22 05:50:25 +00:00
Connect:
type: object
required:
2022-01-20 07:45:53 +00:00
- contact
2021-12-22 05:50:25 +00:00
- token
- contentRevision
properties:
2022-01-20 07:45:53 +00:00
contact:
2021-12-22 05:50:25 +00:00
type: string
token:
type: string
contentRevision:
type: integer
format: int64
2022-01-20 07:45:53 +00:00
profileRevision:
type: integer
format: int64
handle:
type: string
name:
type: string
description:
type: string
location:
type: string
image:
type: string
format: base64 encoded image
version:
type: string
node:
type: string
2021-12-22 05:50:25 +00:00
Disconnect:
type: object
required:
2022-01-20 07:45:53 +00:00
- contact
2021-12-22 05:50:25 +00:00
properties:
2022-01-20 07:45:53 +00:00
contact:
2021-12-22 05:50:25 +00:00
type: string
2022-01-20 07:45:53 +00:00
SignedData:
type: object
required:
- guid
- timestamp
- messageType
- value
properties:
guid:
2021-12-22 05:50:25 +00:00
type: string
2022-01-20 07:45:53 +00:00
timestamp:
2021-12-22 05:50:25 +00:00
type: integer
2022-01-18 08:40:39 +00:00
format: int64
2022-01-20 07:45:53 +00:00
messageType:
type: string
enum: [Connect, Disconnect, Identity, Authenticate]
value:
type: string
format: json string of Connect, Disconnect, Authenticate, or Profile
2021-12-22 05:50:25 +00:00
2021-12-21 08:13:48 +00:00
DataMessage:
type: object
required:
- message
- keyType
- publicKey
- signature
- signatureType
2021-12-21 08:13:48 +00:00
properties:
message:
type: string
2022-01-20 07:45:53 +00:00
format: base64 encoded json string of SignedData
2021-12-21 08:13:48 +00:00
keyType:
type: string
enum: [RSA4096, RSA2048]
publicKey:
type: string
2022-01-13 05:00:52 +00:00
format: base64 encoding of account public key
signature:
type: string
format: base64 encoding of message signature
signatureType:
type: string
enum: [PKCS1v15, PSS]
2021-12-22 05:50:25 +00:00
2021-12-20 21:49:59 +00:00
securitySchemes:
basicAuth:
type: http
scheme: basic
2022-01-17 05:11:24 +00:00
basicCredentials:
type: http
2022-01-19 08:03:46 +00:00
scheme: basic
2022-01-17 05:11:24 +00:00
2021-12-20 21:49:59 +00:00
bearerAuth:
type: http
scheme: bearer