1. Overview

This document describes the resources that make up our brand new Clinked API v3. If you have any problems or requests please contact Clinked support.

Documentation for API v2.
Clinked has API endpoints for any feature available in the portal, some of which may not be documented yet. If you think there is something you need missing, please let us know by contacting Clinked support, and we will do our best to help.

1.1. Schema

All API access is over HTTPS, and accessed from the https://api.clinked.com. All data is sent and received in JSON format.

All timestamps are in milliseconds (UTC):

1518170699654

1.2. Rate limit

Maximum number of requests is 2000 from a single IP address in 5-minute period. This value is continually evaluated, and requests will be blocked once this limit is reached. The IP address is automatically unblocked after it falls below the limit.

2. Authentication

The client can authenticate using the user credentials or create an application and authenticate using client id and secret. It is recommended to use client id and secret.

2.1. Password authentication

Password grant allows you to authenticate using your user credentials.

HTTP
GET /oauth/token?client_id=clinked-mobile&grant_type=password&password=Aez1Ahr8Ji&username=jack&code=12345 HTTP/1.1
Accept: application/json
Host: api.clinked.com
Curl
$ curl 'https://api.clinked.com/oauth/token?client_id=clinked-mobile&grant_type=password&password=Aez1Ahr8Ji&username=jack&code=12345' -i -X GET \
    -H 'Accept: application/json'
Table 1. Request parameters
Parameter Description

client_id

Client id. Always a static value for this grant type: clinked-mobile

grant_type

Grant type

password

Password

username

Username

code

Optional. Two-factor authentication code if required

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8

{
    "access_token": "f3a5837f-7a28-4148-9352-336e0bca75a9",
    "refresh_token": "e10560b0-9bdc-478e-a2dc-95009c419a40",
    "scope": "read write",
    "token_type": "bearer"
}

2.2. Client ID and secret authentication

This method requires Client ID and Client Secret to authenticate.

Create an application using the Applications endpoints to obtain client id and secret. Use the password authentication method to get an access token.
HTTP
GET /oauth/token?client_id=5ad29f13-82b8-4b68-89e6-c2f4c96d5d9d&client_secret=0eda391b-0a88-46d2-aaaf-905332c19e20&grant_type=client_credentials&scope=read+write HTTP/1.1
Accept: application/json
Host: api.clinked.com
Curl
$ curl 'https://api.clinked.com/oauth/token?client_id=5ad29f13-82b8-4b68-89e6-c2f4c96d5d9d&client_secret=0eda391b-0a88-46d2-aaaf-905332c19e20&grant_type=client_credentials&scope=read+write' -i -X GET \
    -H 'Accept: application/json'
Table 2. Request parameters
Parameter Description

client_id

Client id

client_secret

Client secret

grant_type

Grant type

scope

Scope. Normally should be read write

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8

{
    "access_token": "2466f2ee-0875-41a1-ad6c-8f81468f47e9",
    "token_type": "bearer",
    "expires_in": 7199,
    "scope": "read write"
}

2.3. User information

Returns information about the authenticated user.

HTTP
GET /v3/userinfo HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/userinfo' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/userinfo' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1441

{
  "name" : "jack",
  "principal" : {
    "id" : 1,
    "username" : "jack",
    "enabled" : true,
    "locked" : false,
    "name" : "Jack Bauer",
    "jobTitle" : "Marketing",
    "organisation" : "Clinked",
    "email" : "jack.bauer@clinked.com",
    "address" : "71 Pilgrim Avenue",
    "telephone" : "123456789",
    "other" : null,
    "logo" : false,
    "timeZone" : "UTC",
    "locale" : "en",
    "verifiedEmail" : false,
    "twoFactorAuthentication" : false,
    "twoFactorMode" : null,
    "lastModified" : 1514764800000,
    "dateFormat" : null,
    "twentyFourHourTimeFormat" : false,
    "lastActive" : null
  },
  "authorities" : [ "ROLE_USER" ],
  "accounts" : [ {
    "account" : {
      "id" : 1,
      "name" : "awesome_org",
      "friendlyName" : "Awesome Organisation",
      "enabled" : true,
      "domain" : null,
      "hash" : null,
      "locale" : null,
      "dateCreated" : 1514764800000,
      "lastModified" : 1514764800000
    },
    "subscription" : {
      "code" : "premium",
      "planDetails" : null,
      "members" : 100,
      "storage" : null,
      "suspended" : false,
      "trialExpires" : null,
      "paused" : false,
      "pausedBillingCycles" : null,
      "datePausedAt" : null
    },
    "permission" : 16,
    "memberOfSpaces" : 0,
    "adminInSpaces" : 0,
    "features" : [ ],
    "mailDomain" : "localhost",
    "metadata" : {
      "PropertyName" : "PropertyValue"
    }
  } ]
}
Table 3. Definition of the returned fields
Path Type Description

name

object<type=String>

Username

authorities

2003

Set of user authorities

accounts

2003

Set of user organisations

accounts.[].account.domain

object<type=String>

Organisation domain

accounts.[].account.hash

object<type=String>

Hash code

accounts.[].account.locale

object<type=String>

Organisation locale

accounts.[].account.dateCreated

double

Date created

accounts.[].account.lastModified

double

Date last modified

accounts.[].subscription

object

Subscription details

accounts.[].subscription.code

object<type=String>

Subscription code

accounts.[].subscription.planDetails

object

Subscription plan details

accounts.[].subscription.members

double

Subscription max members

accounts.[].subscription.storage

double

Subscription max storage

accounts.[].subscription.suspended

boolean

Is subscription suspended

accounts.[].subscription.trialExpires

boolean

If null then not trial account

accounts.[].subscription.paused

boolean

Subscription is paused

accounts.[].subscription.pausedBillingCycles

double

Number of billing cycles the subscription is paused

accounts.[].subscription.datePausedAt

double

Date the subscription is or will be paused

accounts.[].permission

double

Permission

accounts.[].memberOfSpaces

double

Member of groups count

accounts.[].adminInSpaces

double

Admin of groups count

accounts.[].features

2003

Set of available features

accounts.[].mailDomain

object<type=String>

Mail domain

accounts.[].metadata

object

Additional metadata

accounts.[].metadata.PropertyName

object<type=String>

Additional metadata property

accounts.[].account.id

Number

User / profile id

accounts.[].account.name

String

Account name slug, used for internal identification and URIs

accounts.[].account.friendlyName

String

Full account name, visible to a user

accounts.[].account.enabled

Boolean

Is account enabled

principal.id

Number

User id

principal.name

String

Full name

principal.username

String

Username

principal.logo

Boolean

Profile picture is defined

principal.jobTitle

String

Job title

principal.lastModified

Number

Last modified date

principal.enabled

Boolean

Is user enabled

principal.locked

Boolean

Is user locked

principal.organisation

String

Organisation name

principal.email

String

Email address

principal.address

String

Address

principal.telephone

String

Phone number

principal.other

String

Optional other information

principal.timeZone

String

Time zone ID

principal.locale

String

Locale

principal.verifiedEmail

Boolean

Is email verified

principal.twoFactorAuthentication

Boolean

Is 2FA enabled

principal.twoFactorMode

String

2FA mode: [AUTHENTICATOR, SMS, EMAIL]

principal.twentyFourHourTimeFormat

Boolean

Time format preference - 24hr or 12hr format

principal.lastActive

Number

Date the user was last active

principal.dateFormat

Boolean

Date format preference - YMD (Year-Month-Day), MDY (Month/Day/Year) or DMY(Day/Month/Year)

3. Applications

Use applications to access API endpoints using client credentials. Avoid sharing your personal credentials.

3.1. Create new application

HTTP
POST /v3/applications HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 264

{
    "name": "Awesome Application",
    "description": "The best application you can find",
    "platform": "OTHER",
    "deviceType": "Other",
    "deviceModel": "Unknown",
    "deviceOs": "Linux",
    "appVersion": "1.0",
    "bundleId": "com.clinked.awesome"
}
HTTPie
$ echo '{
    "name": "Awesome Application",
    "description": "The best application you can find",
    "platform": "OTHER",
    "deviceType": "Other",
    "deviceModel": "Unknown",
    "deviceOs": "Linux",
    "appVersion": "1.0",
    "bundleId": "com.clinked.awesome"
}' | http POST 'https://api.clinked.com/v3/applications' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/applications' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
    "name": "Awesome Application",
    "description": "The best application you can find",
    "platform": "OTHER",
    "deviceType": "Other",
    "deviceModel": "Unknown",
    "deviceOs": "Linux",
    "appVersion": "1.0",
    "bundleId": "com.clinked.awesome"
}'
Table 4. Request fields
Path Type Description

deviceType

String

Device type: [Phone, Tablet, Watch, Browser, Other]

appVersion

String

Version

name

String

Name

bundleId

String

Bundle/package name

description

String

Description

deviceModel

String

Device model name

platform

String

Device platform: [IOS, ANDROID, SYNC, LINUX, WINDOWS, OTHER]

deviceOs

String

Device operating system name

Example of a success response
HTTP/1.1 201 Created
Content-Type: application/json;charset=UTF-8
Content-Length: 664

{
  "clientId" : "vrKdcQaotP7s0jH5jFVKXh7sbrwHdgMy",
  "owner" : {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "name" : "Awesome Application",
  "description" : "The best application you can find",
  "platform" : "OTHER",
  "deviceType" : "Other",
  "deviceModel" : "Unknown",
  "deviceOs" : "Linux",
  "appVersion" : "1.0",
  "bundleId" : "com.clinked.awesome",
  "lastActivity" : null,
  "ip" : null,
  "scope" : [ "read", "write", "smartsync" ],
  "redirectURIs" : [ ],
  "grantTypes" : [ ],
  "clientSecret" : "v4WJjxUTak3xPyqc7Uw4aZj8JBbM0gZN"
}
Table 5. Definition of the returned fields
Path Type Description

clientId

String

Client ID

owner

Object

Base user who created the app

name

String

Application name

description

String

Application description

platform

String

Platform - IOS, ANDROID, SYNC, LINUX, WINDOWS, OTHER

deviceType

String

Device Type - Phone, Tablet, Watch, Browser, Other

deviceModel

String

Device model

deviceOs

String

Device OS

appVersion

String

Application version

bundleId

String

Bundle ID

lastActivity

Number

Date last active

ip

String

IP address

scope

Array

Set of permitted scopes

redirectURIs

Array

Set of valid redirect URLs

grantTypes

Array

Set of supported grant types

owner.id

Number

User id

owner.name

String

Full name

owner.username

String

Username

owner.logo

Boolean

Profile picture is defined

owner.jobTitle

String

Job title

owner.lastModified

Number

Last modified date

clientSecret

object<type=String>

Client secret

3.2. List applications

HTTP
GET /v3/applications HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/applications' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/applications' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 604

[ {
  "clientId" : "d8d8691a-92ff-45f2-b7f9-ddb4c8705918",
  "owner" : {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "name" : "My Awesome App!",
  "description" : "This is my awesome test app",
  "platform" : "OTHER",
  "deviceType" : "Phone",
  "deviceModel" : "Google Pixel XL",
  "deviceOs" : "ANDROID",
  "appVersion" : "1.0",
  "bundleId" : "com.clinked.awesome",
  "lastActivity" : 1514764800000,
  "ip" : "127.0.0.1",
  "scope" : [ ],
  "redirectURIs" : [ ],
  "grantTypes" : [ ]
} ]
Table 6. Definition of the returned fields
Path Type Description

[].clientId

String

Client ID

[].owner

Object

Base user who created the app

[].name

String

Application name

[].description

String

Application description

[].platform

String

Platform - IOS, ANDROID, SYNC, LINUX, WINDOWS, OTHER

[].deviceType

String

Device Type - Phone, Tablet, Watch, Browser, Other

[].deviceModel

String

Device model

[].deviceOs

String

Device OS

[].appVersion

String

Application version

[].bundleId

String

Bundle ID

[].lastActivity

Number

Date last active

[].ip

String

IP address

[].scope

Array

Set of permitted scopes

[].redirectURIs

Array

Set of valid redirect URLs

[].grantTypes

Array

Set of supported grant types

[].owner.id

Number

User id

[].owner.name

String

Full name

[].owner.username

String

Username

[].owner.logo

Boolean

Profile picture is defined

[].owner.jobTitle

String

Job title

[].owner.lastModified

Number

Last modified date

3.3. Return application details

Table 7. /v3/applications/{application}
Parameter Description

application

Application client id

HTTP
GET /v3/applications/e1da3408-cecf-4efc-b684-bdceca5d573f HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/applications/e1da3408-cecf-4efc-b684-bdceca5d573f' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/applications/e1da3408-cecf-4efc-b684-bdceca5d573f' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 600

{
  "clientId" : "e1da3408-cecf-4efc-b684-bdceca5d573f",
  "owner" : {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "name" : "My Awesome App!",
  "description" : "This is my awesome test app",
  "platform" : "OTHER",
  "deviceType" : "Phone",
  "deviceModel" : "Google Pixel XL",
  "deviceOs" : "ANDROID",
  "appVersion" : "1.0",
  "bundleId" : "com.clinked.awesome",
  "lastActivity" : 1514764800000,
  "ip" : "127.0.0.1",
  "scope" : [ ],
  "redirectURIs" : [ ],
  "grantTypes" : [ ]
}
Table 8. Definition of the returned fields
Path Type Description

clientId

String

Unique client id

deviceType

String

Device type: [Phone, Tablet, Watch, Browser, Other]

appVersion

String

Version

name

String

Name

bundleId

String

Bundle/package name

description

String

Description

deviceModel

String

Device model name

owner

Object

Application owner user

scope

Array

Permission scopes

platform

String

Device platform: [IOS, ANDROID, SYNC, LINUX, WINDOWS, OTHER]

deviceOs

String

Device operating system name

ip

String

IP address from which an application was created

lastActivity

Number

Application last activity timestamp

grantTypes

Array

Application grant types

owner.id

Number

User id

owner.name

String

Full name

owner.username

String

Username

owner.logo

Boolean

Profile picture is defined

owner.jobTitle

String

Job title

owner.lastModified

Number

Last modified date

3.4. Update application

Table 9. /v3/applications/{application}
Parameter Description

application

Application client id

HTTP
PATCH /v3/applications/690c5eff-47cb-4d96-ad6c-b55a82d4eccd HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 262

{
    "name": "Updated name",
    "description": "Updated description",
    "platform": "ANDROID",
    "deviceType": "Phone",
    "deviceModel": "Google Pixel 2",
    "deviceOs": "Android",
    "appVersion": "1.3.3.7",
    "bundleId": "com.clinked.awesome.upd"
}
HTTPie
$ echo '{
    "name": "Updated name",
    "description": "Updated description",
    "platform": "ANDROID",
    "deviceType": "Phone",
    "deviceModel": "Google Pixel 2",
    "deviceOs": "Android",
    "appVersion": "1.3.3.7",
    "bundleId": "com.clinked.awesome.upd"
}' | http PATCH 'https://api.clinked.com/v3/applications/690c5eff-47cb-4d96-ad6c-b55a82d4eccd' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/applications/690c5eff-47cb-4d96-ad6c-b55a82d4eccd' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
    "name": "Updated name",
    "description": "Updated description",
    "platform": "ANDROID",
    "deviceType": "Phone",
    "deviceModel": "Google Pixel 2",
    "deviceOs": "Android",
    "appVersion": "1.3.3.7",
    "bundleId": "com.clinked.awesome.upd"
}'
Table 10. Request fields
Path Type Description

deviceType

String

Device type: [Phone, Tablet, Watch, Browser, Other]

appVersion

String

Version

name

String

Name

bundleId

String

Bundle/package name

description

String

Description

deviceModel

String

Device model name

platform

String

Device platform: [IOS, ANDROID, SYNC, LINUX, WINDOWS, OTHER]

deviceOs

String

Device operating system name

rotateSecret

Boolean

Should rotate client secret

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 598

{
  "clientId" : "690c5eff-47cb-4d96-ad6c-b55a82d4eccd",
  "owner" : {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "name" : "Updated name",
  "description" : "Updated description",
  "platform" : "ANDROID",
  "deviceType" : "Phone",
  "deviceModel" : "Google Pixel 2",
  "deviceOs" : "Android",
  "appVersion" : "1.3.3.7",
  "bundleId" : "com.clinked.awesome.upd",
  "lastActivity" : 1514764800000,
  "ip" : "127.0.0.1",
  "scope" : [ ],
  "redirectURIs" : [ ],
  "grantTypes" : [ ]
}
Table 11. Definition of the returned fields
Path Type Description

clientId

String

Client ID

owner

Object

Base user who created the app

name

String

Application name

description

String

Application description

platform

String

Platform - IOS, ANDROID, SYNC, LINUX, WINDOWS, OTHER

deviceType

String

Device Type - Phone, Tablet, Watch, Browser, Other

deviceModel

String

Device model

deviceOs

String

Device OS

appVersion

String

Application version

bundleId

String

Bundle ID

lastActivity

Number

Date last active

ip

String

IP address

scope

Array

Set of permitted scopes

redirectURIs

Array

Set of valid redirect URLs

grantTypes

Array

Set of supported grant types

owner.id

Number

User id

owner.name

String

Full name

owner.username

String

Username

owner.logo

Boolean

Profile picture is defined

owner.jobTitle

String

Job title

owner.lastModified

Number

Last modified date

3.5. Delete application

Make sure the client credentials are not in use. After deleting the application the credentials will no longer work.
Table 12. /v3/applications/{application}
Parameter Description

application

Application client id

HTTP
DELETE /v3/applications/93897147-361d-40ae-8cf1-d81ddc6b62bd HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/applications/93897147-361d-40ae-8cf1-d81ddc6b62bd' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/applications/93897147-361d-40ae-8cf1-d81ddc6b62bd' -i -X DELETE \
    -H 'Authorization: Bearer <YOUR-TOKEN>'

4. Accounts

User can be a member of one or more accounts where each account has its own configuration, subscription and is a container for groups.

4.1. List accounts

HTTP
GET /v3/accounts?enabledOnly=false HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts?enabledOnly=false' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts?enabledOnly=false' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 13. Request parameters
Parameter Description

enabledOnly

Return only enabled accounts

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 229

[ {
  "id" : 1,
  "name" : "awesome_org",
  "friendlyName" : "Awesome Organisation",
  "enabled" : true,
  "domain" : null,
  "hash" : null,
  "locale" : null,
  "dateCreated" : 1514764800000,
  "lastModified" : 1514764800000
} ]
Table 14. Definition of the returned fields
Path Type Description

[].id

Number

User / profile id

[].name

String

Account name slug, used for internal identification and URIs

[].friendlyName

String

Full account name, visible to a user

[].enabled

Boolean

Is account enabled

[].domain

object<type=String>

Account domain

[].hash

object<type=String>

Account hash value

[].locale

object<type=String>

Account locale

[].dateCreated

double

Date created

[].lastModified

double

Last modified

4.2. Get account details

Table 15. /v3/accounts/{account}
Parameter Description

account

Account id

HTTP
GET /v3/accounts/1 HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 225

{
  "id" : 1,
  "name" : "awesome_org",
  "friendlyName" : "Awesome Organisation",
  "enabled" : true,
  "domain" : null,
  "hash" : null,
  "locale" : null,
  "dateCreated" : 1514764800000,
  "lastModified" : 1514764800000
}
Table 16. Definition of the returned fields
Path Type Description

id

Number

User / profile id

name

String

Account name slug, used for internal identification and URIs

friendlyName

String

Full account name, visible to a user

enabled

Boolean

Is account enabled

domain

object<type=String>

Account domain

hash

object<type=String>

Account hash value

locale

object<type=String>

Account locale

dateCreated

double

Date created

lastModified

double

Last modified

4.3. Update account

Use this endpoint to update account name and subdomain (name).

Table 17. /v3/accounts/{account}
Parameter Description

account

Account id

HTTP
PATCH /v3/accounts/1 HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 71

{"friendlyName":"New friendly name","name":"new_name","locale":"en_GB"}
HTTPie
$ echo '{"friendlyName":"New friendly name","name":"new_name","locale":"en_GB"}' | http PATCH 'https://api.clinked.com/v3/accounts/1' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{"friendlyName":"New friendly name","name":"new_name","locale":"en_GB"}'
Table 18. Request fields
Path Type Description

friendlyName

object<type=String>

Friendly name

name

object<type=String>

Name

locale

object<type=String>

Locale

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 222

{
  "id" : 1,
  "name" : "new_name",
  "friendlyName" : "New friendly name",
  "enabled" : true,
  "domain" : null,
  "hash" : null,
  "locale" : "en_GB",
  "dateCreated" : 1514764800000,
  "lastModified" : 1514764800000
}
Table 19. Definition of the returned fields
Path Type Description

id

Number

User / profile id

name

String

Account name slug, used for internal identification and URIs

friendlyName

String

Full account name, visible to a user

enabled

Boolean

Is account enabled

domain

object<type=String>

Account domain

hash

object<type=String>

Account hash value

locale

object<type=String>

Account locale

dateCreated

double

Date created

lastModified

double

Last modified

4.4. Subscription

Table 20. /v3/accounts/{account}/subscription
Parameter Description

account

Account id

HTTP
GET /v3/accounts/1/subscription HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/subscription' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/subscription' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 875

{
  "accountPackage" : {
    "code" : "premium",
    "planDetails" : {
      "interval" : 1,
      "currency" : "EUR"
    },
    "members" : 100,
    "storage" : 9000000000,
    "suspended" : false,
    "trialExpires" : 1713433497293,
    "paused" : false,
    "pausedBillingCycles" : null,
    "datePausedAt" : null
  },
  "plan" : "Premium",
  "storageUsed" : 0,
  "membersUsed" : 0,
  "billingDetails" : {
    "firstName" : "John",
    "lastName" : "Doe",
    "email" : "john@example.com",
    "address1" : "Privet Drive",
    "address2" : "4",
    "city" : "Little Whinging",
    "state" : "Surrey",
    "zip" : "ZIP-0876",
    "country" : "Great Britain",
    "card" : {
      "number" : "5555 5555 5555 4444",
      "type" : "MasterCard",
      "lastFour" : "4444",
      "verificationValue" : "000",
      "expirationMonth" : 1,
      "expirationYear" : 27
    }
  }
}
Table 21. Definition of the returned fields
Path Type Description

accountPackage.code

String

Package code

accountPackage.planDetails

Object

Plan details

accountPackage.planDetails.interval

Number

Interval between payments

accountPackage.planDetails.currency

String

Currency

accountPackage.members

Number

How many members can be invited

accountPackage.storage

Number

Allowed storage in bytes

accountPackage.suspended

Boolean

Is account suspended

accountPackage.trialExpires

Number

Date trial expires. NULL if not a trial account

accountPackage.paused

Boolean

Subscription is paused

accountPackage.pausedBillingCycles

Number

Number of billing cycles the subscription is paused

accountPackage.datePausedAt

Number

Date the subscription is or will be paused

billingDetails.firstName

String

First name

billingDetails.lastName

String

Last name

billingDetails.email

String

Email

billingDetails.address1

String

Address

billingDetails.address2

String

Address

billingDetails.city

String

City

billingDetails.state

String

State

billingDetails.zip

String

Zip code

billingDetails.country

String

Country

billingDetails.card

Object

Card details

billingDetails.card.number

String

Card number

billingDetails.card.type

String

Card type

billingDetails.card.lastFour

String

Last four digits

billingDetails.card.verificationValue

String

Card verification number

billingDetails.card.expirationMonth

Number

Card expiration month

billingDetails.card.expirationYear

Number

Card expiration year

plan

String

Package plan

storageUsed

Number

Allowed storage in bytes

membersUsed

Number

How many members can be invited

4.5. Components

Lists available components in account. Different subscriptions have different lists of available components.

Table 22. /v3/accounts/{account}/components
Parameter Description

account

Account Id

HTTP
GET /v3/accounts/1/components HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/components' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/components' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 144

[ {
  "name" : "files",
  "beta" : false,
  "title" : "Files",
  "description" : "Share and track versions of files",
  "iconName" : "files"
} ]
Table 23. Definition of the returned fields
Path Type Description

[].name

String

Component name

[].beta

Boolean

If is beta

[].title

String

Component title

[].description

String

Component description

[].iconName

String

Component icon name

4.6. Members

4.6.1. Create a member

Table 24. /v3/accounts/{account}/members
Parameter Description

account

Account id

HTTP
POST /v3/accounts/1/members HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 251

{
  "name": "John",
  "email": "john@blah.com",
  "username": "john",
  "phone": "123456",
  "password": "Passy123!",
  "permission": 1,
  "enabled": true,
  "assignGroups": {
    "1": 1
  },
  "tags": ["hello", "world"]
,  "realName":"JackBauer"}
HTTPie
$ echo '{
  "name": "John",
  "email": "john@blah.com",
  "username": "john",
  "phone": "123456",
  "password": "Passy123!",
  "permission": 1,
  "enabled": true,
  "assignGroups": {
    "1": 1
  },
  "tags": ["hello", "world"]
,  "realName":"JackBauer"}' | http POST 'https://api.clinked.com/v3/accounts/1/members' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/members' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
  "name": "John",
  "email": "john@blah.com",
  "username": "john",
  "phone": "123456",
  "password": "Passy123!",
  "permission": 1,
  "enabled": true,
  "assignGroups": {
    "1": 1
  },
  "tags": ["hello", "world"]
,  "realName":"JackBauer"}'
Table 25. Request fields
Path Type Description

name

String

Full name

username

String

Unique username

email

String

Email address

phone

String

Phone number

password

String

Password

assignToNewGroupsPermission

Number

User will be assigned to all new groups with provided permission

permission

Number

Account permission mask

enabled

Boolean

Is user enabled

assignGroups

Object

Map of group IDs to be assigned to members along with their group membership permission

tags

Array

List of tags

realName

String

Real name for internal use only

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 697

{
  "user" : {
    "id" : 1,
    "username" : "john",
    "enabled" : true,
    "locked" : false,
    "name" : "John",
    "jobTitle" : null,
    "organisation" : null,
    "email" : "john@blah.com",
    "address" : null,
    "telephone" : "123456",
    "other" : null,
    "logo" : false,
    "timeZone" : null,
    "locale" : null,
    "verifiedEmail" : false,
    "twoFactorAuthentication" : false,
    "twoFactorMode" : null,
    "lastModified" : 1713433485571,
    "dateFormat" : null,
    "twentyFourHourTimeFormat" : false,
    "lastActive" : null,
    "realName" : "JackBauer"
  },
  "permission" : 1,
  "dateCreated" : 1713433485571,
  "memberOfMultipleAccounts" : false,
  "tags" : [ ]
}
Table 26. Definition of the returned fields
Path Type Description

user

Object

Base user dto

permission

Number

Permissions

assignToNewGroupsPermission

Number

Assign the user to all new groups with provided permission

notAssigned

Array

Groups not assigned to member when assignToNewGroupsPermission is set to true

assigningToGroups

Boolean

True when user is being assigned to groups through assignToNewGroupsPermission

dateCreated

Number

Date member was created

memberOfMultipleAccounts

Boolean

User is member of multiple accounts

tags

Array

List of tags

pendingUnlock

Boolean

Member is pending automatic unlock

activationType

String

Activation e-mail is pending - now or custom

activationType

Number

Date when activation e-mail will be sent

user.id

Number

User id

user.name

String

Full name

user.username

String

Username

user.logo

Boolean

Profile picture is defined

user.jobTitle

String

Job title

user.lastModified

Number

Last modified date

user.id

Number

User id

user.name

String

Full name

user.username

String

Username

user.logo

Boolean

Profile picture is defined

user.jobTitle

String

Job title

user.lastModified

Number

Last modified date

user.enabled

Boolean

Is user enabled

user.locked

Boolean

Is user locked

user.organisation

String

Organisation name

user.email

String

Email address

user.address

String

Address

user.telephone

String

Phone number

user.other

String

Optional other information

user.timeZone

String

Time zone ID

user.locale

String

Locale

user.verifiedEmail

Boolean

Is email verified

user.twoFactorAuthentication

Boolean

Is 2FA enabled

user.twoFactorMode

String

2FA mode: [AUTHENTICATOR, SMS, EMAIL]

user.twentyFourHourTimeFormat

Boolean

Time format preference - 24hr or 12hr format

user.lastActive

Number

Date the user was last active

user.dateFormat

Boolean

Date format preference - YMD (Year-Month-Day), MDY (Month/Day/Year) or DMY(Day/Month/Year)

user.realName

String

Real Name

4.6.2. List members

Returns paginated list with account members.

Table 27. /v3/accounts/{account}/members
Parameter Description

account

Account id

HTTP
GET /v3/accounts/1/members?name=user1 HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/members?name=user1' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/members?name=user1' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 28. Request parameters
Parameter Description

page

Page number to load

size

Page size

orderBy

Order field

ascending

Ascending order direction

name

Find member by name / email

startsWith

Find member where name / email starts with

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 895

{
  "items" : [ {
    "user" : {
      "id" : 1,
      "username" : "jack",
      "enabled" : true,
      "locked" : false,
      "name" : "Jack Bauer",
      "jobTitle" : "Marketing",
      "organisation" : "Clinked",
      "email" : "jack.bauer@clinked.com",
      "address" : "71 Pilgrim Avenue",
      "telephone" : "123456789",
      "other" : null,
      "logo" : false,
      "timeZone" : "UTC",
      "locale" : "en",
      "verifiedEmail" : false,
      "twoFactorAuthentication" : false,
      "twoFactorMode" : null,
      "lastModified" : 1514764800000,
      "dateFormat" : null,
      "twentyFourHourTimeFormat" : false,
      "lastActive" : null,
      "realName" : "Jack Bauer"
    },
    "permission" : 16,
    "dateCreated" : 1713433485393
  } ],
  "currentPage" : 1,
  "totalPages" : 1,
  "pageSize" : 20,
  "totalResults" : 1,
  "nextPage" : false,
  "previousPage" : false
}
Table 29. Definition of the returned fields
Path Type Description

currentPage

Number

Current page

pageSize

Number

Entries per page

items

Array

Reachout entries

nextPage

Boolean

Next page exists

totalPages

Number

Total amount of available pages

previousPage

Boolean

Previous page exists

totalResults

Number

Total amount of entries

items[].user

Object

Base user dto

items[].permission

Number

Permissions

items[].assignToNewGroupsPermission

Number

Assign the user to all new groups with provided permission

items[].notAssigned

Array

Groups not assigned to member when assignToNewGroupsPermission is set to true

items[].assigningToGroups

Boolean

True when user is being assigned to groups through assignToNewGroupsPermission

items[].dateCreated

Number

Date member was created

items[].memberOfMultipleAccounts

Boolean

User is member of multiple accounts

items[].tags

Array

List of tags

items[].pendingUnlock

Boolean

Member is pending automatic unlock

items[].activationType

String

Activation e-mail is pending - now or custom

items[].activationType

Number

Date when activation e-mail will be sent

items[].user.id

Number

User id

items[].user.name

String

Full name

items[].user.username

String

Username

items[].user.logo

Boolean

Profile picture is defined

items[].user.jobTitle

String

Job title

items[].user.lastModified

Number

Last modified date

items[].user.id

Number

User id

items[].user.name

String

Full name

items[].user.username

String

Username

items[].user.logo

Boolean

Profile picture is defined

items[].user.jobTitle

String

Job title

items[].user.lastModified

Number

Last modified date

items[].user.enabled

Boolean

Is user enabled

items[].user.locked

Boolean

Is user locked

items[].user.organisation

String

Organisation name

items[].user.email

String

Email address

items[].user.address

String

Address

items[].user.telephone

String

Phone number

items[].user.other

String

Optional other information

items[].user.timeZone

String

Time zone ID

items[].user.locale

String

Locale

items[].user.verifiedEmail

Boolean

Is email verified

items[].user.twoFactorAuthentication

Boolean

Is 2FA enabled

items[].user.twoFactorMode

String

2FA mode: [AUTHENTICATOR, SMS, EMAIL]

items[].user.twentyFourHourTimeFormat

Boolean

Time format preference - 24hr or 12hr format

items[].user.lastActive

Number

Date the user was last active

items[].user.dateFormat

Boolean

Date format preference - YMD (Year-Month-Day), MDY (Month/Day/Year) or DMY(Day/Month/Year)

items[].user.realName

String

Real Name

4.6.3. Get member details

Table 30. /v3/accounts/{account}/members/{username}
Parameter Description

account

Account id

username

Username

HTTP
GET /v3/accounts/1/members/user1 HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/members/user1' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/members/user1' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 772

{
  "user" : {
    "id" : 1,
    "username" : "jack",
    "enabled" : false,
    "locked" : true,
    "name" : "Jack Bauer",
    "jobTitle" : "Marketing",
    "organisation" : "Clinked",
    "email" : "jack.bauer@clinked.com",
    "address" : "71 Pilgrim Avenue",
    "telephone" : "123456789",
    "other" : null,
    "logo" : false,
    "timeZone" : "UTC",
    "locale" : "en",
    "verifiedEmail" : false,
    "twoFactorAuthentication" : false,
    "twoFactorMode" : null,
    "lastModified" : 1514764800000,
    "dateFormat" : null,
    "twentyFourHourTimeFormat" : false,
    "lastActive" : null,
    "realName" : "Jack Bauer"
  },
  "permission" : 16,
  "dateCreated" : 1713433485210,
  "memberOfMultipleAccounts" : false,
  "tags" : [ ],
  "pendingUnlock" : false
}
Table 31. Definition of the returned fields
Path Type Description

user

Object

Base user dto

permission

Number

Permissions

assignToNewGroupsPermission

Number

Assign the user to all new groups with provided permission

notAssigned

Array

Groups not assigned to member when assignToNewGroupsPermission is set to true

assigningToGroups

Boolean

True when user is being assigned to groups through assignToNewGroupsPermission

dateCreated

Number

Date member was created

memberOfMultipleAccounts

Boolean

User is member of multiple accounts

tags

Array

List of tags

pendingUnlock

Boolean

Member is pending automatic unlock

activationType

String

Activation e-mail is pending - now or custom

activationType

Number

Date when activation e-mail will be sent

user.id

Number

User id

user.name

String

Full name

user.username

String

Username

user.logo

Boolean

Profile picture is defined

user.jobTitle

String

Job title

user.lastModified

Number

Last modified date

user.id

Number

User id

user.name

String

Full name

user.username

String

Username

user.logo

Boolean

Profile picture is defined

user.jobTitle

String

Job title

user.lastModified

Number

Last modified date

user.enabled

Boolean

Is user enabled

user.locked

Boolean

Is user locked

user.organisation

String

Organisation name

user.email

String

Email address

user.address

String

Address

user.telephone

String

Phone number

user.other

String

Optional other information

user.timeZone

String

Time zone ID

user.locale

String

Locale

user.verifiedEmail

Boolean

Is email verified

user.twoFactorAuthentication

Boolean

Is 2FA enabled

user.twoFactorMode

String

2FA mode: [AUTHENTICATOR, SMS, EMAIL]

user.twentyFourHourTimeFormat

Boolean

Time format preference - 24hr or 12hr format

user.lastActive

Number

Date the user was last active

user.dateFormat

Boolean

Date format preference - YMD (Year-Month-Day), MDY (Month/Day/Year) or DMY(Day/Month/Year)

user.realName

String

Real Name

4.6.4. Update member

Table 32. /v3/accounts/{account}/members/{username}
Parameter Description

account

Account id

username

Username id

HTTP
PATCH /v3/accounts/1/members/john HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 33

{
  "tags": ["apple", "potato"]
}
HTTPie
$ echo '{
  "tags": ["apple", "potato"]
}' | http PATCH 'https://api.clinked.com/v3/accounts/1/members/john' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/members/john' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
  "tags": ["apple", "potato"]
}'
Table 33. Request fields
Path Type Description

tags

Array

Set of tags

password

String

Password

permission

Number

Permission

enabled

Boolean

Is member enabled

lock

Boolean

Is member locked

assignmentNotification

Boolean

Send notifications about assignments

activation

Object

Activation

activation.message

Object

Activation message

activation.date

Number

Activation date

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 745

{
  "user" : {
    "id" : 1,
    "username" : "jack",
    "enabled" : true,
    "locked" : false,
    "name" : "Jack Bauer",
    "jobTitle" : "Marketing",
    "organisation" : "Clinked",
    "email" : "jack.bauer@clinked.com",
    "address" : "71 Pilgrim Avenue",
    "telephone" : "123456789",
    "other" : null,
    "logo" : false,
    "timeZone" : "UTC",
    "locale" : "en",
    "verifiedEmail" : false,
    "twoFactorAuthentication" : false,
    "twoFactorMode" : null,
    "lastModified" : 1514764800000,
    "dateFormat" : null,
    "twentyFourHourTimeFormat" : false,
    "lastActive" : null,
    "realName" : "Jack Bauer"
  },
  "permission" : 16,
  "dateCreated" : 1713433485325,
  "memberOfMultipleAccounts" : false,
  "tags" : [ ]
}
Table 34. Definition of the returned fields
Path Type Description

user

Object

Base user dto

permission

Number

Permissions

assignToNewGroupsPermission

Number

Assign the user to all new groups with provided permission

notAssigned

Array

Groups not assigned to member when assignToNewGroupsPermission is set to true

assigningToGroups

Boolean

True when user is being assigned to groups through assignToNewGroupsPermission

dateCreated

Number

Date member was created

memberOfMultipleAccounts

Boolean

User is member of multiple accounts

tags

Array

List of tags

pendingUnlock

Boolean

Member is pending automatic unlock

activationType

String

Activation e-mail is pending - now or custom

activationType

Number

Date when activation e-mail will be sent

user.id

Number

User id

user.name

String

Full name

user.username

String

Username

user.logo

Boolean

Profile picture is defined

user.jobTitle

String

Job title

user.lastModified

Number

Last modified date

user.id

Number

User id

user.name

String

Full name

user.username

String

Username

user.logo

Boolean

Profile picture is defined

user.jobTitle

String

Job title

user.lastModified

Number

Last modified date

user.enabled

Boolean

Is user enabled

user.locked

Boolean

Is user locked

user.organisation

String

Organisation name

user.email

String

Email address

user.address

String

Address

user.telephone

String

Phone number

user.other

String

Optional other information

user.timeZone

String

Time zone ID

user.locale

String

Locale

user.verifiedEmail

Boolean

Is email verified

user.twoFactorAuthentication

Boolean

Is 2FA enabled

user.twoFactorMode

String

2FA mode: [AUTHENTICATOR, SMS, EMAIL]

user.twentyFourHourTimeFormat

Boolean

Time format preference - 24hr or 12hr format

user.lastActive

Number

Date the user was last active

user.dateFormat

Boolean

Date format preference - YMD (Year-Month-Day), MDY (Month/Day/Year) or DMY(Day/Month/Year)

user.realName

String

Real Name

4.6.5. Update member groups

Table 35. /v3/accounts/{account}/members/{username}
Parameter Description

account

Account id

username

Username id

HTTP
PATCH /v3/accounts/1/members/john HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 97

{
  "assignGroups": {
    "1": 1
  },
  "removeGroups": [123],
  "assignmentNotification": true
}
HTTPie
$ echo '{
  "assignGroups": {
    "1": 1
  },
  "removeGroups": [123],
  "assignmentNotification": true
}' | http PATCH 'https://api.clinked.com/v3/accounts/1/members/john' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/members/john' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
  "assignGroups": {
    "1": 1
  },
  "removeGroups": [123],
  "assignmentNotification": true
}'
Table 36. Request fields
Path Type Description

assignGroups

Object

Group id permission map. Key is group id. Value is 1 - basic, 4 - group creator, 8 - member manager, 16 - administrator

removeGroups

Array

Group ids to remove

assignmentNotification

Boolean

Send notifications about assignments

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 745

{
  "user" : {
    "id" : 1,
    "username" : "jack",
    "enabled" : true,
    "locked" : false,
    "name" : "Jack Bauer",
    "jobTitle" : "Marketing",
    "organisation" : "Clinked",
    "email" : "jack.bauer@clinked.com",
    "address" : "71 Pilgrim Avenue",
    "telephone" : "123456789",
    "other" : null,
    "logo" : false,
    "timeZone" : "UTC",
    "locale" : "en",
    "verifiedEmail" : false,
    "twoFactorAuthentication" : false,
    "twoFactorMode" : null,
    "lastModified" : 1514764800000,
    "dateFormat" : null,
    "twentyFourHourTimeFormat" : false,
    "lastActive" : null,
    "realName" : "Jack Bauer"
  },
  "permission" : 16,
  "dateCreated" : 1713433485468,
  "memberOfMultipleAccounts" : false,
  "tags" : [ ]
}
Table 37. Definition of the returned fields
Path Type Description

user

Object

Base user dto

permission

Number

Permissions

assignToNewGroupsPermission

Number

Assign the user to all new groups with provided permission

notAssigned

Array

Groups not assigned to member when assignToNewGroupsPermission is set to true

assigningToGroups

Boolean

True when user is being assigned to groups through assignToNewGroupsPermission

dateCreated

Number

Date member was created

memberOfMultipleAccounts

Boolean

User is member of multiple accounts

tags

Array

List of tags

pendingUnlock

Boolean

Member is pending automatic unlock

activationType

String

Activation e-mail is pending - now or custom

activationType

Number

Date when activation e-mail will be sent

user.id

Number

User id

user.name

String

Full name

user.username

String

Username

user.logo

Boolean

Profile picture is defined

user.jobTitle

String

Job title

user.lastModified

Number

Last modified date

user.id

Number

User id

user.name

String

Full name

user.username

String

Username

user.logo

Boolean

Profile picture is defined

user.jobTitle

String

Job title

user.lastModified

Number

Last modified date

user.enabled

Boolean

Is user enabled

user.locked

Boolean

Is user locked

user.organisation

String

Organisation name

user.email

String

Email address

user.address

String

Address

user.telephone

String

Phone number

user.other

String

Optional other information

user.timeZone

String

Time zone ID

user.locale

String

Locale

user.verifiedEmail

Boolean

Is email verified

user.twoFactorAuthentication

Boolean

Is 2FA enabled

user.twoFactorMode

String

2FA mode: [AUTHENTICATOR, SMS, EMAIL]

user.twentyFourHourTimeFormat

Boolean

Time format preference - 24hr or 12hr format

user.lastActive

Number

Date the user was last active

user.dateFormat

Boolean

Date format preference - YMD (Year-Month-Day), MDY (Month/Day/Year) or DMY(Day/Month/Year)

user.realName

String

Real Name

4.6.6. Delete member

Table 38. /v3/accounts/{account}/members/{username}
Parameter Description

account

Account id

username

Username id

HTTP
DELETE /v3/accounts/1/members/john HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/accounts/1/members/john' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/members/john' -i -X DELETE \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

4.7. Member tags

4.7.1. List member tags

Table 39. /v3/accounts/{account}/member-tags
Parameter Description

account

Account id

HTTP
GET /v3/accounts/1/member-tags HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/member-tags' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/member-tags' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 11

[ "label" ]
Table 40. Definition of the returned fields
Path Type Description

[]

Array

A list of tags

4.7.2. Tag summary

Table 41. /v3/accounts/{account}/member-tags
Parameter Description

account

Account id

HTTP
GET /v3/accounts/1/member-tags?summary=true HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/member-tags?summary=true' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/member-tags?summary=true' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 42. Request parameters
Parameter Description

summary

Must be defined to get retrieve tag summary

page

Page number to load

size

Page size

orderBy

Order field

ascending

Ascending order direction

name

Find note by name

startsWith

Find note by name

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 195

{
  "items" : [ {
    "name" : "Elite",
    "members" : 10
  } ],
  "currentPage" : 1,
  "totalPages" : 1,
  "pageSize" : 1,
  "totalResults" : 1,
  "nextPage" : false,
  "previousPage" : false
}
Table 43. Definition of the returned fields
Path Type Description

currentPage

Number

Current page

pageSize

Number

Entries per page

items

Array

Labels

nextPage

Boolean

Next page exists

totalPages

Number

Total amount of available pages

previousPage

Boolean

Previous page exists

totalResults

Number

Total amount of entries

items[].name

String

Tag name

items[].members

Number

Member count

4.7.3. Tag members

Table 44. /v3/accounts/{account}/member-tags/{tags}
Parameter Description

account

Account id

tags

List of tag names

HTTP
GET /v3/accounts/1/member-tags/fakeTag HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/member-tags/fakeTag' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/member-tags/fakeTag' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 178

{
  "fakeTag" : [ {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  } ]
}
Table 45. Definition of the returned fields
Path Type Description

fakeTag

Array

Tag name

fakeTag.[].id

Number

User id

fakeTag.[].name

String

User name

fakeTag.[].username

String

User username

fakeTag.[].logo

Boolean

User has logo defined

fakeTag.[].jobTitle

String

User job title

fakeTag.[].lastModified

Number

User last modified timestamp

4.8. Invites

4.8.1. Create invite

Table 46. /v3/accounts/{account}/invites
Parameter Description

account

Account ID

HTTP
POST /v3/accounts/1/invites HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 149

{
  "emails": ["invite@me.com", "invite2@me.com"],
  "message": "hello",
  "permission": 1,
  "assignGroups": {
    "1": 1
  },
  "reminder": true
}
HTTPie
$ echo '{
  "emails": ["invite@me.com", "invite2@me.com"],
  "message": "hello",
  "permission": 1,
  "assignGroups": {
    "1": 1
  },
  "reminder": true
}' | http POST 'https://api.clinked.com/v3/accounts/1/invites' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/invites' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
  "emails": ["invite@me.com", "invite2@me.com"],
  "message": "hello",
  "permission": 1,
  "assignGroups": {
    "1": 1
  },
  "reminder": true
}'
Table 47. Request fields
Path Type Description

emails

Array

List of email addresses to send invite to

message

String

Message that is sent to user when adding the invite

permission

Number

Account permission mask

removeGroups

Array

List of group IDs to be removed from the user group memberships

assignGroups

Object

Map of group IDs to be assigned to members along with their group membership permission

reminder

Boolean

Trigger reminder when invite not accepted

Example of a success response
HTTP/1.1 202 Accepted

4.8.2. List invites

Table 48. /v3/accounts/{account}/invites
Parameter Description

account

Account id

HTTP
GET /v3/accounts/1/invites?name=invite HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/invites?name=invite' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/invites?name=invite' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 49. Request parameters
Parameter Description

page

Page number to load

size

Page size

orderBy

Order field

ascending

Ascending order direction

name

Find guest by name / email

startsWith

Find guest where name / email starts with

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1101

{
  "items" : [ {
    "request" : {
      "id" : 1,
      "contextKey" : {
        "id" : 1
      },
      "source" : {
        "id" : 1,
        "name" : "Jack Bauer",
        "username" : "jack",
        "logo" : false,
        "jobTitle" : "Marketing",
        "lastModified" : 1514764800000
      },
      "target" : {
        "id" : 1,
        "name" : "Jack Bauer",
        "username" : "jack",
        "logo" : false,
        "jobTitle" : "Marketing",
        "lastModified" : 1514764800000
      },
      "container" : {
        "id" : 1,
        "contextKey" : {
          "id" : 1
        },
        "type" : "account"
      },
      "sourceName" : "jack.bauer@clinked.com",
      "targetName" : "jack.bauer@clinked.com",
      "type" : "ACCEPT_DECLINE",
      "status" : "NONE",
      "scope" : null,
      "parameters" : null,
      "lastModified" : null,
      "account" : null
    },
    "permission" : 1,
    "groups" : null,
    "inviteKey" : null
  } ],
  "currentPage" : 1,
  "totalPages" : 1,
  "pageSize" : 10,
  "totalResults" : 1,
  "nextPage" : false,
  "previousPage" : false
}
Table 50. Definition of the returned fields
Path Type Description

currentPage

Number

Current page

pageSize

Number

Entries per page

items

Array

Reachout entries

nextPage

Boolean

Next page exists

totalPages

Number

Total amount of available pages

previousPage

Boolean

Previous page exists

totalResults

Number

Total amount of entries

items[].permission

Number

Permission mask in account

items[].groups

Array

Assigned groups

items[].groups[].group

Object

Base Group DTO

items[].groups[].permission

Number

Permission mask in group

items[].request

Object

Request DTO

items[].request.id

Number

Request id

items[].request.contextKey

Object

Account context key

items[].request.sourceName

String

Source user e-mail address

items[].request.source

Object

Base source user DTO

items[].request.target

Object

Base target user DTO

items[].request.targetName

String

Target user e-mail address

items[].request.container

Object

Container contextual entity DTO

items[].request.type

String

Request type

items[].request.status

String

Request status

items[].request.parameters

String

Optional additional details

items[].request.scope

String

Optional scope

items[].request.lastModified

Number

Date the request was last modified

items[].request.source.id

Number

User id

items[].request.source.name

String

Full name

items[].request.source.username

String

Username

items[].request.source.logo

Boolean

Profile picture is defined

items[].request.source.jobTitle

String

Job title

items[].request.source.lastModified

Number

Last modified date

items[].request.target.id

Number

User id

items[].request.target.name

String

Full name

items[].request.target.username

String

Username

items[].request.target.logo

Boolean

Profile picture is defined

items[].request.target.jobTitle

String

Job title

items[].request.target.lastModified

Number

Last modified date

4.8.3. Get invite details

Table 51. /v3/accounts/{account}/invites/{invite}
Parameter Description

account

Account id

invite

Invite id

HTTP
GET /v3/accounts/1/invites/1 HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/invites/1' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/invites/1' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 2841

{
  "request" : {
    "id" : 1,
    "contextKey" : {
      "id" : 130
    },
    "source" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "target" : null,
    "container" : {
      "id" : 1,
      "contextKey" : {
        "id" : 130
      },
      "type" : "account"
    },
    "sourceName" : "jack.bauer@clinked.com",
    "targetName" : "invitee@example.com",
    "type" : "ACCEPT_DECLINE",
    "status" : "NONE",
    "scope" : null,
    "parameters" : "{\"mask\":1,\"groups\":{\"1\":1},\"extras\":{}}",
    "lastModified" : null,
    "account" : {
      "id" : 1,
      "name" : "awesome_org",
      "friendlyName" : "Awesome Organisation",
      "enabled" : true
    }
  },
  "permission" : 1,
  "groups" : [ {
    "group" : {
      "id" : 1,
      "name" : "explore_clinked",
      "friendlyName" : "Explore Clinked",
      "contextKey" : {
        "id" : 2
      },
      "members" : 0,
      "storageConsumed" : 0,
      "blind" : false,
      "disableChat" : false,
      "disableComments" : false,
      "disableEmailComments" : false,
      "hideMemberDetails" : false,
      "dateCreated" : 1514764800000,
      "lastModified" : 1514764800000,
      "owner" : {
        "id" : 1,
        "name" : "Jack Bauer",
        "username" : "jack",
        "logo" : false,
        "jobTitle" : "Marketing",
        "lastModified" : 1514764800000
      },
      "mailKey" : null,
      "hash" : null,
      "branding" : {
        "headerColor" : "#ffffff",
        "textColor" : "#ff0000",
        "logo" : false,
        "background" : false,
        "alignment" : "left",
        "backgroundPositionX" : 50,
        "backgroundPositionY" : 50,
        "hideBackgroundGradient" : false,
        "hideLogoBackground" : false,
        "hideGroupName" : false
      },
      "components" : [ {
        "name" : "files",
        "order" : 0,
        "configuration" : { }
      }, {
        "name" : "pages",
        "order" : 1,
        "configuration" : { }
      }, {
        "name" : "events",
        "order" : 2,
        "configuration" : { }
      }, {
        "name" : "tasks",
        "order" : 3,
        "configuration" : { }
      } ],
      "integrations" : null,
      "master" : null,
      "masterConfigured" : false,
      "masterConfiguration" : null,
      "watermarkConfiguration" : {
        "enableWatermark" : false,
        "enableWatermarkIp" : false,
        "enableWatermarkEmail" : false,
        "enableWatermarkTimestamp" : false,
        "enableWatermarkCustomText" : false,
        "watermarkCustomText" : null,
        "watermarkStyle" : null,
        "transparentWatermark" : null
      }
    },
    "permission" : 1
  } ],
  "inviteKey" : "ea4dae46-1adf-4ef9-96ec-26b1d38ebe22"
}
Table 52. Definition of the returned fields
Path Type Description

permission

Number

Permission mask in account

groups

Array

Assigned groups

groups[].group

Object

Base Group DTO

groups[].permission

Number

Permission mask in group

request

Object

Request DTO

request.id

Number

Request id

request.contextKey

Object

Account context key

request.sourceName

String

Source user e-mail address

request.source

Object

Base source user DTO

request.target

Object

Base target user DTO

request.targetName

String

Target user e-mail address

request.container

Object

Container contextual entity DTO

request.type

String

Request type

request.status

String

Request status

request.parameters

String

Optional additional details

request.scope

String

Optional scope

request.lastModified

Number

Date the request was last modified

request.source.id

Number

User id

request.source.name

String

Full name

request.source.username

String

Username

request.source.logo

Boolean

Profile picture is defined

request.source.jobTitle

String

Job title

request.source.lastModified

Number

Last modified date

request.target.id

Number

User id

request.target.name

String

Full name

request.target.username

String

Username

request.target.logo

Boolean

Profile picture is defined

request.target.jobTitle

String

Job title

request.target.lastModified

Number

Last modified date

request

Object

Request

request.contextKey

Object

Request context key

request.contextKey.id

Number

Request context key id

request.container

Object

Request container

request.container.id

Number

Request container id

request.container.contextKey

Object

Request container context key

request.container.contextKey.id

Number

Request container context key id

request.container.type

String

Request container type

request.account

Object

Request account

request.account.id

Number

Request account id

request.account.name

String

Request account name

request.account.friendlyName

String

Request account friendly name

request.account.enabled

Boolean

Is request account enabled

groups[].group.id

Number

Group id

groups[].group.friendlyName

String

Group name

groups[].group.name

String

Group unique name/slug

groups[].group.members

Number

Amount of members in the group

groups[].group.storageConsumed

Number

Amount of storage consumed by the group in bytes

groups[].group.blind

Boolean

Do not allow basic read permission members to see each other

groups[].group.disableComments

Boolean

Disable group comments

groups[].group.disableEmailComments

Boolean

Disable comments in e-mail notifications

groups[].group.hideMemberDetails

Boolean

Hide sensitive member profile details such as email address, phone number, etc.

groups[].group.disableChat

Boolean

Disable chat functionality

groups[].group.dateCreated

Number

Creation date

groups[].group.lastModified

Number

Last modification date

groups[].group.owner

Object

Group creator

groups[].group.branding

Object

Group branding settings

groups[].group.memberDetails

Array

Group members detailed information

groups[].group.memberDetails[].expirationDate

Number

Member expiration date timestamp

groups[].group.memberDetails[].user

Object

Member user information

groups[].group.memberDetails[].permission

Number

Member permission setting

groups[].group.memberDetails[].dateCreated

Number

Member creation timestamp

groups[].group.masterConfigured

Boolean

true when master group is configured

groups[].group.subgroupCount

Number

Number of subgroups configured with this group

groups[].group.contextKey

Object

Context key

groups[].group.contextKey.id

Number

Context key ID

groups[].group.master

Number

Primary group id

groups[].group.components

Array

List of enabled components with configuration

groups[].group.integrations

Array

List of enabled group integrations

groups[].group.labels

Array

List of attached labels

groups[].group.notificationsConfiguration

Object

Group notifications configuration

groups[].group.notificationsConfiguration.newContent

String

Notify members about new content

groups[].group.notificationsConfiguration.overdueTasks

String

Notify members about overdue tasks

groups[].group.notificationsConfiguration.following

String

Disables all notifications for followed content

groups[].group.notificationsConfiguration.disableEmailComments

Boolean

Disables user content in email notifications such as comment text

groups[].group.watermarkConfiguration

Object

Group watermark configuration

groups[].group.watermarkConfiguration.enableWatermark

Boolean

Enable watermarking across group

groups[].group.watermarkConfiguration.enableWatermarkIp

Boolean

Show user IP on the watermark

groups[].group.watermarkConfiguration.enableWatermarkEmail

Boolean

Show user email on the watermark

groups[].group.watermarkConfiguration.enableWatermarkTimestamp

Boolean

Show the timestamp on the watermark

groups[].group.watermarkConfiguration.enableWatermarkCustomText

Boolean

Show custom text on the watermark

groups[].group.watermarkConfiguration.transparentWatermark

Boolean

Watermark text is more transparent

groups[].group.watermarkConfiguration.watermarkCustomText

String

Custom text to show on watermark

groups[].group.watermarkConfiguration.watermarkStyle

String

Custom text to show on watermark

groups[].group.components[].name

String

Enabled component name

groups[].group.components[].order

Number

Enabled component ordering index

groups[].group.components[].configuration

Object

Enabled component additional configuration properties

groups[].group.integrations[].name

String

Integration name

groups[].group.integrations[].configuration

Object

Integration configuration

groups[].group.owner.id

Number

User id

groups[].group.owner.name

String

Full name

groups[].group.owner.username

String

Username

groups[].group.owner.logo

Boolean

Profile picture is defined

groups[].group.owner.jobTitle

String

Job title

groups[].group.owner.lastModified

Number

Last modified date

groups[].group.memberDetails[].user.id

Number

User id

groups[].group.memberDetails[].user.name

String

Full name

groups[].group.memberDetails[].user.username

String

Username

groups[].group.memberDetails[].user.logo

Boolean

Profile picture is defined

groups[].group.memberDetails[].user.jobTitle

String

Job title

groups[].group.memberDetails[].user.lastModified

Number

Last modified date

groups[].group.memberDetails[].group.id

Number

User / profile id

groups[].group.memberDetails[].group.name

String

Group name slug, used for internal identification and URIs

groups[].group.memberDetails[].group.friendlyName

String

Full group name, visible to a user

groups[].permission

Number

Group permission

inviteKey

String

Invite key

4.8.4. Update invite

Table 53. /v3/accounts/{account}/invites/{invite}
Parameter Description

account

Account ID

invite

Invite ID

HTTP
PATCH /v3/accounts/1/invites/1 HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 57

{
  "permission": 4,
  "assignGroups": {
    "1": 4
  }
}
HTTPie
$ echo '{
  "permission": 4,
  "assignGroups": {
    "1": 4
  }
}' | http PATCH 'https://api.clinked.com/v3/accounts/1/invites/1' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/invites/1' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
  "permission": 4,
  "assignGroups": {
    "1": 4
  }
}'
Table 54. Request fields
Path Type Description

permission

Number

Account permission

message

String

Message to include in invitation

groups

Object

Map of group id and permission {"1": 1}

resend

Boolean

Resend invitation

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 2843

{
  "request" : {
    "id" : 1,
    "contextKey" : {
      "id" : 809
    },
    "source" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "target" : null,
    "container" : {
      "id" : 1,
      "contextKey" : {
        "id" : 809
      },
      "type" : "account"
    },
    "sourceName" : "jack.bauer@clinked.com",
    "targetName" : "invitee@example.com",
    "type" : "ACCEPT_DECLINE",
    "status" : "NONE",
    "scope" : null,
    "parameters" : "{\"mask\":4,\"groups\":{\"1\":4},\"extras\":{}}",
    "lastModified" : null,
    "account" : {
      "id" : 1,
      "name" : "awesome_org",
      "friendlyName" : "Awesome Organisation",
      "enabled" : true
    }
  },
  "permission" : 4,
  "groups" : [ {
    "group" : {
      "id" : 1,
      "name" : "explore_clinked",
      "friendlyName" : "Explore Clinked",
      "contextKey" : {
        "id" : 431
      },
      "members" : 0,
      "storageConsumed" : 0,
      "blind" : false,
      "disableChat" : false,
      "disableComments" : false,
      "disableEmailComments" : false,
      "hideMemberDetails" : false,
      "dateCreated" : 1514764800000,
      "lastModified" : 1514764800000,
      "owner" : {
        "id" : 1,
        "name" : "Jack Bauer",
        "username" : "jack",
        "logo" : false,
        "jobTitle" : "Marketing",
        "lastModified" : 1514764800000
      },
      "mailKey" : null,
      "hash" : null,
      "branding" : {
        "headerColor" : "#ffffff",
        "textColor" : "#ff0000",
        "logo" : false,
        "background" : false,
        "alignment" : "left",
        "backgroundPositionX" : 50,
        "backgroundPositionY" : 50,
        "hideBackgroundGradient" : false,
        "hideLogoBackground" : false,
        "hideGroupName" : false
      },
      "components" : [ {
        "name" : "files",
        "order" : 0,
        "configuration" : { }
      }, {
        "name" : "pages",
        "order" : 1,
        "configuration" : { }
      }, {
        "name" : "events",
        "order" : 2,
        "configuration" : { }
      }, {
        "name" : "tasks",
        "order" : 3,
        "configuration" : { }
      } ],
      "integrations" : null,
      "master" : null,
      "masterConfigured" : false,
      "masterConfiguration" : null,
      "watermarkConfiguration" : {
        "enableWatermark" : false,
        "enableWatermarkIp" : false,
        "enableWatermarkEmail" : false,
        "enableWatermarkTimestamp" : false,
        "enableWatermarkCustomText" : false,
        "watermarkCustomText" : null,
        "watermarkStyle" : null,
        "transparentWatermark" : null
      }
    },
    "permission" : 4
  } ],
  "inviteKey" : "ea4dae46-1adf-4ef9-96ec-26b1d38ebe22"
}
Table 55. Definition of the returned fields
Path Type Description

permission

Number

Permission mask in account

groups

Array

Assigned groups

groups[].group

Object

Base Group DTO

groups[].permission

Number

Permission mask in group

request

Object

Request DTO

request.id

Number

Request id

request.contextKey

Object

Account context key

request.sourceName

String

Source user e-mail address

request.source

Object

Base source user DTO

request.target

Object

Base target user DTO

request.targetName

String

Target user e-mail address

request.container

Object

Container contextual entity DTO

request.type

String

Request type

request.status

String

Request status

request.parameters

String

Optional additional details

request.scope

String

Optional scope

request.lastModified

Number

Date the request was last modified

request.source.id

Number

User id

request.source.name

String

Full name

request.source.username

String

Username

request.source.logo

Boolean

Profile picture is defined

request.source.jobTitle

String

Job title

request.source.lastModified

Number

Last modified date

request.target.id

Number

User id

request.target.name

String

Full name

request.target.username

String

Username

request.target.logo

Boolean

Profile picture is defined

request.target.jobTitle

String

Job title

request.target.lastModified

Number

Last modified date

request

Object

Request

request.contextKey

Object

Request context key

request.contextKey.id

Number

Request context key id

request.container

Object

Request container

request.container.id

Number

Request container id

request.container.contextKey

Object

Request container context key

request.container.contextKey.id

Number

Request container context key id

request.container.type

String

Request container type

request.account

Object

Request account

request.account.id

Number

Request account id

request.account.name

String

Request account name

request.account.friendlyName

String

Request account friendly name

request.account.enabled

Boolean

Is request account enabled

groups[].group.id

Number

Group id

groups[].group.friendlyName

String

Group name

groups[].group.name

String

Group unique name/slug

groups[].group.members

Number

Amount of members in the group

groups[].group.storageConsumed

Number

Amount of storage consumed by the group in bytes

groups[].group.blind

Boolean

Do not allow basic read permission members to see each other

groups[].group.disableComments

Boolean

Disable group comments

groups[].group.disableEmailComments

Boolean

Disable comments in e-mail notifications

groups[].group.hideMemberDetails

Boolean

Hide sensitive member profile details such as email address, phone number, etc.

groups[].group.disableChat

Boolean

Disable chat functionality

groups[].group.dateCreated

Number

Creation date

groups[].group.lastModified

Number

Last modification date

groups[].group.owner

Object

Group creator

groups[].group.branding

Object

Group branding settings

groups[].group.memberDetails

Array

Group members detailed information

groups[].group.memberDetails[].expirationDate

Number

Member expiration date timestamp

groups[].group.memberDetails[].user

Object

Member user information

groups[].group.memberDetails[].permission

Number

Member permission setting

groups[].group.memberDetails[].dateCreated

Number

Member creation timestamp

groups[].group.masterConfigured

Boolean

true when master group is configured

groups[].group.subgroupCount

Number

Number of subgroups configured with this group

groups[].group.contextKey

Object

Context key

groups[].group.contextKey.id

Number

Context key ID

groups[].group.master

Number

Primary group id

groups[].group.components

Array

List of enabled components with configuration

groups[].group.integrations

Array

List of enabled group integrations

groups[].group.labels

Array

List of attached labels

groups[].group.notificationsConfiguration

Object

Group notifications configuration

groups[].group.notificationsConfiguration.newContent

String

Notify members about new content

groups[].group.notificationsConfiguration.overdueTasks

String

Notify members about overdue tasks

groups[].group.notificationsConfiguration.following

String

Disables all notifications for followed content

groups[].group.notificationsConfiguration.disableEmailComments

Boolean

Disables user content in email notifications such as comment text

groups[].group.watermarkConfiguration

Object

Group watermark configuration

groups[].group.watermarkConfiguration.enableWatermark

Boolean

Enable watermarking across group

groups[].group.watermarkConfiguration.enableWatermarkIp

Boolean

Show user IP on the watermark

groups[].group.watermarkConfiguration.enableWatermarkEmail

Boolean

Show user email on the watermark

groups[].group.watermarkConfiguration.enableWatermarkTimestamp

Boolean

Show the timestamp on the watermark

groups[].group.watermarkConfiguration.enableWatermarkCustomText

Boolean

Show custom text on the watermark

groups[].group.watermarkConfiguration.transparentWatermark

Boolean

Watermark text is more transparent

groups[].group.watermarkConfiguration.watermarkCustomText

String

Custom text to show on watermark

groups[].group.watermarkConfiguration.watermarkStyle

String

Custom text to show on watermark

groups[].group.components[].name

String

Enabled component name

groups[].group.components[].order

Number

Enabled component ordering index

groups[].group.components[].configuration

Object

Enabled component additional configuration properties

groups[].group.integrations[].name

String

Integration name

groups[].group.integrations[].configuration

Object

Integration configuration

groups[].group.owner.id

Number

User id

groups[].group.owner.name

String

Full name

groups[].group.owner.username

String

Username

groups[].group.owner.logo

Boolean

Profile picture is defined

groups[].group.owner.jobTitle

String

Job title

groups[].group.owner.lastModified

Number

Last modified date

groups[].group.memberDetails[].user.id

Number

User id

groups[].group.memberDetails[].user.name

String

Full name

groups[].group.memberDetails[].user.username

String

Username

groups[].group.memberDetails[].user.logo

Boolean

Profile picture is defined

groups[].group.memberDetails[].user.jobTitle

String

Job title

groups[].group.memberDetails[].user.lastModified

Number

Last modified date

groups[].group.memberDetails[].group.id

Number

User / profile id

groups[].group.memberDetails[].group.name

String

Group name slug, used for internal identification and URIs

groups[].group.memberDetails[].group.friendlyName

String

Full group name, visible to a user

groups[].permission

Number

Group permission

inviteKey

String

Invite key

4.8.5. Delete invite

Table 56. /v3/accounts/{account}/invites/{invite}
Parameter Description

account

Account id

invite

Invite id

HTTP
DELETE /v3/accounts/1/invites/1 HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/accounts/1/invites/1' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/invites/1' -i -X DELETE \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

4.9. Guests

Guests are individuals who you share content with and don’t need access to your full portal through a set of login credentials.

For more information about the feature itself, see our Help Center page.

4.9.1. List guests

Returns paginated list of account guests.

Table 57. /v3/accounts/{account}/guests
Parameter Description

account

Account id

HTTP
GET /v3/accounts/1/guests?name=guest HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/guests?name=guest' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/guests?name=guest' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 58. Request parameters
Parameter Description

page

Page number to load

size

Page size

orderBy

Order field

ascending

Ascending order direction

name

Find guest by name / email

startsWith

Find guest where name / email starts with

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 316

{
  "items" : [ {
    "id" : 1,
    "name" : "Guest",
    "email" : "guest@guest.com",
    "dateCreated" : 1713433492288,
    "passwordEnabled" : false,
    "hasPassword" : false
  } ],
  "currentPage" : 1,
  "totalPages" : 1,
  "pageSize" : 10,
  "totalResults" : 1,
  "nextPage" : false,
  "previousPage" : false
}
Table 59. Definition of the returned fields
Path Type Description

currentPage

Number

Current page

pageSize

Number

Entries per page

items

Array

Reachout entries

nextPage

Boolean

Next page exists

totalPages

Number

Total amount of available pages

previousPage

Boolean

Previous page exists

totalResults

Number

Total amount of entries

items[].id

Number

Guest id

items[].name

String

Guest name

items[].email

String

Guest e-mail

items[].passwordEnabled

Boolean

Guest has password or not

items[].hasPassword

Boolean

Indicates that the guest has password

items[].dateCreated

Number

Date the guest was created

items[].shares

Array

Shares tokens assigned to this guest

4.9.2. Get guest details

Table 60. /v3/accounts/{account}/guests/{guest}
Parameter Description

account

Account id

guest

Guest id

HTTP
GET /v3/accounts/1/guests/1 HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/guests/1' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/guests/1' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 170

{
  "id" : 1,
  "name" : "Guest",
  "email" : "guest@guest.com",
  "dateCreated" : 1713433492263,
  "passwordEnabled" : false,
  "hasPassword" : false,
  "shares" : [ ]
}
Table 61. Definition of the returned fields
Path Type Description

id

Number

Guest id

name

String

Guest name

email

String

Guest e-mail

passwordEnabled

Boolean

Guest has password or not

hasPassword

Boolean

Indicates that the guest has password

dateCreated

Number

Date the guest was created

shares

Array

Shares tokens assigned to this guest

4.9.3. Update guest

Table 62. /v3/accounts/{account}/guests/{guest}
Parameter Description

account

Account id

guest

Guest id

HTTP
PATCH /v3/accounts/1/guests/1 HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 49

{
  "name": "John",
  "email": "john@guest.com"
}
HTTPie
$ echo '{
  "name": "John",
  "email": "john@guest.com"
}' | http PATCH 'https://api.clinked.com/v3/accounts/1/guests/1' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/guests/1' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
  "name": "John",
  "email": "john@guest.com"
}'
Table 63. Request fields
Path Type Description

name

String

Name

email

String

Email address

passwordEnabled

Boolean

Is password required

password

String

Password

deliverResetNotifications

Boolean

Send reset password instructions to email

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 168

{
  "id" : 1,
  "name" : "John",
  "email" : "john@guest.com",
  "dateCreated" : 1713433492309,
  "passwordEnabled" : false,
  "hasPassword" : false,
  "shares" : [ ]
}
Table 64. Definition of the returned fields
Path Type Description

id

Number

Guest id

name

String

Guest name

email

String

Guest e-mail

passwordEnabled

Boolean

Guest has password or not

hasPassword

Boolean

Indicates that the guest has password

dateCreated

Number

Date the guest was created

shares

Array

Shares tokens assigned to this guest

4.9.4. Delete guest

Table 65. /v3/accounts/{account}/guests/{guest}
Parameter Description

account

Account id

guest

Guest id

HTTP
DELETE /v3/accounts/1/guests/1 HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/accounts/1/guests/1' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/guests/1' -i -X DELETE \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

4.10. Branding

For more information about the feature itself, see our Help Center page.

4.10.1. Get account branding

Table 66. /v3/accounts/{account}/branding
Parameter Description

account

Account Id

HTTP
GET /v3/accounts/1/branding HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Accept: application/json
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/branding' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>' \
    'Accept:application/json'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/branding' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -H 'Accept: application/json'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 430

{
  "logo" : true,
  "mediumLogo" : true,
  "largeLogo" : true,
  "icon" : false,
  "background" : false,
  "darkMenu" : false,
  "navbarColor" : "#ffffff",
  "navbarText" : "#8692ac",
  "sidebarColor" : "#8692ac",
  "sidebarText" : "#8692ac",
  "primaryColor" : "#2e9dff",
  "primaryText" : "#ffffff",
  "secondaryColor" : "#80c568",
  "secondaryText" : "#ffffff",
  "lastModified" : 1684740519078,
  "fontFamily" : "Open Sans"
}
Table 67. Definition of the returned fields
Path Type Description

logo

Boolean

If has custom logo

mediumLogo

Boolean

If has medium logo

largeLogo

Boolean

If has large logo

background

Boolean

If has custom background

icon

Boolean

If has custom favicon

darkMenu

Boolean

If has dark menu

navbarColor

String

Hex color code

navbarText

String

Hex color code

sidebarColor

String

Hex color code

sidebarText

String

Hex color code

primaryColor

String

Hex color code

primaryText

String

Hex color code

secondaryColor

String

Hex color code

secondaryText

String

Hex color code

lastModified

Number

Date last modified

fontFamily

String

Selected font family

4.10.2. Create or update account branding

Table 68. /v3/accounts/{account}/branding
Parameter Description

account

Account id

HTTP
POST /v3/accounts/1/branding HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 285

{"navbarColor":"#ffffff","navbarText":"#8692ac","sidebarColor":"#8692ac","sidebarText":"#8692ac","primaryColor":"#2e9dff","secondaryColor":"#80c568","darkMenu":false,"logo":true,"icon":false,"background":false,"primaryText":"#ffffff","secondaryText":"#ffffff","fontFamily":"Open Sans"}
HTTPie
$ echo '{"navbarColor":"#ffffff","navbarText":"#8692ac","sidebarColor":"#8692ac","sidebarText":"#8692ac","primaryColor":"#2e9dff","secondaryColor":"#80c568","darkMenu":false,"logo":true,"icon":false,"background":false,"primaryText":"#ffffff","secondaryText":"#ffffff","fontFamily":"Open Sans"}' | http POST 'https://api.clinked.com/v3/accounts/1/branding' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/branding' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{"navbarColor":"#ffffff","navbarText":"#8692ac","sidebarColor":"#8692ac","sidebarText":"#8692ac","primaryColor":"#2e9dff","secondaryColor":"#80c568","darkMenu":false,"logo":true,"icon":false,"background":false,"primaryText":"#ffffff","secondaryText":"#ffffff","fontFamily":"Open Sans"}'
Table 69. Request fields
Path Type Description

logo

Boolean

If has custom logo

background

Boolean

If has custom background

icon

Boolean

If has custom favicon

darkMenu

Boolean

If has dark menu

navbarColor

String

Hex color code

navbarText

String

Hex color code

sidebarColor

String

Hex color code

sidebarText

String

Hex color code

primaryColor

String

Hex color code

primaryText

String

Hex color code

secondaryColor

String

Hex color code

secondaryText

String

Hex color code

fontFamily

String

Selected font family

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 430

{
  "logo" : true,
  "mediumLogo" : true,
  "largeLogo" : true,
  "icon" : false,
  "background" : false,
  "darkMenu" : false,
  "navbarColor" : "#ffffff",
  "navbarText" : "#8692ac",
  "sidebarColor" : "#8692ac",
  "sidebarText" : "#8692ac",
  "primaryColor" : "#2e9dff",
  "primaryText" : "#ffffff",
  "secondaryColor" : "#80c568",
  "secondaryText" : "#ffffff",
  "lastModified" : 1684740519078,
  "fontFamily" : "Open Sans"
}
Table 70. Definition of the returned fields
Path Type Description

logo

Boolean

If has custom logo

mediumLogo

Boolean

If has medium logo

largeLogo

Boolean

If has large logo

background

Boolean

If has custom background

icon

Boolean

If has custom favicon

darkMenu

Boolean

If has dark menu

navbarColor

String

Hex color code

navbarText

String

Hex color code

sidebarColor

String

Hex color code

sidebarText

String

Hex color code

primaryColor

String

Hex color code

primaryText

String

Hex color code

secondaryColor

String

Hex color code

secondaryText

String

Hex color code

lastModified

Number

Date last modified

fontFamily

String

Selected font family

4.10.3. Delete custom branding

Sets branding to default values.

Table 71. /v3/accounts/{account}/branding
Parameter Description

account

Account id

HTTP
DELETE /v3/accounts/1/branding HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/accounts/1/branding' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/branding' -i -X DELETE \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

4.11. Properties

4.11.1. List account properties

Table 72. /v3/accounts/{account}/properties
Parameter Description

account

Account ID

HTTP
GET /v3/accounts/1/properties?startsWith=test HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/properties?startsWith=test' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/properties?startsWith=test' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 73. Request parameters
Parameter Description

startsWith

Property prefix

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 46

[ {
  "name" : "name",
  "value" : "value"
} ]
Table 74. Definition of the returned fields
Path Type Description

[].name

String

Property name

[].value

String

Property value

4.11.2. Create account property

Table 75. /v3/accounts/{account}/properties
Parameter Description

account

Account ID

HTTP
POST /v3/accounts/1/properties HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 38

{
  "name": "test",
  "value": "123"
}
HTTPie
$ echo '{
  "name": "test",
  "value": "123"
}' | http POST 'https://api.clinked.com/v3/accounts/1/properties' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/properties' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
  "name": "test",
  "value": "123"
}'
Table 76. Request fields
Path Type Description

name

String

Property name

value

String

Property value

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 40

{
  "name" : "test",
  "value" : "123"
}
Table 77. Definition of the returned fields
Path Type Description

name

String

Property name

value

String

Property value

4.11.3. Delete account property

Table 78. /v3/accounts/{account}/properties/{name}
Parameter Description

account

Account ID

name

Property name

HTTP
DELETE /v3/accounts/1/properties/test HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/accounts/1/properties/test' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/properties/test' -i -X DELETE \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

4.12. Announcements

For more information about the feature itself, see our Help Center page.

4.12.1. List announcements

Returns account announcements

Table 79. /v3/accounts/{account}/announcements
Parameter Description

account

Account id

HTTP
GET /v3/accounts/1/announcements HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/announcements' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/announcements' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 130

[ {
  "id" : "xyz",
  "title" : "title",
  "body" : "body",
  "colour" : "success",
  "propagate" : false,
  "inherit" : false
} ]
Table 80. Definition of the returned fields
Path Type Description

[]id

String

Announcement id

[]title

String

Announcement title

[]body

String

Announcement body

[]colour

String

Announcement colour

[]propagate

Boolean

Propagate the announcement as the default value

[]inherit

Boolean

The announcement is inherited from account level

4.12.2. Get announcement

Returns single announcement details

Table 81. /v3/accounts/{account}/announcements
Parameter Description

account

Account id

HTTP
GET /v3/accounts/1/announcements?id=xyz HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/announcements?id=xyz' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/announcements?id=xyz' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 82. Request parameters
Parameter Description

id

Specific announcement by the ID (same as dashboard widget id)

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 110

{
  "title" : "title",
  "body" : "body",
  "colour" : "success",
  "propagate" : false,
  "inherit" : false
}
Table 83. Definition of the returned fields
Path Type Description

id

String

Announcement id

title

String

Announcement title

body

String

Announcement body

colour

String

Announcement colour

propagate

Boolean

Propagate the announcement as the default value

inherit

Boolean

The announcement is inherited from account level

4.12.3. Create announcement

Create new announcement

Table 84. /v3/accounts/{account}/announcements
Parameter Description

account

Account id

HTTP
POST /v3/accounts/1/announcements HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 66

{"id": "test","title": "title","body": "body","colour": "success"}
HTTPie
$ echo '{"id": "test","title": "title","body": "body","colour": "success"}' | http POST 'https://api.clinked.com/v3/accounts/1/announcements' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/announcements' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{"id": "test","title": "title","body": "body","colour": "success"}'
Table 85. Request parameters
Parameter Description

id

Specific announcement by the ID (same as dashboard widget id)

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 127

{
  "id" : "test",
  "title" : "title",
  "body" : "body",
  "colour" : "success",
  "propagate" : false,
  "inherit" : false
}
Table 86. Request fields
Path Type Description

id

String

Announcement id

title

String

Announcement title

body

String

Announcement body

colour

String

Announcement colour

propagate

Boolean

Propagate the announcement as the default value

inherit

Boolean

The announcement is inherited from account level

Same fields for return values

4.12.4. Delete announcement

Deletes announcements

Table 87. /v3/accounts/{account}/announcements
Parameter Description

account

Account id

id

Announcement id

HTTP
DELETE /v3/accounts/1/announcements HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/accounts/1/announcements' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/announcements' -i -X DELETE \
    -H 'Authorization: Bearer <YOUR-TOKEN>'

If announcement id is not provided main announcement will be deleted

Example of a success response
HTTP/1.1 200 OK

4.13. Devices

For more information about the feature itself, see our Help Center page.

4.13.1. List devices

Returns all devices used by the account members

Table 88. /v3/accounts/{account}/devices
Parameter Description

account

Account id

HTTP
GET /v3/accounts/1/devices?name=my-device&orderBy=dateCreated HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/devices?name=my-device&orderBy=dateCreated' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/devices?name=my-device&orderBy=dateCreated' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 89. Request parameters
Parameter Description

name

Device name

orderBy

Value to order by

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 577

[ {
  "clientId" : "my-device",
  "owner" : {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "name" : "My Awesome App!",
  "description" : "This is my awesome test app",
  "platform" : "OTHER",
  "deviceType" : "Phone",
  "deviceModel" : "Google Pixel XL",
  "deviceOs" : "ANDROID",
  "appVersion" : "1.0",
  "bundleId" : "com.clinked.awesome",
  "lastActivity" : 1514764800000,
  "ip" : "127.0.0.1",
  "scope" : [ ],
  "redirectURIs" : [ ],
  "grantTypes" : [ ]
} ]
Table 90. Definition of the returned fields
Path Type Description

[].clientId

String

Client id

[].owner.id

Number

Owner user id

[].owner.name

String

Owner name

[].owner.username

String

Owner username

[].owner.logo

Boolean

If user has logo

[].owner.jobTitle

String

User job title

[].owner.lastModified

Number

Last modified timestamp

[].name

String

Application name

[].description

String

Description

[].platform

String

Platform

[].deviceType

String

Device type

[].deviceModel

String

Device model

[].deviceOs

String

Device os

[].appVersion

String

Application version

[].bundleId

String

Bundle Id

[].lastActivity

Number

Last activity timestamp

[].ip

String

IP address

[].scope

Array

Required application scopes

[].redirectURIs

Array

Redirect URIs

[].grantTypes

Array

Grant types

4.13.2. Remove device

Removes device

Table 91. /v3/accounts/{account}/devices/{clientId}
Parameter Description

account

Account id

clientId

Client id

HTTP
DELETE /v3/accounts/1/devices/my-device HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/accounts/1/devices/my-device' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/devices/my-device' -i -X DELETE \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

4.14. Iframes

An inline frame (iframe) is a HTML element that loads another HTML page within the document. White list domains that can be used in iframes.

4.14.1. List iframes

Table 92. /v3/accounts/{account}/iframes
Parameter Description

account

Account id

HTTP
GET /v3/accounts/1/iframes HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/iframes' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/iframes' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 16

[ "domain.ltd" ]
Table 93. Definition of the returned fields
Path Type Description

[]

Array

Array of white labeled iframes

4.14.2. Update iframes

Table 94. /v3/accounts/{account}/iframes
Parameter Description

account

Account id

HTTP
POST /v3/accounts/1/iframes HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 24

[ "iframe1", "iframe2" ]
HTTPie
$ echo '[ "iframe1", "iframe2" ]' | http POST 'https://api.clinked.com/v3/accounts/1/iframes' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/iframes' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '[ "iframe1", "iframe2" ]'
Table 95. Request fields
Path Type Description

[]

2003

Set of white listed iframes

Example of a success response
HTTP/1.1 200 OK

4.15. Password strength

4.15.1. Get password strength

Table 96. /v3/accounts/{account}/password-strength
Parameter Description

account

Account id

HTTP
GET /v3/accounts/1/password-strength HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Accept: application/json
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/password-strength' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>' \
    'Accept:application/json'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/password-strength' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -H 'Accept: application/json'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 78

{
  "size" : 6,
  "uppercase" : true,
  "digits" : true,
  "special" : false
}
Table 97. Definition of the returned fields
Path Type Description

size

Number

Password size

uppercase

Boolean

Requires uppercase character

digits

Boolean

Requires digit character

special

Boolean

Requires special character

4.15.2. Update password strength

Table 98. /v3/accounts/{account}/password-strength
Parameter Description

account

Account id

HTTP
POST /v3/accounts/1/password-strength HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Accept: application/json
Host: api.clinked.com
Content-Length: 57

{"size":12,"uppercase":true,"digits":true,"special":true}
HTTPie
$ echo '{"size":12,"uppercase":true,"digits":true,"special":true}' | http POST 'https://api.clinked.com/v3/accounts/1/password-strength' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>' \
    'Accept:application/json'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/password-strength' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -H 'Accept: application/json' \
    -d '{"size":12,"uppercase":true,"digits":true,"special":true}'
Table 99. Request fields
Path Type Description

size

Number

Password size

uppercase

Boolean

Requires uppercase character

digits

Boolean

Requires digit character

special

Boolean

Requires special character

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 78

{
  "size" : 12,
  "uppercase" : true,
  "digits" : true,
  "special" : true
}
Table 100. Definition of the returned fields
Path Type Description

size

Number

Password size

uppercase

Boolean

Requires uppercase character

digits

Boolean

Requires digit character

special

Boolean

Requires special character

4.16. Profile fields

Account members can have optional custom profile fields, that they can fill in when signing up or after

4.16.1. List profile fields

Table 101. /v3/accounts/{account}/profile-fields
Parameter Description

account

Account id

HTTP
GET /v3/accounts/1/profile-fields HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/profile-fields' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/profile-fields' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 50

[ {
  "name" : "Favorite pizza",
  "order" : 0
} ]
Table 102. Definition of the returned fields
Path Type Description

[].name

String

Field name

[].order

Number

Order number

4.16.2. Update profile fields

When updating profile fields You need to pass in previous fields as well if You wish to keep them.

Table 103. /v3/accounts/{account}/profile-fields
Parameter Description

account

Account id

HTTP
POST /v3/accounts/1/profile-fields HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 30

[{"name":"newName","order":0}]
HTTPie
$ echo '[{"name":"newName","order":0}]' | http POST 'https://api.clinked.com/v3/accounts/1/profile-fields' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/profile-fields' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '[{"name":"newName","order":0}]'
Table 104. Request fields
Path Type Description

[].name

String

Field name

[].order

Number

Order number

Example of a success response
HTTP/1.1 200 OK

4.17. SSO

Single sign-on

4.17.1. Get SSO details

Table 105. /v3/accounts/{account}/sso
Parameter Description

account

Account id

HTTP
GET /v3/accounts/1/sso HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/sso' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/sso' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 23

{
  "enabled" : false
}
Table 106. Definition of the returned fields
Path Type Description

enabled

Boolean

Is sso enabled

version

Number

Version number

subject

String

Subject name

signatureAlgorithm

String

Signature algorithm name

signatureOID

String

Signature algorithm OID

issuer

String

Issuer name

notAfter

String

notAfter date from the validity period of the certificate

notBefore

String

notBefore date from the validity period of the certificate

soonToExpire

boolean

Will expire in less than 30 days

publicKey

String

Public key

configuration

Object

Saml configuration

configuration.entityId

String

IdP EntityID

configuration.ssoEnabled

Boolean

SSO is enabled or disabled

configuration.userJit

Boolean

Create a new user if the user does not exist in account

configuration.forceSso

Boolean

Force users to login using identity provider

configuration.adminsUsePassword

Boolean

Allow administrators to use password login

configuration.disableProfileEdit

Boolean

Disable profile editing

configuration.forceAuth

Boolean

Force user authentication every time

4.17.2. Update SSO configuration

Table 107. /v3/accounts/{account}/sso
Parameter Description

account

Account id

HTTP
PATCH /v3/accounts/1/sso HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 153

{"ssoEnabled":false,"userJit":false,"forceSso":false,"adminsUsePassword":true,"disableProfileEdit":false,"renew":false,"forceAuth":false,"tempFile":null}
HTTPie
$ echo '{"ssoEnabled":false,"userJit":false,"forceSso":false,"adminsUsePassword":true,"disableProfileEdit":false,"renew":false,"forceAuth":false,"tempFile":null}' | http PATCH 'https://api.clinked.com/v3/accounts/1/sso' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/sso' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{"ssoEnabled":false,"userJit":false,"forceSso":false,"adminsUsePassword":true,"disableProfileEdit":false,"renew":false,"forceAuth":false,"tempFile":null}'
Table 108. Request fields
Path Type Description

ssoEnabled

Boolean

SSO is enabled or disabled

userJit

Boolean

Create a new user if the user does not exist in account

forceSso

Boolean

Force users to login using identity provider

adminsUsePassword

Boolean

Allow administrators to use password login

disableProfileEdit

Boolean

Disable profile editing

forceAuth

Boolean

Force user authentication every time

renew

Boolean

Renew sso

tempFile

Number

Temp file id

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 23

{
  "enabled" : false
}
Table 109. Definition of the returned fields
Path Type Description

enabled

Boolean

Is sso enabled

version

Number

Version number

subject

String

Subject name

signatureAlgorithm

String

Signature algorithm name

signatureOID

String

Signature algorithm OID

issuer

String

Issuer name

notAfter

String

notAfter date from the validity period of the certificate

notBefore

String

notBefore date from the validity period of the certificate

soonToExpire

boolean

Will expire in less than 30 days

publicKey

String

Public key

configuration

Object

Saml configuration

configuration.entityId

String

IdP EntityID

configuration.ssoEnabled

Boolean

SSO is enabled or disabled

configuration.userJit

Boolean

Create a new user if the user does not exist in account

configuration.forceSso

Boolean

Force users to login using identity provider

configuration.adminsUsePassword

Boolean

Allow administrators to use password login

configuration.disableProfileEdit

Boolean

Disable profile editing

configuration.forceAuth

Boolean

Force user authentication every time

4.17.3. Delete SSO configuration

Table 110. /v3/accounts/{account}/sso
Parameter Description

account

Account id

HTTP
DELETE /v3/accounts/1/sso HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/accounts/1/sso' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/sso' -i -X DELETE \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

4.18. Two-factor authentication

Two-factor authentication can be enforced for account members.

4.18.1. Get 2FA status

Retrieve status of the two-factor authentication enforcement.

Table 111. /v3/accounts/{account}/two-factor-authentication-enforce
Parameter Description

account

Account id

HTTP
GET /v3/accounts/1/two-factor-authentication-enforce HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/two-factor-authentication-enforce' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/two-factor-authentication-enforce' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 22

{
  "status" : false
}
Table 112. Definition of the returned fields
Path Type Description

status

boolean

Status

4.18.2. Update 2fa status

Table 113. /v3/accounts/{account}/two-factor-authentication-enforce
Parameter Description

account

Account id

HTTP
POST /v3/accounts/1/two-factor-authentication-enforce HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 5

false
HTTPie
$ echo 'false' | http POST 'https://api.clinked.com/v3/accounts/1/two-factor-authentication-enforce' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/two-factor-authentication-enforce' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d 'false'
Table 114. Request fields
Parameter Description

true

New status

Example of a success response
HTTP/1.1 200 OK

4.19. Storage region

Get and update details about account storage region.

4.19.1. Get storage details

Table 115. /v3/accounts/{account}/storage
Parameter Description

account

Account id

HTTP
GET /v3/accounts/1/storage HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/storage' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/storage' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 76

{
  "enabled" : true,
  "region" : "US-WEST-1",
  "availableRegions" : [ ]
}
Table 116. Definition of the returned fields
Path Type Description

enabled

Boolean

If enabled

region

String

Storage region

availableRegions

Array

Available storage regions

4.19.2. Update storage region

Table 117. /v3/accounts/{account}/storage
Parameter Description

account

Account id

HTTP
POST /v3/accounts/1/storage HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 22

{"region":"US-WEST-1"}
HTTPie
$ echo '{"region":"US-WEST-1"}' | http POST 'https://api.clinked.com/v3/accounts/1/storage' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/storage' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{"region":"US-WEST-1"}'
Table 118. Request fields
Path Type Description

region

String

Storage region

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 88

{
  "enabled" : true,
  "region" : "US-WEST-1",
  "availableRegions" : [ "US-WEST-1" ]
}
Table 119. Definition of the returned fields
Path Type Description

enabled

Boolean

If enabled

region

String

Storage region

availableRegions

Array

Available storage regions

4.20. Custom email

For more information about the feature itself, see our Help Center page.

4.20.1. Get Configuration

Table 120. /v3/accounts/{account}/custom-email
Parameter Description

account

Account id

HTTP
GET /v3/accounts/1/custom-email HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Accept: application/json
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/custom-email' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>' \
    'Accept:application/json'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/custom-email' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -H 'Accept: application/json'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 63

{
  "enabled" : true,
  "connected" : true,
  "type" : "type"
}
Table 121. Definition of the returned fields
Path Type Description

enabled

Boolean

Is enabled

connected

Boolean

Is connected

type

String

Type

4.20.2. Smtp

Table 122. /v3/accounts/{account}/custom-email/smtp
Parameter Description

account

Account id

HTTP
POST /v3/accounts/1/custom-email/smtp HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 152

{ "host": "smtp.domain.ltd", "username": "user123", "password": "passy", "port": 465, "auth": true, "starttls": true, "from": "user123@smtp.domain.ltd"}
HTTPie
$ echo '{ "host": "smtp.domain.ltd", "username": "user123", "password": "passy", "port": 465, "auth": true, "starttls": true, "from": "user123@smtp.domain.ltd"}' | http POST 'https://api.clinked.com/v3/accounts/1/custom-email/smtp' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/custom-email/smtp' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{ "host": "smtp.domain.ltd", "username": "user123", "password": "passy", "port": 465, "auth": true, "starttls": true, "from": "user123@smtp.domain.ltd"}'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 199

{
  "host" : "smtp.domain.ltd",
  "username" : "user123",
  "password" : null,
  "port" : 465,
  "auth" : null,
  "starttls" : true,
  "passwordOmitted" : true,
  "from" : "user123@smtp.domain.ltd"
}
Table 123. Definition of the returned fields
Path Type Description

host

String

SMTP server host

username

String

E-mail account username

password

String

E-mail account password (if included in response)

port

Number

SMTP server port number

auth

Boolean

Authentication is used

starttls

Boolean

STARTTLS is enabled

passwordOmitted

Boolean

Password is not included in the response

from

String

Mail from header e-mail address

4.20.3. Configure sendgrid

Table 124. /v3/accounts/{account}/custom-email/sendgrid
Parameter Description

account

Account id

HTTP
POST /v3/accounts/1/custom-email/sendgrid HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 73

{ "apiKey": "123-apiKey-from-sendgrid","from": "user123@smtp.domain.ltd"}
HTTPie
$ echo '{ "apiKey": "123-apiKey-from-sendgrid","from": "user123@smtp.domain.ltd"}' | http POST 'https://api.clinked.com/v3/accounts/1/custom-email/sendgrid' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/custom-email/sendgrid' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{ "apiKey": "123-apiKey-from-sendgrid","from": "user123@smtp.domain.ltd"}'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 77

{
  "apiKey" : "passy",
  "from" : "user123@smtp.domain.ltd",
  "mx" : null
}
Table 125. Definition of the returned fields
Path Type Description

apiKey

String

Sendgrid API key

from

String

Mail from header e-mail address

mx

Boolean

MX records are defined for e-mail receiving in portal

4.20.4. Get Sendgrid domains

Table 126. /v3/accounts/{account}/custom-email/sendgrid/domains
Parameter Description

account

Account id

HTTP
GET /v3/accounts/1/custom-email/sendgrid/domains?apiKey=13423-65hk0-fskdjf4-fsdfsf HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Accept: application/json
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/custom-email/sendgrid/domains?apiKey=13423-65hk0-fskdjf4-fsdfsf' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>' \
    'Accept:application/json'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/custom-email/sendgrid/domains?apiKey=13423-65hk0-fskdjf4-fsdfsf' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -H 'Accept: application/json'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 318

[ {
  "default" : true,
  "id" : 100,
  "username" : "Harry",
  "subdomain" : "subdomain",
  "domain" : "domain",
  "user_id" : 123,
  "ips" : [ "127.0.0.1" ],
  "custom_spf" : false,
  "legacy" : false,
  "automatic_security" : true,
  "valid" : true,
  "dns" : { },
  "last_validation_attempt_at" : 1514764800000
} ]
Table 127. Definition of the returned fields
Path Type Description

[].default

Boolean

Whether to use this authenticated domain as the fallback if no authenticated domains match the sender’s domain

[].id

Number

Id of authenticated domain

[].username

String

The username associated with this domain

[].subdomain

String

The subdomain to use for authenticated domain

[].domain

String

The domain to be authenticated

[].user_id

Number

The ID of the user that this domain is associated with

[].ips.[]

Array

The IP addresses that will be included in the custom SPF record for this authenticated domain

[].custom_spf

Boolean

Specify whether to use a custom SPF or allow SendGrid to manage your SPF.This option is only available to authenticated domains set up for manual security

[].legacy

Boolean

Is legacy

[].automatic_security

Boolean

Whether to allow SendGrid to manage your SPF records, DKIM keys, and DKIM key rotation.

[].valid

Boolean

Indicates if this is a valid authenticated domain

[].dns

Object

The DNS records used to authenticate the sending domain

[].last_validation_attempt_at

Number

Last validation attempt timestamp

4.20.5. Create domain authentication

Table 128. /v3/accounts/{account}/custom-email/domain-authentication
Parameter Description

account

Account id

HTTP
POST /v3/accounts/1/custom-email/domain-authentication HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Accept: application/json
Host: api.clinked.com
Content-Length: 174

{"from":"email@example.com","domain":null,"mx":null,"mxValid":null,"valid":true,"dns":{"example":{"valid":true,"data":"example data","host":"example.com","type":"dns type"}}}
HTTPie
$ echo '{"from":"email@example.com","domain":null,"mx":null,"mxValid":null,"valid":true,"dns":{"example":{"valid":true,"data":"example data","host":"example.com","type":"dns type"}}}' | http POST 'https://api.clinked.com/v3/accounts/1/custom-email/domain-authentication' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>' \
    'Accept:application/json'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/custom-email/domain-authentication' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -H 'Accept: application/json' \
    -d '{"from":"email@example.com","domain":null,"mx":null,"mxValid":null,"valid":true,"dns":{"example":{"valid":true,"data":"example data","host":"example.com","type":"dns type"}}}'
Table 129. Request fields
Path Type Description

from

String

From email

valid

Boolean

Is valid domain

dns

Object

Map of dns and dns properties

dns.example

Object

Dns name

domain

String

Authorized domain

mx

Boolean

MX records configured for e-mail receiving

mxValid

Boolean

MX records are valid

dns.example.valid

Boolean

Is dns valid

dns.example.data

String

Dns data

dns.example.host

String

Dns host

dns.example.type

String

Dns type

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 265

{
  "from" : "email@example.com",
  "domain" : "example.com",
  "mx" : null,
  "mxValid" : null,
  "valid" : true,
  "dns" : {
    "example" : {
      "valid" : true,
      "data" : "example data",
      "host" : "example.com",
      "type" : "dns type"
    }
  }
}
Table 130. Definition of the returned fields
Path Type Description

from

String

From email

valid

Boolean

Is valid domain

dns

Object

Map of dns and dns properties

dns.example

Object

Dns name

domain

String

Authorized domain

mx

Boolean

MX records configured for e-mail receiving

mxValid

Boolean

MX records are valid

dns.example.valid

Boolean

Is dns valid

dns.example.data

String

Dns data

dns.example.host

String

Dns host

dns.example.type

String

Dns type

4.20.6. Validate domain authentication

Table 131. /v3/accounts/{account}/custom-email/domain-authentication
Parameter Description

account

Account id

HTTP
PATCH /v3/accounts/1/custom-email/domain-authentication HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Accept: application/json
Host: api.clinked.com
HTTPie
$ http PATCH 'https://api.clinked.com/v3/accounts/1/custom-email/domain-authentication' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>' \
    'Accept:application/json'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/custom-email/domain-authentication' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -H 'Accept: application/json'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 256

{
  "from" : "email@example.com",
  "domain" : null,
  "mx" : null,
  "mxValid" : null,
  "valid" : true,
  "dns" : {
    "example" : {
      "valid" : true,
      "data" : "example data",
      "host" : "example.com",
      "type" : "dns type"
    }
  }
}
Table 132. Definition of the returned fields
Path Type Description

from

String

From email

valid

Boolean

Is valid domain

dns

Object

Map of dns and dns properties

dns.example

Object

Dns name

domain

String

Authorized domain

mx

Boolean

MX records configured for e-mail receiving

mxValid

Boolean

MX records are valid

dns.example.valid

Boolean

Is dns valid

dns.example.data

String

Dns data

dns.example.host

String

Dns host

dns.example.type

String

Dns type

4.20.7. Remove domain

Table 133. /v3/accounts/{account}/custom-email
Parameter Description

account

Account id

HTTP
DELETE /v3/accounts/1/custom-email HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Accept: application/json
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/accounts/1/custom-email' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>' \
    'Accept:application/json'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/custom-email' -i -X DELETE \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -H 'Accept: application/json'
Example of a success response
HTTP/1.1 200 OK

4.21. Custom domain

For more information about the feature itself, see our Help Center page.

4.21.1. Get custom domain details

Return details about domain and if feature can be used.

Table 134. /v3/accounts/{account}/domain
Parameter Description

account

Account id

HTTP
GET /v3/accounts/1/domain HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/domain' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/domain' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 118

{
  "status" : true,
  "enabled" : true,
  "regions" : {
    "WEST-1" : [ "my-host" ]
  },
  "domain" : "domain.com"
}
Table 135. Definition of the returned fields
Path Type Description

status

Boolean

If custom domain exists

enabled

Boolean

If custom domain enabled

regions

Object

Map of regions and hosts

domain

String

Domain name

4.21.2. Add custom domain

Table 136. /v3/accounts/{account}/domain
Parameter Description

account

Account id

HTTP
POST /v3/accounts/1/domain HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 31

{"domain": "portal.domain.ltd"}
HTTPie
$ echo '{"domain": "portal.domain.ltd"}' | http POST 'https://api.clinked.com/v3/accounts/1/domain' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/domain' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{"domain": "portal.domain.ltd"}'
Example of a success response
HTTP/1.1 200 OK

4.21.3. Delete custom domain

Table 137. /v3/accounts/{account}/domain
Parameter Description

account

Account id

HTTP
DELETE /v3/accounts/1/domain HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/accounts/1/domain' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/domain' -i -X DELETE \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

4.22. Account integrations

For more information about the feature itself, see our Help Center page.

4.22.2. Integration status

Checks if integration is connected and to which account.

Table 138. /v3/accounts/{account}/docusign
Parameter Description

account

Account id

HTTP
GET /v3/accounts/1/docusign HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/docusign' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/docusign' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 51

{
  "connected" : true,
  "account" : "xxxx-xxxx"
}
Table 139. Definition of the returned fields
Path Type Description

connected

Boolean

Is integration connected

account

String

Docusign account id

4.22.3. Update Docusign settings

Table 140. /v3/accounts/{account}/docusign
Parameter Description

account

Account id

HTTP
PATCH /v3/accounts/1/docusign HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 24

{
  "connected" : true
}
HTTPie
$ echo '{
  "connected" : true
}' | http PATCH 'https://api.clinked.com/v3/accounts/1/docusign' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/docusign' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
  "connected" : true
}'
Table 141. Request fields
Path Type Description

connected

Boolean

Is connected

account

String

New account id

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 51

{
  "connected" : true,
  "account" : "xxxx-xxxx"
}
Table 142. Definition of the returned fields
Path Type Description

connected

Boolean

Is integration connected

account

String

Docusign account id

4.22.4. Disconnect Docusign

Table 143. /v3/accounts/{account}/docusign
Parameter Description

account

Account id

HTTP
DELETE /v3/accounts/1/docusign HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/accounts/1/docusign' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/docusign' -i -X DELETE \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

4.22.5. List available docusign accounts

Table 144. /v3/accounts/{account}/docusign/accounts
Parameter Description

account

Account id

HTTP
GET /v3/accounts/1/docusign/accounts HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/docusign/accounts' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/docusign/accounts' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 271

[ {
  "account_id" : "xxxx-xxxx",
  "is_default" : null,
  "account_name" : "Awesome account",
  "base_uri" : "example.com",
  "organization" : {
    "organization_id" : "org-id",
    "links" : [ {
      "rel" : "example.com",
      "href" : "example.com"
    } ]
  }
} ]
Table 145. Definition of the returned fields
Path Type Description

[]account_id

String

Account id

[]is_default

String

Is default

[]account_name

String

Account name

[]base_uri

String

Base uri

[]organization

Object

Organisation

[]organization.organization_id

String

Organisation id

[]organization.links

Array

Links

[]organization.links[].rel

String

rel

[]organization.links[].href

String

href

4.22.6. Generate consent url

Table 146. /v3/accounts/{account}/docusign/consent
Parameter Description

account

Account id

HTTP
GET /v3/accounts/1/docusign/consent?redirect=example.com HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/docusign/consent?redirect=example.com' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/docusign/consent?redirect=example.com' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 147. Request parameters
Parameter Description

redirect

Redirect url

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 34

{
  "consentUrl" : "example.com"
}
Table 148. Definition of the returned fields
Path Type Description

consentUrl

String

Consent url

4.22.8. Integration status

Table 149. /v3/accounts/{account}/adobe
Parameter Description

account

Account id

HTTP
GET /v3/accounts/1/adobe HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/adobe' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/adobe' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 24

{
  "connected" : true
}
Table 150. Definition of the returned fields
Path Type Description

connected

Boolean

Is integration connected

4.22.9. Disconnect Adobe

Table 151. /v3/accounts/{account}/adobe
Parameter Description

account

Account id

Example of a success response
HTTP/1.1 200 OK

5. Account tasks

5.1. List tasks

HTTP
GET /v3/tasks?account=1 HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/tasks?account=1' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/tasks?account=1' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 152. Request parameters
Parameter Description

account

Account ID

name

Name

exact

Return exact by exact name

slug

Slug

show

Show

status

Task status

assignedTo

User id

priority

Task priority [URGENT, HIGH, MEDIUM, LOW]

category

Task category

uncategorized

Include uncategorized

dateStart

Start date

dateEnd

End date

parent

Parent task id

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1292

{
  "items" : [ {
    "id" : 1,
    "contextKey" : {
      "id" : 333
    },
    "sharing" : "MEMBERS",
    "memberPermission" : 8,
    "following" : false,
    "userAces" : false,
    "userPermission" : 0,
    "attachmentCount" : 0,
    "friendlyName" : "Deploy update",
    "name" : "deploy_update",
    "status" : "WAITING",
    "priority" : "MEDIUM",
    "progress" : 0,
    "author" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "dueDate" : "2022-08-25T11:56:54Z[UTC]",
    "tags" : "",
    "description" : "Let's do this",
    "dateCreated" : 1514764800000,
    "dateReminder" : "2017-12-31T08:00Z[UTC]",
    "recurrence" : null,
    "order" : 2147483647,
    "category" : null,
    "assignees" : null,
    "numberOfSubTasks" : 0,
    "lastModified" : 1514764800000,
    "timeTracker" : {
      "trackingStartDate" : 1514764800000,
      "timeTracked" : 948480
    },
    "dateCompleted" : 1514764810000,
    "group" : {
      "id" : 1,
      "name" : "explore_clinked",
      "friendlyName" : "Explore Clinked"
    }
  } ],
  "currentPage" : 1,
  "totalPages" : 1,
  "pageSize" : 1,
  "totalResults" : 1,
  "nextPage" : false,
  "previousPage" : false
}
Table 153. Definition of the returned fields
Path Type Description

items

Array

Page items

currentPage

Number

Current page number

pageSize

Number

Current page size

nextPage

Boolean

Next page available

previousPage

Boolean

Previous page available

totalPages

Number

Amount of available pages

totalResults

Number

Total results

items[].id

Number

Task category ID

items[].contextKey

Object

Сontext key

items[].contextKey.id

Number

Сontext key ID

items[].name

String

Task slug

items[].friendlyName

String

Task name

items[].author

Object

User created this task

items[].status

String

Task status code

items[].priority

String

Task priority

items[].progress

Number

Task progress

items[].tags

String

Task tags (comma separated)

items[].dueDate

String

Zoned ISO due date-time

items[].dateReminder

String

Zoned ISO reminder date-time

items[].recurrence

String

Task recurrence rule

items[].order

Number

Task order

items[].description

String

Task description

items[].file

Object

File to which the task is attached to

items[].category

Object

Task category

items[].assignees

Array

Task assignees

items[].sharing

String

Sharing option, determines who can see a note: [NONE, DEFAULT, MEMBERS, PUBLIC]

items[].memberPermission

Number

Member file permission mask

items[].attachmentCount

Number

Amount of attachments

items[].commentCount

Number

Amount of comments

items[].following

Boolean

User is following note

items[].shareCount

Number

Amount of shares

items[].userAces

Boolean

Note has individual user permissions

items[].userPermission

Number

User permission

items[].dateCreated

Number

Date task was created

items[].dateCompleted

Number

Date task was completed

items[].lastModified

Number

Date task was last modified

items[].parent

Object

Parent task

items[].numberOfSubTasks

Number

Number of subtasks

items[].timeTracker

Object

Task time tracker

items[].timeTracker.trackingStartDate

Number

Tracking start date

items[].timeTracker.timeTracked

Number

Time tracked in milliseconds

items[].author.id

Number

User id

items[].author.name

String

Full name

items[].author.username

String

Username

items[].author.logo

Boolean

Profile picture is defined

items[].author.jobTitle

String

Job title

items[].author.lastModified

Number

Last modified date

items[].group.id

Number

User / profile id

items[].group.name

String

Group name slug, used for internal identification and URIs

items[].group.friendlyName

String

Full group name, visible to a user

6. Account events

6.1. Account events list

HTTP
GET /v3/events?account=1&dateStart=2022-10-01&dateEnd=2022-10-31 HTTP/1.1
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/events?account=1&dateStart=2022-10-01&dateEnd=2022-10-31'
Curl
$ curl 'https://api.clinked.com/v3/events?account=1&dateStart=2022-10-01&dateEnd=2022-10-31' -i -X GET
Table 154. Request parameters
Parameter Description

account

Required account id

dateStart

Lower bound for an event’s start time to filter by. Must be a ISO date only format, for example 2022-03-01.

dateEnd

Upper bound for an event’s end time to filter by. Must be a ISO date only format, for example 2022-03-31.

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 896

[ {
  "id" : 1,
  "contextKey" : {
    "id" : 505
  },
  "sharing" : "MEMBERS",
  "memberPermission" : 8,
  "name" : "meeting_with_a_client",
  "friendlyName" : "Meeting with a client",
  "startDate" : "2018-01-05T14:00Z[UTC]",
  "endDate" : "2018-01-05T15:00Z[UTC]",
  "allDay" : false,
  "location" : "London",
  "tags" : "tag1,tag2",
  "dateReminder" : "2017-12-31T08:00Z[UTC]",
  "recurrence" : "FREQ=WEEKLY;WKST=MO;BYDAY=FR",
  "dateEndRecurrence" : "2024-04-18T09:45:01.465Z[UTC]",
  "description" : "Let's do this every friday",
  "disableMaybe" : false,
  "author" : {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "lastModified" : 1514764800000,
  "color" : "#212121",
  "group" : {
    "id" : 1,
    "name" : "explore_clinked",
    "friendlyName" : "Explore Clinked"
  }
} ]
Table 155. Definition of the returned fields
Path Type Description

[].id

Number

Event ID

[].contextKey

Object

Context key

[].contextKey.id

Number

Context key ID

[].group

Object

Event group

[].author

Object

Event author

[].group.id

Number

Group Id

[].group

Object

Event group

[].group

Object

Event group

[].sharing

String

Sharing option, determines who can see an event: [NONE, DEFAULT, MEMBERS, PUBLIC]

[].memberPermission

Number

Member permission mask

[].name

String

Unique name

[].friendlyName

String

Full name

[].startDate

String

Event start date

[].endDate

String

Event end date

[].allDay

Boolean

All day event

[].location

String

Event location

[].tags

String

Comma separated list of tags

[].dateReminder

String

When to send a reminder about an event

[].recurrence

String

Valid recurrence rule

[].dateEndRecurrence

String

Recurrence end date

[].description

String

Event description

[].lastModified

Number

Date event was last modified

[].color

String

Event color

[].disableMaybe

Boolean

Do not allow invited members to choose 'maybe' option

[].group.id

Number

User / profile id

[].group.name

String

Group name slug, used for internal identification and URIs

[].group.friendlyName

String

Full group name, visible to a user

[].author.id

Number

User id

[].author.name

String

Full name

[].author.username

String

Username

[].author.logo

Boolean

Profile picture is defined

[].author.jobTitle

String

Job title

[].author.lastModified

Number

Last modified date

6.2. Account events list for user

Returns other user events to authenticated user.

HTTP
GET /v3/events?user=jack&dateStart=2022-10-01&dateEnd=2022-10-31 HTTP/1.1
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/events?user=jack&dateStart=2022-10-01&dateEnd=2022-10-31'
Curl
$ curl 'https://api.clinked.com/v3/events?user=jack&dateStart=2022-10-01&dateEnd=2022-10-31' -i -X GET
Table 156. Request parameters
Parameter Description

user

User username

dateStart

Lower bound for an event’s start time to filter by. Must be a ISO date only format, for example 2022-03-01.

dateEnd

Upper bound for an event’s end time to filter by. Must be a ISO date only format, for example 2022-03-31.

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 896

[ {
  "id" : 1,
  "contextKey" : {
    "id" : 714
  },
  "sharing" : "MEMBERS",
  "memberPermission" : 8,
  "name" : "meeting_with_a_client",
  "friendlyName" : "Meeting with a client",
  "startDate" : "2018-01-05T14:00Z[UTC]",
  "endDate" : "2018-01-05T15:00Z[UTC]",
  "allDay" : false,
  "location" : "London",
  "tags" : "tag1,tag2",
  "dateReminder" : "2017-12-31T08:00Z[UTC]",
  "recurrence" : "FREQ=WEEKLY;WKST=MO;BYDAY=FR",
  "dateEndRecurrence" : "2024-04-18T09:45:01.355Z[UTC]",
  "description" : "Let's do this every friday",
  "disableMaybe" : false,
  "author" : {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "lastModified" : 1514764800000,
  "color" : "#212121",
  "group" : {
    "id" : 1,
    "name" : "explore_clinked",
    "friendlyName" : "Explore Clinked"
  }
} ]
Table 157. Definition of the returned fields
Path Type Description

[].id

Number

Event ID

[].contextKey

Object

Context key

[].contextKey.id

Number

Context key ID

[].group

Object

Event group

[].author

Object

Event author

[].group.id

Number

Group Id

[].group

Object

Event group

[].group

Object

Event group

[].sharing

String

Sharing option, determines who can see an event: [NONE, DEFAULT, MEMBERS, PUBLIC]

[].memberPermission

Number

Member permission mask

[].name

String

Unique name

[].friendlyName

String

Full name

[].startDate

String

Event start date

[].endDate

String

Event end date

[].allDay

Boolean

All day event

[].location

String

Event location

[].tags

String

Comma separated list of tags

[].dateReminder

String

When to send a reminder about an event

[].recurrence

String

Valid recurrence rule

[].dateEndRecurrence

String

Recurrence end date

[].description

String

Event description

[].lastModified

Number

Date event was last modified

[].color

String

Event color

[].disableMaybe

Boolean

Do not allow invited members to choose 'maybe' option

[].group.id

Number

User / profile id

[].group.name

String

Group name slug, used for internal identification and URIs

[].group.friendlyName

String

Full group name, visible to a user

[].author.id

Number

User id

[].author.name

String

Full name

[].author.username

String

Username

[].author.logo

Boolean

Profile picture is defined

[].author.jobTitle

String

Job title

[].author.lastModified

Number

Last modified date

7. Groups

7.1. Create new group

Table 158. /v3/accounts/{account}/groups
Parameter Description

account

Account/organisation id

HTTP
POST /v3/accounts/1/groups HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 1140

{
    "name": "awesome_group",
    "friendlyName": "Awesome Group",
    "master": null,
    "blind": false,
    "disableComments": false,
    "disableEmailComments": false,
    "hideMemberDetails": false,
    "components": [{
        "name": "files",
        "order": 1,
        "configuration": {}
    }, {
        "name": "discussions",
        "order": 2,
        "configuration": {}
    }, {
        "name": "tasks",
        "order": 3,
        "configuration": {}
    }, {
        "name": "pages",
        "order": 4,
        "configuration": {}
    }, {
        "name": "events",
        "order": 5,
        "configuration": {}
    }],
    "notificationsConfiguration": {
        "newContent": "IMMEDIATE",
        "overdueTasks": "DAILY",
        "following": "NEVER",
        "disableEmailComments": false
    },
    "watermarkConfiguration": {
        "enableWatermark": true,
        "enableWatermarkIp": true,
        "enableWatermarkEmail": true,
        "enableWatermarkTimestamp": true,
        "enableWatermarkCustomText": true,
        "watermarkCustomText": "WATERMARKED",
        "watermarkStyle": "DIAGONAL_LARGE"
    }
}
HTTPie
$ echo '{
    "name": "awesome_group",
    "friendlyName": "Awesome Group",
    "master": null,
    "blind": false,
    "disableComments": false,
    "disableEmailComments": false,
    "hideMemberDetails": false,
    "components": [{
        "name": "files",
        "order": 1,
        "configuration": {}
    }, {
        "name": "discussions",
        "order": 2,
        "configuration": {}
    }, {
        "name": "tasks",
        "order": 3,
        "configuration": {}
    }, {
        "name": "pages",
        "order": 4,
        "configuration": {}
    }, {
        "name": "events",
        "order": 5,
        "configuration": {}
    }],
    "notificationsConfiguration": {
        "newContent": "IMMEDIATE",
        "overdueTasks": "DAILY",
        "following": "NEVER",
        "disableEmailComments": false
    },
    "watermarkConfiguration": {
        "enableWatermark": true,
        "enableWatermarkIp": true,
        "enableWatermarkEmail": true,
        "enableWatermarkTimestamp": true,
        "enableWatermarkCustomText": true,
        "watermarkCustomText": "WATERMARKED",
        "watermarkStyle": "DIAGONAL_LARGE"
    }
}' | http POST 'https://api.clinked.com/v3/accounts/1/groups' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/groups' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
    "name": "awesome_group",
    "friendlyName": "Awesome Group",
    "master": null,
    "blind": false,
    "disableComments": false,
    "disableEmailComments": false,
    "hideMemberDetails": false,
    "components": [{
        "name": "files",
        "order": 1,
        "configuration": {}
    }, {
        "name": "discussions",
        "order": 2,
        "configuration": {}
    }, {
        "name": "tasks",
        "order": 3,
        "configuration": {}
    }, {
        "name": "pages",
        "order": 4,
        "configuration": {}
    }, {
        "name": "events",
        "order": 5,
        "configuration": {}
    }],
    "notificationsConfiguration": {
        "newContent": "IMMEDIATE",
        "overdueTasks": "DAILY",
        "following": "NEVER",
        "disableEmailComments": false
    },
    "watermarkConfiguration": {
        "enableWatermark": true,
        "enableWatermarkIp": true,
        "enableWatermarkEmail": true,
        "enableWatermarkTimestamp": true,
        "enableWatermarkCustomText": true,
        "watermarkCustomText": "WATERMARKED",
        "watermarkStyle": "DIAGONAL_LARGE"
    }
}'
Table 159. Request fields
Path Type Description

name

String

Group unique name/slug

friendlyName

String

Group name

copyFrom

Number

Group ID to duplicate

master

Number

Primary group id

components

Array

List of enabled components with configuration

blind

Boolean

Do not allow basic read permission members to see each other

disableComments

Boolean

Disable group comments

disableEmailComments

Boolean

Disable comments in e-mail notifications

hideMemberDetails

Boolean

Hide sensitive member profile details such as email address, phone number, etc.

notificationsConfiguration

Object

Group notifications configuration

notificationsConfiguration.newContent

String

Notify members about new content

notificationsConfiguration.overdueTasks

String

Notify members about overdue tasks

notificationsConfiguration.following

String

Disables all notifications for followed content

notificationsConfiguration.disableEmailComments

Boolean

Disables user content in email notifications such as comment text

watermarkConfiguration

Object

Group watermark configuration

watermarkConfiguration.enableWatermark

Boolean

Enable watermarking across group

watermarkConfiguration.enableWatermarkIp

Boolean

Show user IP on the watermark

watermarkConfiguration.enableWatermarkEmail

Boolean

Show user email on the watermark

watermarkConfiguration.enableWatermarkTimestamp

Boolean

Show the timestamp on the watermark

watermarkConfiguration.enableWatermarkCustomText

Boolean

Show custom text on the watermark

watermarkConfiguration.watermarkCustomText

String

Custom text to show on watermark

watermarkConfiguration.watermarkStyle

String

Custom text to show on watermark

components[].name

String

Enabled component name

components[].order

Number

Enabled component ordering index

components[].configuration

Object

Enabled component additional configuration properties

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1569

{
  "id" : 1,
  "name" : "awesome_group",
  "friendlyName" : "Awesome Group",
  "contextKey" : {
    "id" : 15
  },
  "members" : 0,
  "storageConsumed" : 0,
  "blind" : false,
  "disableChat" : false,
  "disableComments" : false,
  "disableEmailComments" : false,
  "hideMemberDetails" : false,
  "dateCreated" : 1713433461784,
  "lastModified" : 1713433461784,
  "owner" : null,
  "mailKey" : null,
  "hash" : null,
  "branding" : {
    "headerColor" : "#dfdfdf",
    "textColor" : "#000000",
    "logo" : false,
    "background" : false,
    "alignment" : "left",
    "backgroundPositionX" : 50,
    "backgroundPositionY" : 50,
    "hideBackgroundGradient" : false,
    "hideLogoBackground" : false,
    "hideGroupName" : false
  },
  "memberDetails" : [ ],
  "components" : [ {
    "name" : "tasks",
    "order" : 3,
    "configuration" : { }
  }, {
    "name" : "pages",
    "order" : 4,
    "configuration" : { }
  }, {
    "name" : "events",
    "order" : 5,
    "configuration" : { }
  }, {
    "name" : "files",
    "order" : 1,
    "configuration" : { }
  }, {
    "name" : "discussions",
    "order" : 2,
    "configuration" : { }
  } ],
  "integrations" : null,
  "master" : null,
  "masterConfigured" : false,
  "masterConfiguration" : null,
  "watermarkConfiguration" : {
    "enableWatermark" : false,
    "enableWatermarkIp" : false,
    "enableWatermarkEmail" : false,
    "enableWatermarkTimestamp" : false,
    "enableWatermarkCustomText" : false,
    "watermarkCustomText" : null,
    "watermarkStyle" : null,
    "transparentWatermark" : null
  }
}
Table 160. Definition of the returned fields
Path Type Description

id

Number

Group id

friendlyName

String

Group name

name

String

Group unique name/slug

members

Number

Amount of members in the group

storageConsumed

Number

Amount of storage consumed by the group in bytes

blind

Boolean

Do not allow basic read permission members to see each other

disableComments

Boolean

Disable group comments

disableEmailComments

Boolean

Disable comments in e-mail notifications

hideMemberDetails

Boolean

Hide sensitive member profile details such as email address, phone number, etc.

disableChat

Boolean

Disable chat functionality

dateCreated

Number

Creation date

lastModified

Number

Last modification date

owner

Object

Group creator

branding

Object

Group branding settings

memberDetails

Array

Group members detailed information

memberDetails[].expirationDate

Number

Member expiration date timestamp

memberDetails[].user

Object

Member user information

memberDetails[].permission

Number

Member permission setting

memberDetails[].dateCreated

Number

Member creation timestamp

masterConfigured

Boolean

true when master group is configured

subgroupCount

Number

Number of subgroups configured with this group

contextKey

Object

Context key

contextKey.id

Number

Context key ID

master

Number

Primary group id

components

Array

List of enabled components with configuration

integrations

Array

List of enabled group integrations

labels

Array

List of attached labels

notificationsConfiguration

Object

Group notifications configuration

notificationsConfiguration.newContent

String

Notify members about new content

notificationsConfiguration.overdueTasks

String

Notify members about overdue tasks

notificationsConfiguration.following

String

Disables all notifications for followed content

notificationsConfiguration.disableEmailComments

Boolean

Disables user content in email notifications such as comment text

watermarkConfiguration

Object

Group watermark configuration

watermarkConfiguration.enableWatermark

Boolean

Enable watermarking across group

watermarkConfiguration.enableWatermarkIp

Boolean

Show user IP on the watermark

watermarkConfiguration.enableWatermarkEmail

Boolean

Show user email on the watermark

watermarkConfiguration.enableWatermarkTimestamp

Boolean

Show the timestamp on the watermark

watermarkConfiguration.enableWatermarkCustomText

Boolean

Show custom text on the watermark

watermarkConfiguration.transparentWatermark

Boolean

Watermark text is more transparent

watermarkConfiguration.watermarkCustomText

String

Custom text to show on watermark

watermarkConfiguration.watermarkStyle

String

Custom text to show on watermark

components[].name

String

Enabled component name

components[].order

Number

Enabled component ordering index

components[].configuration

Object

Enabled component additional configuration properties

integrations[].name

String

Integration name

integrations[].configuration

Object

Integration configuration

owner.id

Number

User id

owner.name

String

Full name

owner.username

String

Username

owner.logo

Boolean

Profile picture is defined

owner.jobTitle

String

Job title

owner.lastModified

Number

Last modified date

memberDetails[].user.id

Number

User id

memberDetails[].user.name

String

Full name

memberDetails[].user.username

String

Username

memberDetails[].user.logo

Boolean

Profile picture is defined

memberDetails[].user.jobTitle

String

Job title

memberDetails[].user.lastModified

Number

Last modified date

memberDetails[].group.id

Number

User / profile id

memberDetails[].group.name

String

Group name slug, used for internal identification and URIs

memberDetails[].group.friendlyName

String

Full group name, visible to a user

7.2. Group count

Table 161. /v3/accounts/{account}/groups
Parameter Description

account

Account id

HTTP
HEAD /v3/accounts/1/groups HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http HEAD 'https://api.clinked.com/v3/accounts/1/groups' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/groups' -i -X HEAD \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
X-Count: 0

7.3. List groups

Table 162. /v3/accounts/{account}/groups
Parameter Description

account

Account/organisation id

HTTP
GET /v3/accounts/1/groups HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/groups' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/groups' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 163. Request parameters
Parameter Description

name

Name to search for

exact

Show only exact name match

exclude

List of group IDs to exclude from results

removed

Include removed groups

master

Master group ID to get subgroups for

label

Label ID to filter groups by

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 2342

{
  "items" : [ {
    "id" : 1,
    "name" : "explore_clinked",
    "friendlyName" : "Explore Clinked",
    "contextKey" : {
      "id" : 836
    },
    "members" : 0,
    "storageConsumed" : 0,
    "blind" : false,
    "disableChat" : false,
    "disableComments" : false,
    "disableEmailComments" : false,
    "hideMemberDetails" : false,
    "dateCreated" : 1514764800000,
    "lastModified" : 1514764800000,
    "owner" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "mailKey" : null,
    "hash" : null,
    "branding" : {
      "headerColor" : "#ffffff",
      "textColor" : "#ff0000",
      "logo" : false,
      "background" : false,
      "alignment" : "left",
      "backgroundPositionX" : 50,
      "backgroundPositionY" : 50,
      "hideBackgroundGradient" : false,
      "hideLogoBackground" : false,
      "hideGroupName" : false
    },
    "memberDetails" : [ {
      "user" : {
        "id" : 1,
        "name" : "Jack Bauer",
        "username" : "jack",
        "logo" : false,
        "jobTitle" : "Marketing",
        "lastModified" : 1514764800000
      },
      "permission" : 16,
      "dateCreated" : 1713433461321,
      "expirationDate" : null,
      "group" : {
        "id" : 1,
        "name" : "explore_clinked",
        "friendlyName" : "Explore Clinked"
      }
    } ],
    "components" : [ {
      "name" : "files",
      "order" : 0,
      "configuration" : { }
    }, {
      "name" : "pages",
      "order" : 1,
      "configuration" : { }
    }, {
      "name" : "events",
      "order" : 2,
      "configuration" : { }
    }, {
      "name" : "tasks",
      "order" : 3,
      "configuration" : { }
    } ],
    "integrations" : null,
    "master" : null,
    "masterConfigured" : false,
    "masterConfiguration" : null,
    "watermarkConfiguration" : {
      "enableWatermark" : false,
      "enableWatermarkIp" : false,
      "enableWatermarkEmail" : false,
      "enableWatermarkTimestamp" : false,
      "enableWatermarkCustomText" : false,
      "watermarkCustomText" : null,
      "watermarkStyle" : null,
      "transparentWatermark" : null
    }
  } ],
  "currentPage" : 1,
  "pageSize" : 5,
  "totalResults" : 0,
  "nextPage" : false,
  "previousPage" : false
}
Table 164. Definition of the returned fields
Path Type Description

items

Array

Page items

currentPage

Number

Current page number

pageSize

Number

Current page size

nextPage

Boolean

Next page available

previousPage

Boolean

Previous page available

totalPages

Number

Amount of available pages

totalResults

Number

Total results

items[].id

Number

Group id

items[].friendlyName

String

Group name

items[].name

String

Group unique name/slug

items[].members

Number

Amount of members in the group

items[].storageConsumed

Number

Amount of storage consumed by the group in bytes

items[].blind

Boolean

Do not allow basic read permission members to see each other

items[].disableComments

Boolean

Disable group comments

items[].disableEmailComments

Boolean

Disable comments in e-mail notifications

items[].hideMemberDetails

Boolean

Hide sensitive member profile details such as email address, phone number, etc.

items[].disableChat

Boolean

Disable chat functionality

items[].dateCreated

Number

Creation date

items[].lastModified

Number

Last modification date

items[].owner

Object

Group creator

items[].branding

Object

Group branding settings

items[].memberDetails

Array

Group members detailed information

items[].memberDetails[].expirationDate

Number

Member expiration date timestamp

items[].memberDetails[].user

Object

Member user information

items[].memberDetails[].permission

Number

Member permission setting

items[].memberDetails[].dateCreated

Number

Member creation timestamp

items[].masterConfigured

Boolean

true when master group is configured

items[].subgroupCount

Number

Number of subgroups configured with this group

items[].contextKey

Object

Context key

items[].contextKey.id

Number

Context key ID

items[].master

Number

Primary group id

items[].components

Array

List of enabled components with configuration

items[].integrations

Array

List of enabled group integrations

items[].labels

Array

List of attached labels

items[].notificationsConfiguration

Object

Group notifications configuration

items[].notificationsConfiguration.newContent

String

Notify members about new content

items[].notificationsConfiguration.overdueTasks

String

Notify members about overdue tasks

items[].notificationsConfiguration.following

String

Disables all notifications for followed content

items[].notificationsConfiguration.disableEmailComments

Boolean

Disables user content in email notifications such as comment text

items[].watermarkConfiguration

Object

Group watermark configuration

items[].watermarkConfiguration.enableWatermark

Boolean

Enable watermarking across group

items[].watermarkConfiguration.enableWatermarkIp

Boolean

Show user IP on the watermark

items[].watermarkConfiguration.enableWatermarkEmail

Boolean

Show user email on the watermark

items[].watermarkConfiguration.enableWatermarkTimestamp

Boolean

Show the timestamp on the watermark

items[].watermarkConfiguration.enableWatermarkCustomText

Boolean

Show custom text on the watermark

items[].watermarkConfiguration.transparentWatermark

Boolean

Watermark text is more transparent

items[].watermarkConfiguration.watermarkCustomText

String

Custom text to show on watermark

items[].watermarkConfiguration.watermarkStyle

String

Custom text to show on watermark

items[].components[].name

String

Enabled component name

items[].components[].order

Number

Enabled component ordering index

items[].components[].configuration

Object

Enabled component additional configuration properties

items[].integrations[].name

String

Integration name

items[].integrations[].configuration

Object

Integration configuration

items[].owner.id

Number

User id

items[].owner.name

String

Full name

items[].owner.username

String

Username

items[].owner.logo

Boolean

Profile picture is defined

items[].owner.jobTitle

String

Job title

items[].owner.lastModified

Number

Last modified date

items[].memberDetails[].user.id

Number

User id

items[].memberDetails[].user.name

String

Full name

items[].memberDetails[].user.username

String

Username

items[].memberDetails[].user.logo

Boolean

Profile picture is defined

items[].memberDetails[].user.jobTitle

String

Job title

items[].memberDetails[].user.lastModified

Number

Last modified date

items[].memberDetails[].group.id

Number

User / profile id

items[].memberDetails[].group.name

String

Group name slug, used for internal identification and URIs

items[].memberDetails[].group.friendlyName

String

Full group name, visible to a user

7.4. Get group details

Returns detailed information about a single group.

Table 165. /v3/accounts/{account}/groups/{group}
Parameter Description

account

Account/organisation id

group

Group id

HTTP
GET /v3/accounts/1/groups/1 HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/groups/1' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/groups/1' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1648

{
  "id" : 1,
  "name" : "explore_clinked",
  "friendlyName" : "Explore Clinked",
  "contextKey" : {
    "id" : 600
  },
  "members" : 0,
  "storageConsumed" : 0,
  "blind" : false,
  "disableChat" : false,
  "disableComments" : false,
  "disableEmailComments" : false,
  "hideMemberDetails" : false,
  "dateCreated" : 1514764800000,
  "lastModified" : 1514764800000,
  "owner" : {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "mailKey" : null,
  "hash" : null,
  "branding" : {
    "headerColor" : "#ffffff",
    "textColor" : "#ff0000",
    "logo" : false,
    "background" : false,
    "alignment" : "left",
    "backgroundPositionX" : 50,
    "backgroundPositionY" : 50,
    "hideBackgroundGradient" : false,
    "hideLogoBackground" : false,
    "hideGroupName" : false
  },
  "memberDetails" : [ ],
  "components" : [ {
    "name" : "files",
    "order" : 0,
    "configuration" : { }
  }, {
    "name" : "pages",
    "order" : 1,
    "configuration" : { }
  }, {
    "name" : "events",
    "order" : 2,
    "configuration" : { }
  }, {
    "name" : "tasks",
    "order" : 3,
    "configuration" : { }
  } ],
  "integrations" : null,
  "master" : null,
  "masterConfigured" : false,
  "masterConfiguration" : null,
  "watermarkConfiguration" : {
    "enableWatermark" : false,
    "enableWatermarkIp" : false,
    "enableWatermarkEmail" : false,
    "enableWatermarkTimestamp" : false,
    "enableWatermarkCustomText" : false,
    "watermarkCustomText" : null,
    "watermarkStyle" : null,
    "transparentWatermark" : null
  }
}
Table 166. Definition of the returned fields
Path Type Description

id

Number

Group id

friendlyName

String

Group name

name

String

Group unique name/slug

members

Number

Amount of members in the group

storageConsumed

Number

Amount of storage consumed by the group in bytes

blind

Boolean

Do not allow basic read permission members to see each other

disableComments

Boolean

Disable group comments

disableEmailComments

Boolean

Disable comments in e-mail notifications

hideMemberDetails

Boolean

Hide sensitive member profile details such as email address, phone number, etc.

disableChat

Boolean

Disable chat functionality

dateCreated

Number

Creation date

lastModified

Number

Last modification date

owner

Object

Group creator

branding

Object

Group branding settings

memberDetails

Array

Group members detailed information

memberDetails[].expirationDate

Number

Member expiration date timestamp

memberDetails[].user

Object

Member user information

memberDetails[].permission

Number

Member permission setting

memberDetails[].dateCreated

Number

Member creation timestamp

masterConfigured

Boolean

true when master group is configured

subgroupCount

Number

Number of subgroups configured with this group

contextKey

Object

Context key

contextKey.id

Number

Context key ID

master

Number

Primary group id

components

Array

List of enabled components with configuration

integrations

Array

List of enabled group integrations

labels

Array

List of attached labels

notificationsConfiguration

Object

Group notifications configuration

notificationsConfiguration.newContent

String

Notify members about new content

notificationsConfiguration.overdueTasks

String

Notify members about overdue tasks

notificationsConfiguration.following

String

Disables all notifications for followed content

notificationsConfiguration.disableEmailComments

Boolean

Disables user content in email notifications such as comment text

watermarkConfiguration

Object

Group watermark configuration

watermarkConfiguration.enableWatermark

Boolean

Enable watermarking across group

watermarkConfiguration.enableWatermarkIp

Boolean

Show user IP on the watermark

watermarkConfiguration.enableWatermarkEmail

Boolean

Show user email on the watermark

watermarkConfiguration.enableWatermarkTimestamp

Boolean

Show the timestamp on the watermark

watermarkConfiguration.enableWatermarkCustomText

Boolean

Show custom text on the watermark

watermarkConfiguration.transparentWatermark

Boolean

Watermark text is more transparent

watermarkConfiguration.watermarkCustomText

String

Custom text to show on watermark

watermarkConfiguration.watermarkStyle

String

Custom text to show on watermark

components[].name

String

Enabled component name

components[].order

Number

Enabled component ordering index

components[].configuration

Object

Enabled component additional configuration properties

integrations[].name

String

Integration name

integrations[].configuration

Object

Integration configuration

owner.id

Number

User id

owner.name

String

Full name

owner.username

String

Username

owner.logo

Boolean

Profile picture is defined

owner.jobTitle

String

Job title

owner.lastModified

Number

Last modified date

memberDetails[].user.id

Number

User id

memberDetails[].user.name

String

Full name

memberDetails[].user.username

String

Username

memberDetails[].user.logo

Boolean

Profile picture is defined

memberDetails[].user.jobTitle

String

Job title

memberDetails[].user.lastModified

Number

Last modified date

memberDetails[].group.id

Number

User / profile id

memberDetails[].group.name

String

Group name slug, used for internal identification and URIs

memberDetails[].group.friendlyName

String

Full group name, visible to a user

owner.id

Number

User id

owner.name

String

Full name

owner.username

String

Username

owner.logo

Boolean

Profile picture is defined

owner.jobTitle

String

Job title

owner.lastModified

Number

Last modified date

7.5. Update group

Partially updates group information.

Table 167. /v3/accounts/{account}/groups/{group}
Parameter Description

account

Account/organisation id

group

Group id

HTTP
PATCH /v3/accounts/1/groups/1 HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 776

{
    "friendlyName": "Awesome Group",
    "master": null,
    "blind": false,
    "disableComments": false,
    "disableEmailComments": false,
    "hideMemberDetails": false,
    "components": [{
        "name": "files",
        "order": 1,
        "configuration": {}
    }],
    "notificationsConfiguration": {
        "newContent": "IMMEDIATE",
        "overdueTasks": "DAILY",
        "following": "NEVER",
        "disableEmailComments": false
    },
    "watermarkConfiguration": {
        "enableWatermark": true,
        "enableWatermarkIp": true,
        "enableWatermarkEmail": true,
        "enableWatermarkTimestamp": true,
        "enableWatermarkCustomText": true,
        "watermarkCustomText": "WATERMARKED",
        "watermarkStyle": "DIAGONAL_LARGE"
    }
}
HTTPie
$ echo '{
    "friendlyName": "Awesome Group",
    "master": null,
    "blind": false,
    "disableComments": false,
    "disableEmailComments": false,
    "hideMemberDetails": false,
    "components": [{
        "name": "files",
        "order": 1,
        "configuration": {}
    }],
    "notificationsConfiguration": {
        "newContent": "IMMEDIATE",
        "overdueTasks": "DAILY",
        "following": "NEVER",
        "disableEmailComments": false
    },
    "watermarkConfiguration": {
        "enableWatermark": true,
        "enableWatermarkIp": true,
        "enableWatermarkEmail": true,
        "enableWatermarkTimestamp": true,
        "enableWatermarkCustomText": true,
        "watermarkCustomText": "WATERMARKED",
        "watermarkStyle": "DIAGONAL_LARGE"
    }
}' | http PATCH 'https://api.clinked.com/v3/accounts/1/groups/1' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/groups/1' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
    "friendlyName": "Awesome Group",
    "master": null,
    "blind": false,
    "disableComments": false,
    "disableEmailComments": false,
    "hideMemberDetails": false,
    "components": [{
        "name": "files",
        "order": 1,
        "configuration": {}
    }],
    "notificationsConfiguration": {
        "newContent": "IMMEDIATE",
        "overdueTasks": "DAILY",
        "following": "NEVER",
        "disableEmailComments": false
    },
    "watermarkConfiguration": {
        "enableWatermark": true,
        "enableWatermarkIp": true,
        "enableWatermarkEmail": true,
        "enableWatermarkTimestamp": true,
        "enableWatermarkCustomText": true,
        "watermarkCustomText": "WATERMARKED",
        "watermarkStyle": "DIAGONAL_LARGE"
    }
}'
Table 168. Request fields
Path Type Description

name

String

Group unique name/slug

friendlyName

String

Group name

copyFrom

Number

Group ID to duplicate

master

Number

Primary group id

components

Array

List of enabled components with configuration

blind

Boolean

Do not allow basic read permission members to see each other

disableComments

Boolean

Disable group comments

disableEmailComments

Boolean

Disable comments in e-mail notifications

hideMemberDetails

Boolean

Hide sensitive member profile details such as email address, phone number, etc.

notificationsConfiguration

Object

Group notifications configuration

notificationsConfiguration.newContent

String

Notify members about new content

notificationsConfiguration.overdueTasks

String

Notify members about overdue tasks

notificationsConfiguration.following

String

Disables all notifications for followed content

notificationsConfiguration.disableEmailComments

Boolean

Disables user content in email notifications such as comment text

watermarkConfiguration

Object

Group watermark configuration

watermarkConfiguration.enableWatermark

Boolean

Enable watermarking across group

watermarkConfiguration.enableWatermarkIp

Boolean

Show user IP on the watermark

watermarkConfiguration.enableWatermarkEmail

Boolean

Show user email on the watermark

watermarkConfiguration.enableWatermarkTimestamp

Boolean

Show the timestamp on the watermark

watermarkConfiguration.enableWatermarkCustomText

Boolean

Show custom text on the watermark

watermarkConfiguration.watermarkCustomText

String

Custom text to show on watermark

watermarkConfiguration.watermarkStyle

String

Custom text to show on watermark

components[].name

String

Enabled component name

components[].order

Number

Enabled component ordering index

components[].configuration

Object

Enabled component additional configuration properties

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1445

{
  "id" : 1,
  "name" : "explore_clinked",
  "friendlyName" : "Awesome Group",
  "contextKey" : {
    "id" : 379
  },
  "members" : 0,
  "storageConsumed" : 0,
  "blind" : false,
  "disableChat" : false,
  "disableComments" : false,
  "disableEmailComments" : false,
  "hideMemberDetails" : false,
  "dateCreated" : 1514764800000,
  "lastModified" : 1514764800000,
  "owner" : {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "mailKey" : null,
  "hash" : null,
  "branding" : {
    "headerColor" : "#ffffff",
    "textColor" : "#ff0000",
    "logo" : false,
    "background" : false,
    "alignment" : "left",
    "backgroundPositionX" : 50,
    "backgroundPositionY" : 50,
    "hideBackgroundGradient" : false,
    "hideLogoBackground" : false,
    "hideGroupName" : false
  },
  "memberDetails" : [ ],
  "components" : [ {
    "name" : "files",
    "order" : 1,
    "configuration" : { }
  } ],
  "integrations" : null,
  "master" : null,
  "masterConfigured" : false,
  "masterConfiguration" : null,
  "watermarkConfiguration" : {
    "enableWatermark" : true,
    "enableWatermarkIp" : true,
    "enableWatermarkEmail" : true,
    "enableWatermarkTimestamp" : true,
    "enableWatermarkCustomText" : true,
    "watermarkCustomText" : "WATERMARKED",
    "watermarkStyle" : "DIAGONAL_LARGE",
    "transparentWatermark" : null
  }
}
Table 169. Definition of the returned fields
Path Type Description

id

Number

Group id

friendlyName

String

Group name

name

String

Group unique name/slug

members

Number

Amount of members in the group

storageConsumed

Number

Amount of storage consumed by the group in bytes

blind

Boolean

Do not allow basic read permission members to see each other

disableComments

Boolean

Disable group comments

disableEmailComments

Boolean

Disable comments in e-mail notifications

hideMemberDetails

Boolean

Hide sensitive member profile details such as email address, phone number, etc.

disableChat

Boolean

Disable chat functionality

dateCreated

Number

Creation date

lastModified

Number

Last modification date

owner

Object

Group creator

branding

Object

Group branding settings

memberDetails

Array

Group members detailed information

memberDetails[].expirationDate

Number

Member expiration date timestamp

memberDetails[].user

Object

Member user information

memberDetails[].permission

Number

Member permission setting

memberDetails[].dateCreated

Number

Member creation timestamp

masterConfigured

Boolean

true when master group is configured

subgroupCount

Number

Number of subgroups configured with this group

contextKey

Object

Context key

contextKey.id

Number

Context key ID

master

Number

Primary group id

components

Array

List of enabled components with configuration

integrations

Array

List of enabled group integrations

labels

Array

List of attached labels

notificationsConfiguration

Object

Group notifications configuration

notificationsConfiguration.newContent

String

Notify members about new content

notificationsConfiguration.overdueTasks

String

Notify members about overdue tasks

notificationsConfiguration.following

String

Disables all notifications for followed content

notificationsConfiguration.disableEmailComments

Boolean

Disables user content in email notifications such as comment text

watermarkConfiguration

Object

Group watermark configuration

watermarkConfiguration.enableWatermark

Boolean

Enable watermarking across group

watermarkConfiguration.enableWatermarkIp

Boolean

Show user IP on the watermark

watermarkConfiguration.enableWatermarkEmail

Boolean

Show user email on the watermark

watermarkConfiguration.enableWatermarkTimestamp

Boolean

Show the timestamp on the watermark

watermarkConfiguration.enableWatermarkCustomText

Boolean

Show custom text on the watermark

watermarkConfiguration.transparentWatermark

Boolean

Watermark text is more transparent

watermarkConfiguration.watermarkCustomText

String

Custom text to show on watermark

watermarkConfiguration.watermarkStyle

String

Custom text to show on watermark

components[].name

String

Enabled component name

components[].order

Number

Enabled component ordering index

components[].configuration

Object

Enabled component additional configuration properties

integrations[].name

String

Integration name

integrations[].configuration

Object

Integration configuration

owner.id

Number

User id

owner.name

String

Full name

owner.username

String

Username

owner.logo

Boolean

Profile picture is defined

owner.jobTitle

String

Job title

owner.lastModified

Number

Last modified date

memberDetails[].user.id

Number

User id

memberDetails[].user.name

String

Full name

memberDetails[].user.username

String

Username

memberDetails[].user.logo

Boolean

Profile picture is defined

memberDetails[].user.jobTitle

String

Job title

memberDetails[].user.lastModified

Number

Last modified date

memberDetails[].group.id

Number

User / profile id

memberDetails[].group.name

String

Group name slug, used for internal identification and URIs

memberDetails[].group.friendlyName

String

Full group name, visible to a user

7.6. Delete group

Table 170. /v3/accounts/{account}/groups/{group}
Parameter Description

account

Account/organisation id

group

Group id

HTTP
DELETE /v3/accounts/1/groups/1 HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/accounts/1/groups/1' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/groups/1' -i -X DELETE \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

7.7. Reorder groups

Changes group ordering for all users.

Table 171. /v3/accounts/{account}/groups/order
Parameter Description

account

Account/organisation id

HTTP
PUT /v3/accounts/1/groups/order HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 23

{"items": { "1": "0" }}
HTTPie
$ echo '{"items": { "1": "0" }}' | http PUT 'https://api.clinked.com/v3/accounts/1/groups/order' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/groups/order' -i -X PUT \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{"items": { "1": "0" }}'
Table 172. Request fields
Path Type Description

items

Object

Ordered map of space ids and the order value

Example of a success response
HTTP/1.1 200 OK

7.8. Export group

You can export all group components[files, tasks, ect.]. Content download link will be sent to authenticated user’s email.

Table 173. /v3/groups/{group}/export
Parameter Description

group

Group id

HTTP
POST /v3/groups/1/export HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 63

{"components":["pages","files","discussions","tasks","events"]}
HTTPie
$ echo '{"components":["pages","files","discussions","tasks","events"]}' | http POST 'https://api.clinked.com/v3/groups/1/export' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/export' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{"components":["pages","files","discussions","tasks","events"]}'
Table 174. Request fields
Path Type Description

components

Array

List of component names to export: pages, files, discussions, tasks, events

Example of a success response
HTTP/1.1 200 OK

7.9. Duplicate group

Creates a copy of existing group with a different name.

Table 175. /v3/accounts/{account}/groups
Parameter Description

account

Account/organisation id

HTTP
POST /v3/accounts/1/groups HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 61

{
    "friendlyName": "Duplicated group",
    "copyFrom": 1
}
HTTPie
$ echo '{
    "friendlyName": "Duplicated group",
    "copyFrom": 1
}' | http POST 'https://api.clinked.com/v3/accounts/1/groups' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/groups' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
    "friendlyName": "Duplicated group",
    "copyFrom": 1
}'
Table 176. Request fields
Path Type Description

friendlyName

String

Group name

copyFrom

Number

Group ID to duplicate

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1649

{
  "id" : 2,
  "name" : "explore_clinked",
  "friendlyName" : "Duplicated group",
  "contextKey" : {
    "id" : 100
  },
  "members" : 0,
  "storageConsumed" : 0,
  "blind" : false,
  "disableChat" : false,
  "disableComments" : false,
  "disableEmailComments" : false,
  "hideMemberDetails" : false,
  "dateCreated" : 1514764800000,
  "lastModified" : 1514764800000,
  "owner" : {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "mailKey" : null,
  "hash" : null,
  "branding" : {
    "headerColor" : "#ffffff",
    "textColor" : "#ff0000",
    "logo" : false,
    "background" : false,
    "alignment" : "left",
    "backgroundPositionX" : 50,
    "backgroundPositionY" : 50,
    "hideBackgroundGradient" : false,
    "hideLogoBackground" : false,
    "hideGroupName" : false
  },
  "memberDetails" : [ ],
  "components" : [ {
    "name" : "files",
    "order" : 0,
    "configuration" : { }
  }, {
    "name" : "pages",
    "order" : 1,
    "configuration" : { }
  }, {
    "name" : "events",
    "order" : 2,
    "configuration" : { }
  }, {
    "name" : "tasks",
    "order" : 3,
    "configuration" : { }
  } ],
  "integrations" : null,
  "master" : null,
  "masterConfigured" : false,
  "masterConfiguration" : null,
  "watermarkConfiguration" : {
    "enableWatermark" : false,
    "enableWatermarkIp" : false,
    "enableWatermarkEmail" : false,
    "enableWatermarkTimestamp" : false,
    "enableWatermarkCustomText" : false,
    "watermarkCustomText" : null,
    "watermarkStyle" : null,
    "transparentWatermark" : null
  }
}
Table 177. Definition of the returned fields
Path Type Description

id

Number

Group id

friendlyName

String

Group name

name

String

Group unique name/slug

members

Number

Amount of members in the group

storageConsumed

Number

Amount of storage consumed by the group in bytes

blind

Boolean

Do not allow basic read permission members to see each other

disableComments

Boolean

Disable group comments

disableEmailComments

Boolean

Disable comments in e-mail notifications

hideMemberDetails

Boolean

Hide sensitive member profile details such as email address, phone number, etc.

disableChat

Boolean

Disable chat functionality

dateCreated

Number

Creation date

lastModified

Number

Last modification date

owner

Object

Group creator

branding

Object

Group branding settings

memberDetails

Array

Group members detailed information

memberDetails[].expirationDate

Number

Member expiration date timestamp

memberDetails[].user

Object

Member user information

memberDetails[].permission

Number

Member permission setting

memberDetails[].dateCreated

Number

Member creation timestamp

masterConfigured

Boolean

true when master group is configured

subgroupCount

Number

Number of subgroups configured with this group

contextKey

Object

Context key

contextKey.id

Number

Context key ID

master

Number

Primary group id

components

Array

List of enabled components with configuration

integrations

Array

List of enabled group integrations

labels

Array

List of attached labels

notificationsConfiguration

Object

Group notifications configuration

notificationsConfiguration.newContent

String

Notify members about new content

notificationsConfiguration.overdueTasks

String

Notify members about overdue tasks

notificationsConfiguration.following

String

Disables all notifications for followed content

notificationsConfiguration.disableEmailComments

Boolean

Disables user content in email notifications such as comment text

watermarkConfiguration

Object

Group watermark configuration

watermarkConfiguration.enableWatermark

Boolean

Enable watermarking across group

watermarkConfiguration.enableWatermarkIp

Boolean

Show user IP on the watermark

watermarkConfiguration.enableWatermarkEmail

Boolean

Show user email on the watermark

watermarkConfiguration.enableWatermarkTimestamp

Boolean

Show the timestamp on the watermark

watermarkConfiguration.enableWatermarkCustomText

Boolean

Show custom text on the watermark

watermarkConfiguration.transparentWatermark

Boolean

Watermark text is more transparent

watermarkConfiguration.watermarkCustomText

String

Custom text to show on watermark

watermarkConfiguration.watermarkStyle

String

Custom text to show on watermark

components[].name

String

Enabled component name

components[].order

Number

Enabled component ordering index

components[].configuration

Object

Enabled component additional configuration properties

integrations[].name

String

Integration name

integrations[].configuration

Object

Integration configuration

owner.id

Number

User id

owner.name

String

Full name

owner.username

String

Username

owner.logo

Boolean

Profile picture is defined

owner.jobTitle

String

Job title

owner.lastModified

Number

Last modified date

memberDetails[].user.id

Number

User id

memberDetails[].user.name

String

Full name

memberDetails[].user.username

String

Username

memberDetails[].user.logo

Boolean

Profile picture is defined

memberDetails[].user.jobTitle

String

Job title

memberDetails[].user.lastModified

Number

Last modified date

memberDetails[].group.id

Number

User / profile id

memberDetails[].group.name

String

Group name slug, used for internal identification and URIs

memberDetails[].group.friendlyName

String

Full group name, visible to a user

7.10. Members

7.10.1. List members

Table 178. /v3/groups/{group}/members
Parameter Description

group

Group id

HTTP
GET /v3/groups/1/members?name=member&exclude=2&page=1 HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/members?name=member&exclude=2&page=1' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/members?name=member&exclude=2&page=1' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 179. Request parameters
Parameter Description

name

Member name

exclude

Member id’s to exclude

page

Page number

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 2805

{
  "items" : [ {
    "user" : {
      "id" : 1,
      "username" : "jack",
      "enabled" : true,
      "locked" : false,
      "name" : "Jack Bauer",
      "jobTitle" : "Marketing",
      "organisation" : "Clinked",
      "email" : "jack.bauer@clinked.com",
      "address" : "71 Pilgrim Avenue",
      "telephone" : "123456789",
      "other" : null,
      "logo" : false,
      "timeZone" : "UTC",
      "locale" : "en",
      "verifiedEmail" : false,
      "twoFactorAuthentication" : false,
      "twoFactorMode" : null,
      "lastModified" : 1514764800000,
      "dateFormat" : null,
      "twentyFourHourTimeFormat" : false,
      "lastActive" : null
    },
    "permission" : 16,
    "dateCreated" : 1713433463497,
    "expirationDate" : null,
    "group" : {
      "id" : 1,
      "name" : "explore_clinked",
      "friendlyName" : "Explore Clinked",
      "contextKey" : {
        "id" : 67
      },
      "members" : 0,
      "storageConsumed" : 0,
      "blind" : false,
      "disableChat" : false,
      "disableComments" : false,
      "disableEmailComments" : false,
      "hideMemberDetails" : false,
      "dateCreated" : 1514764800000,
      "lastModified" : 1514764800000,
      "owner" : {
        "id" : 1,
        "name" : "Jack Bauer",
        "username" : "jack",
        "logo" : false,
        "jobTitle" : "Marketing",
        "lastModified" : 1514764800000
      },
      "mailKey" : null,
      "hash" : null,
      "branding" : {
        "headerColor" : "#ffffff",
        "textColor" : "#ff0000",
        "logo" : false,
        "background" : false,
        "alignment" : "left",
        "backgroundPositionX" : 50,
        "backgroundPositionY" : 50,
        "hideBackgroundGradient" : false,
        "hideLogoBackground" : false,
        "hideGroupName" : false
      },
      "components" : [ {
        "name" : "files",
        "order" : 0,
        "configuration" : { }
      }, {
        "name" : "pages",
        "order" : 1,
        "configuration" : { }
      }, {
        "name" : "events",
        "order" : 2,
        "configuration" : { }
      }, {
        "name" : "tasks",
        "order" : 3,
        "configuration" : { }
      } ],
      "integrations" : null,
      "master" : null,
      "masterConfigured" : false,
      "masterConfiguration" : null,
      "watermarkConfiguration" : {
        "enableWatermark" : false,
        "enableWatermarkIp" : false,
        "enableWatermarkEmail" : false,
        "enableWatermarkTimestamp" : false,
        "enableWatermarkCustomText" : false,
        "watermarkCustomText" : null,
        "watermarkStyle" : null,
        "transparentWatermark" : null
      }
    }
  } ],
  "currentPage" : 1,
  "totalPages" : 1,
  "pageSize" : 25,
  "totalResults" : 1,
  "nextPage" : false,
  "previousPage" : false
}
Table 180. Definition of the returned fields
Path Type Description

items[].user.id

Number

User id

items[].user.name

String

Full name

items[].user.username

String

Username

items[].user.logo

Boolean

Profile picture is defined

items[].user.jobTitle

String

Job title

items[].user.lastModified

Number

Last modified date

items[].user.enabled

Boolean

Is user enabled

items[].user.locked

Boolean

Is user locked

items[].user.organisation

String

Organisation name

items[].user.email

String

Email address

items[].user.address

String

Address

items[].user.telephone

String

Phone number

items[].user.other

String

Optional other information

items[].user.timeZone

String

Time zone ID

items[].user.locale

String

Locale

items[].user.verifiedEmail

Boolean

Is email verified

items[].user.twoFactorAuthentication

Boolean

Is 2FA enabled

items[].user.twoFactorMode

String

2FA mode: [AUTHENTICATOR, SMS, EMAIL]

items[].user.twentyFourHourTimeFormat

Boolean

Time format preference - 24hr or 12hr format

items[].user.lastActive

Number

Date the user was last active

items[].user.dateFormat

Boolean

Date format preference - YMD (Year-Month-Day), MDY (Month/Day/Year) or DMY(Day/Month/Year)

items[].group.id

Number

Group id

items[].group.friendlyName

String

Group name

items[].group.name

String

Group unique name/slug

items[].group.members

Number

Amount of members in the group

items[].group.storageConsumed

Number

Amount of storage consumed by the group in bytes

items[].group.blind

Boolean

Do not allow basic read permission members to see each other

items[].group.disableComments

Boolean

Disable group comments

items[].group.disableEmailComments

Boolean

Disable comments in e-mail notifications

items[].group.hideMemberDetails

Boolean

Hide sensitive member profile details such as email address, phone number, etc.

items[].group.disableChat

Boolean

Disable chat functionality

items[].group.dateCreated

Number

Creation date

items[].group.lastModified

Number

Last modification date

items[].group.owner

Object

Group creator

items[].group.branding

Object

Group branding settings

items[].group.memberDetails

Array

Group members detailed information

items[].group.memberDetails[].expirationDate

Number

Member expiration date timestamp

items[].group.memberDetails[].user

Object

Member user information

items[].group.memberDetails[].permission

Number

Member permission setting

items[].group.memberDetails[].dateCreated

Number

Member creation timestamp

items[].group.masterConfigured

Boolean

true when master group is configured

items[].group.subgroupCount

Number

Number of subgroups configured with this group

items[].group.contextKey

Object

Context key

items[].group.contextKey.id

Number

Context key ID

items[].group.master

Number

Primary group id

items[].group.components

Array

List of enabled components with configuration

items[].group.integrations

Array

List of enabled group integrations

items[].group.labels

Array

List of attached labels

items[].group.notificationsConfiguration

Object

Group notifications configuration

items[].group.notificationsConfiguration.newContent

String

Notify members about new content

items[].group.notificationsConfiguration.overdueTasks

String

Notify members about overdue tasks

items[].group.notificationsConfiguration.following

String

Disables all notifications for followed content

items[].group.notificationsConfiguration.disableEmailComments

Boolean

Disables user content in email notifications such as comment text

items[].group.watermarkConfiguration

Object

Group watermark configuration

items[].group.watermarkConfiguration.enableWatermark

Boolean

Enable watermarking across group

items[].group.watermarkConfiguration.enableWatermarkIp

Boolean

Show user IP on the watermark

items[].group.watermarkConfiguration.enableWatermarkEmail

Boolean

Show user email on the watermark

items[].group.watermarkConfiguration.enableWatermarkTimestamp

Boolean

Show the timestamp on the watermark

items[].group.watermarkConfiguration.enableWatermarkCustomText

Boolean

Show custom text on the watermark

items[].group.watermarkConfiguration.transparentWatermark

Boolean

Watermark text is more transparent

items[].group.watermarkConfiguration.watermarkCustomText

String

Custom text to show on watermark

items[].group.watermarkConfiguration.watermarkStyle

String

Custom text to show on watermark

items[].group.components[].name

String

Enabled component name

items[].group.components[].order

Number

Enabled component ordering index

items[].group.components[].configuration

Object

Enabled component additional configuration properties

items[].group.integrations[].name

String

Integration name

items[].group.integrations[].configuration

Object

Integration configuration

items[].group.owner.id

Number

User id

items[].group.owner.name

String

Full name

items[].group.owner.username

String

Username

items[].group.owner.logo

Boolean

Profile picture is defined

items[].group.owner.jobTitle

String

Job title

items[].group.owner.lastModified

Number

Last modified date

items[].group.memberDetails[].user.id

Number

User id

items[].group.memberDetails[].user.name

String

Full name

items[].group.memberDetails[].user.username

String

Username

items[].group.memberDetails[].user.logo

Boolean

Profile picture is defined

items[].group.memberDetails[].user.jobTitle

String

Job title

items[].group.memberDetails[].user.lastModified

Number

Last modified date

items[].group.memberDetails[].group.id

Number

User / profile id

items[].group.memberDetails[].group.name

String

Group name slug, used for internal identification and URIs

items[].group.memberDetails[].group.friendlyName

String

Full group name, visible to a user

items[].permission

double

Group member permission

items[].dateCreated

double

Group member creation timestamp

items[].expirationDate

double

Group member expiration timestamp

items

Array

Page items

currentPage

Number

Current page number

pageSize

Number

Current page size

nextPage

Boolean

Next page available

previousPage

Boolean

Previous page available

totalPages

Number

Amount of available pages

totalResults

Number

Total results

7.10.2. Get member details

Table 181. /v3/groups/{group}/members/{member}
Parameter Description

group

Group id

member

Member id

HTTP
GET /v3/groups/1/members/1 HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/members/1' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/members/1' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 2488

{
  "user" : {
    "id" : 1,
    "username" : "jack",
    "enabled" : true,
    "locked" : false,
    "name" : "Jack Bauer",
    "jobTitle" : "Marketing",
    "organisation" : "Clinked",
    "email" : "jack.bauer@clinked.com",
    "address" : "71 Pilgrim Avenue",
    "telephone" : "123456789",
    "other" : null,
    "logo" : false,
    "timeZone" : "UTC",
    "locale" : "en",
    "verifiedEmail" : false,
    "twoFactorAuthentication" : false,
    "twoFactorMode" : null,
    "lastModified" : 1514764800000,
    "dateFormat" : null,
    "twentyFourHourTimeFormat" : false,
    "lastActive" : null
  },
  "permission" : 16,
  "dateCreated" : 1713433463402,
  "expirationDate" : null,
  "restrictedApps" : [ ],
  "group" : {
    "id" : 1,
    "name" : "explore_clinked",
    "friendlyName" : "Explore Clinked",
    "contextKey" : {
      "id" : 964
    },
    "members" : 0,
    "storageConsumed" : 0,
    "blind" : false,
    "disableChat" : false,
    "disableComments" : false,
    "disableEmailComments" : false,
    "hideMemberDetails" : false,
    "dateCreated" : 1514764800000,
    "lastModified" : 1514764800000,
    "owner" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "mailKey" : null,
    "hash" : null,
    "branding" : {
      "headerColor" : "#ffffff",
      "textColor" : "#ff0000",
      "logo" : false,
      "background" : false,
      "alignment" : "left",
      "backgroundPositionX" : 50,
      "backgroundPositionY" : 50,
      "hideBackgroundGradient" : false,
      "hideLogoBackground" : false,
      "hideGroupName" : false
    },
    "components" : [ {
      "name" : "files",
      "order" : 0,
      "configuration" : { }
    }, {
      "name" : "pages",
      "order" : 1,
      "configuration" : { }
    }, {
      "name" : "events",
      "order" : 2,
      "configuration" : { }
    }, {
      "name" : "tasks",
      "order" : 3,
      "configuration" : { }
    } ],
    "integrations" : null,
    "master" : null,
    "masterConfigured" : false,
    "masterConfiguration" : null,
    "watermarkConfiguration" : {
      "enableWatermark" : false,
      "enableWatermarkIp" : false,
      "enableWatermarkEmail" : false,
      "enableWatermarkTimestamp" : false,
      "enableWatermarkCustomText" : false,
      "watermarkCustomText" : null,
      "watermarkStyle" : null,
      "transparentWatermark" : null
    }
  }
}
Table 182. Definition of the returned fields
Path Type Description

user.id

Number

User id

user.name

String

Full name

user.username

String

Username

user.logo

Boolean

Profile picture is defined

user.jobTitle

String

Job title

user.lastModified

Number

Last modified date

user.enabled

Boolean

Is user enabled

user.locked

Boolean

Is user locked

user.organisation

String

Organisation name

user.email

String

Email address

user.address

String

Address

user.telephone

String

Phone number

user.other

String

Optional other information

user.timeZone

String

Time zone ID

user.locale

String

Locale

user.verifiedEmail

Boolean

Is email verified

user.twoFactorAuthentication

Boolean

Is 2FA enabled

user.twoFactorMode

String

2FA mode: [AUTHENTICATOR, SMS, EMAIL]

user.twentyFourHourTimeFormat

Boolean

Time format preference - 24hr or 12hr format

user.lastActive

Number

Date the user was last active

user.dateFormat

Boolean

Date format preference - YMD (Year-Month-Day), MDY (Month/Day/Year) or DMY(Day/Month/Year)

group.id

Number

Group id

group.friendlyName

String

Group name

group.name

String

Group unique name/slug

group.members

Number

Amount of members in the group

group.storageConsumed

Number

Amount of storage consumed by the group in bytes

group.blind

Boolean

Do not allow basic read permission members to see each other

group.disableComments

Boolean

Disable group comments

group.disableEmailComments

Boolean

Disable comments in e-mail notifications

group.hideMemberDetails

Boolean

Hide sensitive member profile details such as email address, phone number, etc.

group.disableChat

Boolean

Disable chat functionality

group.dateCreated

Number

Creation date

group.lastModified

Number

Last modification date

group.owner

Object

Group creator

group.branding

Object

Group branding settings

group.memberDetails

Array

Group members detailed information

group.memberDetails[].expirationDate

Number

Member expiration date timestamp

group.memberDetails[].user

Object

Member user information

group.memberDetails[].permission

Number

Member permission setting

group.memberDetails[].dateCreated

Number

Member creation timestamp

group.masterConfigured

Boolean

true when master group is configured

group.subgroupCount

Number

Number of subgroups configured with this group

group.contextKey

Object

Context key

group.contextKey.id

Number

Context key ID

group.master

Number

Primary group id

group.components

Array

List of enabled components with configuration

group.integrations

Array

List of enabled group integrations

group.labels

Array

List of attached labels

group.notificationsConfiguration

Object

Group notifications configuration

group.notificationsConfiguration.newContent

String

Notify members about new content

group.notificationsConfiguration.overdueTasks

String

Notify members about overdue tasks

group.notificationsConfiguration.following

String

Disables all notifications for followed content

group.notificationsConfiguration.disableEmailComments

Boolean

Disables user content in email notifications such as comment text

group.watermarkConfiguration

Object

Group watermark configuration

group.watermarkConfiguration.enableWatermark

Boolean

Enable watermarking across group

group.watermarkConfiguration.enableWatermarkIp

Boolean

Show user IP on the watermark

group.watermarkConfiguration.enableWatermarkEmail

Boolean

Show user email on the watermark

group.watermarkConfiguration.enableWatermarkTimestamp

Boolean

Show the timestamp on the watermark

group.watermarkConfiguration.enableWatermarkCustomText

Boolean

Show custom text on the watermark

group.watermarkConfiguration.transparentWatermark

Boolean

Watermark text is more transparent

group.watermarkConfiguration.watermarkCustomText

String

Custom text to show on watermark

group.watermarkConfiguration.watermarkStyle

String

Custom text to show on watermark

group.components[].name

String

Enabled component name

group.components[].order

Number

Enabled component ordering index

group.components[].configuration

Object

Enabled component additional configuration properties

group.integrations[].name

String

Integration name

group.integrations[].configuration

Object

Integration configuration

group.owner.id

Number

User id

group.owner.name

String

Full name

group.owner.username

String

Username

group.owner.logo

Boolean

Profile picture is defined

group.owner.jobTitle

String

Job title

group.owner.lastModified

Number

Last modified date

group.memberDetails[].user.id

Number

User id

group.memberDetails[].user.name

String

Full name

group.memberDetails[].user.username

String

Username

group.memberDetails[].user.logo

Boolean

Profile picture is defined

group.memberDetails[].user.jobTitle

String

Job title

group.memberDetails[].user.lastModified

Number

Last modified date

group.memberDetails[].group.id

Number

User / profile id

group.memberDetails[].group.name

String

Group name slug, used for internal identification and URIs

group.memberDetails[].group.friendlyName

String

Full group name, visible to a user

permission

double

Group member permission

dateCreated

double

Group member creation timestamp

expirationDate

double

Group member expiration timestamp

restrictedApps

2003

Array of restricted app client id’s

7.10.3. Update member

Update group permission or date till which member can access group.

Table 183. /v3/groups/{group}/members/{member}
Parameter Description

group

Group id

member

Member id

HTTP
PATCH /v3/groups/1/members/1 HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 38

{"permission":4,"expirationDate":null}
HTTPie
$ echo '{"permission":4,"expirationDate":null}' | http PATCH 'https://api.clinked.com/v3/groups/1/members/1' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/members/1' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{"permission":4,"expirationDate":null}'
Table 184. Request fields
Path Type Description

permission

double

New permission

expirationDate

double

Expiration date if user is a temporary member

Table 185. Definition of the returned fields
Path Type Description

user.id

Number

User id

user.name

String

Full name

user.username

String

Username

user.logo

Boolean

Profile picture is defined

user.jobTitle

String

Job title

user.lastModified

Number

Last modified date

user.enabled

Boolean

Is user enabled

user.locked

Boolean

Is user locked

user.organisation

String

Organisation name

user.email

String

Email address

user.address

String

Address

user.telephone

String

Phone number

user.other

String

Optional other information

user.timeZone

String

Time zone ID

user.locale

String

Locale

user.verifiedEmail

Boolean

Is email verified

user.twoFactorAuthentication

Boolean

Is 2FA enabled

user.twoFactorMode

String

2FA mode: [AUTHENTICATOR, SMS, EMAIL]

user.twentyFourHourTimeFormat

Boolean

Time format preference - 24hr or 12hr format

user.lastActive

Number

Date the user was last active

user.dateFormat

Boolean

Date format preference - YMD (Year-Month-Day), MDY (Month/Day/Year) or DMY(Day/Month/Year)

group.id

Number

Group id

group.friendlyName

String

Group name

group.name

String

Group unique name/slug

group.members

Number

Amount of members in the group

group.storageConsumed

Number

Amount of storage consumed by the group in bytes

group.blind

Boolean

Do not allow basic read permission members to see each other

group.disableComments

Boolean

Disable group comments

group.disableEmailComments

Boolean

Disable comments in e-mail notifications

group.hideMemberDetails

Boolean

Hide sensitive member profile details such as email address, phone number, etc.

group.disableChat

Boolean

Disable chat functionality

group.dateCreated

Number

Creation date

group.lastModified

Number

Last modification date

group.owner

Object

Group creator

group.branding

Object

Group branding settings

group.memberDetails

Array

Group members detailed information

group.memberDetails[].expirationDate

Number

Member expiration date timestamp

group.memberDetails[].user

Object

Member user information

group.memberDetails[].permission

Number

Member permission setting

group.memberDetails[].dateCreated

Number

Member creation timestamp

group.masterConfigured

Boolean

true when master group is configured

group.subgroupCount

Number

Number of subgroups configured with this group

group.contextKey

Object

Context key

group.contextKey.id

Number

Context key ID

group.master

Number

Primary group id

group.components

Array

List of enabled components with configuration

group.integrations

Array

List of enabled group integrations

group.labels

Array

List of attached labels

group.notificationsConfiguration

Object

Group notifications configuration

group.notificationsConfiguration.newContent

String

Notify members about new content

group.notificationsConfiguration.overdueTasks

String

Notify members about overdue tasks

group.notificationsConfiguration.following

String

Disables all notifications for followed content

group.notificationsConfiguration.disableEmailComments

Boolean

Disables user content in email notifications such as comment text

group.watermarkConfiguration

Object

Group watermark configuration

group.watermarkConfiguration.enableWatermark

Boolean

Enable watermarking across group

group.watermarkConfiguration.enableWatermarkIp

Boolean

Show user IP on the watermark

group.watermarkConfiguration.enableWatermarkEmail

Boolean

Show user email on the watermark

group.watermarkConfiguration.enableWatermarkTimestamp

Boolean

Show the timestamp on the watermark

group.watermarkConfiguration.enableWatermarkCustomText

Boolean

Show custom text on the watermark

group.watermarkConfiguration.transparentWatermark

Boolean

Watermark text is more transparent

group.watermarkConfiguration.watermarkCustomText

String

Custom text to show on watermark

group.watermarkConfiguration.watermarkStyle

String

Custom text to show on watermark

group.components[].name

String

Enabled component name

group.components[].order

Number

Enabled component ordering index

group.components[].configuration

Object

Enabled component additional configuration properties

group.integrations[].name

String

Integration name

group.integrations[].configuration

Object

Integration configuration

group.owner.id

Number

User id

group.owner.name

String

Full name

group.owner.username

String

Username

group.owner.logo

Boolean

Profile picture is defined

group.owner.jobTitle

String

Job title

group.owner.lastModified

Number

Last modified date

group.memberDetails[].user.id

Number

User id

group.memberDetails[].user.name

String

Full name

group.memberDetails[].user.username

String

Username

group.memberDetails[].user.logo

Boolean

Profile picture is defined

group.memberDetails[].user.jobTitle

String

Job title

group.memberDetails[].user.lastModified

Number

Last modified date

group.memberDetails[].group.id

Number

User / profile id

group.memberDetails[].group.name

String

Group name slug, used for internal identification and URIs

group.memberDetails[].group.friendlyName

String

Full group name, visible to a user

permission

double

Group member permission

dateCreated

double

Group member creation timestamp

expirationDate

double

Group member expiration timestamp

7.10.4. Remove member

Table 186. /v3/groups/{group}/members/{member}
Parameter Description

group

Group id

member

Member id

HTTP
DELETE /v3/groups/1/members/1 HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/groups/1/members/1' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/members/1' -i -X DELETE \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

7.11. Invites

This section shows how admins can manage group invitations.

7.11.1. List invites

Table 187. /v3/groups/{group}/invites
Parameter Description

group

Group id

HTTP
GET /v3/groups/1/invites HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/invites' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/invites' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 188. Request parameters
Parameter Description

startsWith

Filter by name that starts with text

name

Filter by name

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 202

[ {
  "id" : 1,
  "email" : "jack.bauer@clinked.com",
  "permission" : 1,
  "expirationDate" : 1713433464196,
  "inviteKey" : "79a759ee-a39e-4719-ba9f-96d0c8d0aa1f",
  "lastModified" : 1713433464196
} ]
Table 189. Definition of the returned fields
Path Type Description

[].id

Number

Invite id

[].email

String

Email address

[].permission

Number

Group permission

[].expirationDate

Number

Membership expiration date

[].inviteKey

String

Invitation key

[].lastModified

Number

Last modified date

7.11.2. Get invite details

Table 190. /v3/groups/{group}/invites/{invite}
Parameter Description

group

Group id

invite

Invite id

HTTP
GET /v3/groups/1/invites/1 HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/invites/1' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/invites/1' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 198

{
  "id" : 1,
  "email" : "jack.bauer@clinked.com",
  "permission" : 1,
  "expirationDate" : 1713433464491,
  "inviteKey" : "8ea38c84-009c-417d-88a7-08126bd94e6b",
  "lastModified" : 1713433464491
}
Table 191. Definition of the returned fields
Path Type Description

id

Number

Invite id

email

String

Email address

permission

Number

Group permission

expirationDate

Number

Membership expiration date

inviteKey

String

Invitation key

lastModified

Number

Last modified date

7.11.3. Invite a new member

Invites a new member to a group.

Table 192. /v3/groups/{group}/invites
Parameter Description

group

Group id

HTTP
POST /v3/groups/1/invites HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 236

{"emails":["jack@clinked.com","bob@clinked.com"],"message":"Accepting this invite means that you will be able to create & share content, manage tasks and schedule events in a secure environment.","expirationTime":3600000,"permission":4}
HTTPie
$ echo '{"emails":["jack@clinked.com","bob@clinked.com"],"message":"Accepting this invite means that you will be able to create & share content, manage tasks and schedule events in a secure environment.","expirationTime":3600000,"permission":4}' | http POST 'https://api.clinked.com/v3/groups/1/invites' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/invites' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{"emails":["jack@clinked.com","bob@clinked.com"],"message":"Accepting this invite means that you will be able to create & share content, manage tasks and schedule events in a secure environment.","expirationTime":3600000,"permission":4}'
Table 193. Request fields
Path Type Description

emails

Array

List of email addresses to invite

message

String

Message to send with an invite

expirationTime

Number

Expiration time in milliseconds. This is a relative time, not a timestamp.

permission

Number

Group permission

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 389

[ {
  "id" : 1,
  "email" : "jack@clinked.com",
  "permission" : 4,
  "expirationDate" : 1713437064334,
  "inviteKey" : "53c6a814-eb71-440b-a7b3-b7a49b32a512",
  "lastModified" : 1713433464335
}, {
  "id" : 2,
  "email" : "bob@clinked.com",
  "permission" : 4,
  "expirationDate" : 1713437064335,
  "inviteKey" : "9b5b8a53-beab-4e39-89e4-3dfb803d0007",
  "lastModified" : 1713433464335
} ]
Table 194. Definition of the returned fields
Path Type Description

[].id

Number

Invite id

[].email

String

Email address

[].permission

Number

Group permission

[].expirationDate

Number

Membership expiration date

[].inviteKey

String

Invitation key

[].lastModified

Number

Last modified date

7.11.4. Update invite

Partially updates an invitation.

Table 195. /v3/groups/{group}/invites/{invite}
Parameter Description

group

Group id

invite

Invite id

HTTP
PATCH /v3/groups/1/invites/1 HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 17

{"permission":16}
HTTPie
$ echo '{"permission":16}' | http PATCH 'https://api.clinked.com/v3/groups/1/invites/1' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/invites/1' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{"permission":16}'
Table 196. Request fields
Path Type Description

permission

Number

Permission mask

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 199

{
  "id" : 1,
  "email" : "jack.bauer@clinked.com",
  "permission" : 16,
  "expirationDate" : 1713433464525,
  "inviteKey" : "7ca113f8-83e7-4ef8-bfd5-ebf5c943e9c7",
  "lastModified" : 1713433464525
}
Table 197. Definition of the returned fields
Path Type Description

id

Number

Invite id

email

String

Email address

permission

Number

Group permission

expirationDate

Number

Membership expiration date

inviteKey

String

Invitation key

lastModified

Number

Last modified date

7.11.5. Delete an invitation

Table 198. /v3/groups/{group}/invites/{invite}
Parameter Description

group

Group id

invite

Invite id

HTTP
DELETE /v3/groups/1/invites/1 HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/groups/1/invites/1' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/invites/1' -i -X DELETE \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

7.12. Group trash

Group trash contains removed group content. It can be used to restore removed data or delete it permanently to free up available space.

7.12.1. List trash items

Table 199. /v3/groups/{group}/trash
Parameter Description

group

Group id

HTTP
GET /v3/groups/1/trash?page=1 HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/trash?page=1' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/trash?page=1' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 200. Request parameters
Parameter Description

page

Page number to load

orderBy

Order field

ascending

Ascending order direction

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 443

{
  "items" : [ {
    "id" : 1,
    "type" : "page",
    "friendlyName" : "Home Page",
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "dateDeleted" : 1713433467023
  } ],
  "currentPage" : 1,
  "totalPages" : 1,
  "pageSize" : 25,
  "totalResults" : 1,
  "nextPage" : false,
  "previousPage" : false
}
Table 201. Definition of the returned fields
Path Type Description

currentPage

Number

Current page

pageSize

Number

Entries per page

nextPage

Boolean

Next page exists

previousPage

Boolean

Previous page exists

totalPages

Number

Total amount of available pages

totalResults

Number

Total amount of results

items

Array

List of trash items

items[].id

Number

Trash entry id

items[].dateDeleted

Number

Date of removal

items[].user

Object

User who removed an entity

items[].id

Number

File id

items[].type

String

Component entry content type

items[].friendlyName

String

Component entry full name

items[].user

Object

User who removed it

items[].dateDeleted

Number

Removal timestamp

items[].user.id

Number

User / profile id

items[].user.name

String

Full name

items[].user.username

String

Username

items[].user.logo

Boolean

Avatar available

items[].user.jobTitle

String

Job title

items[].user.lastModified

Number

Last profile update date

7.12.2. Permanently delete trash item

You can’t undo this action. Once you delete an item from trash bin, it will be lost forever.
Table 202. /v3/groups/{group}/trash/{item}
Parameter Description

group

Group id

item

Item id

HTTP
DELETE /v3/groups/1/trash/1 HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/groups/1/trash/1' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/trash/1' -i -X DELETE \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

7.12.3. Permanently delete multiple trash items

Permanently deletes multiple trash items in one request.

You can’t undo this action. Once you delete an item from trash bin, it will be lost forever.
Table 203. /v3/groups/{group}/trash
Parameter Description

group

Group id

HTTP
POST /v3/groups/1/trash HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 57

{"action": "delete", "items":[1,2,3], "processAll":false}
HTTPie
$ echo '{"action": "delete", "items":[1,2,3], "processAll":false}' | http POST 'https://api.clinked.com/v3/groups/1/trash' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/trash' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{"action": "delete", "items":[1,2,3], "processAll":false}'
Table 204. Request fields
Path Type Description

action

String

Restore or delete

items

Array

List of trash entry id to delete

processAll

Boolean

Should delete all items in trash

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 922

{
  "success" : [ {
    "id" : 1,
    "type" : "page",
    "friendlyName" : "Home Page",
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "dateDeleted" : 1713433467146
  }, {
    "id" : 2,
    "type" : "page",
    "friendlyName" : "Home Page",
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "dateDeleted" : 1713433467147
  }, {
    "id" : 3,
    "type" : "page",
    "friendlyName" : "Home Page",
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "dateDeleted" : 1713433467155
  } ],
  "error" : [ ]
}
Table 205. Definition of the returned fields
Path Type Description

success

Array

List of deleted item id

error

Array

Amount of item ids that were failed to delete

success[].id

Number

File id

success[].type

String

Component entry content type

success[].friendlyName

String

Component entry full name

success[].user

Object

User who removed it

success[].dateDeleted

Number

Removal timestamp

success[].user.id

Number

User / profile id

success[].user.name

String

Full name

success[].user.username

String

Username

success[].user.logo

Boolean

Avatar available

success[].user.jobTitle

String

Job title

success[].user.lastModified

Number

Last profile update date

7.12.4. Restore trash item

Restores trash item back to its original location.

Table 206. /v3/groups/{group}/trash
Parameter Description

group

Group id

HTTP
POST /v3/groups/1/trash HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 38

{"action": "restore", "items":[1,2,3]}
HTTPie
$ echo '{"action": "restore", "items":[1,2,3]}' | http POST 'https://api.clinked.com/v3/groups/1/trash' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/trash' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{"action": "restore", "items":[1,2,3]}'
Table 207. Request fields
Path Type Description

action

String

Restore or delete

items

Array

List of trash entry id to restore

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 922

{
  "success" : [ {
    "id" : 1,
    "type" : "page",
    "friendlyName" : "Home Page",
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "dateDeleted" : 1713433466972
  }, {
    "id" : 2,
    "type" : "page",
    "friendlyName" : "Home Page",
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "dateDeleted" : 1713433466973
  }, {
    "id" : 3,
    "type" : "page",
    "friendlyName" : "Home Page",
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "dateDeleted" : 1713433466975
  } ],
  "error" : [ ]
}
Table 208. Definition of the returned fields
Path Type Description

success

Array

Restored items

error

Array

Items that were failed to restore

success[].id

Number

File id

success[].type

String

Component entry content type

success[].friendlyName

String

Component entry full name

success[].user

Object

User who removed it

success[].dateDeleted

Number

Removal timestamp

success[].user.id

Number

User / profile id

success[].user.name

String

Full name

success[].user.username

String

Username

success[].user.logo

Boolean

Avatar available

success[].user.jobTitle

String

Job title

success[].user.lastModified

Number

Last profile update date

7.12.5. Trash progress

After removing all items from trash, with "processAll" You can follow the progress.

Table 209. /v3/groups/{group}/trash/progress
Parameter Description

group

Group id

HTTP
GET /v3/groups/1/trash/progress HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/trash/progress' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/trash/progress' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 24

{
  "progress" : 18.18
}
Table 210. Definition of the returned fields
Path Type Description

progress

Number

Progress percentage

7.13. Branding

7.13.1. Update/Create branding

Table 211. /v3/groups/{group}/branding
Parameter Description

group

Group id

HTTP
POST /v3/groups/1/branding HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 245

{"logoFile":null,"backgroundFile":null,"logo":false,"background":false,"headerColor":"#27ae60","backgroundPositionX":50,"backgroundPositionY":50,"alignment":"center","hideBackgroundGradient":false,"hideLogoBackground":true,"hideGroupName":false}
HTTPie
$ echo '{"logoFile":null,"backgroundFile":null,"logo":false,"background":false,"headerColor":"#27ae60","backgroundPositionX":50,"backgroundPositionY":50,"alignment":"center","hideBackgroundGradient":false,"hideLogoBackground":true,"hideGroupName":false}' | http POST 'https://api.clinked.com/v3/groups/1/branding' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/branding' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{"logoFile":null,"backgroundFile":null,"logo":false,"background":false,"headerColor":"#27ae60","backgroundPositionX":50,"backgroundPositionY":50,"alignment":"center","hideBackgroundGradient":false,"hideLogoBackground":true,"hideGroupName":false}'
Table 212. Request fields
Path Type Description

headerColor

String

Header color

logo

Boolean

Has custom logo

background

Boolean

Has custom background

alignment

String

Logo alignment

backgroundPositionX

Number

Background X position

backgroundPositionY

Number

Background Y position

hideBackgroundGradient

Boolean

Is background gradient hidden

hideLogoBackground

Boolean

Is logo gradient hidden

hideGroupName

Boolean

Is group name hidden

logoFile

Number

Temp file id

backgroundFile

Number

Temp file id

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 279

{
  "headerColor" : "#dfdfdf",
  "textColor" : "#000000",
  "logo" : false,
  "background" : false,
  "alignment" : "left",
  "backgroundPositionX" : 50,
  "backgroundPositionY" : 50,
  "hideBackgroundGradient" : false,
  "hideLogoBackground" : false,
  "hideGroupName" : false
}
Table 213. Definition of the returned fields
Path Type Description

headerColor

String

Header color

textColor

String

Text color

logo

Boolean

Has custom logo

background

Boolean

Has custom background

alignment

String

Logo alignment

backgroundPositionX

Number

Background X position

backgroundPositionY

Number

Background Y position

hideBackgroundGradient

Boolean

Is background gradient hidden

hideLogoBackground

Boolean

Is logo gradient hidden

hideGroupName

Boolean

Is group name hidden

7.14. Components

7.14.1. List components

Table 214. /v3/accounts/{organisation}/groups/{group}/components
Parameter Description

organisation

Organisation id

group

Group name

HTTP
GET /v3/accounts/1/groups/1/components HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/accounts/1/groups/1/components' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/accounts/1/groups/1/components' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 144

[ {
  "name" : "files",
  "beta" : false,
  "title" : "Files",
  "description" : "Share and track versions of files",
  "iconName" : "files"
} ]
Table 215. Definition of the returned fields
Path Type Description

[]name

String

Component name

[]beta

Boolean

Component release status is beta

[]title

String

Component title

[]description

String

Component description

[]iconName

String

Component icon name

7.15. Group labels

The Group Labeling feature enables users to create and categorize groups by adding custom labels. This enhances organization and accessibility, allowing users to quickly identify and manage their groups, making the overall experience more streamlined and user-friendly.

This section shows how to create and manage your group labels.

7.15.1. List labels

Returns list of labels.

Table 216. /v3/groups/{group}/labels
Parameter Description

group

Group id

HTTP
GET /v3/groups/1/labels HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/labels' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/labels' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 58

[ {
  "id" : 1,
  "name" : "dummyLabel",
  "order" : 0
} ]
Table 217. Definition of the returned fields
Path Type Description

[]id

Number

Label id

[]name

String

Label name

[]order

Number

Order number

7.15.2. Attach label

Attach label to group.

Table 218. /v3/groups/{group}/labels
Parameter Description

group

Group id

HTTP
POST /v3/groups/1/labels HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 36

{"items":[{"label":1,"order":null}]}
HTTPie
$ echo '{"items":[{"label":1,"order":null}]}' | http POST 'https://api.clinked.com/v3/groups/1/labels' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/labels' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{"items":[{"label":1,"order":null}]}'
Table 219. Request fields
Path Type Description

items

Array

List of order entries

items[].label

Number

Label id

items[].order

Number

Order

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 105

{
  "attached" : [ {
    "id" : 1,
    "name" : "dummyLabel",
    "order" : 0
  } ],
  "failures" : [ ]
}
Table 220. Definition of the returned fields
Path Type Description

attached[]id

Number

Label id

attached[]name

String

Label name

attached[]order

Number

Order number

failures[]

Array

Failed labels, same fields as attached ones

7.15.3. Remove label

Removes label from group.

Table 221. /v3/groups/{group}/labels/{label}
Parameter Description

group

Group id

label

Label id

HTTP
DELETE /v3/groups/1/labels/1 HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/groups/1/labels/1' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/labels/1' -i -X DELETE \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

7.15.4. Remove all labels

Removes all labels from group

Table 222. /v3/groups/{group}/labels
Parameter Description

group

Group id

HTTP
DELETE /v3/groups/1/labels HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/groups/1/labels' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/labels' -i -X DELETE \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

7.16. Announcements

For more information about the feature itself, see our Help Center page.

7.16.1. List announcements

Table 223. /v3/groups/{group}/announcements
Parameter Description

group

Group id

HTTP
GET /v3/groups/1/announcements HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/announcements' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/announcements' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 130

[ {
  "id" : "xyz",
  "title" : "title",
  "body" : "body",
  "colour" : "success",
  "propagate" : false,
  "inherit" : false
} ]
Table 224. Definition of the returned fields
Path Type Description

[].id

String

Announcement id

[].title

String

Announcement title

[].body

String

Announcement body

[].colour

String

Announcement colour

[].propagate

Boolean

Propagate the announcement as the default value

[].inherit

Boolean

The announcement is inherited from account level

7.16.2. Single announcement

Table 225. /v3/groups/{group}/announcements
Parameter Description

group

Group id

HTTP
GET /v3/groups/1/announcements?id=xyz HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/announcements?id=xyz' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/announcements?id=xyz' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 110

{
  "title" : "title",
  "body" : "body",
  "colour" : "success",
  "propagate" : false,
  "inherit" : false
}
Table 226. Definition of the returned fields
Path Type Description

.id

String

Announcement id

.title

String

Announcement title

.body

String

Announcement body

.colour

String

Announcement colour

.propagate

Boolean

Propagate the announcement as the default value

.inherit

Boolean

The announcement is inherited from account level

7.16.3. Create/Update announcement

Table 227. /v3/groups/{group}/announcements
Parameter Description

group

Group id

HTTP
POST /v3/groups/1/announcements HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 66

{"id": "test","title": "title","body": "body","colour": "success"}
HTTPie
$ echo '{"id": "test","title": "title","body": "body","colour": "success"}' | http POST 'https://api.clinked.com/v3/groups/1/announcements' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/announcements' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{"id": "test","title": "title","body": "body","colour": "success"}'
Table 228. Request parameters
Parameter Description

id

Specific announcement by the ID (same as dashboard widget id)

Table 229. Request fields
Path Type Description

id

String

Announcement id

title

String

Announcement title

body

String

Announcement body

colour

String

Announcement colour

Example of a success response
{
  "id" : "test",
  "title" : "title",
  "body" : "body",
  "colour" : "success",
  "propagate" : false,
  "inherit" : false
}
Table 230. Definition of the returned fields
Path Type Description

.id

String

Announcement id

.title

String

Announcement title

.body

String

Announcement body

.colour

String

Announcement colour

.propagate

Boolean

Propagate the announcement as the default value

.inherit

Boolean

The announcement is inherited from account level

7.16.4. Delete announcement

Table 231. /v3/groups/{group}/announcements
Parameter Description

group

Group id

HTTP
DELETE /v3/groups/1/announcements HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/groups/1/announcements' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/announcements' -i -X DELETE \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 232. Request parameters
Parameter Description

id

Specific announcement id, if not provided main announcement will be deleted

Example of a success response
HTTP/1.1 200 OK

7.17. Properties

7.17.1. List properties

Table 233. /v3/groups/{group}/properties
Parameter Description

group

Group ID

HTTP
GET /v3/groups/1/properties?startsWith=test HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/properties?startsWith=test' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/properties?startsWith=test' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 234. Request parameters
Parameter Description

startsWith

Property prefix

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 46

[ {
  "name" : "name",
  "value" : "value"
} ]
Table 235. Definition of the returned fields
Path Type Description

[].name

String

property name

[].value

String

property value

7.17.2. Create property

Table 236. /v3/groups/{group}/properties
Parameter Description

group

Group ID

HTTP
POST /v3/groups/1/properties HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 38

{
  "name": "test",
  "value": "123"
}
HTTPie
$ echo '{
  "name": "test",
  "value": "123"
}' | http POST 'https://api.clinked.com/v3/groups/1/properties' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/properties' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
  "name": "test",
  "value": "123"
}'
Table 237. Request fields
Path Type Description

name

String

property name

value

String

property value

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 40

{
  "name" : "test",
  "value" : "123"
}
Table 238. Definition of the returned fields
Path Type Description

name

String

property name

value

String

property value

7.17.3. Delete property

Table 239. /v3/groups/{group}/properties/{name}
Parameter Description

group

Group ID

name

Property name

HTTP
DELETE /v3/groups/1/properties/test HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/groups/1/properties/test' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/properties/test' -i -X DELETE \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

7.18. Mail recipients

For uploading files trough email, You can create custom usernames for group or folder. If username is created only for group the result will be "yourGroupUsername-[folderId]@yourDomain.com"

7.18.1. Get recipient username

Return username for group/folder.

Table 240. /v3/groups/{group}/incoming-mail-recipients
Parameter Description

group

Group id

HTTP
GET /v3/groups/1/incoming-mail-recipients?contentContext=file_1 HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/incoming-mail-recipients?contentContext=file_1' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/incoming-mail-recipients?contentContext=file_1' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 241. Request parameters
Parameter Description

contentContext

file context key i.e. file_{fileId}

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 234

[ {
  "id" : 1,
  "recipient" : "awesome username",
  "space" : {
    "id" : 1,
    "name" : "explore_clinked",
    "friendlyName" : "Explore Clinked"
  },
  "contentContext" : {
    "id" : 807
  },
  "dateCreated" : 1514764800000
} ]
Table 242. Definition of the returned fields
Path Type Description

[].id

Number

Recipient id

[].recipient

String

Email username

[].dateCreated

Number

Date created

[].contentContext.id

Number

content context id

[].space.id

Number

User / profile id

[].space.name

String

Group name slug, used for internal identification and URIs

[].space.friendlyName

String

Full group name, visible to a user

7.18.2. Create recipient username

Table 243. /v3/groups/{group}/incoming-mail-recipients
Parameter Description

group

Group id

HTTP
POST /v3/groups/1/incoming-mail-recipients HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 61

{
  "recipient" : "customUsername",
  "contentContext" : 22
}
HTTPie
$ echo '{
  "recipient" : "customUsername",
  "contentContext" : 22
}' | http POST 'https://api.clinked.com/v3/groups/1/incoming-mail-recipients' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/incoming-mail-recipients' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
  "recipient" : "customUsername",
  "contentContext" : 22
}'
Table 244. Request fields
Path Type Description

recipient

String

Recipient name

contentContext

Number

Folder context key id

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 231

{
  "id" : null,
  "recipient" : "customUsername",
  "space" : {
    "id" : 1,
    "name" : "explore_clinked",
    "friendlyName" : "Explore Clinked"
  },
  "contentContext" : {
    "id" : 268
  },
  "dateCreated" : 1713433469950
}

7.18.3. Update recipient username

Table 245. /v3/groups/{group}/incoming-mail-recipients/{recipient}
Parameter Description

group

Group id

recipient

Recipient id

HTTP
PATCH /v3/groups/1/incoming-mail-recipients/1 HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 34

{
  "recipient" : "newRecipient"
}
HTTPie
$ echo '{
  "recipient" : "newRecipient"
}' | http PATCH 'https://api.clinked.com/v3/groups/1/incoming-mail-recipients/1' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/incoming-mail-recipients/1' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
  "recipient" : "newRecipient"
}'
Table 246. Request fields
Path Type Description

recipient

String

Recipient name

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 226

{
  "id" : 1,
  "recipient" : "newRecipient",
  "space" : {
    "id" : 1,
    "name" : "explore_clinked",
    "friendlyName" : "Explore Clinked"
  },
  "contentContext" : {
    "id" : 767
  },
  "dateCreated" : 1514764800000
}

7.18.4. Delete recipient username

Table 247. /v3/groups/{group}/incoming-mail-recipients/{recipientId}
Parameter Description

group

Group id

recipientId

Recipient id

HTTP
DELETE /v3/groups/1/incoming-mail-recipients/2 HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/groups/1/incoming-mail-recipients/2' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/incoming-mail-recipients/2' -i -X DELETE \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

8. Files

This section shows how to upload and manage your group files. NOTE: For more information about the feature itself, see our Help Center page.

8.1. List files

Table 248. /v3/groups/{group}/filesList
Parameter Description

group

Group id

HTTP
GET /v3/groups/1/filesList?page=1&size=5 HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/filesList?page=1&size=5' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/filesList?page=1&size=5' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 249. Request parameters
Parameter Description

page

Page number to load

size

Page size

orderBy

Order field

ascending

Ascending order direction

columns

Additional data to load

name

Name filter/search

parent

Parent folder id

flat

Search across all parents

siblings

Search inside parent siblings (does not work with flat=true)

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1978

{
  "items" : [ {
    "id" : 1,
    "contextKey" : {
      "id" : 331
    },
    "sharing" : "NONE",
    "memberPermission" : 2,
    "following" : false,
    "userAces" : false,
    "userPermission" : 16,
    "name" : "example_folder",
    "friendlyName" : "Example Folder",
    "contentType" : "@folder",
    "size" : 0,
    "uploaded" : {
      "user" : {
        "id" : 1,
        "name" : "Jack Bauer",
        "username" : "jack",
        "logo" : false,
        "jobTitle" : "Marketing",
        "lastModified" : 1514764800000
      },
      "name" : "Jack Bauer",
      "username" : "jack"
    },
    "tags" : null,
    "locked" : false,
    "locker" : null,
    "lastModified" : 1514764800000,
    "summary" : null,
    "path" : [ ],
    "versions" : 0,
    "previewInfo" : null,
    "watermark" : false,
    "group" : {
      "id" : 1,
      "name" : "explore_clinked",
      "friendlyName" : "Explore Clinked"
    }
  }, {
    "id" : 1,
    "contextKey" : {
      "id" : 71
    },
    "sharing" : "NONE",
    "memberPermission" : 2,
    "following" : false,
    "userAces" : false,
    "userPermission" : 16,
    "name" : "file_example.pdf",
    "friendlyName" : "File Example.pdf",
    "contentType" : "application/pdf",
    "size" : 1000,
    "uploaded" : {
      "user" : {
        "id" : 1,
        "name" : "Jack Bauer",
        "username" : "jack",
        "logo" : false,
        "jobTitle" : "Marketing",
        "lastModified" : 1514764800000
      },
      "name" : "Jack Bauer",
      "username" : "jack"
    },
    "tags" : "tag1,tag2",
    "locked" : false,
    "locker" : null,
    "lastModified" : 1514764800000,
    "summary" : null,
    "path" : [ ],
    "versions" : 0,
    "previewInfo" : null,
    "watermark" : false,
    "group" : {
      "id" : 1,
      "name" : "explore_clinked",
      "friendlyName" : "Explore Clinked"
    }
  } ],
  "currentPage" : 1,
  "pageSize" : 5,
  "totalResults" : 0,
  "nextPage" : false,
  "previousPage" : false
}
Table 250. Definition of the returned fields
Path Type Description

items

Array

Page items

currentPage

Number

Current page number

pageSize

Number

Current page size

nextPage

Boolean

Next page available

previousPage

Boolean

Previous page available

totalPages

Number

Amount of available pages

totalResults

Number

Total results

items[].id

Number

File id

items[].contextKey

Object

Context key

items[].contextKey.id

Number

Context key ID

items[].group

Object

Base information about the group

items[].name

String

Unique file name, generated automatically by API

items[].friendlyName

String

Full file name that should be visible to a user

items[].contentType

String

Content type

items[].size

Number

Size in bytes

items[].uploaded

Object

User who uploaded a file

items[].versions

Number

Number of versions

items[].sharing

String

Sharing option, determines who can see a file: [NONE, DEFAULT, MEMBERS, PUBLIC]

items[].memberPermission

Number

Member file permission mask

items[].tags

String

Tags separated by comma

items[].locked

Boolean

File is locked and should not be updated

items[].locker

Object

User locked the file

items[].lastModified

Number

Last modification date (timestamp in milliseconds)

items[].previewInfo

Object

Preview data if available

items[].path

Array

Array of all file records making up the path of this file (incl. itself)

items[].parent

Object

File parent folder

items[].approvalSummary

Object

File approval data

items[].approvalSummary.pendingCount

Number

File approval data

items[].approvalSummary.rejectedCount

Number

File approval data

items[].approvalSummary.approvedCount

Number

File approval data

items[].approvalSummary.count

Number

File approval data

items[].summary

String

Latest file version comment

items[].following

Boolean

Indicates that user is following the file record or not

items[].shareCount

Number

Amount of shares

items[].userAces

Boolean

Indicates that the file record has individual access control entries in the file record ACL

items[].userPermission

Number

The current user permission to file record

items[].commentCount

Number

Amount of comments

items[].tasksCount

Number

Amount of tasks linked to this file

items[].watermark

Boolean

File watermark status

items[].jobs

Array

Active file jobs

items[].group.id

Number

User / profile id

items[].group.name

String

Group name slug, used for internal identification and URIs

items[].group.friendlyName

String

Full group name, visible to a user

items[].uploaded.name

String

User’s full name

items[].uploaded.username

String

User’s usernae if the user is defined

items[].uploaded.user

Object

Detailed user data, will be set to null if user is deleted

items[].uploaded.user.id

Number

User / profile id

items[].uploaded.user.name

String

Full name

items[].uploaded.user.username

String

Username

items[].uploaded.user.logo

Boolean

Avatar available

items[].uploaded.user.jobTitle

String

Job title

items[].uploaded.user.lastModified

Number

Last profile update date

8.2. Search files

Search file by its path

Table 251. /v3/groups/{group}/files
Parameter Description

group

Group id

HTTP
GET /v3/groups/1/files?path=folder-file_csv HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/files?path=folder-file_csv' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/files?path=folder-file_csv' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 252. Request parameters
Parameter Description

path

File path

exclude

Set of file id’s

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1080

{
  "id" : 1,
  "contextKey" : {
    "id" : 967
  },
  "sharing" : "NONE",
  "memberPermission" : 2,
  "following" : false,
  "shareCount" : 0,
  "userAces" : false,
  "userPermission" : 16,
  "commentCount" : 0,
  "name" : "file_example.pdf",
  "friendlyName" : "File Example.pdf",
  "contentType" : "application/pdf",
  "size" : 1000,
  "uploaded" : {
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "name" : "Jack Bauer",
    "username" : "jack"
  },
  "tags" : "tag1,tag2",
  "locked" : false,
  "locker" : null,
  "lastModified" : 1514764800000,
  "summary" : null,
  "approvalSummary" : {
    "pendingCount" : 0,
    "rejectedCount" : 0,
    "approvedCount" : 0,
    "count" : 0,
    "activeRequest" : null
  },
  "path" : [ ],
  "versions" : 0,
  "tasksCount" : 0,
  "previewInfo" : null,
  "watermark" : false,
  "jobs" : [ ],
  "group" : {
    "id" : 1,
    "name" : "explore_clinked",
    "friendlyName" : "Explore Clinked"
  }
}
Table 253. Definition of the returned fields
Path Type Description

id

Number

File id

contextKey

Object

Context key

contextKey.id

Number

Context key ID

group

Object

Base information about the group

name

String

Unique file name, generated automatically by API

friendlyName

String

Full file name that should be visible to a user

contentType

String

Content type

size

Number

Size in bytes

uploaded

Object

User who uploaded a file

versions

Number

Number of versions

sharing

String

Sharing option, determines who can see a file: [NONE, DEFAULT, MEMBERS, PUBLIC]

memberPermission

Number

Member file permission mask

tags

String

Tags separated by comma

locked

Boolean

File is locked and should not be updated

locker

Object

User locked the file

lastModified

Number

Last modification date (timestamp in milliseconds)

previewInfo

Object

Preview data if available

path

Array

Array of all file records making up the path of this file (incl. itself)

parent

Object

File parent folder

approvalSummary

Object

File approval data

approvalSummary.pendingCount

Number

File approval data

approvalSummary.rejectedCount

Number

File approval data

approvalSummary.approvedCount

Number

File approval data

approvalSummary.count

Number

File approval data

summary

String

Latest file version comment

following

Boolean

Indicates that user is following the file record or not

shareCount

Number

Amount of shares

userAces

Boolean

Indicates that the file record has individual access control entries in the file record ACL

userPermission

Number

The current user permission to file record

commentCount

Number

Amount of comments

tasksCount

Number

Amount of tasks linked to this file

watermark

Boolean

File watermark status

jobs

Array

Active file jobs

group.id

Number

User / profile id

group.name

String

Group name slug, used for internal identification and URIs

group.friendlyName

String

Full group name, visible to a user

uploaded.name

String

User’s full name

uploaded.username

String

User’s usernae if the user is defined

uploaded.user

Object

Detailed user data, will be set to null if user is deleted

uploaded.user.id

Number

User / profile id

uploaded.user.name

String

Full name

uploaded.user.username

String

Username

uploaded.user.logo

Boolean

Avatar available

uploaded.user.jobTitle

String

Job title

uploaded.user.lastModified

Number

Last profile update date

8.3. File details

Returns detailed information about a single file.

Table 254. /v3/groups/{group}/files/{file}
Parameter Description

group

Group id

file

File id

HTTP
GET /v3/groups/1/files/1 HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/files/1' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/files/1' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1080

{
  "id" : 1,
  "contextKey" : {
    "id" : 551
  },
  "sharing" : "NONE",
  "memberPermission" : 2,
  "following" : false,
  "shareCount" : 0,
  "userAces" : false,
  "userPermission" : 16,
  "commentCount" : 0,
  "name" : "file_example.pdf",
  "friendlyName" : "File Example.pdf",
  "contentType" : "application/pdf",
  "size" : 1000,
  "uploaded" : {
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "name" : "Jack Bauer",
    "username" : "jack"
  },
  "tags" : "tag1,tag2",
  "locked" : false,
  "locker" : null,
  "lastModified" : 1514764800000,
  "summary" : null,
  "approvalSummary" : {
    "pendingCount" : 0,
    "rejectedCount" : 0,
    "approvedCount" : 0,
    "count" : 0,
    "activeRequest" : null
  },
  "path" : [ ],
  "versions" : 0,
  "tasksCount" : 0,
  "previewInfo" : null,
  "watermark" : false,
  "jobs" : [ ],
  "group" : {
    "id" : 1,
    "name" : "explore_clinked",
    "friendlyName" : "Explore Clinked"
  }
}
Table 255. Definition of the returned fields
Path Type Description

id

Number

File id

contextKey

Object

Context key

contextKey.id

Number

Context key ID

group

Object

Base information about the group

name

String

Unique file name, generated automatically by API

friendlyName

String

Full file name that should be visible to a user

contentType

String

Content type

size

Number

Size in bytes

uploaded

Object

User who uploaded a file

versions

Number

Number of versions

sharing

String

Sharing option, determines who can see a file: [NONE, DEFAULT, MEMBERS, PUBLIC]

memberPermission

Number

Member file permission mask

tags

String

Tags separated by comma

locked

Boolean

File is locked and should not be updated

locker

Object

User locked the file

lastModified

Number

Last modification date (timestamp in milliseconds)

previewInfo

Object

Preview data if available

path

Array

Array of all file records making up the path of this file (incl. itself)

parent

Object

File parent folder

approvalSummary

Object

File approval data

approvalSummary.pendingCount

Number

File approval data

approvalSummary.rejectedCount

Number

File approval data

approvalSummary.approvedCount

Number

File approval data

approvalSummary.count

Number

File approval data

summary

String

Latest file version comment

following

Boolean

Indicates that user is following the file record or not

shareCount

Number

Amount of shares

userAces

Boolean

Indicates that the file record has individual access control entries in the file record ACL

userPermission

Number

The current user permission to file record

commentCount

Number

Amount of comments

tasksCount

Number

Amount of tasks linked to this file

watermark

Boolean

File watermark status

jobs

Array

Active file jobs

group.id

Number

User / profile id

group.name

String

Group name slug, used for internal identification and URIs

group.friendlyName

String

Full group name, visible to a user

uploaded.name

String

User’s full name

uploaded.username

String

User’s usernae if the user is defined

uploaded.user

Object

Detailed user data, will be set to null if user is deleted

uploaded.user.id

Number

User / profile id

uploaded.user.name

String

Full name

uploaded.user.username

String

Username

uploaded.user.logo

Boolean

Avatar available

uploaded.user.jobTitle

String

Job title

uploaded.user.lastModified

Number

Last profile update date

8.4. Remove file or folder

Moves file to group trash bin.

You can always restore trash bin items later, see group trash section for details.
Table 256. /v3/groups/{group}/files/{file}
Parameter Description

group

Group id

file

File id

HTTP
DELETE /v3/groups/1/files/1 HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/groups/1/files/1' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/files/1' -i -X DELETE \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 256

{
  "id" : 15,
  "contextKey" : {
    "id" : 570
  },
  "user" : {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "dateDeleted" : 1713433474397
}
Table 257. Definition of the returned fields
Path Type Description

id

Number

File id

contextKey

Object

Context key

contextKey.id

Number

Context key ID

user

Object

User who removed this

dateDeleted

Number

Remove timestamp

user.id

Number

User / profile id

user.name

String

Full name

user.username

String

Username

user.logo

Boolean

Avatar available

user.jobTitle

String

Job title

user.lastModified

Number

Last profile update date

8.5. Update File

Allows to partially update file metadata.

Table 258. /v3/groups/{group}/files/{file}
Parameter Description

group

Group id

file

File id

HTTP
PATCH /v3/groups/1/files/1 HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 178

{
    "friendlyName": "Updated name.pdf",
    "tags": "new,tags",
    "following": "false",
    "lock": "false",
    "parent": null,
    "watermark": true,
    "tempFile": null
}
HTTPie
$ echo '{
    "friendlyName": "Updated name.pdf",
    "tags": "new,tags",
    "following": "false",
    "lock": "false",
    "parent": null,
    "watermark": true,
    "tempFile": null
}' | http PATCH 'https://api.clinked.com/v3/groups/1/files/1' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/files/1' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
    "friendlyName": "Updated name.pdf",
    "tags": "new,tags",
    "following": "false",
    "lock": "false",
    "parent": null,
    "watermark": true,
    "tempFile": null
}'
Table 259. Request fields
Path Type Description

friendlyName

String

Friendly name of file

tags

String

Comma separated tags attached to file record

following

String

Follow file

lock

String

File is locked and should not be updated

parent

String

Parent folder id

tempFile

String

Temporary file ID

watermark

Boolean

File watermark status

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1078

{
  "id" : 1,
  "contextKey" : {
    "id" : 839
  },
  "sharing" : "NONE",
  "memberPermission" : 2,
  "following" : false,
  "shareCount" : 0,
  "userAces" : false,
  "userPermission" : 16,
  "commentCount" : 0,
  "name" : "file_example.pdf",
  "friendlyName" : "Updated name.pdf",
  "contentType" : "application/pdf",
  "size" : 1000,
  "uploaded" : {
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "name" : "Jack Bauer",
    "username" : "jack"
  },
  "tags" : "new,tags",
  "locked" : false,
  "locker" : null,
  "lastModified" : 1514764800000,
  "summary" : null,
  "approvalSummary" : {
    "pendingCount" : 0,
    "rejectedCount" : 0,
    "approvedCount" : 0,
    "count" : 0,
    "activeRequest" : null
  },
  "path" : [ ],
  "versions" : 0,
  "tasksCount" : 0,
  "previewInfo" : null,
  "watermark" : true,
  "jobs" : [ ],
  "group" : {
    "id" : 1,
    "name" : "explore_clinked",
    "friendlyName" : "Explore Clinked"
  }
}
Table 260. Definition of the returned fields
Path Type Description

id

Number

File id

contextKey

Object

Context key

contextKey.id

Number

Context key ID

group

Object

Base information about the group

name

String

Unique file name, generated automatically by API

friendlyName

String

Full file name that should be visible to a user

contentType

String

Content type

size

Number

Size in bytes

uploaded

Object

User who uploaded a file

versions

Number

Number of versions

sharing

String

Sharing option, determines who can see a file: [NONE, DEFAULT, MEMBERS, PUBLIC]

memberPermission

Number

Member file permission mask

tags

String

Tags separated by comma

locked

Boolean

File is locked and should not be updated

locker

Object

User locked the file

lastModified

Number

Last modification date (timestamp in milliseconds)

previewInfo

Object

Preview data if available

path

Array

Array of all file records making up the path of this file (incl. itself)

parent

Object

File parent folder

approvalSummary

Object

File approval data

approvalSummary.pendingCount

Number

File approval data

approvalSummary.rejectedCount

Number

File approval data

approvalSummary.approvedCount

Number

File approval data

approvalSummary.count

Number

File approval data

summary

String

Latest file version comment

following

Boolean

Indicates that user is following the file record or not

shareCount

Number

Amount of shares

userAces

Boolean

Indicates that the file record has individual access control entries in the file record ACL

userPermission

Number

The current user permission to file record

commentCount

Number

Amount of comments

tasksCount

Number

Amount of tasks linked to this file

watermark

Boolean

File watermark status

jobs

Array

Active file jobs

group.id

Number

User / profile id

group.name

String

Group name slug, used for internal identification and URIs

group.friendlyName

String

Full group name, visible to a user

uploaded.name

String

User’s full name

uploaded.username

String

User’s usernae if the user is defined

uploaded.user

Object

Detailed user data, will be set to null if user is deleted

uploaded.user.id

Number

User / profile id

uploaded.user.name

String

Full name

uploaded.user.username

String

Username

uploaded.user.logo

Boolean

Avatar available

uploaded.user.jobTitle

String

Job title

uploaded.user.lastModified

Number

Last profile update date

8.6. Create folder

Creates a folder or a sub-folder.

Table 261. /v3/groups/{group}/files/{folder}
Parameter Description

group

Group id

folder

Folder id

HTTP
POST /v3/groups/1/files/2 HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 139

{
    "friendlyName": "Awesome folder name",
    "memberPermission": 8,
    "sharing": "MEMBERS",
    "versionSummary": "Initial version"
}
HTTPie
$ echo '{
    "friendlyName": "Awesome folder name",
    "memberPermission": 8,
    "sharing": "MEMBERS",
    "versionSummary": "Initial version"
}' | http POST 'https://api.clinked.com/v3/groups/1/files/2' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/files/2' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
    "friendlyName": "Awesome folder name",
    "memberPermission": 8,
    "sharing": "MEMBERS",
    "versionSummary": "Initial version"
}'
Table 262. Request fields
Path Type Description

friendlyName

String

Full file name

sharing

String

Sharing option, determines who can see a file: [NONE, DEFAULT, MEMBERS, PUBLIC]

memberPermission

Number

Member file permission mask

versionSummary

String

Version summary text

Example of a success response
HTTP/1.1 201 Created
Content-Type: application/json;charset=UTF-8
Content-Length: 1070

{
  "id" : 5,
  "contextKey" : {
    "id" : 15
  },
  "sharing" : "MEMBERS",
  "memberPermission" : 8,
  "following" : false,
  "shareCount" : 0,
  "userAces" : false,
  "userPermission" : 16,
  "commentCount" : 0,
  "name" : "awesome_folder_name",
  "friendlyName" : "Awesome folder name",
  "contentType" : "@folder",
  "size" : 0,
  "uploaded" : {
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "name" : "Jack Bauer",
    "username" : "jack"
  },
  "tags" : null,
  "locked" : false,
  "locker" : null,
  "lastModified" : 1713433473493,
  "summary" : null,
  "approvalSummary" : {
    "pendingCount" : 0,
    "rejectedCount" : 0,
    "approvedCount" : 0,
    "count" : 0,
    "activeRequest" : null
  },
  "path" : [ ],
  "versions" : 0,
  "tasksCount" : 0,
  "previewInfo" : null,
  "watermark" : false,
  "jobs" : [ ],
  "group" : {
    "id" : 1,
    "name" : "explore_clinked",
    "friendlyName" : "Explore Clinked"
  }
}
Table 263. Definition of the returned fields
Path Type Description

id

Number

File id

contextKey

Object

Context key

contextKey.id

Number

Context key ID

group

Object

Base information about the group

name

String

Unique file name, generated automatically by API

friendlyName

String

Full file name that should be visible to a user

contentType

String

Content type

size

Number

Size in bytes

uploaded

Object

User who uploaded a file

versions

Number

Number of versions

sharing

String

Sharing option, determines who can see a file: [NONE, DEFAULT, MEMBERS, PUBLIC]

memberPermission

Number

Member file permission mask

tags

String

Tags separated by comma

locked

Boolean

File is locked and should not be updated

locker

Object

User locked the file

lastModified

Number

Last modification date (timestamp in milliseconds)

previewInfo

Object

Preview data if available

path

Array

Array of all file records making up the path of this file (incl. itself)

parent

Object

File parent folder

approvalSummary

Object

File approval data

approvalSummary.pendingCount

Number

File approval data

approvalSummary.rejectedCount

Number

File approval data

approvalSummary.approvedCount

Number

File approval data

approvalSummary.count

Number

File approval data

summary

String

Latest file version comment

following

Boolean

Indicates that user is following the file record or not

shareCount

Number

Amount of shares

userAces

Boolean

Indicates that the file record has individual access control entries in the file record ACL

userPermission

Number

The current user permission to file record

commentCount

Number

Amount of comments

tasksCount

Number

Amount of tasks linked to this file

watermark

Boolean

File watermark status

jobs

Array

Active file jobs

group.id

Number

User / profile id

group.name

String

Group name slug, used for internal identification and URIs

group.friendlyName

String

Full group name, visible to a user

uploaded.name

String

User’s full name

uploaded.username

String

User’s usernae if the user is defined

uploaded.user

Object

Detailed user data, will be set to null if user is deleted

uploaded.user.id

Number

User / profile id

uploaded.user.name

String

Full name

uploaded.user.username

String

Username

uploaded.user.logo

Boolean

Avatar available

uploaded.user.jobTitle

String

Job title

uploaded.user.lastModified

Number

Last profile update date

8.7. Preview

Most of the files can be viewed without downloading.

Table 264. /v3/groups/{group}/files/{file}/preview
Parameter Description

group

Group id

file

File id

HTTP
GET /v3/groups/1/files/1/preview HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/files/1/preview' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/files/1/preview' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 389

{
  "session" : {
    "id" : "3123123-kjhgkjhg",
    "dateCreated" : "2023-06-29T11:55:40.851Z",
    "dateExpire" : "2023-06-29T12:25:40.851Z",
    "data" : {
      "print" : true,
      "annotate" : true,
      "user" : {
        "name" : "Jack Bauer",
        "id" : 1
      }
    }
  },
  "url" : "example.com",
  "websocketUrl" : "wss:example.com",
  "embedUrl" : "example.com/embed"
}
Table 265. Definition of the returned fields
Path Type Description

session

Object

Session

session.id

String

Session id

session.dateCreated

String

Date created

session.dateExpire

String

Date expire

session.data.print

Boolean

Has write permission

session.data.annotate

Boolean

Are comments not disabled

session.data.user

Object

User

session.data.user.id

Number

User id

session.data.user.name

String

User name

url

String

Preview url

websocketUrl

String

Websocket url

embedUrl

String

Embed url

8.8. Thumbnail

Download file thumbnail if it has one, otherwise default thumbnail gets returned.

Table 266. /v3/groups/{group}/files/{file}/thumbnail
Parameter Description

group

Group id

file

File id

HTTP
GET /v3/groups/1/files/1/thumbnail HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/files/1/thumbnail' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/files/1/thumbnail' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Disposition: inline; filename="null"
Last-Modified: Mon, 01 Jan 2018 00:00:00 GMT
Content-Length: 4623
Content-Type: image/png
Accept-Ranges: bytes

8.9. Download

Table 267. /v3/groups/{group}/files/{file}/download
Parameter Description

group

Group id

file

File id

HTTP
GET /v3/groups/1/files/1/download HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/files/1/download' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/files/1/download' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Disposition: inline; filename="null"
Last-Modified: Mon, 01 Jan 2018 00:00:00 GMT
Content-Length: 4623
Content-Type: image/png
Accept-Ranges: bytes

8.10. Versions

File versioning tracks and stores multiple versions of a file, facilitating change management and preserving a history of modifications. It ensures data integrity, simplifies collaboration, and provides a safety net for recovering previous file states if necessary.

8.10.1. List Versions

Table 268. /v3/groups/{group}/files/{file}/versions
Parameter Description

group

Group id

file

File id

HTTP
GET /v3/groups/1/files/1/versions HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/files/1/versions' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/files/1/versions' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 269. Request parameters
Parameter Description

page

Page number

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 515

{
  "items" : [ {
    "id" : 2,
    "versionNumber" : 2,
    "uploaded" : {
      "user" : {
        "id" : 1,
        "name" : "Jack Bauer",
        "username" : "jack",
        "logo" : false,
        "jobTitle" : "Marketing",
        "lastModified" : 1514764800000
      },
      "name" : "Jack Bauer",
      "username" : "jack"
    },
    "summary" : "summary",
    "lastModified" : 1514764801000,
    "size" : 1000
  } ],
  "currentPage" : 1,
  "pageSize" : 25,
  "nextPage" : false,
  "previousPage" : false
}
Table 270. Definition of the returned fields
Path Type Description

items[].uploaded.name

String

User’s full name

items[].uploaded.user

Object

Detailed user data, will be set to null if user is deleted

items[].uploaded.username

String

User username if user is defined

items[].uploaded.user.id

Number

User id

items[].uploaded.user.name

String

Full name

items[].uploaded.user.username

String

Username

items[].uploaded.user.logo

Boolean

Profile picture is defined

items[].uploaded.user.jobTitle

String

Job title

items[].uploaded.user.lastModified

Number

Last modified date

items

Array

Array of items

items[].id

Number

Version Id

items[].summary

String

Version summary

items[].lastModified

Number

Last modified timestamp

items[].size

Number

Version size

items[].versionNumber

Number

Version number

items

Array

Page items

currentPage

Number

Current page number

pageSize

Number

Current page size

nextPage

Boolean

Next page available

previousPage

Boolean

Previous page available

totalPages

Number

Amount of available pages

totalResults

Number

Total results

8.10.2. Restore Version

Table 271. /v3/groups/{group}/files/{file}/versions/{versionId}
Parameter Description

group

Group id

file

File id

versionId

Version id

HTTP
POST /v3/groups/1/files/1/versions/1 HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http POST 'https://api.clinked.com/v3/groups/1/files/1/versions/1' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/files/1/versions/1' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1

2
Table 272. Definition of the returned fields
Type Description

Number

Version count

8.10.3. Download version

Table 273. /v3/groups/{group}/files/{file}/versions/{versionId}
Parameter Description

group

Group id

file

File id

versionId

Version id

HTTP
GET /v3/groups/1/files/1/versions/1 HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/files/1/versions/1' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/files/1/versions/1' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 302 Found
Location: example.com

8.11. Permissions

File permissions can be set at the group level or member level. Group-level permissions apply to a group, while member-level permissions grant specific access rights to individual users. This allows for flexible and controlled access management. NOTE: For more information about permissions, see our Help Center page.

8.11.1. List Permissions

Table 274. /v3/groups/{group}/files/{file}/permissions
Parameter Description

group

Group id

file

File id

HTTP
GET /v3/groups/1/files/2/permissions HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Accept: application/json
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/files/2/permissions' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>' \
    'Accept:application/json'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/files/2/permissions' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -H 'Accept: application/json'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 747

{
  "sharing" : "NONE",
  "memberPermission" : 2,
  "entries" : [ {
    "user" : {
      "id" : 1,
      "username" : "jack",
      "enabled" : true,
      "locked" : false,
      "name" : "Jack Bauer",
      "jobTitle" : "Marketing",
      "organisation" : "Clinked",
      "email" : "jack.bauer@clinked.com",
      "address" : "71 Pilgrim Avenue",
      "telephone" : "123456789",
      "other" : null,
      "logo" : false,
      "timeZone" : "UTC",
      "locale" : "en",
      "verifiedEmail" : false,
      "twoFactorAuthentication" : false,
      "twoFactorMode" : null,
      "lastModified" : 1514764800000,
      "dateFormat" : null,
      "twentyFourHourTimeFormat" : false,
      "lastActive" : null
    },
    "permission" : 16
  } ]
}
Table 275. Definition of the returned fields
Path Type Description

sharing

String

Sharing - NONE, DEFAULT, MEMBERS

memberPermission

Number

Member permission

entries

Array

Permission entries

entries[].user

Object

User object

entries[].permission

Number

User permission

entries[].user.id

Number

User id

entries[].user.name

String

Full name

entries[].user.username

String

Username

entries[].user.logo

Boolean

Profile picture is defined

entries[].user.jobTitle

String

Job title

entries[].user.lastModified

Number

Last modified date

entries[].user.enabled

Boolean

Is user enabled

entries[].user.locked

Boolean

Is user locked

entries[].user.organisation

String

Organisation name

entries[].user.email

String

Email address

entries[].user.address

String

Address

entries[].user.telephone

String

Phone number

entries[].user.other

String

Optional other information

entries[].user.timeZone

String

Time zone ID

entries[].user.locale

String

Locale

entries[].user.verifiedEmail

Boolean

Is email verified

entries[].user.twoFactorAuthentication

Boolean

Is 2FA enabled

entries[].user.twoFactorMode

String

2FA mode: [AUTHENTICATOR, SMS, EMAIL]

entries[].user.twentyFourHourTimeFormat

Boolean

Time format preference - 24hr or 12hr format

entries[].user.lastActive

Number

Date the user was last active

entries[].user.dateFormat

Boolean

Date format preference - YMD (Year-Month-Day), MDY (Month/Day/Year) or DMY(Day/Month/Year)

8.11.2. Update permissions

Table 276. /v3/groups/{group}/files/{file}/permissions
Parameter Description

group

Group id

file

File id

HTTP
POST /v3/groups/1/files/2/permissions HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Accept: application/json
Host: api.clinked.com
Content-Length: 106

{"sharing":"MEMBERS","memberPermission":4,"entries":[{"username":"jack","permission":4}],"children":false}
HTTPie
$ echo '{"sharing":"MEMBERS","memberPermission":4,"entries":[{"username":"jack","permission":4}],"children":false}' | http POST 'https://api.clinked.com/v3/groups/1/files/2/permissions' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>' \
    'Accept:application/json'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/files/2/permissions' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -H 'Accept: application/json' \
    -d '{"sharing":"MEMBERS","memberPermission":4,"entries":[{"username":"jack","permission":4}],"children":false}'
Table 277. Request fields
Path Type Description

sharing

String

Sharing - NONE | DEFAULT | MEMBERS

memberPermission

Number

Member permission

entries

Array

Permission entries

entries[].username

String

User’s username for update permission

entries[].permission

Number

New permission

children

Boolean

If should update children entities

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 747

{
  "sharing" : "NONE",
  "memberPermission" : 2,
  "entries" : [ {
    "user" : {
      "id" : 1,
      "username" : "jack",
      "enabled" : true,
      "locked" : false,
      "name" : "Jack Bauer",
      "jobTitle" : "Marketing",
      "organisation" : "Clinked",
      "email" : "jack.bauer@clinked.com",
      "address" : "71 Pilgrim Avenue",
      "telephone" : "123456789",
      "other" : null,
      "logo" : false,
      "timeZone" : "UTC",
      "locale" : "en",
      "verifiedEmail" : false,
      "twoFactorAuthentication" : false,
      "twoFactorMode" : null,
      "lastModified" : 1514764800000,
      "dateFormat" : null,
      "twentyFourHourTimeFormat" : false,
      "lastActive" : null
    },
    "permission" : 16
  } ]
}
Table 278. Definition of the returned fields
Path Type Description

sharing

String

Sharing - NONE, DEFAULT, MEMBERS

memberPermission

Number

Member permission

entries

Array

Permission entries

entries[].user

Object

User object

entries[].permission

Number

User permission

entries[].user.id

Number

User id

entries[].user.name

String

Full name

entries[].user.username

String

Username

entries[].user.logo

Boolean

Profile picture is defined

entries[].user.jobTitle

String

Job title

entries[].user.lastModified

Number

Last modified date

entries[].user.enabled

Boolean

Is user enabled

entries[].user.locked

Boolean

Is user locked

entries[].user.organisation

String

Organisation name

entries[].user.email

String

Email address

entries[].user.address

String

Address

entries[].user.telephone

String

Phone number

entries[].user.other

String

Optional other information

entries[].user.timeZone

String

Time zone ID

entries[].user.locale

String

Locale

entries[].user.verifiedEmail

Boolean

Is email verified

entries[].user.twoFactorAuthentication

Boolean

Is 2FA enabled

entries[].user.twoFactorMode

String

2FA mode: [AUTHENTICATOR, SMS, EMAIL]

entries[].user.twentyFourHourTimeFormat

Boolean

Time format preference - 24hr or 12hr format

entries[].user.lastActive

Number

Date the user was last active

entries[].user.dateFormat

Boolean

Date format preference - YMD (Year-Month-Day), MDY (Month/Day/Year) or DMY(Day/Month/Year)

8.12. Tasks

Files can have tasks attached to it.

Table 279. /v3/groups/{group}/files/{file}/tasks
Parameter Description

group

Group id

file

File id

HTTP
GET /v3/groups/1/filesList?page=1&size=5 HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/filesList?page=1&size=5' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/filesList?page=1&size=5' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1978

{
  "items" : [ {
    "id" : 1,
    "contextKey" : {
      "id" : 331
    },
    "sharing" : "NONE",
    "memberPermission" : 2,
    "following" : false,
    "userAces" : false,
    "userPermission" : 16,
    "name" : "example_folder",
    "friendlyName" : "Example Folder",
    "contentType" : "@folder",
    "size" : 0,
    "uploaded" : {
      "user" : {
        "id" : 1,
        "name" : "Jack Bauer",
        "username" : "jack",
        "logo" : false,
        "jobTitle" : "Marketing",
        "lastModified" : 1514764800000
      },
      "name" : "Jack Bauer",
      "username" : "jack"
    },
    "tags" : null,
    "locked" : false,
    "locker" : null,
    "lastModified" : 1514764800000,
    "summary" : null,
    "path" : [ ],
    "versions" : 0,
    "previewInfo" : null,
    "watermark" : false,
    "group" : {
      "id" : 1,
      "name" : "explore_clinked",
      "friendlyName" : "Explore Clinked"
    }
  }, {
    "id" : 1,
    "contextKey" : {
      "id" : 71
    },
    "sharing" : "NONE",
    "memberPermission" : 2,
    "following" : false,
    "userAces" : false,
    "userPermission" : 16,
    "name" : "file_example.pdf",
    "friendlyName" : "File Example.pdf",
    "contentType" : "application/pdf",
    "size" : 1000,
    "uploaded" : {
      "user" : {
        "id" : 1,
        "name" : "Jack Bauer",
        "username" : "jack",
        "logo" : false,
        "jobTitle" : "Marketing",
        "lastModified" : 1514764800000
      },
      "name" : "Jack Bauer",
      "username" : "jack"
    },
    "tags" : "tag1,tag2",
    "locked" : false,
    "locker" : null,
    "lastModified" : 1514764800000,
    "summary" : null,
    "path" : [ ],
    "versions" : 0,
    "previewInfo" : null,
    "watermark" : false,
    "group" : {
      "id" : 1,
      "name" : "explore_clinked",
      "friendlyName" : "Explore Clinked"
    }
  } ],
  "currentPage" : 1,
  "pageSize" : 5,
  "totalResults" : 0,
  "nextPage" : false,
  "previousPage" : false
}
Table 280. Definition of the returned fields
Path Type Description

items

Array

Page items

currentPage

Number

Current page number

pageSize

Number

Current page size

nextPage

Boolean

Next page available

previousPage

Boolean

Previous page available

totalPages

Number

Amount of available pages

totalResults

Number

Total results

items[].id

Number

File id

items[].contextKey

Object

Context key

items[].contextKey.id

Number

Context key ID

items[].group

Object

Base information about the group

items[].name

String

Unique file name, generated automatically by API

items[].friendlyName

String

Full file name that should be visible to a user

items[].contentType

String

Content type

items[].size

Number

Size in bytes

items[].uploaded

Object

User who uploaded a file

items[].versions

Number

Number of versions

items[].sharing

String

Sharing option, determines who can see a file: [NONE, DEFAULT, MEMBERS, PUBLIC]

items[].memberPermission

Number

Member file permission mask

items[].tags

String

Tags separated by comma

items[].locked

Boolean

File is locked and should not be updated

items[].locker

Object

User locked the file

items[].lastModified

Number

Last modification date (timestamp in milliseconds)

items[].previewInfo

Object

Preview data if available

items[].path

Array

Array of all file records making up the path of this file (incl. itself)

items[].parent

Object

File parent folder

items[].approvalSummary

Object

File approval data

items[].approvalSummary.pendingCount

Number

File approval data

items[].approvalSummary.rejectedCount

Number

File approval data

items[].approvalSummary.approvedCount

Number

File approval data

items[].approvalSummary.count

Number

File approval data

items[].summary

String

Latest file version comment

items[].following

Boolean

Indicates that user is following the file record or not

items[].shareCount

Number

Amount of shares

items[].userAces

Boolean

Indicates that the file record has individual access control entries in the file record ACL

items[].userPermission

Number

The current user permission to file record

items[].commentCount

Number

Amount of comments

items[].tasksCount

Number

Amount of tasks linked to this file

items[].watermark

Boolean

File watermark status

items[].jobs

Array

Active file jobs

items[].group.id

Number

User / profile id

items[].group.name

String

Group name slug, used for internal identification and URIs

items[].group.friendlyName

String

Full group name, visible to a user

items[].uploaded.name

String

User’s full name

items[].uploaded.username

String

User’s usernae if the user is defined

items[].uploaded.user

Object

Detailed user data, will be set to null if user is deleted

items[].uploaded.user.id

Number

User / profile id

items[].uploaded.user.name

String

Full name

items[].uploaded.user.username

String

Username

items[].uploaded.user.logo

Boolean

Avatar available

items[].uploaded.user.jobTitle

String

Job title

items[].uploaded.user.lastModified

Number

Last profile update date

8.13. Approvals

Approvals are sort of like simple e-signatures. You can easily request for a file to be approved by another person within your portal. This way, everyone can see if the latest document version is signed off or rejected.

For more information about the feature itself, see our Help Center page.

8.13.1. List approvals

Table 281. /v3/groups/{group}/files/{file}/approvals
Parameter Description

group

Group id

file

File id

HTTP
GET /v3/groups/1/files/1/approvals HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/files/1/approvals' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/files/1/approvals' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 282. Request parameters
Parameter Description

versionNumber

File version number

page

Page number

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 302

{
  "items" : [ {
    "version" : {
      "id" : null,
      "versionNumber" : 1,
      "uploaded" : null,
      "summary" : null,
      "lastModified" : null,
      "size" : null
    },
    "requests" : [ ]
  } ],
  "currentPage" : 1,
  "pageSize" : 5,
  "nextPage" : false,
  "previousPage" : false
}
Table 283. Definition of the returned fields
Path Type Description

items

Array

Page items

currentPage

Number

Current page number

pageSize

Number

Current page size

nextPage

Boolean

Next page available

previousPage

Boolean

Previous page available

totalPages

Number

Amount of available pages

totalResults

Number

Total results

8.13.2. Create approval request

Table 284. /v3/groups/{group}/files/{file}/approvals
Parameter Description

group

Group id

file

File id

approval

Approval id

HTTP
POST /v3/groups/1/files/1/approvals HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 30

{
  "usernames" : [ "jack" ]
}
HTTPie
$ echo '{
  "usernames" : [ "jack" ]
}' | http POST 'https://api.clinked.com/v3/groups/1/files/1/approvals' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/files/1/approvals' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
  "usernames" : [ "jack" ]
}'
Table 285. Request fields
Path Type Description

usernames

Array

Usernames to request approval from

emails

Array

Emails to request approval from, use if user is not a part of your account

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 842

[ {
  "id" : 1,
  "contextKey" : {
    "id" : 724
  },
  "source" : {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "target" : {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "container" : {
    "id" : 1,
    "contextKey" : {
      "id" : 724
    },
    "type" : "account"
  },
  "sourceName" : "jack.bauer@clinked.com",
  "targetName" : "jack.bauer@clinked.com",
  "type" : "FILE_APPROVAL",
  "status" : "NONE",
  "scope" : "2",
  "parameters" : null,
  "lastModified" : 1514764800000,
  "account" : {
    "id" : 1,
    "name" : "awesome_org",
    "friendlyName" : "Awesome Organisation",
    "enabled" : true
  }
} ]
Table 286. Definition of the returned fields
Path Type Description

[].id

Number

Entity id

[].contextKey

Object

Context key

[].contextKey.id

Number

Context key ID

[].source

Object

User who created a request

[].target

Object

Target user

[].container

Object

Request container

[].sourceName

String

Source user name

[].targetName

String

Target user name

[].type

String

Request type

[].status

String

Request status

[].scope

String

Scope

[].parameters

Varies

Additional parameters

[].lastModified

Number

Last modification date

[].source.id

Number

User id

[].source.name

String

Full name

[].source.username

String

Username

[].source.logo

Boolean

Profile picture is defined

[].source.jobTitle

String

Job title

[].source.lastModified

Number

Last modified date

[].target.id

Number

User id

[].target.name

String

Full name

[].target.username

String

Username

[].target.logo

Boolean

Profile picture is defined

[].target.jobTitle

String

Job title

[].target.lastModified

Number

Last modified date

[].account.id

Number

User / profile id

[].account.name

String

Account name slug, used for internal identification and URIs

[].account.friendlyName

String

Full account name, visible to a user

[].account.enabled

Boolean

Is account enabled

8.13.3. Delete approval

Table 287. /v3/groups/{group}/files/{file}/approvals/{approval}
Parameter Description

group

Group id

file

File id

approval

Approval id

HTTP
DELETE /v3/groups/1/files/1/approvals/1 HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/groups/1/files/1/approvals/1' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/files/1/approvals/1' -i -X DELETE \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

8.14. Adobe Sign

For more information about the feature itself, see our Help Center page.

8.14.1. Status

Checks if AdobeSign is enabled and file is supported.

Table 288. /v3/groups/{group}/files/{file}/adobesign
Parameter Description

group

Group id

file

File id

HTTP
HEAD /v3/groups/1/files/1/adobesign HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http HEAD 'https://api.clinked.com/v3/groups/1/files/1/adobesign' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/files/1/adobesign' -i -X HEAD \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

8.14.2. Sign file

Table 289. /v3/groups/{group}/files/{file}/adobesign
Parameter Description

group

Group id

file

File id

HTTP
POST /v3/groups/1/files/1/adobesign HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http POST 'https://api.clinked.com/v3/groups/1/files/1/adobesign' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/files/1/adobesign' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 55

{
  "redirect" : "example.com/agreement-creation-url"
}
Table 290. Definition of the returned fields
Path Type Description

redirect

String

Newly created agreement url

8.14.3. Sign multiple files

Table 291. /v3/groups/{group}/files/adobesign/batch
Parameter Description

group

Group id

HTTP
POST /v3/groups/1/files/adobesign/batch HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 16

{ "files": [1] }
HTTPie
$ echo '{ "files": [1] }' | http POST 'https://api.clinked.com/v3/groups/1/files/adobesign/batch' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/files/adobesign/batch' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{ "files": [1] }'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 55

{
  "redirect" : "example.com/agreement-creation-url"
}
Table 292. Definition of the returned fields
Path Type Description

redirect

String

Newly created agreement url

8.14.4. List agreements

Table 293. /v3/groups/{group}/files/{file}/adobesign
Parameter Description

group

Group id

file

File id

HTTP
GET /v3/groups/1/files/1/adobesign HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/files/1/adobesign' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/files/1/adobesign' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 206

[ {
  "agreementId" : "xxxx-xxxx",
  "displayDate" : 1713433476009,
  "displayUserSetInfos" : null,
  "esign" : true,
  "latestVersionId" : "latest-id",
  "name" : "Big Agreement",
  "status" : "SIGNED"
} ]
Table 294. Definition of the returned fields
Path Type Description

[].agreementId

String

Agreement id

[].displayDate

Number

Display date

[].displayUserSetInfos

Object

Displays the info about user set

[].esign

Boolean

Is e-sign document

[].latestVersionId

String

Latest version id

[].name

String

Agreement name

[].status

String

Status - [WAITING_FOR_MY_SIGNATURE, WAITING_FOR_MY_APPROVAL, WAITING_FOR_MY_DELEGATION, OUT_FOR_SIGNATURE, OUT_FOR_APPROVAL, SIGNED, APPROVED, RECALLED, WAITING_FOR_FAXIN, ARCHIVED, FORM, EXPIRED, WIDGET, WAITING_FOR_AUTHORING]

8.14.5. List agreements (v2)

Table 295. /v3/groups/{group}/files/{file}/adobesign/v2
Parameter Description

group

Group id

file

File id

HTTP
GET /v3/groups/1/files/1/adobesign/v2 HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/files/1/adobesign/v2' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/files/1/adobesign/v2' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 496

[ {
  "id" : 1,
  "externalId" : "external-id-is-here",
  "agreementInfo" : {
    "name" : "Agreement name",
    "message" : "Dummy message, please sign this",
    "status" : "ESIGN",
    "externalId" : "external-id-is-here",
    "createdDate" : null,
    "updatedDate" : null,
    "participants" : [ {
      "name" : "John Doe",
      "email" : "john@doe.com",
      "role" : "SIGNER",
      "status" : "WAITING_FOR_MY_SIGNATURE"
    } ]
  },
  "dateCreated" : "Thu Apr 18 09:44:34 UTC 2024"
} ]
Table 296. Definition of the returned fields
Path Type Description

[].id

Number

Agreement id

[].externalId

String

The external agreement id

[].agreementInfo

Object

The agreement details

[].agreementInfo.name

String

Agreement name

[].agreementInfo.message

String

Agreement message to the users

[].agreementInfo.status

String

Agreement status

[].agreementInfo.externalId

String

The agreement external id

[].agreementInfo.updatedDate

String

Date agreement was updated

[].agreementInfo.createdDate

String

Date agreement was created

[].agreementInfo.participants

Array

List of agreement participant details

[].agreementInfo.participants[].name

String

Participant name

[].agreementInfo.participants[].email

String

Participant e-mail address

[].agreementInfo.participants[].role

String

Participant role

[].agreementInfo.participants[].status

String

Participant signature status

[].dateCreated

String

Date when the agreement was created

8.14.6. Get agreement details

Table 297. /v3/groups/{group}/files/{file}/adobesign/{agreement}
Parameter Description

group

Group id

file

File id

agreement

Agreement id

HTTP
GET /v3/groups/1/files/1/adobesign/1 HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/files/1/adobesign/1' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/files/1/adobesign/1' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 361

{
  "agreementId" : "xxxx-xxxx",
  "events" : [ ],
  "expiration" : 1713433476113,
  "latestVersionId" : "latest-id",
  "locale" : "en_GB",
  "message" : "Hello",
  "modifiable" : false,
  "name" : "Agreement name",
  "nextParticipantSetInfos" : [ ],
  "participantSetInfos" : [ ],
  "securityOptions" : [ ],
  "status" : "SIGNED",
  "vaultingEnabled" : false
}
Table 298. Definition of the returned fields
Path Type Description

agreementId

String

Agreement id

events

Array

An ordered list of the events in the audit trail of this document

expiration

Number

The date after which the document can no longer be signed, if an expiration date is configured

latestVersionId

String

An ID which uniquely identifies the current version of the document

locale

String

The locale associated with this agreement

message

String

The message associated with the document that the sender has provided

modifiable

Boolean

Agreement can be modified

name

String

The name of the document, specified by the sender

nextParticipantSetInfos

Array

Information about who needs to act next for this document - for example, if the agreement is in status OUT_FOR_SIGNATURE or OUT_FOR_APPROVAL, this will be the next signer or approver. If the AgreementStatus is a terminal state, this array is empty

participantSetInfos

Array

Information about all the participant sets of this document

securityOptions

Array

Security information about the document that specifies whether or not a password is required to view and sign the document

status

String

Current status - [OUT_FOR_SIGNATURE, WAITING_FOR_REVIEW, SIGNED, APPROVED, ABORTED, DOCUMENT_LIBRARY, WIDGET, EXPIRED, ARCHIVED, PREFILL, AUTHORING, WAITING_FOR_FAXIN, WAITING_FOR_VERIFICATION, WIDGET_WAITING_FOR_VERIFICATION, WAITING_FOR_PAYMENT, OUT_FOR_APPROVAL, OTHER]

vaultingEnabled

Boolean

Whether vaulting was enabled for the agreement

8.14.7. Download agreement

Table 299. /v3/groups/{group}/files/{file}/adobesign/{agreement}/download
Parameter Description

group

Group id

file

File id

agreement

Agreement id

HTTP
GET /v3/groups/1/files/1/adobesign/1/download HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/files/1/adobesign/1/download' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/files/1/adobesign/1/download' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 302 Found
Location: example.com

8.14.8. Download agreement (v2)

Table 300. /v3/groups/{group}/files/{file}/adobesign/v2/{id}/{version}/download
Parameter Description

group

Group id

file

File id

id

Agreement id

version

File version number

HTTP
GET /v3/groups/1/files/1/adobesign/v2/1/1/download HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/files/1/adobesign/v2/1/1/download' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/files/1/adobesign/v2/1/1/download' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 302 Found
Location: example.com

8.15. Docusign

For more information about the feature itself, see our Help Center page.

8.15.1. Docusign status

Checks if Docusign is enabled and file is supported.

Table 301. /v3/groups/{group}/files/{file}/docusign
Parameter Description

group

Group id

file

File id

HTTP
HEAD /v3/groups/1/files/1/docusign HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http HEAD 'https://api.clinked.com/v3/groups/1/files/1/docusign' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/files/1/docusign' -i -X HEAD \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

8.15.2. List Envelopes

Table 302. /v3/groups/{group}/files/{file}/docusign
Parameter Description

group

Group id

file

File id

HTTP
GET /v3/groups/1/files/1/docusign HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/files/1/docusign' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/files/1/docusign' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 146

{
  "envelopes" : [ {
    "name" : "big envelope",
    "envelopeId" : null,
    "dateCreated" : 1514764800000
  } ],
  "consentRequired" : false
}
Table 303. Definition of the returned fields
Path Type Description

envelopes

Array

Array of envelopes

consentRequired

Boolean

Is consent required

envelopes[].name

String

Envelope name

envelopes[].envelopeId

String

Envelope ID

envelopes[].dateCreated

Number

Date created

8.15.3. Envelope Status

Table 304. /v3/groups/{group}/files/{file}/docusign/status/{token}
Parameter Description

group

Group id

file

File id

token

Token

HTTP
GET /v3/groups/1/files/1/docusign/status/yourToken HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/files/1/docusign/status/yourToken' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/files/1/docusign/status/yourToken' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 35

{
  "redirectUrl" : "example.com"
}
Table 305. Definition of the returned fields
Path Type Description

redirectUrl

String

Redirect url

8.15.4. List Envelope signatures

Table 306. /v3/groups/{group}/files/{file}/docusign/{envelope}
Parameter Description

group

Group id

file

File id

envelope

Envelope id

HTTP
GET /v3/groups/1/files/1/docusign/1 HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/files/1/docusign/1' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/files/1/docusign/1' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 883

{
  "sender" : {
    "accountId" : "a56df5fc-xxxx-xxxx-xxxx-f64dc8ab421e",
    "accountName" : null,
    "activationAccessCode" : null,
    "email" : "email@example.com",
    "errorDetails" : null,
    "loginStatus" : null,
    "membershipId" : null,
    "sendActivationEmail" : null,
    "uri" : null,
    "userId" : "c1c4ca80-xxxx-xxxx-xxxx-32a3a9b13925",
    "userName" : "Jack Bauer",
    "userStatus" : null,
    "userType" : null
  },
  "recipients" : {
    "agents" : null,
    "carbonCopies" : null,
    "certifiedDeliveries" : null,
    "currentRoutingOrder" : null,
    "editors" : null,
    "errorDetails" : null,
    "inPersonSigners" : null,
    "intermediaries" : null,
    "notaries" : null,
    "recipientCount" : null,
    "seals" : null,
    "signers" : null,
    "witnesses" : null
  },
  "sentDateTime" : "2020-08-13T22:03:05.8370000Z",
  "status" : "completed"
}
Table 307. Definition of the returned fields
Path Type Description

sender

Object

Sender object

sender.userName

String

Username

sender.userId

String

User id

sender.accountId

String

Account id

sender.email

String

Sender email

sender.accountName

String

Account name

sender.activationAccessCode

String

Activation code

sender.errorDetails

Object

Error details

sender.loginStatus

String

Login status

sender.membershipId

String

Membership id

sender.sendActivationEmail

String

Send activation email

sender.uri

String

Sender user uri

sender.userStatus

String

User status

sender.userType

String

User type

recipients.agents

Array

Agents

recipients.carbonCopies

Array

Carbon copies

recipients.certifiedDeliveries

Array

Certified deliveries

recipients.currentRoutingOrder

String

Current routing order

recipients.editors

Array

Editors

recipients.errorDetails

Object

Error details

recipients.inPersonSigners

Array

In person signers

recipients.intermediaries

Array

Intermediaries

recipients.notaries

Array

Notaries

recipients.recipientCount

String

Recipient count

recipients.seals

Array

Seals

recipients.signers

Array

Signers

recipients.witnesses

Array

Witnesses

sentDateTime

String

Sent date

status

String

Status

8.15.5. Create Envelope

Table 308. /v3/groups/{group}/files/{file}/docusign
Parameter Description

group

Group id

file

File id

HTTP
POST /v3/groups/1/files/1/docusign HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 149

{
  "subject" : "Great subject",
  "signers" : [ {
    "email" : "email@example.com",
    "name" : "Jack Bauer"
  } ],
  "redirect" : "example.com"
}
HTTPie
$ echo '{
  "subject" : "Great subject",
  "signers" : [ {
    "email" : "email@example.com",
    "name" : "Jack Bauer"
  } ],
  "redirect" : "example.com"
}' | http POST 'https://api.clinked.com/v3/groups/1/files/1/docusign' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/files/1/docusign' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
  "subject" : "Great subject",
  "signers" : [ {
    "email" : "email@example.com",
    "name" : "Jack Bauer"
  } ],
  "redirect" : "example.com"
}'
Table 309. Request fields
Path Type Description

subject

String

Subject

signers

Array

Array of signers

signers[].email

String

Signer email

signers[].name

String

Signer name

redirect

String

Redirect

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 63

{
  "envelopeWaitId" : "eefb6032-201c-4ad5-af88-df10643d4585"
}
Table 310. Definition of the returned fields
Path Type Description

envelopeWaitId

String

Envelope wait id

8.15.6. Download Envelope

Table 311. /v3/groups/{group}/files/{file}/docusign/{envelope}/download
Parameter Description

group

Group id

file

File id

envelope

Envelope id

HTTP
GET /v3/groups/1/files/1/docusign/1/download HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/files/1/docusign/1/download' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/files/1/docusign/1/download' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Disposition: attachment; filename="envelopeName.pdf"
Pragma: public
Cache-Control: max-age=30, must-revalidate
Expires: Thu, 18 Apr 2024 09:45:06 GMT
Content-Type: application/pdf
Content-Length: 12

Hello World!

8.16. Batch Download

The file batch download capability in this app allows users to conveniently and efficiently download multiple files simultaneously, saving time and effort.

8.16.1. Submit download request

Table 312. /v3/groups/{group}/filesBatchDownload
Parameter Description

group

Group id

HTTP
POST /v3/groups/1/filesBatchDownload HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Accept: application/json
Host: api.clinked.com
Content-Length: 5

[ 1 ]
HTTPie
$ echo '[ 1 ]' | http POST 'https://api.clinked.com/v3/groups/1/filesBatchDownload' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>' \
    'Accept:application/json'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/filesBatchDownload' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -H 'Accept: application/json' \
    -d '[ 1 ]'
Table 313. Request fields
Path Type Description

[]

Array

Array of file id’s

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 38

"9a5f327a-ded2-4878-ae50-b16898d75134"
Table 314. Definition of the returned fields
Type Description

String

Job id

8.16.2. Job Status

Table 315. /v3/groups/{group}/filesBatchDownload/{id}/status
Parameter Description

group

Group id

id

Job id

HTTP
GET /v3/groups/1/filesBatchDownload/1/status HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Accept: application/json
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/filesBatchDownload/1/status' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>' \
    'Accept:application/json'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/filesBatchDownload/1/status' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -H 'Accept: application/json'
Example of a success response for Completed job
HTTP/1.1 200 OK
Example of a success response for job in Progress
HTTP/1.1 206 Partial Content
Content-Type: application/json;charset=UTF-8
Content-Length: 41

{
  "complete" : 999,
  "total" : 10000
}
Table 316. Definition of the returned fields
Path Type Description

complete

Number

Completed bytes

total

Number

Total bytes

8.16.3. Download Files

Table 317. /v3/groups/{group}/filesBatchDownload/{id}
Parameter Description

group

Group id

id

Job id

HTTP
GET /v3/groups/1/filesBatchDownload/1 HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Accept: application/json
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/filesBatchDownload/1' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>' \
    'Accept:application/json'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/filesBatchDownload/1' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -H 'Accept: application/json'
Example of a success response
HTTP/1.1 302 Found
Location: download.com

8.17. Upload a file

Uploading a file can be achieved in two ways depending on its size.

Clinked API allows to upload small files (< 100 MB) with single request. But if size of a file is larger than that, or it is unknown beforehand, you should upload it by chunks instead.

The process of uploading a file is as follows:

  1. Upload a file with single request or chunks.

  2. Once a file is uploaded successfully, it will be saved as a temporary file in Clinked. Temporary files are not visible in a portal and will expire in 24h if not used.

  3. Get uploaded temporary file ID, which is generated and returned in a response body after a successful upload.

  4. Use this temporary file ID to create a file in a group as the last step. This will make a file visible and ready to use in a portal.

8.17.1. Small file upload

This allows to quickly upload a file with single request.

Do not use this upload method if a file is larger than 100 MB.

After uploading a file, its ID can be used to create a file in a group straight away.

HTTP
POST /v3/tempFiles HTTP/1.1
Content-Type: multipart/form-data; boundary=6o2knFse3p53ty9dmcQvWAIx1zInP11uCfbm
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com

--6o2knFse3p53ty9dmcQvWAIx1zInP11uCfbm
Content-Disposition: form-data; name=file; filename=hello.txt
Content-Type: text/plain

Hello, World!
--6o2knFse3p53ty9dmcQvWAIx1zInP11uCfbm--
HTTPie
$ http --form POST 'https://api.clinked.com/v3/tempFiles' \
    'file'@'hello.txt' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/tempFiles' -i -X POST \
    -H 'Content-Type: multipart/form-data' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -F 'file=@hello.txt;type=text/plain'
Example of a success response
HTTP/1.1 201 Created
Location: https://api.clinked.com/v3/tempFiles/ORSXQ5BPOBWGC2LOHIYTGORTGFTGMMRZMMZS2MRXMJSC2NDEGQ3C2OLEGMYC2MZVGY3WCM3EGZSDOZRUHJTGC3DTMU5G45LMNQ======
Content-Type: application/json;charset=UTF-8
Content-Length: 119

{
  "id" : "ORSXQ5BPOBWGC2LOHIYTGORTGFTGMMRZMMZS2MRXMJSC2NDEGQ3C2OLEGMYC2MZVGY3WCM3EGZSDOZRUHJTGC3DTMU5G45LMNQ======"
}
Table 318. Definition of the returned fields
Path Type Description

id

String

Temporary file ID

8.17.2. Large file upload

This allows to upload a file of any size. This is preferred method in most cases.

The flow looks like this:

  1. Create a temporary file, which initializes upload session.

  2. Upload small file chunks one by one, see examples below: chunk #1 and chunk #2.

  3. Once all file chunks are uploaded, you can finish upload which will create a file in a group.

Create a temporary file

Initializes file upload session by creating a temporary file in the system.

HTTP
POST /v3/tempFiles/parts HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 76

{
    "name": "hello.txt",
    "contentType": "text/plain",
    "size": 12
}
HTTPie
$ echo '{
    "name": "hello.txt",
    "contentType": "text/plain",
    "size": 12
}' | http POST 'https://api.clinked.com/v3/tempFiles/parts' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/tempFiles/parts' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
    "name": "hello.txt",
    "contentType": "text/plain",
    "size": 12
}'
Table 319. Request fields
Path Type Description

name

String

File name

contentType

String

File content type

size

Number

File size in bytes

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 71

{
  "id" : "ORSXQ5BPOBWGC2LOHIYTEOTIMVWGY3ZOOR4HIOTUOJ2WKOTOOVWGY==="
}
Table 320. Definition of the returned fields
Path Type Description

id

String

Temporary file ID

Upload chunk #1

First file chunk upload example.

Table 321. /v3/tempFiles/parts/{tempfile}
Parameter Description

tempfile

Temporary file id

HTTP
POST /v3/tempFiles/parts/ORSXQ5BPOBWGC2LOHIYTEOTIMVWGY3ZOOR4HIOTUOJ2WKOTOOVWGY=== HTTP/1.1
Content-Type: multipart/form-data; boundary=6o2knFse3p53ty9dmcQvWAIx1zInP11uCfbm
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com

--6o2knFse3p53ty9dmcQvWAIx1zInP11uCfbm
Content-Disposition: form-data; name=partNumber

1
--6o2knFse3p53ty9dmcQvWAIx1zInP11uCfbm
Content-Disposition: form-data; name=file; filename=hello.txt
Content-Type: text/plain

Hello
--6o2knFse3p53ty9dmcQvWAIx1zInP11uCfbm--
HTTPie
$ http --form POST 'https://api.clinked.com/v3/tempFiles/parts/ORSXQ5BPOBWGC2LOHIYTEOTIMVWGY3ZOOR4HIOTUOJ2WKOTOOVWGY===' \
    'file'@'hello.txt' \
    'Authorization:Bearer <YOUR-TOKEN>' \
    'partNumber=1'
Curl
$ curl 'https://api.clinked.com/v3/tempFiles/parts/ORSXQ5BPOBWGC2LOHIYTEOTIMVWGY3ZOOR4HIOTUOJ2WKOTOOVWGY===' -i -X POST \
    -H 'Content-Type: multipart/form-data' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -F 'file=@hello.txt;type=text/plain' \
    -F 'partNumber=1'
Example of a success response
HTTP/1.1 202 Accepted
Upload chunk #2

Seconds file chunk upload example.

Table 322. /v3/tempFiles/parts/{tempfile}
Parameter Description

tempfile

Temporary file id

HTTP
POST /v3/tempFiles/parts/ORSXQ5BPOBWGC2LOHIYTEOTIMVWGY3ZOOR4HIOTUOJ2WKOTOOVWGY=== HTTP/1.1
Content-Type: multipart/form-data; boundary=6o2knFse3p53ty9dmcQvWAIx1zInP11uCfbm
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com

--6o2knFse3p53ty9dmcQvWAIx1zInP11uCfbm
Content-Disposition: form-data; name=partNumber

2
--6o2knFse3p53ty9dmcQvWAIx1zInP11uCfbm
Content-Disposition: form-data; name=file; filename=hello.txt
Content-Type: text/plain

World!
--6o2knFse3p53ty9dmcQvWAIx1zInP11uCfbm--
HTTPie
$ http --form POST 'https://api.clinked.com/v3/tempFiles/parts/ORSXQ5BPOBWGC2LOHIYTEOTIMVWGY3ZOOR4HIOTUOJ2WKOTOOVWGY===' \
    'file'@'hello.txt' \
    'Authorization:Bearer <YOUR-TOKEN>' \
    'partNumber=2'
Curl
$ curl 'https://api.clinked.com/v3/tempFiles/parts/ORSXQ5BPOBWGC2LOHIYTEOTIMVWGY3ZOOR4HIOTUOJ2WKOTOOVWGY===' -i -X POST \
    -H 'Content-Type: multipart/form-data' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -F 'file=@hello.txt;type=text/plain' \
    -F 'partNumber=2'
Example of a success response
HTTP/1.1 202 Accepted

8.17.3. Finish upload / create group file

This finishes upload and creates a file in a group of choice to make it visible for users.

Table 323. /v3/groups/{group}/files/{folder}
Parameter Description

group

Group id

folder

Folder id

HTTP
POST /v3/groups/1/files/ HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 180

{
    "friendlyName": "hello.txt",
    "tempFile": "MFYHA3DJMNQXI2LPNYXXAZDGHIYTAMB2JV4SAZTJNRSS44DEHJTGC3DTMU5G45LMNQ======",
    "sharing": "MEMBERS",
    "memberPermission": 8
}
HTTPie
$ echo '{
    "friendlyName": "hello.txt",
    "tempFile": "MFYHA3DJMNQXI2LPNYXXAZDGHIYTAMB2JV4SAZTJNRSS44DEHJTGC3DTMU5G45LMNQ======",
    "sharing": "MEMBERS",
    "memberPermission": 8
}' | http POST 'https://api.clinked.com/v3/groups/1/files/' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/files/' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
    "friendlyName": "hello.txt",
    "tempFile": "MFYHA3DJMNQXI2LPNYXXAZDGHIYTAMB2JV4SAZTJNRSS44DEHJTGC3DTMU5G45LMNQ======",
    "sharing": "MEMBERS",
    "memberPermission": 8
}'
Table 324. Request fields
Path Type Description

friendlyName

String

Full file name

sharing

String

Sharing option, determines who can see a file: [NONE, DEFAULT, MEMBERS, PUBLIC]

memberPermission

Number

Member file permission mask

tempFile

String

Temporary file ID

Example of a success response
HTTP/1.1 201 Created
Content-Type: application/json;charset=UTF-8
Content-Length: 1059

{
  "id" : 5,
  "contextKey" : {
    "id" : 15
  },
  "sharing" : "MEMBERS",
  "memberPermission" : 8,
  "following" : false,
  "shareCount" : 0,
  "userAces" : false,
  "userPermission" : 16,
  "commentCount" : 0,
  "name" : "hello_txt",
  "friendlyName" : "hello.txt",
  "contentType" : "application/pdf",
  "size" : 10,
  "uploaded" : {
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "name" : "Jack Bauer",
    "username" : "jack"
  },
  "tags" : null,
  "locked" : false,
  "locker" : null,
  "lastModified" : 1713433474273,
  "summary" : null,
  "approvalSummary" : {
    "pendingCount" : 0,
    "rejectedCount" : 0,
    "approvedCount" : 0,
    "count" : 0,
    "activeRequest" : null
  },
  "path" : [ ],
  "versions" : 0,
  "tasksCount" : 0,
  "previewInfo" : null,
  "watermark" : false,
  "jobs" : [ ],
  "group" : {
    "id" : 1,
    "name" : "explore_clinked",
    "friendlyName" : "Explore Clinked"
  }
}
Table 325. Definition of the returned fields
Path Type Description

id

Number

File id

contextKey

Object

Context key

contextKey.id

Number

Context key ID

group

Object

Base information about the group

name

String

Unique file name, generated automatically by API

friendlyName

String

Full file name that should be visible to a user

contentType

String

Content type

size

Number

Size in bytes

uploaded

Object

User who uploaded a file

versions

Number

Number of versions

sharing

String

Sharing option, determines who can see a file: [NONE, DEFAULT, MEMBERS, PUBLIC]

memberPermission

Number

Member file permission mask

tags

String

Tags separated by comma

locked

Boolean

File is locked and should not be updated

locker

Object

User locked the file

lastModified

Number

Last modification date (timestamp in milliseconds)

previewInfo

Object

Preview data if available

path

Array

Array of all file records making up the path of this file (incl. itself)

parent

Object

File parent folder

approvalSummary

Object

File approval data

approvalSummary.pendingCount

Number

File approval data

approvalSummary.rejectedCount

Number

File approval data

approvalSummary.approvedCount

Number

File approval data

approvalSummary.count

Number

File approval data

summary

String

Latest file version comment

following

Boolean

Indicates that user is following the file record or not

shareCount

Number

Amount of shares

userAces

Boolean

Indicates that the file record has individual access control entries in the file record ACL

userPermission

Number

The current user permission to file record

commentCount

Number

Amount of comments

tasksCount

Number

Amount of tasks linked to this file

watermark

Boolean

File watermark status

jobs

Array

Active file jobs

group.id

Number

User / profile id

group.name

String

Group name slug, used for internal identification and URIs

group.friendlyName

String

Full group name, visible to a user

uploaded.name

String

User’s full name

uploaded.username

String

User’s usernae if the user is defined

uploaded.user

Object

Detailed user data, will be set to null if user is deleted

uploaded.user.id

Number

User / profile id

uploaded.user.name

String

Full name

uploaded.user.username

String

Username

uploaded.user.logo

Boolean

Avatar available

uploaded.user.jobTitle

String

Job title

uploaded.user.lastModified

Number

Last profile update date

9. Notes

Notes provide an easy way to collaborate or share information in a Group. In addition, the information contained in note pages, unless restricted by permission settings, can be edited by all members of the group simply by clicking "Edit" and then making changes as you would on a word processing programme. Notes are an easy-to-use wiki platform equipped with familiar word editor features and are optimized for multiple editors who can co-operate on writing and managing documents.

For more information about the feature itself, see our Help Center page.

This section shows how to create and manage your group notes.

9.1. List notes

Table 326. /v3/groups/{group}/notes
Parameter Description

group

Group id

HTTP
GET /v3/groups/1/notes?page=1&size=25&orderBy=dateCreated&ascending=false&type=page HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/notes?page=1&size=25&orderBy=dateCreated&ascending=false&type=page' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/notes?page=1&size=25&orderBy=dateCreated&ascending=false&type=page' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 327. Request parameters
Parameter Description

page

Page number to load

size

Page size

orderBy

Order field

ascending

Ascending order direction

type

Filter by note type: 'page' or 'template'

name

Find note by name

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1385

{
  "items" : [ {
    "id" : 1,
    "contextKey" : {
      "id" : 390
    },
    "sharing" : "MEMBERS",
    "memberPermission" : 8,
    "following" : false,
    "userAces" : false,
    "userPermission" : 16,
    "attachmentCount" : 0,
    "name" : "home_page",
    "friendlyName" : "Home Page",
    "template" : false,
    "tags" : "lorem,ipsum",
    "content" : "",
    "dateCreated" : 1514764800000,
    "lastModified" : 1514764800000,
    "creator" : {
      "id" : 1,
      "username" : "jack",
      "enabled" : true,
      "locked" : false,
      "name" : "Jack Bauer",
      "jobTitle" : "Marketing",
      "organisation" : "Clinked",
      "email" : "jack.bauer@clinked.com",
      "address" : "71 Pilgrim Avenue",
      "telephone" : "123456789",
      "other" : null,
      "logo" : false,
      "timeZone" : "UTC",
      "locale" : "en",
      "verifiedEmail" : false,
      "twoFactorAuthentication" : false,
      "twoFactorMode" : null,
      "lastModified" : 1514764800000,
      "dateFormat" : null,
      "twentyFourHourTimeFormat" : false,
      "lastActive" : null
    },
    "versions" : 0,
    "pageType" : "PAGE",
    "group" : {
      "id" : 1,
      "name" : "explore_clinked",
      "friendlyName" : "Explore Clinked"
    }
  } ],
  "currentPage" : 1,
  "totalPages" : 1,
  "pageSize" : 1,
  "totalResults" : 1,
  "nextPage" : false,
  "previousPage" : false
}
Table 328. Definition of the returned fields
Path Type Description

currentPage

Number

Current page

pageSize

Number

Entries per page

items

Array

Page entries

nextPage

Boolean

Next page exists

totalPages

Number

Total amount of available pages

previousPage

Boolean

Previous page exists

totalResults

Number

Total amount of entries

items[].id

Number

Note id

items[].name

String

Unique name (slug)

items[].friendlyName

String

Name

items[].contextKey

Object

Context key

items[].contextKey.id

Number

Context key ID

items[].group

Object

Base details about group

items[].template

Boolean

Is a template

items[].tags

String

Comma-separated list of tags

items[].content

String

Note content

items[].sharing

String

Sharing option, determines who can see a note: [NONE, DEFAULT, MEMBERS, PUBLIC]

items[].memberPermission

Number

Member file permission mask

items[].attachmentCount

Number

Amount of attachments

items[].commentCount

Number

Amount of comments

items[].following

Boolean

User is following note

items[].shareCount

Number

Amount of shares

items[].userAces

Boolean

Note has individual user permissions

items[].userPermission

Number

User permission

items[].attachments

Array

List of attachments

items[].creator

Object

User created the page

items[].lastModified

Number

Date when note was last modified

items[].versions

Number

Total page vesions

items[].dateCreated

Number

Date when note was created

items[].pageType

String

PAGE or FOLDER

items[].creator.id

Number

User id

items[].creator.name

String

Full name

items[].creator.username

String

Username

items[].creator.logo

Boolean

Profile picture is defined

items[].creator.jobTitle

String

Job title

items[].creator.lastModified

Number

Last modified date

items[].creator.enabled

Boolean

Is user enabled

items[].creator.locked

Boolean

Is user locked

items[].creator.organisation

String

Organisation name

items[].creator.email

String

Email address

items[].creator.address

String

Address

items[].creator.telephone

String

Phone number

items[].creator.other

String

Optional other information

items[].creator.timeZone

String

Time zone ID

items[].creator.locale

String

Locale

items[].creator.verifiedEmail

Boolean

Is email verified

items[].creator.twoFactorAuthentication

Boolean

Is 2FA enabled

items[].creator.twoFactorMode

String

2FA mode: [AUTHENTICATOR, SMS, EMAIL]

items[].creator.twentyFourHourTimeFormat

Boolean

Time format preference - 24hr or 12hr format

items[].creator.lastActive

Number

Date the user was last active

items[].creator.dateFormat

Boolean

Date format preference - YMD (Year-Month-Day), MDY (Month/Day/Year) or DMY(Day/Month/Year)

items[].group.id

Number

User / profile id

items[].group.name

String

Group name slug, used for internal identification and URIs

items[].group.friendlyName

String

Full group name, visible to a user

9.2. Get note details

Returns single note detailed information and content.

Table 329. /v3/groups/{group}/notes/{note}
Parameter Description

group

Group id

note

Note id

HTTP
GET /v3/groups/1/notes/1 HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/notes/1' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/notes/1' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1319

{
  "id" : 1,
  "contextKey" : {
    "id" : 866
  },
  "sharing" : "MEMBERS",
  "memberPermission" : 8,
  "following" : false,
  "shareCount" : 0,
  "userAces" : false,
  "userPermission" : 16,
  "attachmentCount" : 0,
  "commentCount" : 0,
  "name" : "home_page",
  "friendlyName" : "Home Page",
  "template" : false,
  "tags" : "lorem,ipsum",
  "content" : "<h2>Welcome to your Group Welcome Note!</h2><p><strong>This is a sample note to help you explore Clinked.</strong>",
  "dateCreated" : 1514764800000,
  "lastModified" : 1514764800000,
  "creator" : {
    "id" : 1,
    "username" : "jack",
    "enabled" : true,
    "locked" : false,
    "name" : "Jack Bauer",
    "jobTitle" : "Marketing",
    "organisation" : "Clinked",
    "email" : "jack.bauer@clinked.com",
    "address" : "71 Pilgrim Avenue",
    "telephone" : "123456789",
    "other" : null,
    "logo" : false,
    "timeZone" : "UTC",
    "locale" : "en",
    "verifiedEmail" : false,
    "twoFactorAuthentication" : false,
    "twoFactorMode" : null,
    "lastModified" : 1514764800000,
    "dateFormat" : null,
    "twentyFourHourTimeFormat" : false,
    "lastActive" : null
  },
  "versions" : 0,
  "attachments" : [ ],
  "pageType" : "PAGE",
  "group" : {
    "id" : 1,
    "name" : "explore_clinked",
    "friendlyName" : "Explore Clinked"
  }
}
Table 330. Definition of the returned fields
Path Type Description

id

Number

Note id

name

String

Unique name (slug)

friendlyName

String

Name

contextKey

Object

Context key

contextKey.id

Number

Context key ID

group

Object

Base details about group

template

Boolean

Is a template

tags

String

Comma-separated list of tags

content

String

Note content

sharing

String

Sharing option, determines who can see a note: [NONE, DEFAULT, MEMBERS, PUBLIC]

memberPermission

Number

Member file permission mask

attachmentCount

Number

Amount of attachments

commentCount

Number

Amount of comments

following

Boolean

User is following note

shareCount

Number

Amount of shares

userAces

Boolean

Note has individual user permissions

userPermission

Number

User permission

attachments

Array

List of attachments

creator

Object

User created the page

lastModified

Number

Date when note was last modified

versions

Number

Total page vesions

dateCreated

Number

Date when note was created

pageType

String

PAGE or FOLDER

creator.id

Number

User id

creator.name

String

Full name

creator.username

String

Username

creator.logo

Boolean

Profile picture is defined

creator.jobTitle

String

Job title

creator.lastModified

Number

Last modified date

creator.enabled

Boolean

Is user enabled

creator.locked

Boolean

Is user locked

creator.organisation

String

Organisation name

creator.email

String

Email address

creator.address

String

Address

creator.telephone

String

Phone number

creator.other

String

Optional other information

creator.timeZone

String

Time zone ID

creator.locale

String

Locale

creator.verifiedEmail

Boolean

Is email verified

creator.twoFactorAuthentication

Boolean

Is 2FA enabled

creator.twoFactorMode

String

2FA mode: [AUTHENTICATOR, SMS, EMAIL]

creator.twentyFourHourTimeFormat

Boolean

Time format preference - 24hr or 12hr format

creator.lastActive

Number

Date the user was last active

creator.dateFormat

Boolean

Date format preference - YMD (Year-Month-Day), MDY (Month/Day/Year) or DMY(Day/Month/Year)

group.id

Number

User / profile id

group.name

String

Group name slug, used for internal identification and URIs

group.friendlyName

String

Full group name, visible to a user

9.3. Create note

Table 331. /v3/groups/{group}/notes
Parameter Description

group

Group id

HTTP
POST /v3/groups/1/notes HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 410

{
    "friendlyName": "Hello Lorem!",
    "content": "Dolorem ex perspiciatis quae alias necessitatibus repellendus.",
    "template": false,
    "sharing": "MEMBERS",
    "memberPermission": 8,
    "tags": "lorem,hello",
    "attachments": [
        {
            "friendlyName": "hello.jpg",
            "tempFile": "MFYHA3DJMNQXI2LPNYXXAZDGHIYTAMB2JV4SAZTJNRSS44DEHJTGC3DTMU5G45LMNQ======"
        }
    ]
}
HTTPie
$ echo '{
    "friendlyName": "Hello Lorem!",
    "content": "Dolorem ex perspiciatis quae alias necessitatibus repellendus.",
    "template": false,
    "sharing": "MEMBERS",
    "memberPermission": 8,
    "tags": "lorem,hello",
    "attachments": [
        {
            "friendlyName": "hello.jpg",
            "tempFile": "MFYHA3DJMNQXI2LPNYXXAZDGHIYTAMB2JV4SAZTJNRSS44DEHJTGC3DTMU5G45LMNQ======"
        }
    ]
}' | http POST 'https://api.clinked.com/v3/groups/1/notes' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/notes' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
    "friendlyName": "Hello Lorem!",
    "content": "Dolorem ex perspiciatis quae alias necessitatibus repellendus.",
    "template": false,
    "sharing": "MEMBERS",
    "memberPermission": 8,
    "tags": "lorem,hello",
    "attachments": [
        {
            "friendlyName": "hello.jpg",
            "tempFile": "MFYHA3DJMNQXI2LPNYXXAZDGHIYTAMB2JV4SAZTJNRSS44DEHJTGC3DTMU5G45LMNQ======"
        }
    ]
}'
Table 332. Request fields
Path Type Description

friendlyName

String

Full name

content

String

Content

template

Boolean

Is a template

sharing

String

Sharing option, determines who can see a note: [NONE, DEFAULT, MEMBERS, PUBLIC]

memberPermission

Number

Comma-separated list of tags

tags

String

Comma-separated list of tags

attachments

Array

List of initial attachments to be created

attachments[].friendlyName

String

Attachment name

attachments[].tempFile

String

Temporary file id

Example of a success response
HTTP/1.1 201 Created
Content-Type: application/json;charset=UTF-8
Content-Length: 1251

{
  "id" : 10,
  "contextKey" : {
    "id" : 233
  },
  "sharing" : "MEMBERS",
  "memberPermission" : 8,
  "following" : false,
  "shareCount" : 0,
  "userAces" : false,
  "userPermission" : 16,
  "attachmentCount" : 1,
  "commentCount" : 0,
  "name" : "hello_lorem_",
  "friendlyName" : "Hello Lorem!",
  "template" : false,
  "tags" : "lorem,hello",
  "content" : "Dolorem ex perspiciatis quae alias necessitatibus repellendus.",
  "dateCreated" : 1713433512853,
  "lastModified" : 1713433512853,
  "creator" : {
    "id" : 1,
    "username" : "jack",
    "enabled" : true,
    "locked" : false,
    "name" : "Jack Bauer",
    "jobTitle" : "Marketing",
    "organisation" : "Clinked",
    "email" : "jack.bauer@clinked.com",
    "address" : "71 Pilgrim Avenue",
    "telephone" : "123456789",
    "other" : null,
    "logo" : false,
    "timeZone" : "UTC",
    "locale" : "en",
    "verifiedEmail" : false,
    "twoFactorAuthentication" : false,
    "twoFactorMode" : null,
    "lastModified" : 1514764800000,
    "dateFormat" : null,
    "twentyFourHourTimeFormat" : false,
    "lastActive" : null
  },
  "versions" : 0,
  "pageType" : "PAGE",
  "group" : {
    "id" : 1,
    "name" : "explore_clinked",
    "friendlyName" : "Explore Clinked"
  }
}
Table 333. Definition of the returned fields
Path Type Description

id

Number

Note id

name

String

Unique name (slug)

friendlyName

String

Name

contextKey

Object

Context key

contextKey.id

Number

Context key ID

group

Object

Base details about group

template

Boolean

Is a template

tags

String

Comma-separated list of tags

content

String

Note content

sharing

String

Sharing option, determines who can see a note: [NONE, DEFAULT, MEMBERS, PUBLIC]

memberPermission

Number

Member file permission mask

attachmentCount

Number

Amount of attachments

commentCount

Number

Amount of comments

following

Boolean

User is following note

shareCount

Number

Amount of shares

userAces

Boolean

Note has individual user permissions

userPermission

Number

User permission

attachments

Array

List of attachments

creator

Object

User created the page

lastModified

Number

Date when note was last modified

versions

Number

Total page vesions

dateCreated

Number

Date when note was created

pageType

String

PAGE or FOLDER

creator.id

Number

User id

creator.name

String

Full name

creator.username

String

Username

creator.logo

Boolean

Profile picture is defined

creator.jobTitle

String

Job title

creator.lastModified

Number

Last modified date

creator.enabled

Boolean

Is user enabled

creator.locked

Boolean

Is user locked

creator.organisation

String

Organisation name

creator.email

String

Email address

creator.address

String

Address

creator.telephone

String

Phone number

creator.other

String

Optional other information

creator.timeZone

String

Time zone ID

creator.locale

String

Locale

creator.verifiedEmail

Boolean

Is email verified

creator.twoFactorAuthentication

Boolean

Is 2FA enabled

creator.twoFactorMode

String

2FA mode: [AUTHENTICATOR, SMS, EMAIL]

creator.twentyFourHourTimeFormat

Boolean

Time format preference - 24hr or 12hr format

creator.lastActive

Number

Date the user was last active

creator.dateFormat

Boolean

Date format preference - YMD (Year-Month-Day), MDY (Month/Day/Year) or DMY(Day/Month/Year)

group.id

Number

User / profile id

group.name

String

Group name slug, used for internal identification and URIs

group.friendlyName

String

Full group name, visible to a user

9.4. Update note

Table 334. /v3/groups/{group}/notes/{note}
Parameter Description

group

Group id

note

Note id

HTTP
PATCH /v3/groups/1/notes/1 HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 184

{
    "friendlyName": "Hello Lorem: updated!",
    "content": "Other content.",
    "template": false,
    "sharing": "NONE",
    "memberPermission": 1,
    "tags": "lorem,hello,upd"
}
HTTPie
$ echo '{
    "friendlyName": "Hello Lorem: updated!",
    "content": "Other content.",
    "template": false,
    "sharing": "NONE",
    "memberPermission": 1,
    "tags": "lorem,hello,upd"
}' | http PATCH 'https://api.clinked.com/v3/groups/1/notes/1' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/notes/1' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
    "friendlyName": "Hello Lorem: updated!",
    "content": "Other content.",
    "template": false,
    "sharing": "NONE",
    "memberPermission": 1,
    "tags": "lorem,hello,upd"
}'
Table 335. Request fields
Path Type Description

friendlyName

String

Full name

content

String

Content

template

Boolean

Is a template

sharing

String

Sharing option, determines who can see a note: [NONE, DEFAULT, MEMBERS, PUBLIC]

memberPermission

Number

Comma-separated list of tags

tags

String

Comma-separated list of tags

attachments

Array

List of initial attachments to be created

attachments[].friendlyName

String

Attachment name

attachments[].tempFile

String

Temporary file id

parentGroupId

Number

Parent group id, used when moving to different group

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1209

{
  "id" : 1,
  "contextKey" : {
    "id" : 897
  },
  "sharing" : "NONE",
  "memberPermission" : 1,
  "following" : false,
  "shareCount" : 0,
  "userAces" : false,
  "userPermission" : 16,
  "attachmentCount" : 0,
  "commentCount" : 0,
  "name" : "home_page",
  "friendlyName" : "Hello Lorem: updated!",
  "template" : false,
  "tags" : "lorem,hello,upd",
  "content" : "Other content.",
  "dateCreated" : 1514764800000,
  "lastModified" : 1514764800000,
  "creator" : {
    "id" : 1,
    "username" : "jack",
    "enabled" : true,
    "locked" : false,
    "name" : "Jack Bauer",
    "jobTitle" : "Marketing",
    "organisation" : "Clinked",
    "email" : "jack.bauer@clinked.com",
    "address" : "71 Pilgrim Avenue",
    "telephone" : "123456789",
    "other" : null,
    "logo" : false,
    "timeZone" : "UTC",
    "locale" : "en",
    "verifiedEmail" : false,
    "twoFactorAuthentication" : false,
    "twoFactorMode" : null,
    "lastModified" : 1514764800000,
    "dateFormat" : null,
    "twentyFourHourTimeFormat" : false,
    "lastActive" : null
  },
  "versions" : 0,
  "pageType" : "PAGE",
  "group" : {
    "id" : 1,
    "name" : "explore_clinked",
    "friendlyName" : "Explore Clinked"
  }
}
Table 336. Definition of the returned fields
Path Type Description

id

Number

Note id

name

String

Unique name (slug)

friendlyName

String

Name

contextKey

Object

Context key

contextKey.id

Number

Context key ID

group

Object

Base details about group

template

Boolean

Is a template

tags

String

Comma-separated list of tags

content

String

Note content

sharing

String

Sharing option, determines who can see a note: [NONE, DEFAULT, MEMBERS, PUBLIC]

memberPermission

Number

Member file permission mask

attachmentCount

Number

Amount of attachments

commentCount

Number

Amount of comments

following

Boolean

User is following note

shareCount

Number

Amount of shares

userAces

Boolean

Note has individual user permissions

userPermission

Number

User permission

attachments

Array

List of attachments

creator

Object

User created the page

lastModified

Number

Date when note was last modified

versions

Number

Total page vesions

dateCreated

Number

Date when note was created

pageType

String

PAGE or FOLDER

creator.id

Number

User id

creator.name

String

Full name

creator.username

String

Username

creator.logo

Boolean

Profile picture is defined

creator.jobTitle

String

Job title

creator.lastModified

Number

Last modified date

creator.enabled

Boolean

Is user enabled

creator.locked

Boolean

Is user locked

creator.organisation

String

Organisation name

creator.email

String

Email address

creator.address

String

Address

creator.telephone

String

Phone number

creator.other

String

Optional other information

creator.timeZone

String

Time zone ID

creator.locale

String

Locale

creator.verifiedEmail

Boolean

Is email verified

creator.twoFactorAuthentication

Boolean

Is 2FA enabled

creator.twoFactorMode

String

2FA mode: [AUTHENTICATOR, SMS, EMAIL]

creator.twentyFourHourTimeFormat

Boolean

Time format preference - 24hr or 12hr format

creator.lastActive

Number

Date the user was last active

creator.dateFormat

Boolean

Date format preference - YMD (Year-Month-Day), MDY (Month/Day/Year) or DMY(Day/Month/Year)

group.id

Number

User / profile id

group.name

String

Group name slug, used for internal identification and URIs

group.friendlyName

String

Full group name, visible to a user

9.5. Remove note

Moves note to group trash bin.

You can always restore trash bin items later, see group trash section for details.
Table 337. /v3/groups/{group}/notes/{note}
Parameter Description

group

Group id

note

Note id

HTTP
DELETE /v3/groups/1/notes/1 HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/groups/1/notes/1' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/notes/1' -i -X DELETE \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 260

[ {
  "id" : 15,
  "contextKey" : {
    "id" : 860
  },
  "user" : {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "dateDeleted" : 1713433512878
} ]
Table 338. Definition of the returned fields
Path Type Description

[]id

Number

File id

[]contextKey

Object

Context key

[]contextKey.id

Number

Context key ID

[]user

Object

User who removed this

[]dateDeleted

Number

Remove timestamp

[]user.id

Number

User / profile id

[]user.name

String

Full name

[]user.username

String

Username

[]user.logo

Boolean

Avatar available

[]user.jobTitle

String

Job title

[]user.lastModified

Number

Last profile update date

9.6. Delete version

Table 339. /v3/notes/{note}/versions/{version}
Parameter Description

note

Note to delete version for

version

Version to delete

HTTP
DELETE /v3/notes/1/versions/2 HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/notes/1/versions/2' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/notes/1/versions/2' -i -X DELETE \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

9.7. Restore version

Table 340. /v3/notes/{note}/versions/{version}
Parameter Description

note

Note to restore version for

version

Version to restore

HTTP
POST /v3/notes/1/versions/2 HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http POST 'https://api.clinked.com/v3/notes/1/versions/2' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/notes/1/versions/2' -i -X POST \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 410

{
  "id" : 32,
  "versionNumber" : 2,
  "uploaded" : {
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "name" : "Jack Bauer",
    "username" : "jack"
  },
  "summary" : "Pol, a bene elevatus, historia!",
  "lastModified" : 1713433513440,
  "size" : 429889820629947392
}
Table 341. Definition of the returned fields
Path Type Description

id

Number

Id

versionNumber

Number

Version number

uploaded

Object

Who uploaded a file

summary

String

Optional version summary

lastModified

Number

Last modification date

size

Number

Context size in bytes

uploaded.name

String

User’s full name

uploaded.user

Object

Detailed user data, will be set to null if user is deleted

uploaded.username

String

User username if user is defined

uploaded.user.id

Number

User id

uploaded.user.name

String

Full name

uploaded.user.username

String

Username

uploaded.user.logo

Boolean

Profile picture is defined

uploaded.user.jobTitle

String

Job title

uploaded.user.lastModified

Number

Last modified date

10. Events

The events tool allows you to keep on top of your daily schedule, here you can input meetings or events and invite others to join you. Content Contributors and Administrators are able to use this feature by inputting/deleting and editing events, read only members can only view what’s already in the calendar. The events tool is designed in a way so that you may find similarities to other Calendars you have experience with to allow for familiarity and ease of use.

For more information about the feature itself, see our Help Center page.

This section shows how to create and manage your group events.

10.1. List events

Returns all events in a specified date range.

Table 342. /v3/groups/{group}/events
Parameter Description

group

Group id

HTTP
GET /v3/groups/1/events?name=event+101&exact=true HTTP/1.1
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/events?name=event+101&exact=true'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/events?name=event+101&exact=true' -i -X GET
Table 343. Request parameters
Parameter Description

name

Event name should contain the provided value

exact

Will return events only with the exact name and ignore similar results

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1097

{
  "items" : [ {
    "id" : 1,
    "contextKey" : {
      "id" : 117
    },
    "sharing" : "MEMBERS",
    "memberPermission" : 8,
    "following" : false,
    "userAces" : false,
    "userPermission" : 0,
    "attachmentCount" : 0,
    "name" : "meeting_with_a_client",
    "friendlyName" : "Meeting with a client",
    "startDate" : "2018-01-05T14:00Z[UTC]",
    "endDate" : "2018-01-05T15:00Z[UTC]",
    "allDay" : false,
    "location" : "London",
    "tags" : "tag1,tag2",
    "dateReminder" : "2017-12-31T08:00Z[UTC]",
    "recurrence" : "FREQ=WEEKLY;WKST=MO;BYDAY=FR",
    "dateEndRecurrence" : "2024-04-18T09:45:02.376Z[UTC]",
    "description" : "Let's do this every friday",
    "disableMaybe" : false,
    "author" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "lastModified" : 1514764800000,
    "color" : "#212121"
  } ],
  "currentPage" : 1,
  "totalPages" : 1,
  "pageSize" : 1,
  "totalResults" : 1,
  "nextPage" : false,
  "previousPage" : false
}
Table 344. Definition of the returned fields
Path Type Description

currentPage

Number

Current page

pageSize

Number

Entries per page

items

Array

Page entries

nextPage

Boolean

Next page exists

totalPages

Number

Total amount of available pages

previousPage

Boolean

Previous page exists

totalResults

Number

Total amount of entries

items[].id

Number

Event ID

items[].contextKey

Object

Context key

items[].contextKey.id

Number

Context key ID

items[].sharing

String

Sharing option, determines who can see an event: [NONE, DEFAULT, MEMBERS, PUBLIC]

items[].memberPermission

Number

Member permission mask

items[].author

Object

Event author

items[].following

Boolean

Event being followed by you

items[].userAces

Boolean

Event has individual user permissions

items[].userPermission

Number

User permission

items[].attachmentCount

Number

Amount of attachments

items[].name

String

Unique name

items[].friendlyName

String

Full name

items[].startDate

String

Event start date

items[].endDate

String

Event end date

items[].allDay

Boolean

All day event

items[].location

String

Event location

items[].tags

String

Comma separated list of tags

items[].dateReminder

String

When to send a reminder about an event

items[].recurrence

String

Valid recurrence rule

items[].dateEndRecurrence

String

Recurrence end date

items[].description

String

Event description

items[].assignees

Array

List of users invited to the event

items[].lastModified

Number

Date last modified

items[].disableMaybe

Boolean

Do not allow invited members to choose 'maybe' option

items[].color

String

Event color code

items[].assignees[].user.id

Number

User id

items[].assignees[].user.name

String

Full name

items[].assignees[].user.username

String

Username

items[].assignees[].user.logo

Boolean

Profile picture is defined

items[].assignees[].user.jobTitle

String

Job title

items[].assignees[].user.lastModified

Number

Last modified date

items[].assignees[].id

Number

Invitation id

items[].assignees[].status

String

Invitation status

items[].author.id

Number

User id

items[].author.name

String

Full name

items[].author.username

String

Username

items[].author.logo

Boolean

Profile picture is defined

items[].author.jobTitle

String

Job title

items[].author.lastModified

Number

Last modified date

10.2. Show event detail

Table 345. /v3/groups/{group}/events/{event}
Parameter Description

group

Group id

event

Event id

HTTP
GET /v3/groups/1/events/1 HTTP/1.1
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/events/1'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/events/1' -i -X GET
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1152

{
  "id" : 1,
  "contextKey" : {
    "id" : 179
  },
  "sharing" : "MEMBERS",
  "memberPermission" : 8,
  "following" : false,
  "shareCount" : 0,
  "userAces" : false,
  "userPermission" : 0,
  "attachmentCount" : 0,
  "commentCount" : 0,
  "name" : "meeting_with_a_client",
  "friendlyName" : "Meeting with a client",
  "startDate" : "2018-01-05T14:00Z[UTC]",
  "endDate" : "2018-01-05T15:00Z[UTC]",
  "allDay" : false,
  "location" : "London",
  "tags" : "tag1,tag2",
  "dateReminder" : null,
  "recurrence" : "FREQ=WEEKLY;WKST=MO;BYDAY=FR",
  "dateEndRecurrence" : "2024-04-18T09:45:02.759Z[UTC]",
  "description" : "Let's do this every friday",
  "assignees" : [ {
    "id" : 1,
    "status" : "NONE",
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    }
  } ],
  "disableMaybe" : false,
  "author" : {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "lastModified" : 1514764800000,
  "color" : "#212121"
}
Table 346. Definition of the returned fields
Path Type Description

id

Number

Event ID

contextKey

Object

Context key

contextKey.id

Number

Context key ID

sharing

String

Sharing option, determines who can see an event: [NONE, DEFAULT, MEMBERS, PUBLIC]

memberPermission

Number

Member permission mask

author

Object

Event author

following

Boolean

Event being followed by you

userAces

Boolean

Event has individual user permissions

userPermission

Number

User permission

attachmentCount

Number

Amount of attachments

name

String

Unique name

friendlyName

String

Full name

startDate

String

Event start date

endDate

String

Event end date

allDay

Boolean

All day event

location

String

Event location

tags

String

Comma separated list of tags

dateReminder

Null

When to send a reminder about an event

recurrence

String

Valid recurrence rule

dateEndRecurrence

String

Recurrence end date

description

String

Event description

assignees

Array

List of users invited to the event

lastModified

Number

Date last modified

disableMaybe

Boolean

Do not allow invited members to choose 'maybe' option

color

String

Event color code

assignees[].user.id

Number

User id

assignees[].user.name

String

Full name

assignees[].user.username

String

Username

assignees[].user.logo

Boolean

Profile picture is defined

assignees[].user.jobTitle

String

Job title

assignees[].user.lastModified

Number

Last modified date

assignees[].id

Number

Invitation id

assignees[].status

String

Invitation status

author.id

Number

User id

author.name

String

Full name

author.username

String

Username

author.logo

Boolean

Profile picture is defined

author.jobTitle

String

Job title

author.lastModified

Number

Last modified date

shareCount

Number

Amount of shares

commentCount

Number

Amount of comments

10.3. Create event

Table 347. /v3/groups/{group}/events
Parameter Description

group

Group id

HTTP
POST /v3/groups/1/events HTTP/1.1
Content-Type: application/json
Host: api.clinked.com
Content-Length: 383

{
  "recurrence" : "FREQ=DAILY;INTERVAL=1",
  "allDay" : false,
  "color" : "#212121",
  "endDate" : "2022-10-23T00:00:00+01:00[Europe/Paris]",
  "description" : "Make it work!",
  "assignees" : [ "jack" ],
  "location" : "Paris",
  "sharing" : "MEMBERS",
  "startDate" : "2022-10-20T00:00:00+01:00[Europe/Paris]",
  "friendlyName" : "Meeting with a client",
  "tags" : "tag1,tag2"
}
HTTPie
$ echo '{
  "recurrence" : "FREQ=DAILY;INTERVAL=1",
  "allDay" : false,
  "color" : "#212121",
  "endDate" : "2022-10-23T00:00:00+01:00[Europe/Paris]",
  "description" : "Make it work!",
  "assignees" : [ "jack" ],
  "location" : "Paris",
  "sharing" : "MEMBERS",
  "startDate" : "2022-10-20T00:00:00+01:00[Europe/Paris]",
  "friendlyName" : "Meeting with a client",
  "tags" : "tag1,tag2"
}' | http POST 'https://api.clinked.com/v3/groups/1/events' \
    'Content-Type:application/json'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/events' -i -X POST \
    -H 'Content-Type: application/json' \
    -d '{
  "recurrence" : "FREQ=DAILY;INTERVAL=1",
  "allDay" : false,
  "color" : "#212121",
  "endDate" : "2022-10-23T00:00:00+01:00[Europe/Paris]",
  "description" : "Make it work!",
  "assignees" : [ "jack" ],
  "location" : "Paris",
  "sharing" : "MEMBERS",
  "startDate" : "2022-10-20T00:00:00+01:00[Europe/Paris]",
  "friendlyName" : "Meeting with a client",
  "tags" : "tag1,tag2"
}'
Table 348. Request fields
Path Type Description

friendlyName

String

Full name

location

String

Location

recurrence

String

Recurrence rule

startDate

String

Event start date

endDate

String

Event end date

allDay

Boolean

All day event

tags

String

Comma separated list of tags

sharing

String

Sharing option, determines who can see a note: [NONE, DEFAULT, MEMBERS, PUBLIC]

dateReminder

String

When to remind about an event

assignees

Array

Array of usernames to invite to event

description

String

Event description

color

String

Event color code

Example of a success response
HTTP/1.1 201 Created
Content-Type: application/json;charset=UTF-8
Content-Length: 1122

{
  "id" : 5,
  "contextKey" : {
    "id" : 70
  },
  "sharing" : "MEMBERS",
  "memberPermission" : 8,
  "following" : false,
  "shareCount" : 0,
  "userAces" : false,
  "userPermission" : 0,
  "attachmentCount" : 0,
  "commentCount" : 0,
  "name" : "meeting_with_a_client",
  "friendlyName" : "Meeting with a client",
  "startDate" : "2022-10-20T00:00+02:00[Europe/Paris]",
  "endDate" : "2022-10-23T00:00+02:00[Europe/Paris]",
  "allDay" : false,
  "location" : "Paris",
  "tags" : "tag1,tag2",
  "dateReminder" : null,
  "recurrence" : "FREQ=DAILY;INTERVAL=1",
  "dateEndRecurrence" : null,
  "description" : "Make it work!",
  "assignees" : [ {
    "id" : 1,
    "status" : "NONE",
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    }
  } ],
  "disableMaybe" : false,
  "author" : {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "lastModified" : null,
  "color" : "#212121"
}
Table 349. Definition of the returned fields
Path Type Description

id

Number

Event ID

contextKey

Object

Context key

contextKey.id

Number

Context key ID

sharing

String

Sharing option, determines who can see an event: [NONE, DEFAULT, MEMBERS, PUBLIC]

memberPermission

Number

Member permission mask

author

Object

Event author

following

Boolean

Event being followed by you

userAces

Boolean

Event has individual user permissions

userPermission

Number

User permission

attachmentCount

Number

Amount of attachments

name

String

Unique name

friendlyName

String

Full name

startDate

String

Event start date

endDate

String

Event end date

allDay

Boolean

All day event

location

String

Event location

tags

String

Comma separated list of tags

dateReminder

Null

When to send a reminder about an event

recurrence

String

Valid recurrence rule

dateEndRecurrence

Null

Recurrence end date

description

String

Event description

assignees

Array

List of users invited to the event

lastModified

Number

Date last modified

disableMaybe

Boolean

Do not allow invited members to choose 'maybe' option

color

String

Event color code

assignees[].user.id

Number

User id

assignees[].user.name

String

Full name

assignees[].user.username

String

Username

assignees[].user.logo

Boolean

Profile picture is defined

assignees[].user.jobTitle

String

Job title

assignees[].user.lastModified

Number

Last modified date

assignees[].id

Number

Invitation id

assignees[].status

String

Invitation status

author.id

Number

User id

author.name

String

Full name

author.username

String

Username

author.logo

Boolean

Profile picture is defined

author.jobTitle

String

Job title

author.lastModified

Number

Last modified date

shareCount

Number

Amount of shares

commentCount

Number

Amount of comments

10.4. Update event

Table 350. /v3/groups/{group}/events/{event}
Parameter Description

group

Group id

event

Event id

HTTP
PATCH /v3/groups/1/events/1 HTTP/1.1
Content-Type: application/json
Host: api.clinked.com
Content-Length: 376

{
  "recurrence" : "FREQ=DAILY;INTERVAL=1",
  "allDay" : false,
  "color" : "#212121",
  "endDate" : "2050-01-05T16:10+02:00[Europe/Riga]",
  "assignees" : [ "jack" ],
  "description" : "Make it work!",
  "location" : "London",
  "sharing" : "MEMBERS",
  "friendlyName" : "Meeting with a client",
  "startDate" : "2050-01-05T16:00+02:00[Europe/Riga]",
  "tags" : "tag1,tag2"
}
HTTPie
$ echo '{
  "recurrence" : "FREQ=DAILY;INTERVAL=1",
  "allDay" : false,
  "color" : "#212121",
  "endDate" : "2050-01-05T16:10+02:00[Europe/Riga]",
  "assignees" : [ "jack" ],
  "description" : "Make it work!",
  "location" : "London",
  "sharing" : "MEMBERS",
  "friendlyName" : "Meeting with a client",
  "startDate" : "2050-01-05T16:00+02:00[Europe/Riga]",
  "tags" : "tag1,tag2"
}' | http PATCH 'https://api.clinked.com/v3/groups/1/events/1' \
    'Content-Type:application/json'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/events/1' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -d '{
  "recurrence" : "FREQ=DAILY;INTERVAL=1",
  "allDay" : false,
  "color" : "#212121",
  "endDate" : "2050-01-05T16:10+02:00[Europe/Riga]",
  "assignees" : [ "jack" ],
  "description" : "Make it work!",
  "location" : "London",
  "sharing" : "MEMBERS",
  "friendlyName" : "Meeting with a client",
  "startDate" : "2050-01-05T16:00+02:00[Europe/Riga]",
  "tags" : "tag1,tag2"
}'
Table 351. Request fields
Path Type Description

friendlyName

String

Full name

location

String

Location

recurrence

String

Recurrence rule

startDate

String

Event start date

endDate

String

Event end date

allDay

Boolean

All day event

tags

String

Comma separated list of tags

sharing

String

Sharing option, determines who can see a note: [NONE, DEFAULT, MEMBERS, PUBLIC]

dateReminder

String

When to remind about an event

assignees

Array

Array of usernames to invite to event

description

String

Event description

color

String

Event color code

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1171

{
  "id" : 1,
  "contextKey" : {
    "id" : 327
  },
  "sharing" : "MEMBERS",
  "memberPermission" : 8,
  "following" : false,
  "shareCount" : 0,
  "userAces" : false,
  "userPermission" : 0,
  "attachmentCount" : 0,
  "commentCount" : 0,
  "name" : "meeting_with_a_client",
  "friendlyName" : "Meeting with a client",
  "startDate" : "2050-01-05T16:00+02:00[Europe/Riga]",
  "endDate" : "2050-01-05T16:10+02:00[Europe/Riga]",
  "allDay" : false,
  "location" : "London",
  "tags" : "tag1,tag2",
  "dateReminder" : null,
  "recurrence" : "FREQ=DAILY;INTERVAL=1",
  "dateEndRecurrence" : "2024-04-18T12:45:02.787+03:00[Europe/Riga]",
  "description" : "Make it work!",
  "assignees" : [ {
    "id" : 1,
    "status" : "NONE",
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    }
  } ],
  "disableMaybe" : false,
  "author" : {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "lastModified" : 1514764800000,
  "color" : "#212121"
}
Table 352. Definition of the returned fields
Path Type Description

id

Number

Event ID

contextKey

Object

Context key

contextKey.id

Number

Context key ID

sharing

String

Sharing option, determines who can see an event: [NONE, DEFAULT, MEMBERS, PUBLIC]

memberPermission

Number

Member permission mask

author

Object

Event author

following

Boolean

Event being followed by you

userAces

Boolean

Event has individual user permissions

userPermission

Number

User permission

attachmentCount

Number

Amount of attachments

name

String

Unique name

friendlyName

String

Full name

startDate

String

Event start date

endDate

String

Event end date

allDay

Boolean

All day event

location

String

Event location

tags

String

Comma separated list of tags

dateReminder

Null

When to send a reminder about an event

recurrence

String

Valid recurrence rule

dateEndRecurrence

String

Recurrence end date

description

String

Event description

assignees

Array

List of users invited to the event

lastModified

Number

Date last modified

disableMaybe

Boolean

Do not allow invited members to choose 'maybe' option

color

String

Event color code

assignees[].user.id

Number

User id

assignees[].user.name

String

Full name

assignees[].user.username

String

Username

assignees[].user.logo

Boolean

Profile picture is defined

assignees[].user.jobTitle

String

Job title

assignees[].user.lastModified

Number

Last modified date

assignees[].id

Number

Invitation id

assignees[].status

String

Invitation status

author.id

Number

User id

author.name

String

Full name

author.username

String

Username

author.logo

Boolean

Profile picture is defined

author.jobTitle

String

Job title

author.lastModified

Number

Last modified date

shareCount

Number

Amount of shares

commentCount

Number

Amount of comments

10.5. Remove event

Moves event to group trash bin.

You can always restore trash bin items later, see group trash section for details.
Table 353. /v3/groups/{group}/events/{event}
Parameter Description

group

Group id

event

Event id

HTTP
DELETE /v3/groups/1/events/1 HTTP/1.1
Host: api.clinked.com
HTTPie
$ http --form DELETE 'https://api.clinked.com/v3/groups/1/events/1'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/events/1' -i -X DELETE
Table 354. Request parameters
Parameter Description

permanently

Delete event permanently

notify

Notify other members about deletion

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 256

{
  "id" : 15,
  "contextKey" : {
    "id" : 153
  },
  "user" : {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "dateDeleted" : 1713433502728
}

10.6. Permissions

Table 355. /v3/groups/{group}/events/{event}/permissions
Parameter Description

group

Group id

event

Event id

Request parameters ar the same as in Tasks permissions

11. Tasks

Tasks can be used by any members of the portal, apart from a 'Read Only' member who can only use the specific tasks they are assigned too. Tasks are easy to create and also easy to edit and update. There is a progression status bar provided to help you stay on track and updated whilst a task is being completed.

For more information about the feature itself, see our Help Center page.

This section shows how to create and manage your group tasks and task categories.

11.1. Task count

Returns task count

Table 356. /v3/groups/{group}/tasks
Parameter Description

group

Group id

HTTP
HEAD /v3/groups/1/tasks HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http HEAD 'https://api.clinked.com/v3/groups/1/tasks' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/tasks' -i -X HEAD \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
X-Count: 0

11.2. List tasks

Returns paginated list of group tasks.

Table 357. /v3/groups/{group}/tasks
Parameter Description

group

Group id

HTTP
GET /v3/groups/1/tasks HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/tasks' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/tasks' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 358. Request parameters
Parameter Description

name

Search by name

show

Which tasks to show - unassigned, uncompleted, overdue

status

Task status

assignedTo

User ID the task is assigned to

priority

Task priority

category

Task category id

dateStart

ISO date task due date from

dateEnd

ISO date task due date to

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1178

{
  "items" : [ {
    "id" : 1,
    "contextKey" : {
      "id" : 233
    },
    "sharing" : "MEMBERS",
    "memberPermission" : 8,
    "following" : false,
    "userAces" : false,
    "userPermission" : 0,
    "attachmentCount" : 0,
    "friendlyName" : "Deploy update",
    "name" : "deploy_update",
    "status" : "WAITING",
    "priority" : "MEDIUM",
    "progress" : 0,
    "author" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "dueDate" : "2022-08-25T11:56:54Z[UTC]",
    "tags" : "",
    "description" : "Let's do this",
    "dateCreated" : 1514764800000,
    "dateReminder" : "2017-12-31T08:00Z[UTC]",
    "recurrence" : null,
    "order" : 2147483647,
    "category" : null,
    "assignees" : null,
    "numberOfSubTasks" : 0,
    "lastModified" : 1514764800000,
    "timeTracker" : {
      "trackingStartDate" : 1514764800000,
      "timeTracked" : 948480
    },
    "dateCompleted" : 1514764810000
  } ],
  "currentPage" : 1,
  "totalPages" : 1,
  "pageSize" : 1,
  "totalResults" : 1,
  "nextPage" : false,
  "previousPage" : false
}
Table 359. Definition of the returned fields
Path Type Description

currentPage

Number

Current page

pageSize

Number

Entries per page

items

Array

Page entries

nextPage

Boolean

Next page exists

totalPages

Number

Total amount of available pages

previousPage

Boolean

Previous page exists

totalResults

Number

Total amount of entries

items[].id

Number

Task category ID

items[].contextKey

Object

Сontext key

items[].contextKey.id

Number

Сontext key ID

items[].name

String

Task slug

items[].friendlyName

String

Task name

items[].author

Object

User created this task

items[].status

String

Task status code

items[].priority

String

Task priority

items[].progress

Number

Task progress

items[].tags

String

Task tags (comma separated)

items[].dueDate

String

Zoned ISO due date-time

items[].dateReminder

String

Zoned ISO reminder date-time

items[].recurrence

String

Task recurrence rule

items[].order

Number

Task order

items[].description

String

Task description

items[].file

Object

File to which the task is attached to

items[].category

Object

Task category

items[].assignees

Array

Task assignees

items[].sharing

String

Sharing option, determines who can see a note: [NONE, DEFAULT, MEMBERS, PUBLIC]

items[].memberPermission

Number

Member file permission mask

items[].attachmentCount

Number

Amount of attachments

items[].commentCount

Number

Amount of comments

items[].following

Boolean

User is following note

items[].shareCount

Number

Amount of shares

items[].userAces

Boolean

Note has individual user permissions

items[].userPermission

Number

User permission

items[].dateCreated

Number

Date task was created

items[].dateCompleted

Number

Date task was completed

items[].lastModified

Number

Date task was last modified

items[].parent

Object

Parent task

items[].numberOfSubTasks

Number

Number of subtasks

items[].timeTracker

Object

Task time tracker

items[].timeTracker.trackingStartDate

Number

Tracking start date

items[].timeTracker.timeTracked

Number

Time tracked in milliseconds

items[].author.id

Number

User id

items[].author.name

String

Full name

items[].author.username

String

Username

items[].author.logo

Boolean

Profile picture is defined

items[].author.jobTitle

String

Job title

items[].author.lastModified

Number

Last modified date

11.3. Get task details

Table 360. /v3/groups/{group}/tasks/{task}
Parameter Description

group

Group id

task

Task id

HTTP
GET /v3/groups/1/tasks/1 HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/tasks/1' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/tasks/1' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 990

{
  "id" : 1,
  "contextKey" : {
    "id" : 86
  },
  "sharing" : "MEMBERS",
  "memberPermission" : 8,
  "following" : false,
  "shareCount" : 0,
  "userAces" : false,
  "userPermission" : 0,
  "attachmentCount" : 0,
  "commentCount" : 0,
  "friendlyName" : "Deploy update",
  "name" : "deploy_update",
  "status" : "WAITING",
  "priority" : "MEDIUM",
  "progress" : 0,
  "author" : {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "dueDate" : "2022-08-25T11:56:54Z[UTC]",
  "tags" : "",
  "description" : "Let's do this",
  "dateCreated" : 1514764800000,
  "dateReminder" : "2017-12-31T08:00Z[UTC]",
  "recurrence" : null,
  "order" : 2147483647,
  "category" : null,
  "assignees" : null,
  "numberOfSubTasks" : 0,
  "lastModified" : 1514764800000,
  "timeTracker" : {
    "trackingStartDate" : 1514764800000,
    "timeTracked" : 948480
  },
  "dateCompleted" : 1514764810000
}
Table 361. Definition of the returned fields
Path Type Description

id

Number

Task category ID

contextKey

Object

Сontext key

contextKey.id

Number

Сontext key ID

name

String

Task slug

friendlyName

String

Task name

author

Object

User created this task

status

String

Task status code

priority

String

Task priority

progress

Number

Task progress

tags

String

Task tags (comma separated)

dueDate

String

Zoned ISO due date-time

dateReminder

String

Zoned ISO reminder date-time

recurrence

String

Task recurrence rule

order

Number

Task order

description

String

Task description

file

Object

File to which the task is attached to

category

Object

Task category

assignees

Array

Task assignees

sharing

String

Sharing option, determines who can see a note: [NONE, DEFAULT, MEMBERS, PUBLIC]

memberPermission

Number

Member file permission mask

attachmentCount

Number

Amount of attachments

commentCount

Number

Amount of comments

following

Boolean

User is following note

shareCount

Number

Amount of shares

userAces

Boolean

Note has individual user permissions

userPermission

Number

User permission

dateCreated

Number

Date task was created

dateCompleted

Number

Date task was completed

lastModified

Number

Date task was last modified

parent

Object

Parent task

numberOfSubTasks

Number

Number of subtasks

timeTracker

Object

Task time tracker

timeTracker.trackingStartDate

Number

Tracking start date

timeTracker.timeTracked

Number

Time tracked in milliseconds

author.id

Number

User id

author.name

String

Full name

author.username

String

Username

author.logo

Boolean

Profile picture is defined

author.jobTitle

String

Job title

author.lastModified

Number

Last modified date

attachmentCount

Number

Amount of attachments

commentCount

Number

Amount of comments

following

Boolean

User is following note

shareCount

Number

Amount of shares

userAces

Boolean

Note has individual user permissions

userPermission

Number

User permission

11.4. Create task

Creates a new group task.

Table 362. /v3/groups/{group}/tasks
Parameter Description

group

Group id

HTTP
POST /v3/groups/1/tasks HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 229

{
    "friendlyName": "Task 1",
    "description": "Do very important thing",
    "sharing": "MEMBERS",
    "memberPermission": 8,
    "tags": "lorem,dupson",
    "status": "NOT_STARTED",
    "assignees": [
       "jack"
    ]
}
HTTPie
$ echo '{
    "friendlyName": "Task 1",
    "description": "Do very important thing",
    "sharing": "MEMBERS",
    "memberPermission": 8,
    "tags": "lorem,dupson",
    "status": "NOT_STARTED",
    "assignees": [
       "jack"
    ]
}' | http POST 'https://api.clinked.com/v3/groups/1/tasks' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/tasks' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
    "friendlyName": "Task 1",
    "description": "Do very important thing",
    "sharing": "MEMBERS",
    "memberPermission": 8,
    "tags": "lorem,dupson",
    "status": "NOT_STARTED",
    "assignees": [
       "jack"
    ]
}'
Example of a success response
HTTP/1.1 201 Created
Content-Type: application/json;charset=UTF-8
Content-Length: 945

{
  "id" : 1,
  "contextKey" : {
    "id" : 938
  },
  "sharing" : "MEMBERS",
  "memberPermission" : 8,
  "following" : false,
  "shareCount" : 0,
  "userAces" : false,
  "userPermission" : 0,
  "attachmentCount" : 0,
  "commentCount" : 0,
  "friendlyName" : "Task 1",
  "name" : "task_1",
  "status" : "NOT_STARTED",
  "priority" : "MEDIUM",
  "progress" : 0,
  "author" : {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "dueDate" : null,
  "tags" : "lorem,dupson",
  "description" : "Do very important thing",
  "dateCreated" : 1713433508457,
  "dateReminder" : null,
  "recurrence" : null,
  "order" : null,
  "category" : null,
  "assignees" : null,
  "numberOfSubTasks" : 0,
  "lastModified" : 1713433508457,
  "timeTracker" : {
    "trackingStartDate" : 1514764800000,
    "timeTracked" : 948480
  },
  "dateCompleted" : null
}
Table 363. Definition of the returned fields
Path Type Description

id

Number

Task category ID

contextKey

Object

Сontext key

contextKey.id

Number

Сontext key ID

name

String

Task slug

friendlyName

String

Task name

author

Object

User created this task

status

String

Task status code

priority

String

Task priority

progress

Number

Task progress

tags

String

Task tags (comma separated)

dueDate

String

Zoned ISO due date-time

dateReminder

String

Zoned ISO reminder date-time

recurrence

String

Task recurrence rule

order

Number

Task order

description

String

Task description

file

Object

File to which the task is attached to

category

Object

Task category

assignees

Array

Task assignees

sharing

String

Sharing option, determines who can see a note: [NONE, DEFAULT, MEMBERS, PUBLIC]

memberPermission

Number

Member file permission mask

attachmentCount

Number

Amount of attachments

commentCount

Number

Amount of comments

following

Boolean

User is following note

shareCount

Number

Amount of shares

userAces

Boolean

Note has individual user permissions

userPermission

Number

User permission

dateCreated

Number

Date task was created

dateCompleted

Number

Date task was completed

lastModified

Number

Date task was last modified

parent

Object

Parent task

numberOfSubTasks

Number

Number of subtasks

timeTracker

Object

Task time tracker

timeTracker.trackingStartDate

Number

Tracking start date

timeTracker.timeTracked

Number

Time tracked in milliseconds

author.id

Number

User id

author.name

String

Full name

author.username

String

Username

author.logo

Boolean

Profile picture is defined

author.jobTitle

String

Job title

author.lastModified

Number

Last modified date

attachmentCount

Number

Amount of attachments

commentCount

Number

Amount of comments

following

Boolean

User is following note

shareCount

Number

Amount of shares

userAces

Boolean

Note has individual user permissions

userPermission

Number

User permission

11.5. Update task

Table 364. /v3/groups/{group}/tasks/{task}
Parameter Description

group

Group id

task

Task id

HTTP
PATCH /v3/groups/1/tasks/1 HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 33

{
    "friendlyName": "Updated"
}
HTTPie
$ echo '{
    "friendlyName": "Updated"
}' | http PATCH 'https://api.clinked.com/v3/groups/1/tasks/1' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/tasks/1' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
    "friendlyName": "Updated"
}'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 976

{
  "id" : 1,
  "contextKey" : {
    "id" : 564
  },
  "sharing" : "MEMBERS",
  "memberPermission" : 8,
  "following" : false,
  "shareCount" : 0,
  "userAces" : false,
  "userPermission" : 0,
  "attachmentCount" : 0,
  "commentCount" : 0,
  "friendlyName" : "Updated",
  "name" : "deploy_update",
  "status" : "WAITING",
  "priority" : "MEDIUM",
  "progress" : 0,
  "author" : {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "dueDate" : "2022-08-25T11:56:54Z[UTC]",
  "tags" : "",
  "description" : "Let's do this",
  "dateCreated" : 1713433508149,
  "dateReminder" : "2017-12-31T08:00Z[UTC]",
  "recurrence" : null,
  "order" : 2147483647,
  "category" : null,
  "assignees" : null,
  "numberOfSubTasks" : 0,
  "lastModified" : 1713433508149,
  "timeTracker" : {
    "trackingStartDate" : 1514764800000,
    "timeTracked" : 948480
  },
  "dateCompleted" : null
}
Table 365. Definition of the returned fields
Path Type Description

id

Number

Task category ID

contextKey

Object

Сontext key

contextKey.id

Number

Сontext key ID

name

String

Task slug

friendlyName

String

Task name

author

Object

User created this task

status

String

Task status code

priority

String

Task priority

progress

Number

Task progress

tags

String

Task tags (comma separated)

dueDate

String

Zoned ISO due date-time

dateReminder

String

Zoned ISO reminder date-time

recurrence

String

Task recurrence rule

order

Number

Task order

description

String

Task description

file

Object

File to which the task is attached to

category

Object

Task category

assignees

Array

Task assignees

sharing

String

Sharing option, determines who can see a note: [NONE, DEFAULT, MEMBERS, PUBLIC]

memberPermission

Number

Member file permission mask

attachmentCount

Number

Amount of attachments

commentCount

Number

Amount of comments

following

Boolean

User is following note

shareCount

Number

Amount of shares

userAces

Boolean

Note has individual user permissions

userPermission

Number

User permission

dateCreated

Number

Date task was created

dateCompleted

Number

Date task was completed

lastModified

Number

Date task was last modified

parent

Object

Parent task

numberOfSubTasks

Number

Number of subtasks

timeTracker

Object

Task time tracker

timeTracker.trackingStartDate

Number

Tracking start date

timeTracker.timeTracked

Number

Time tracked in milliseconds

author.id

Number

User id

author.name

String

Full name

author.username

String

Username

author.logo

Boolean

Profile picture is defined

author.jobTitle

String

Job title

author.lastModified

Number

Last modified date

attachmentCount

Number

Amount of attachments

commentCount

Number

Amount of comments

following

Boolean

User is following note

shareCount

Number

Amount of shares

userAces

Boolean

Note has individual user permissions

userPermission

Number

User permission

11.6. Remove task

Moves task to group trash bin. NOTE: You can always restore trash bin items later, see group trash section for details.

Table 366. /v3/groups/{group}/tasks/{task}
Parameter Description

group

Group id

task

Task id

HTTP
DELETE /v3/groups/1/tasks/1 HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/groups/1/tasks/1' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/tasks/1' -i -X DELETE \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 3

[ ]

11.7. Task order

Table 367. /v3/groups/{group}/tasks/order
Parameter Description

group

Group id

HTTP
PUT /v3/groups/1/tasks/order HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 42

{
  "category" : 1,
  "items" : [ 1, 2 ]
}
HTTPie
$ echo '{
  "category" : 1,
  "items" : [ 1, 2 ]
}' | http PUT 'https://api.clinked.com/v3/groups/1/tasks/order' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/tasks/order' -i -X PUT \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
  "category" : 1,
  "items" : [ 1, 2 ]
}'
Table 368. Request fields
Path Type Description

category

Number

Task category id

items

Array

Ordered array of task id’s

Example of a success response
HTTP/1.1 200 OK

11.8. Categories

By default, tasks are created without a category. But you can organise them in categories.

11.8.1. List categories

Returns a list of all group categories.

Table 369. /v3/groups/{group}/task-categories
Parameter Description

group

Group id

HTTP
GET /v3/groups/1/task-categories HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/task-categories' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/task-categories' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 370. Request parameters
Parameter Description

name

Search by name

exactName

Search for exact name

countCompleted

Count completed tasks in categories

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 110

[ {
  "id" : 1,
  "name" : "My Task Category",
  "order" : 0,
  "color" : "#FF0000",
  "numberOfTasks" : 0
} ]
Table 371. Definition of the returned fields
Path Type Description

[].id

Number

Task category ID

[].name

String

Task name

[].order

Number

Ordering index

[].numberOfTasks

Number

Number of tasks in category

[].color

String

Color hex string

11.8.2. Create category

Creates a new group task category.

Table 372. /v3/groups/{group}/task-categories
Parameter Description

group

Group id

HTTP
POST /v3/groups/1/task-categories HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 61

{"name": "New Task Category", "order": 1, "color": "#FF0000"}
HTTPie
$ echo '{"name": "New Task Category", "order": 1, "color": "#FF0000"}' | http POST 'https://api.clinked.com/v3/groups/1/task-categories' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/task-categories' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{"name": "New Task Category", "order": 1, "color": "#FF0000"}'
Table 373. Request fields
Path Type Description

name

String

Category name

order

Number

Ordering number

color

String

Color hex code, e.g. #FF0000

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 102

{
  "id" : 6682594497595671552,
  "name" : "New Task Category",
  "order" : 1,
  "color" : "#FF0000"
}
Table 374. Definition of the returned fields
Path Type Description

id

Number

Task category ID

name

String

Task name

order

Number

Ordering index

numberOfTasks

Number

Number of tasks in category

color

String

Color hex string

11.8.3. Update category

Table 375. /v3/groups/{group}/task-categories/{category}
Parameter Description

group

Group id

category

Category id

HTTP
PATCH /v3/groups/1/task-categories/1 HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 19

{"color":"#FF0000"}
HTTPie
$ echo '{"color":"#FF0000"}' | http PATCH 'https://api.clinked.com/v3/groups/1/task-categories/1' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/task-categories/1' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{"color":"#FF0000"}'
Table 376. Request fields
Path Type Description

name

String

Category name

order

Number

Ordering number

color

String

Color hex code, e.g. #FF0000

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 83

{
  "id" : 1,
  "name" : "My Task Category",
  "order" : 0,
  "color" : "#FF0000"
}
Table 377. Definition of the returned fields
Path Type Description

id

Number

Task category ID

name

String

Task name

order

Number

Ordering index

numberOfTasks

Number

Number of tasks in category

color

String

Color hex string

11.8.4. Delete category

Table 378. /v3/groups/{group}/task-categories/{category}
Parameter Description

group

Group id

category

Category id

HTTP
DELETE /v3/groups/1/task-categories/1 HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/groups/1/task-categories/1' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/task-categories/1' -i -X DELETE \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

11.9. Permissions

11.9.1. List permissions

Table 379. /v3/groups/{group}/tasks/{task}/permissions
Parameter Description

group

Group id

task

Task id

HTTP
GET /v3/groups/1/tasks/2/permissions HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Accept: application/json
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/tasks/2/permissions' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>' \
    'Accept:application/json'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/tasks/2/permissions' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -H 'Accept: application/json'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 750

{
  "sharing" : "MEMBERS",
  "memberPermission" : 8,
  "entries" : [ {
    "user" : {
      "id" : 1,
      "username" : "jack",
      "enabled" : true,
      "locked" : false,
      "name" : "Jack Bauer",
      "jobTitle" : "Marketing",
      "organisation" : "Clinked",
      "email" : "jack.bauer@clinked.com",
      "address" : "71 Pilgrim Avenue",
      "telephone" : "123456789",
      "other" : null,
      "logo" : false,
      "timeZone" : "UTC",
      "locale" : "en",
      "verifiedEmail" : false,
      "twoFactorAuthentication" : false,
      "twoFactorMode" : null,
      "lastModified" : 1514764800000,
      "dateFormat" : null,
      "twentyFourHourTimeFormat" : false,
      "lastActive" : null
    },
    "permission" : 16
  } ]
}
Table 380. Definition of the returned fields
Path Type Description

sharing

String

Sharing - NONE, DEFAULT, MEMBERS

memberPermission

Number

Member permission

entries

Array

Permission entries

entries[].user

Object

User object

entries[].permission

Number

User permission

entries[].user.id

Number

User id

entries[].user.name

String

Full name

entries[].user.username

String

Username

entries[].user.logo

Boolean

Profile picture is defined

entries[].user.jobTitle

String

Job title

entries[].user.lastModified

Number

Last modified date

entries[].user.enabled

Boolean

Is user enabled

entries[].user.locked

Boolean

Is user locked

entries[].user.organisation

String

Organisation name

entries[].user.email

String

Email address

entries[].user.address

String

Address

entries[].user.telephone

String

Phone number

entries[].user.other

String

Optional other information

entries[].user.timeZone

String

Time zone ID

entries[].user.locale

String

Locale

entries[].user.verifiedEmail

Boolean

Is email verified

entries[].user.twoFactorAuthentication

Boolean

Is 2FA enabled

entries[].user.twoFactorMode

String

2FA mode: [AUTHENTICATOR, SMS, EMAIL]

entries[].user.twentyFourHourTimeFormat

Boolean

Time format preference - 24hr or 12hr format

entries[].user.lastActive

Number

Date the user was last active

entries[].user.dateFormat

Boolean

Date format preference - YMD (Year-Month-Day), MDY (Month/Day/Year) or DMY(Day/Month/Year)

11.9.2. Update permissions

Table 381. /v3/groups/{group}/tasks/{note}/permissions
Parameter Description

group

Group id

note

Note id

HTTP
POST /v3/groups/1/tasks/2/permissions HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Accept: application/json
Host: api.clinked.com
Content-Length: 106

{"sharing":"MEMBERS","memberPermission":4,"entries":[{"username":"jack","permission":4}],"children":false}
HTTPie
$ echo '{"sharing":"MEMBERS","memberPermission":4,"entries":[{"username":"jack","permission":4}],"children":false}' | http POST 'https://api.clinked.com/v3/groups/1/tasks/2/permissions' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>' \
    'Accept:application/json'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/tasks/2/permissions' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -H 'Accept: application/json' \
    -d '{"sharing":"MEMBERS","memberPermission":4,"entries":[{"username":"jack","permission":4}],"children":false}'
Table 382. Request fields
Path Type Description

sharing

String

Sharing - NONE, DEFAULT, MEMBERS

memberPermission

Number

Member permission

entries

Array

Permission entries

entries[].user

Object

User object

entries[].permission

Number

User permission

entries[].user.id

Number

User id

entries[].user.name

String

Full name

entries[].user.username

String

Username

entries[].user.logo

Boolean

Profile picture is defined

entries[].user.jobTitle

String

Job title

entries[].user.lastModified

Number

Last modified date

entries[].user.enabled

Boolean

Is user enabled

entries[].user.locked

Boolean

Is user locked

entries[].user.organisation

String

Organisation name

entries[].user.email

String

Email address

entries[].user.address

String

Address

entries[].user.telephone

String

Phone number

entries[].user.other

String

Optional other information

entries[].user.timeZone

String

Time zone ID

entries[].user.locale

String

Locale

entries[].user.verifiedEmail

Boolean

Is email verified

entries[].user.twoFactorAuthentication

Boolean

Is 2FA enabled

entries[].user.twoFactorMode

String

2FA mode: [AUTHENTICATOR, SMS, EMAIL]

entries[].user.twentyFourHourTimeFormat

Boolean

Time format preference - 24hr or 12hr format

entries[].user.lastActive

Number

Date the user was last active

entries[].user.dateFormat

Boolean

Date format preference - YMD (Year-Month-Day), MDY (Month/Day/Year) or DMY(Day/Month/Year)

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 750

{
  "sharing" : "MEMBERS",
  "memberPermission" : 4,
  "entries" : [ {
    "user" : {
      "id" : 1,
      "username" : "jack",
      "enabled" : true,
      "locked" : false,
      "name" : "Jack Bauer",
      "jobTitle" : "Marketing",
      "organisation" : "Clinked",
      "email" : "jack.bauer@clinked.com",
      "address" : "71 Pilgrim Avenue",
      "telephone" : "123456789",
      "other" : null,
      "logo" : false,
      "timeZone" : "UTC",
      "locale" : "en",
      "verifiedEmail" : false,
      "twoFactorAuthentication" : false,
      "twoFactorMode" : null,
      "lastModified" : 1514764800000,
      "dateFormat" : null,
      "twentyFourHourTimeFormat" : false,
      "lastActive" : null
    },
    "permission" : 16
  } ]
}
Table 383. Definition of the returned fields
Path Type Description

sharing

String

Sharing - NONE, DEFAULT, MEMBERS

memberPermission

Number

Member permission

entries

Array

Permission entries

entries[].user

Object

User object

entries[].permission

Number

User permission

entries[].user.id

Number

User id

entries[].user.name

String

Full name

entries[].user.username

String

Username

entries[].user.logo

Boolean

Profile picture is defined

entries[].user.jobTitle

String

Job title

entries[].user.lastModified

Number

Last modified date

entries[].user.enabled

Boolean

Is user enabled

entries[].user.locked

Boolean

Is user locked

entries[].user.organisation

String

Organisation name

entries[].user.email

String

Email address

entries[].user.address

String

Address

entries[].user.telephone

String

Phone number

entries[].user.other

String

Optional other information

entries[].user.timeZone

String

Time zone ID

entries[].user.locale

String

Locale

entries[].user.verifiedEmail

Boolean

Is email verified

entries[].user.twoFactorAuthentication

Boolean

Is 2FA enabled

entries[].user.twoFactorMode

String

2FA mode: [AUTHENTICATOR, SMS, EMAIL]

entries[].user.twentyFourHourTimeFormat

Boolean

Time format preference - 24hr or 12hr format

entries[].user.lastActive

Number

Date the user was last active

entries[].user.dateFormat

Boolean

Date format preference - YMD (Year-Month-Day), MDY (Month/Day/Year) or DMY(Day/Month/Year)

11.10. Task statuses

The feature allows users to assign statuses to tasks, providing a visual representation of task progress.

11.10.1. List statuses

Returns account default and custom created task statuses.

HTTP
GET /v3/tasks-status?account=1 HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/tasks-status?account=1' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/tasks-status?account=1' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 194

[ {
  "id" : 1,
  "color" : "#fff000",
  "textColor" : "#000000",
  "code" : "WAITING",
  "name" : "Waiting",
  "order" : 0,
  "dateCreated" : 1713433510186,
  "dateModified" : 1713433510186
} ]
Table 384. Definition of the returned fields
Path Type Description

[].id

Number

Status id

[].code

String

Status code, default codes are - [NOT_STARTED, IN_PROGRESS, DEFERRED, WAITING, COMPLETED]

[].name

String

Status name

[].color

String

Status color

[].textColor

String

Status text color

[].order

Number

Status order number

[].dateCreated

Number

Date status was created

[].dateModified

Number

Date status was modified

11.10.2. Create status

Creates new task status.

HTTP
POST /v3/tasks-status HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 138

{
    "account": 1,
    "color":"#fff000",
    "textColor":"#fff000",
    "code":"IN_PROGRESS",
    "name":"In progress",
    "order":0
}
HTTPie
$ echo '{
    "account": 1,
    "color":"#fff000",
    "textColor":"#fff000",
    "code":"IN_PROGRESS",
    "name":"In progress",
    "order":0
}
' | http POST 'https://api.clinked.com/v3/tasks-status' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/tasks-status' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
    "account": 1,
    "color":"#fff000",
    "textColor":"#fff000",
    "code":"IN_PROGRESS",
    "name":"In progress",
    "order":0
}
'
Table 385. Request parameters
Path Type Description

account

Number

Task status account

code

String

Status code, default codes are - [NOT_STARTED, IN_PROGRESS, DEFERRED, WAITING, COMPLETED]

name

String

Status name

color

String

Status color

textColor

String

Status text color

order

Number

Status order number

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 198

{
  "id" : 1,
  "color" : "#fff000",
  "textColor" : "#fff000",
  "code" : "IN_PROGRESS",
  "name" : "In progress",
  "order" : 0,
  "dateCreated" : 1713433510213,
  "dateModified" : 1713433510213
}

11.10.3. Update task status

Updates task status.

If task status doesn’t have "id", then first You need to create it with the same "code" to update it.
Table 386. /v3/tasks-status/{status}
Parameter Description

status

Status id

HTTP
PATCH /v3/tasks-status/1 HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 66

{
    "color":"blue",
    "name":"In progress",
    "order":100
}
HTTPie
$ echo '{
    "color":"blue",
    "name":"In progress",
    "order":100
}
' | http PATCH 'https://api.clinked.com/v3/tasks-status/1' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/tasks-status/1' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
    "color":"blue",
    "name":"In progress",
    "order":100
}
'
Table 387. Request parameters
Path Type Description

name

String

Status name

color

String

Status color

order

Number

Status order number

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 193

{
  "id" : 1,
  "color" : "blue",
  "textColor" : "#000000",
  "code" : "WAITING",
  "name" : "In progress",
  "order" : 100,
  "dateCreated" : 1713433510107,
  "dateModified" : 1713433510131
}
Table 388. Definition of the returned fields
Path Type Description

id

Number

Status id

code

String

Status code, default codes are - [NOT_STARTED, IN_PROGRESS, DEFERRED, WAITING, COMPLETED]

name

String

Status name

color

String

Status color

textColor

String

Status text color

order

Number

Status order number

dateCreated

Number

Date status was created

dateModified

Number

Date status was modified

11.10.4. Delete status

Deletes status

Table 389. /v3/tasks-status/{status}
Parameter Description

status

Status id

HTTP
DELETE /v3/tasks-status/1 HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/tasks-status/1' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/tasks-status/1' -i -X DELETE \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

12. Discussions

The Clinked discussions tool is an intuitive and inclusive area of the portal, it can be used to conceptualise and deliberate on topics. Members can use the discussions tool to get feedback on work projects or simply use it to come up with casual meeting plans.

For more information about the feature itself, see our Help Center page.

This section shows how to create and manage your group discussions.

12.1. List discussions

Returns paginated list of group discussions.

Table 390. /v3/groups/{group}/discussions
Parameter Description

group

Group id

HTTP
GET /v3/groups/1/discussions?page=1&size=5&orderBy=lastModified&ascending=false HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/discussions?page=1&size=5&orderBy=lastModified&ascending=false' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/discussions?page=1&size=5&orderBy=lastModified&ascending=false' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 391. Request parameters
Parameter Description

page

Page number to load

size

Page size

orderBy

Order field

ascending

Ascending order direction

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 998

{
  "items" : [ {
    "id" : 1,
    "contextKey" : {
      "id" : 535
    },
    "sharing" : "MEMBERS",
    "memberPermission" : 2,
    "following" : false,
    "userAces" : false,
    "userPermission" : 16,
    "attachmentCount" : 0,
    "name" : "great_discussion",
    "friendlyName" : "Great discussion",
    "tags" : "",
    "description" : "What do you think about this?",
    "replies" : 5,
    "dateCreated" : 1514764800000,
    "lastModified" : 1514764800000,
    "author" : {
      "user" : {
        "id" : 1,
        "name" : "Jack Bauer",
        "username" : "jack",
        "logo" : false,
        "jobTitle" : "Marketing",
        "lastModified" : 1514764800000
      },
      "name" : "Jack Bauer",
      "username" : "jack"
    },
    "group" : {
      "id" : 1,
      "name" : "explore_clinked",
      "friendlyName" : "Explore Clinked"
    }
  } ],
  "currentPage" : 1,
  "totalPages" : 1,
  "pageSize" : 5,
  "totalResults" : 1,
  "nextPage" : false,
  "previousPage" : false
}
Table 392. Definition of the returned fields
Path Type Description

items

Array

Page items

currentPage

Number

Current page number

pageSize

Number

Current page size

nextPage

Boolean

Next page available

previousPage

Boolean

Previous page available

totalPages

Number

Amount of available pages

totalResults

Number

Total results

totalResults

Number

Total results

totalPages

Number

Total number of pages available

items[].id

Number

Discussion id

items[].contextKey

Object

Enitity context key

items[].contextKey.id

Number

Enitity context key ID

items[].group

Object

Base information about the group

items[].name

String

Discussion unique group name used as slug for URLs

items[].friendlyName

String

Discussion name

items[].tags

String

Comma separated list of tags

items[].description

String

Discussion initial message / body

items[].replies

Number

Amount of replies

items[].dateCreated

Number

Creation date

items[].lastModified

Number

Last modification date

items[].sharing

String

Sharing setting

items[].memberPermission

Number

Permission for members if sharing is set to members

items[].author

Object

Discussion author

items[].following

Boolean

Discussion being followed by you

items[].shareCount

Number

Amount of shares for this discussion

items[].attachmentCount

Number

Amount of attachments for this discussion

items[].userAces

Boolean

Indicates that the discussion has individual access control entries in the discussion ACL

items[].userPermission

Number

Your permission for discussion

items[].author.name

String

User’s full name

items[].author.user

Object

Detailed user data, will be set to null if user is deleted

items[].author.username

String

User username if user is defined

items[].author.user.id

Number

User id

items[].author.user.name

String

Full name

items[].author.user.username

String

Username

items[].author.user.logo

Boolean

Profile picture is defined

items[].author.user.jobTitle

String

Job title

items[].author.user.lastModified

Number

Last modified date

items[].group.id

Number

User / profile id

items[].group.name

String

Group name slug, used for internal identification and URIs

items[].group.friendlyName

String

Full group name, visible to a user

12.2. Get discussion details

Table 393. /v3/groups/{group}/discussions/{discussion}
Parameter Description

group

Group id

discussion

Discussion id

HTTP
GET /v3/groups/1/discussions/1 HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/discussions/1' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/discussions/1' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1598

{
  "id" : 1,
  "contextKey" : {
    "id" : 636
  },
  "sharing" : "MEMBERS",
  "memberPermission" : 2,
  "following" : false,
  "shareCount" : 0,
  "userAces" : false,
  "userPermission" : 16,
  "attachmentCount" : 0,
  "name" : "great_discussion",
  "friendlyName" : "Great discussion",
  "tags" : "",
  "description" : "What do you think about this?",
  "replies" : 5,
  "dateCreated" : 1514764800000,
  "lastModified" : 1514764800000,
  "author" : {
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "name" : "Jack Bauer",
    "username" : "jack"
  },
  "repliesPage" : {
    "items" : [ {
      "id" : 1,
      "reply" : "Here are my 2 cents",
      "dateCreated" : 1514764800000,
      "author" : {
        "user" : {
          "id" : 1,
          "name" : "Jack Bauer",
          "username" : "jack",
          "logo" : false,
          "jobTitle" : "Marketing",
          "lastModified" : 1514764800000
        },
        "name" : "Jack Bauer",
        "username" : "jack"
      },
      "reactions" : {
        "totalReactions" : 3,
        "userReaction" : "THUMBS_UP",
        "thumbsUp" : 1,
        "thumbsDown" : 0,
        "heart" : 0,
        "openEye" : 0,
        "fire" : 0
      }
    } ],
    "currentPage" : 1,
    "totalPages" : 1,
    "pageSize" : 5,
    "totalResults" : 1,
    "nextPage" : false,
    "previousPage" : false
  },
  "group" : {
    "id" : 1,
    "name" : "explore_clinked",
    "friendlyName" : "Explore Clinked"
  }
}
Table 394. Definition of the returned fields
Path Type Description

id

Number

Discussion id

contextKey

Object

Enitity context key

contextKey.id

Number

Enitity context key ID

group

Object

Base information about the group

name

String

Discussion unique group name used as slug for URLs

friendlyName

String

Discussion name

tags

String

Comma separated list of tags

description

String

Discussion initial message / body

replies

Number

Amount of replies

dateCreated

Number

Creation date

lastModified

Number

Last modification date

sharing

String

Sharing setting

memberPermission

Number

Permission for members if sharing is set to members

author

Object

Discussion author

following

Boolean

Discussion being followed by you

shareCount

Number

Amount of shares for this discussion

attachmentCount

Number

Amount of attachments for this discussion

userAces

Boolean

Indicates that the discussion has individual access control entries in the discussion ACL

userPermission

Number

Your permission for discussion

author.name

String

User’s full name

author.user

Object

Detailed user data, will be set to null if user is deleted

author.username

String

User username if user is defined

author.user.id

Number

User id

author.user.name

String

Full name

author.user.username

String

Username

author.user.logo

Boolean

Profile picture is defined

author.user.jobTitle

String

Job title

author.user.lastModified

Number

Last modified date

group.id

Number

User / profile id

group.name

String

Group name slug, used for internal identification and URIs

group.friendlyName

String

Full group name, visible to a user

repliesPage

Object

The first page of replies

repliesPage.items[].id

Number

Reply id

repliesPage.items[].author

Object

Reply author

repliesPage.items[].dateCreated

Number

Reply creation date

repliesPage.items[].reply

String

Reply text

repliesPage.items[].author.name

String

User’s full name

repliesPage.items[].author.user

Object

Detailed user data, will be set to null if user is deleted

repliesPage.items[].author.username

String

User username if user is defined

repliesPage.items[].author.user.id

Number

User id

repliesPage.items[].author.user.name

String

Full name

repliesPage.items[].author.user.username

String

Username

repliesPage.items[].author.user.logo

Boolean

Profile picture is defined

repliesPage.items[].author.user.jobTitle

String

Job title

repliesPage.items[].author.user.lastModified

Number

Last modified date

12.3. Create discussion

Table 395. /v3/groups/{group}/discussions
Parameter Description

group

Group id

HTTP
POST /v3/groups/1/discussions HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 156

{
    "friendlyName": "My Awesome Discussion",
    "tags": "awesome,api",
    "description": "Lorem ipsum",
    "sharing": "MEMBERS",
    "copyFrom": null
}
HTTPie
$ echo '{
    "friendlyName": "My Awesome Discussion",
    "tags": "awesome,api",
    "description": "Lorem ipsum",
    "sharing": "MEMBERS",
    "copyFrom": null
}' | http POST 'https://api.clinked.com/v3/groups/1/discussions' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/discussions' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
    "friendlyName": "My Awesome Discussion",
    "tags": "awesome,api",
    "description": "Lorem ipsum",
    "sharing": "MEMBERS",
    "copyFrom": null
}'
Table 396. Request fields
Path Type Description

friendlyName

String

Raw password

tags

String

Comma separated list of tags

description

String

Discussion initial message/description

sharing

String

Sharing setting

copyFrom

Number

Discussion id to copy friendly name and description from

Example of a success response
HTTP/1.1 201 Created
Content-Type: application/json;charset=UTF-8
Content-Length: 802

{
  "id" : 1,
  "contextKey" : {
    "id" : 172
  },
  "sharing" : "MEMBERS",
  "memberPermission" : 2,
  "following" : false,
  "shareCount" : 0,
  "userAces" : false,
  "userPermission" : 16,
  "attachmentCount" : 0,
  "name" : "my_awesome_discussion",
  "friendlyName" : "My Awesome Discussion",
  "tags" : "awesome,api",
  "description" : "Lorem ipsum",
  "replies" : 0,
  "dateCreated" : 1713433512270,
  "lastModified" : 1713433512270,
  "author" : {
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "name" : "Jack Bauer",
    "username" : "jack"
  },
  "group" : {
    "id" : 1,
    "name" : "explore_clinked",
    "friendlyName" : "Explore Clinked"
  }
}
Table 397. Definition of the returned fields
Path Type Description

id

Number

Discussion id

contextKey

Object

Enitity context key

contextKey.id

Number

Enitity context key ID

group

Object

Base information about the group

name

String

Discussion unique group name used as slug for URLs

friendlyName

String

Discussion name

tags

String

Comma separated list of tags

description

String

Discussion initial message / body

replies

Number

Amount of replies

dateCreated

Number

Creation date

lastModified

Number

Last modification date

sharing

String

Sharing setting

memberPermission

Number

Permission for members if sharing is set to members

author

Object

Discussion author

following

Boolean

Discussion being followed by you

shareCount

Number

Amount of shares for this discussion

attachmentCount

Number

Amount of attachments for this discussion

userAces

Boolean

Indicates that the discussion has individual access control entries in the discussion ACL

userPermission

Number

Your permission for discussion

author.name

String

User’s full name

author.user

Object

Detailed user data, will be set to null if user is deleted

author.username

String

User username if user is defined

author.user.id

Number

User id

author.user.name

String

Full name

author.user.username

String

Username

author.user.logo

Boolean

Profile picture is defined

author.user.jobTitle

String

Job title

author.user.lastModified

Number

Last modified date

group.id

Number

User / profile id

group.name

String

Group name slug, used for internal identification and URIs

group.friendlyName

String

Full group name, visible to a user

12.4. Update discussion

Table 398. /v3/groups/{group}/discussions/{discussion}
Parameter Description

group

Group id

discussion

Discussion id

HTTP
PATCH /v3/groups/1/discussions/1 HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 173

{
    "friendlyName": "My Awesome Discussion UPD",
    "tags": "awesome,api,new",
    "description": "Description updated",
    "sharing": "MEMBERS",
    "following": true
}
HTTPie
$ echo '{
    "friendlyName": "My Awesome Discussion UPD",
    "tags": "awesome,api,new",
    "description": "Description updated",
    "sharing": "MEMBERS",
    "following": true
}' | http PATCH 'https://api.clinked.com/v3/groups/1/discussions/1' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/discussions/1' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
    "friendlyName": "My Awesome Discussion UPD",
    "tags": "awesome,api,new",
    "description": "Description updated",
    "sharing": "MEMBERS",
    "following": true
}'
Table 399. Request fields
Path Type Description

friendlyName

String

Raw password

tags

String

Comma separated list of tags

description

String

Discussion initial message/description

sharing

String

Sharing setting

following

Boolean

Discussion being followed by you

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 812

{
  "id" : 1,
  "contextKey" : {
    "id" : 969
  },
  "sharing" : "MEMBERS",
  "memberPermission" : 2,
  "following" : true,
  "shareCount" : 0,
  "userAces" : false,
  "userPermission" : 16,
  "attachmentCount" : 0,
  "name" : "great_discussion",
  "friendlyName" : "My Awesome Discussion UPD",
  "tags" : "awesome,api,new",
  "description" : "Description updated",
  "replies" : 5,
  "dateCreated" : 1514764800000,
  "lastModified" : 1514764800000,
  "author" : {
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "name" : "Jack Bauer",
    "username" : "jack"
  },
  "group" : {
    "id" : 1,
    "name" : "explore_clinked",
    "friendlyName" : "Explore Clinked"
  }
}
Table 400. Definition of the returned fields
Path Type Description

id

Number

Discussion id

contextKey

Object

Enitity context key

contextKey.id

Number

Enitity context key ID

group

Object

Base information about the group

name

String

Discussion unique group name used as slug for URLs

friendlyName

String

Discussion name

tags

String

Comma separated list of tags

description

String

Discussion initial message / body

replies

Number

Amount of replies

dateCreated

Number

Creation date

lastModified

Number

Last modification date

sharing

String

Sharing setting

memberPermission

Number

Permission for members if sharing is set to members

author

Object

Discussion author

following

Boolean

Discussion being followed by you

shareCount

Number

Amount of shares for this discussion

attachmentCount

Number

Amount of attachments for this discussion

userAces

Boolean

Indicates that the discussion has individual access control entries in the discussion ACL

userPermission

Number

Your permission for discussion

author.name

String

User’s full name

author.user

Object

Detailed user data, will be set to null if user is deleted

author.username

String

User username if user is defined

author.user.id

Number

User id

author.user.name

String

Full name

author.user.username

String

Username

author.user.logo

Boolean

Profile picture is defined

author.user.jobTitle

String

Job title

author.user.lastModified

Number

Last modified date

group.id

Number

User / profile id

group.name

String

Group name slug, used for internal identification and URIs

group.friendlyName

String

Full group name, visible to a user

12.5. Remove discussion

Moves discussion to group trash bin.

You can always restore trash bin items later, see group trash section for details.
Table 401. /v3/groups/{group}/discussions/{discussion}
Parameter Description

group

Group id

discussion

Discussion id

HTTP
DELETE /v3/groups/1/discussions/1 HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/groups/1/discussions/1' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/discussions/1' -i -X DELETE \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 256

{
  "id" : 15,
  "contextKey" : {
    "id" : 251
  },
  "user" : {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "dateDeleted" : 1713433512301
}
Table 402. Definition of the returned fields
Path Type Description

id

Number

File id

contextKey

Object

Context key

contextKey.id

Number

Context key ID

user

Object

User who removed this

dateDeleted

Number

Remove timestamp

user.id

Number

User / profile id

user.name

String

Full name

user.username

String

Username

user.logo

Boolean

Avatar available

user.jobTitle

String

Job title

user.lastModified

Number

Last profile update date

12.6. Replies

12.6.1. List replies

Table 403. /v3/groups/{group}/discussions/{discussion}/replies
Parameter Description

group

Group id

discussion

Discussion id

HTTP
GET /v3/groups/1/discussions/1/replies?size=25&page=1 HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/groups/1/discussions/1/replies?size=25&page=1' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/discussions/1/replies?size=25&page=1' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 404. Request parameters
Parameter Description

page

Page number

size

Page size

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 714

{
  "items" : [ {
    "id" : 1,
    "reply" : "Here are my 2 cents",
    "dateCreated" : 1514764800000,
    "author" : {
      "user" : {
        "id" : 1,
        "name" : "Jack Bauer",
        "username" : "jack",
        "logo" : false,
        "jobTitle" : "Marketing",
        "lastModified" : 1514764800000
      },
      "name" : "Jack Bauer",
      "username" : "jack"
    },
    "reactions" : {
      "totalReactions" : 3,
      "userReaction" : "THUMBS_UP",
      "thumbsUp" : 1,
      "thumbsDown" : 0,
      "heart" : 0,
      "openEye" : 0,
      "fire" : 0
    }
  } ],
  "currentPage" : 1,
  "totalPages" : 1,
  "pageSize" : 25,
  "totalResults" : 1,
  "nextPage" : false,
  "previousPage" : false
}
Table 405. Definition of the returned fields
Path Type Description

items[].id

Number

Reply id

items[].author

Object

Reply author

items[].dateCreated

Number

Reply creation date

items[].reply

String

Reply text

items[].author.name

String

User’s full name

items[].author.user

Object

Detailed user data, will be set to null if user is deleted

items[].author.username

String

User username if user is defined

items[].author.user.id

Number

User id

items[].author.user.name

String

Full name

items[].author.user.username

String

Username

items[].author.user.logo

Boolean

Profile picture is defined

items[].author.user.jobTitle

String

Job title

items[].author.user.lastModified

Number

Last modified date

items

Array

Page items

currentPage

Number

Current page number

pageSize

Number

Current page size

nextPage

Boolean

Next page available

previousPage

Boolean

Previous page available

totalPages

Number

Amount of available pages

totalResults

Number

Total results

items[].reactions.totalReactions

Number

Number of total reactions

items[].reactions.userReaction

String

Reaction - [THUMBS_UP, THUMBS_DOWN, HEART, OPEN_EYE, FIRE]

items[].reactions.thumbsUp

Number

Number of thumbs up

items[].reactions.thumbsDown

Number

Number of thumbs down

items[].reactions.heart

Number

Number of hearts

items[].reactions.openEye

Number

Number of open eye

items[].reactions.fire

Number

Number of fire

12.6.2. Create reply

Table 406. /v3/groups/{group}/discussions/{discussion}/replies
Parameter Description

group

Group id

discussion

Discussion id

HTTP
POST /v3/groups/1/discussions/1/replies HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 61

{
  "reply" : "Hello discussion",
  "mentions" : "John.Doe"
}
HTTPie
$ echo '{
  "reply" : "Hello discussion",
  "mentions" : "John.Doe"
}' | http POST 'https://api.clinked.com/v3/groups/1/discussions/1/replies' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/discussions/1/replies' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
  "reply" : "Hello discussion",
  "mentions" : "John.Doe"
}'
Table 407. Request fields
Path Type Description

reply

String

Reply text

mentions

String

Reply mentions

Example of a success response
HTTP/1.1 201 Created
Content-Type: application/json;charset=UTF-8
Content-Length: 360

{
  "id" : 1,
  "reply" : "Here are my 2 cents",
  "dateCreated" : 1514764800000,
  "author" : {
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "name" : "Jack Bauer",
    "username" : "jack"
  },
  "reactions" : null
}
Table 408. Definition of the returned fields
Path Type Description

id

Number

Reply id

author

Object

Reply author

dateCreated

Number

Reply creation date

reply

String

Reply text

author.name

String

User’s full name

author.user

Object

Detailed user data, will be set to null if user is deleted

author.username

String

User username if user is defined

author.user.id

Number

User id

author.user.name

String

Full name

author.user.username

String

Username

author.user.logo

Boolean

Profile picture is defined

author.user.jobTitle

String

Job title

author.user.lastModified

Number

Last modified date

reactions

Object

Reactions

12.6.3. Delete reply

Table 409. /v3/groups/{group}/discussions/{discussion}/replies/{reply}
Parameter Description

group

Group id

discussion

Discussion id

reply

Discussion reply

HTTP
DELETE /v3/groups/1/discussions/1/replies/1 HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/groups/1/discussions/1/replies/1' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/groups/1/discussions/1/replies/1' -i -X DELETE \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

13. Comments

Entity Comments enable users to engage in discussions, share feedback, and provide context about specific entities.

13.1. List comments

Table 410. /v3/context/{context}/comments
Parameter Description

context

Context "name_id". Supported names are: file, page, event, task, discussion

HTTP
GET /v3/context/page_1/comments HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/context/page_1/comments' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/context/page_1/comments' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 411. Request parameters
Parameter Description

parent

Parent comment id

offset

Comment offset

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 589

{
  "offset" : "0",
  "items" : [ {
    "comment" : {
      "id" : 1,
      "commenter" : {
        "user" : {
          "id" : 1,
          "name" : "Jack Bauer",
          "username" : "jack",
          "logo" : false,
          "jobTitle" : "Marketing",
          "lastModified" : 1514764800000
        },
        "name" : "Jack Bauer",
        "username" : "jack"
      },
      "comment" : "Hello world",
      "dateCreated" : 1514764800000,
      "dateUpdated" : 1514764800000,
      "numberOfChildren" : 0
    },
    "reactions" : null,
    "replies" : null
  } ],
  "more" : true
}
Table 412. Definition of the returned fields
Path Type Description

offset

String

Comment offset

items

Array

Comments

items[]comment.id

Number

Comment id

items[]comment.commenter.user.id

Number

User id

items[]comment.commenter.user.name

String

Full name

items[]comment.commenter.user.username

String

Username

items[]comment.commenter.user.logo

Boolean

Profile picture is defined

items[]comment.commenter.user.jobTitle

String

Job title

items[]comment.commenter.user.lastModified

Number

Last modified date

items[]comment.commenter.name

String

Commenter name

items[]comment.commenter.username

String

Commenter username

items[]comment.comment

String

Comment text

items[]comment.dateCreated

Number

Date created

items[]comment.dateUpdated

Number

Date updated

items[]comment.numberOfChildren

Number

Number of child comments

items[]reactions

Object

Comment reactions

items[]replies

Object

Comment replies

more

Boolean

Is there more results

13.2. Comments count

Table 413. /v3/context/{context}/comments
Parameter Description

context

Context "name_id". Supported names are: file, page, event, task, discussion

HTTP
HEAD /v3/context/page_1/comments HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http HEAD 'https://api.clinked.com/v3/context/page_1/comments' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/context/page_1/comments' -i -X HEAD \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
X-Count: 100

13.3. Create comment

Table 414. /v3/context/{context}/comments
Parameter Description

context

Context "name_id". Supported names are: file, page, event, task, discussion

HTTP
POST /v3/context/page_1/comments HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 27

{"message": "Hello World" }
HTTPie
$ echo '{"message": "Hello World" }' | http POST 'https://api.clinked.com/v3/context/page_1/comments' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/context/page_1/comments' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{"message": "Hello World" }'
Table 415. Request fields
Path Type Description

parent

Number

Parent comment id

mentions

String

User mentions

message

String

Message text

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 379

{
  "id" : null,
  "commenter" : {
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "name" : "Jack Bauer",
    "username" : "jack"
  },
  "comment" : "Hello World",
  "dateCreated" : null,
  "dateUpdated" : null,
  "numberOfChildren" : 0
}
Table 416. Definition of the returned fields
Path Type Description

id

Number

Comment id

commenter

Object

Commenter object

commenter.user

Object

Commenter user object

commenter.user.id

Number

User id

commenter.user.name

String

Full name

commenter.user.username

String

Username

commenter.user.logo

Boolean

Profile picture is defined

commenter.user.jobTitle

String

Job title

commenter.user.lastModified

Number

Last modified date

commenter.name

String

Commenter name

commenter.username

String

Commenter username

comment

String

Comment content

dateCreated

Number

Date created

dateUpdated

Number

Date updated

numberOfChildren

Number

Number of children

13.4. Delete comment

Table 417. /v3/context/{context}/comments/{comment}
Parameter Description

context

Context "name_id". Supported names are: file, page, event, task, discussion

comment

Comment id

HTTP
DELETE /v3/context/page_1/comments/1 HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/context/page_1/comments/1' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/context/page_1/comments/1' -i -X DELETE \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

13.5. Reactions

Deprecated

Comment reactions are user-generated responses to comments in the portal.

13.5.1. List reactions

Table 418. /v3/context/{context}/comments/{comment}/reactions
Parameter Description

context

Context "name_id". Supported names are: file, page, event, task, discussion

comment

Comment id

HTTP
GET /v3/context/page_1/comments/1/reactions HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/context/page_1/comments/1/reactions' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/context/page_1/comments/1/reactions' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 380

[ {
  "user" : {
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "name" : "Jack Bauer",
    "username" : "jack"
  },
  "reactionType" : "THUMBS_UP",
  "dateCreated" : 1514764800000,
  "dateUpdated" : 1514764800000,
  "disabled" : false
} ]
Table 419. Definition of the returned fields
Path Type Description

[]user

Object

User

[]user.user

Object

Commenter user object

[]user.user.id

Number

User id

[]user.user.name

String

Full name

[]user.user.username

String

Username

[]user.user.logo

Boolean

Profile picture is defined

[]user.user.jobTitle

String

Job title

[]user.user.lastModified

Number

Last modified date

[]user.name

String

Commenter name

[]user.username

String

Commenter username

[]reactionType

String

Reaction type: [THUMBS_UP, THUMBS_DOWN, HEART, OPEN_EYE, FIRE]

[]dateCreated

Number

Date created

[]dateUpdated

Number

Date updated

[]disabled

Boolean

Is reaction disabled

13.5.2. Summary

Table 420. /v3/context/{context}/comments/{comment}/reactions
Parameter Description

context

Context "name_id". Supported names are: file, page, event, task, discussion

comment

Comment id

HTTP
GET /v3/context/page_1/comments/1/reactions?summary=&summary= HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/context/page_1/comments/1/reactions?summary=&summary=' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/context/page_1/comments/1/reactions?summary=&summary=' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 142

{
  "totalReactions" : 3,
  "userReaction" : "THUMBS_UP",
  "thumbsUp" : 1,
  "thumbsDown" : 0,
  "heart" : 0,
  "openEye" : 0,
  "fire" : 0
}
Table 421. Definition of the returned fields
Path Type Description

totalReactions

Number

Number of total reactions

userReaction

String

Reaction - [THUMBS_UP, THUMBS_DOWN, HEART, OPEN_EYE, FIRE]

thumbsUp

Number

Number of thumbs up

thumbsDown

Number

Number of thumbs down

heart

Number

Number of hearts

openEye

Number

Number of open eye

fire

Number

Number of fire

13.5.3. Create reaction

Table 422. /v3/context/{context}/comments/{comment}/reactions
Parameter Description

context

Context "name_id". Supported names are: file, page, event, task, discussion

comment

Comment id

HTTP
POST /v3/context/page_1/comments/1/reactions HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 30

{"reactionType": "THUMBS_UP" }
HTTPie
$ echo '{"reactionType": "THUMBS_UP" }' | http POST 'https://api.clinked.com/v3/context/page_1/comments/1/reactions' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/context/page_1/comments/1/reactions' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{"reactionType": "THUMBS_UP" }'
Table 423. Request fields
Path Type Description

reactionType

String

Reaction - [THUMBS_UP, THUMBS_DOWN, HEART, OPEN_EYE, FIRE]

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 376

{
  "user" : {
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "name" : "Jack Bauer",
    "username" : "jack"
  },
  "reactionType" : "THUMBS_UP",
  "dateCreated" : 1514764800000,
  "dateUpdated" : 1514764800000,
  "disabled" : false
}
Table 424. Definition of the returned fields
Path Type Description

user

Object

User

user.user

Object

Commenter user object

user.user.id

Number

User id

user.user.name

String

Full name

user.user.username

String

Username

user.user.logo

Boolean

Profile picture is defined

user.user.jobTitle

String

Job title

user.user.lastModified

Number

Last modified date

user.name

String

Commenter name

user.username

String

Commenter username

reactionType

String

Reaction type: [THUMBS_UP, THUMBS_DOWN, HEART, OPEN_EYE, FIRE]

dateCreated

Number

Date created

dateUpdated

Number

Date updated

disabled

Boolean

Is reaction disabled

13.5.4. Disable reaction

Disable authenticated user reaction to comment.

Table 425. /v3/context/{context}/comments/{comment}/reactions
Parameter Description

context

Context "name_id". Supported names are: file, page, event, task, discussion

comment

Comment id

HTTP
DELETE /v3/context/page_1/comments/1/reactions HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 30

{"reactionType": "THUMBS_UP" }
HTTPie
$ echo '{"reactionType": "THUMBS_UP" }' | http DELETE 'https://api.clinked.com/v3/context/page_1/comments/1/reactions' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/context/page_1/comments/1/reactions' -i -X DELETE \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{"reactionType": "THUMBS_UP" }'
Table 426. Request fields
Path Type Description

reactionType

String

Reaction - [THUMBS_UP, THUMBS_DOWN, HEART, OPEN_EYE, FIRE]

Example of a success response
HTTP/1.1 200 OK

14. Comment reactions

Comment reactions are user-generated responses to comments in the portal.

14.1. List reactions

Table 427. /v3/context/{context}/reactions
Parameter Description

context

example: reply_1, comment_1, discussions have 'reply', everything else 'comment'

HTTP
GET /v3/context/comment_1/reactions HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Accept: application/json
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/context/comment_1/reactions' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>' \
    'Accept:application/json'
Curl
$ curl 'https://api.clinked.com/v3/context/comment_1/reactions' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -H 'Accept: application/json'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 380

[ {
  "user" : {
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "name" : "Jack Bauer",
    "username" : "jack"
  },
  "reactionType" : "THUMBS_UP",
  "dateCreated" : 1514764800000,
  "dateUpdated" : 1514764800000,
  "disabled" : false
} ]
Table 428. Definition of the returned fields
Path Type Description

[]user

Object

User

[]user.user

Object

Commenter user object

[]user.user.id

Number

User id

[]user.user.name

String

Full name

[]user.user.username

String

Username

[]user.user.logo

Boolean

Profile picture is defined

[]user.user.jobTitle

String

Job title

[]user.user.lastModified

Number

Last modified date

[]user.name

String

Commenter name

[]user.username

String

Commenter username

[]reactionType

String

Reaction type: [THUMBS_UP, THUMBS_DOWN, HEART, OPEN_EYE, FIRE]

[]dateCreated

Number

Date created

[]dateUpdated

Number

Date updated

[]disabled

Boolean

Is reaction disabled

14.2. Summary

Table 429. /v3/context/{context}/reactions
Parameter Description

context

example: reply_1, comment_1, discussions have 'reply', everything else 'comment'

HTTP
GET /v3/context/comment_1/reactions?summary=&summary= HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Accept: application/json
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/context/comment_1/reactions?summary=&summary=' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>' \
    'Accept:application/json'
Curl
$ curl 'https://api.clinked.com/v3/context/comment_1/reactions?summary=&summary=' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -H 'Accept: application/json'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 137

{
  "totalReactions" : 5,
  "userReaction" : "FIRE",
  "thumbsUp" : 1,
  "thumbsDown" : 1,
  "heart" : 1,
  "openEye" : 1,
  "fire" : 1
}
Table 430. Definition of the returned fields
Path Type Description

totalReactions

Number

Number of total reactions

userReaction

String

Reaction - [THUMBS_UP, THUMBS_DOWN, HEART, OPEN_EYE, FIRE]

thumbsUp

Number

Number of thumbs up

thumbsDown

Number

Number of thumbs down

heart

Number

Number of hearts

openEye

Number

Number of open eye

fire

Number

Number of fire

14.3. Create reaction

Table 431. /v3/context/{context}/reactions
Parameter Description

context

example: reply_1, comment_1, discussions have 'reply', everything else 'comment'

HTTP
POST /v3/context/comment_1/reactions HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Accept: application/json
Host: api.clinked.com
Content-Length: 34

{
  "reactionType" : "THUMBS_UP"
}
HTTPie
$ echo '{
  "reactionType" : "THUMBS_UP"
}' | http POST 'https://api.clinked.com/v3/context/comment_1/reactions' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>' \
    'Accept:application/json'
Curl
$ curl 'https://api.clinked.com/v3/context/comment_1/reactions' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -H 'Accept: application/json' \
    -d '{
  "reactionType" : "THUMBS_UP"
}'
Table 432. Request fields
Path Type Description

reactionType

String

Reaction type - [THUMBS_UP, THUMBS_DOWN, HEART, OPEN_EYE, FIRE]

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 376

{
  "user" : {
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "name" : "Jack Bauer",
    "username" : "jack"
  },
  "reactionType" : "THUMBS_UP",
  "dateCreated" : 1514764800000,
  "dateUpdated" : 1514764800000,
  "disabled" : false
}
Table 433. Definition of the returned fields
Path Type Description

user

Object

User

user.user

Object

Commenter user object

user.user.id

Number

User id

user.user.name

String

Full name

user.user.username

String

Username

user.user.logo

Boolean

Profile picture is defined

user.user.jobTitle

String

Job title

user.user.lastModified

Number

Last modified date

user.name

String

Commenter name

user.username

String

Commenter username

reactionType

String

Reaction type: [THUMBS_UP, THUMBS_DOWN, HEART, OPEN_EYE, FIRE]

dateCreated

Number

Date created

dateUpdated

Number

Date updated

disabled

Boolean

Is reaction disabled

14.4. Disable reaction

Table 434. /v3/context/{context}/reactions
Parameter Description

context

example: reply_1, comment_1, discussions have 'reply', everything else 'comment'

HTTP
DELETE /v3/context/comment_1/reactions HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Accept: application/json
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/context/comment_1/reactions' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>' \
    'Accept:application/json'
Curl
$ curl 'https://api.clinked.com/v3/context/comment_1/reactions' -i -X DELETE \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -H 'Accept: application/json'
Example of a success response
HTTP/1.1 200 OK

15. Attachments

Attachments are files attached to other content within the portal such as notes, discussions, etc.

Context parameter format:

{name}_{id}

Available context type names are:

  • account - Account

  • group - Group

  • file - Group file

  • page - Group note

  • event - Group calendar event

  • task - Group task

  • discussion - Group discussion

  • reachoutentry - Reach Out entry

15.1. List attachments

Table 435. /v3/context/{context}/attachments
Parameter Description

context

Context "name_id". Supported names are: file, page, event, task, discussion

HTTP
GET /v3/context/discussion_1/attachments?page=1&size=10&orderBy=lastModified&ascending=true&foldersOnly=false HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/context/discussion_1/attachments?page=1&size=10&orderBy=lastModified&ascending=true&foldersOnly=false' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/context/discussion_1/attachments?page=1&size=10&orderBy=lastModified&ascending=true&foldersOnly=false' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 436. Request parameters
Parameter Description

page

Page number

size

Page size

name

Search by name

orderBy

Order field: name, lastModified

ascending

Order in ascending direction

foldersOnly

Get only folders

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1071

{
  "items" : [ {
    "id" : 100,
    "friendlyName" : "Cat.jpg",
    "name" : "cat_jpg",
    "contentType" : "image/jpg",
    "size" : 4500,
    "lastModified" : 1713433481674,
    "href" : null,
    "link" : 99,
    "removed" : false,
    "previewInfo" : {
      "finished" : false,
      "successful" : false,
      "values" : {
        "fileId" : 99
      },
      "errorCode" : null
    }
  }, {
    "id" : 105,
    "friendlyName" : "Dog.jpg",
    "name" : "dog_jpg",
    "contentType" : "glink",
    "size" : 0,
    "lastModified" : 1713433481674,
    "href" : "https://drive.google.com/file/d/1svAO-TKvjb4k9Kd1AeDQG_gRx0d4y89L/view?usp=drivesdk",
    "link" : null,
    "removed" : false,
    "previewInfo" : {
      "finished" : false,
      "successful" : false,
      "values" : {
        "href" : "https://drive.google.com/file/d/1svAO-TKvjb4k9Kd1AeDQG_gRx0d4y89L/view?usp=drivesdk"
      },
      "errorCode" : null
    }
  } ],
  "currentPage" : 1,
  "totalPages" : 1,
  "pageSize" : 10,
  "totalResults" : 2,
  "nextPage" : false,
  "previousPage" : false
}
Table 437. Definition of the returned fields
Path Type Description

items

Array

Page items

currentPage

Number

Current page number

pageSize

Number

Page size

totalPages

Number

Total pages

totalResults

Number

Results in total

nextPage

Boolean

Next page available

previousPage

Boolean

Previous page available

items[].id

Number

Attachment id

items[].friendlyName

String

Attachment name

items[].name

String

Attachment slug

items[].contentType

String

Attachment file content type

items[].size

Number

Attachment file size

items[].lastModified

Number

Last modification date

items[].previewInfo

Object

Preview details

items[].removed

Boolean

Attached group file is removed

items[].link

Number

Linked group file ID

items[].previewInfo.finished

Boolean

Has the preview conversion finished

items[].previewInfo.successful

Boolean

Was the preview conversion successful

items[].previewInfo.values

Object

Values specific to the preview type

items[].previewInfo.values.href

String

File URL

items[].previewInfo.values.fileId

Number

File ID

items[].previewInfo.errorCode

String

Error code if preview conversion failed

15.2. Upload attachment

Attaches a new file. See file upload section for details on how to upload a file and get required temporary file ID.

Table 438. /v3/context/{context}/attachments
Parameter Description

context

Context "name_id". Supported names are: file, page, event, task, discussion

HTTP
POST /v3/context/discussion_1/attachments HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 129

{
    "friendlyName": "My File.pdf",
    "tempFile": "MFYHA3DJMNQXI2LPNYXXAZDGHIYTAMB2JV4SAZTJNRSS44DEHJTGC3DTMU5G45LMNQ======"
}
HTTPie
$ echo '{
    "friendlyName": "My File.pdf",
    "tempFile": "MFYHA3DJMNQXI2LPNYXXAZDGHIYTAMB2JV4SAZTJNRSS44DEHJTGC3DTMU5G45LMNQ======"
}' | http POST 'https://api.clinked.com/v3/context/discussion_1/attachments' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/context/discussion_1/attachments' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
    "friendlyName": "My File.pdf",
    "tempFile": "MFYHA3DJMNQXI2LPNYXXAZDGHIYTAMB2JV4SAZTJNRSS44DEHJTGC3DTMU5G45LMNQ======"
}'
Table 439. Request fields
Path Type Description

friendlyName

String

Attachment file name

tempFile

String

Temporary file id to attach

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 241

{
  "id" : 50,
  "friendlyName" : "My File.pdf",
  "name" : "my_file_pdf",
  "contentType" : "application/pdf",
  "size" : 100,
  "lastModified" : 1713433481623,
  "href" : null,
  "link" : null,
  "removed" : false,
  "previewInfo" : null
}
Table 440. Definition of the returned fields
Path Type Description

id

Number

Attachment id

friendlyName

String

Attachment name

name

String

Attachment slug

contentType

String

Attachment file content type

size

Number

Attachment file size

lastModified

Number

Last modification date

previewInfo

Object

Preview details

removed

Boolean

Attached group file is removed

link

Number

Linked group file ID

previewInfo.finished

Boolean

Has the preview conversion finished

previewInfo.successful

Boolean

Was the preview conversion successful

previewInfo.values

Object

Values specific to the preview type

previewInfo.values.href

String

File URL

previewInfo.values.fileId

Number

File ID

previewInfo.errorCode

String

Error code if preview conversion failed

15.3. Attach group file

Attaches existing group file.

Table 441. /v3/context/{context}/attachments
Parameter Description

context

Context "name_id". Supported names are: file, page, event, task, discussion

HTTP
POST /v3/context/discussion_1/attachments HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 54

{
    "friendlyName": "My File.pdf",
    "fileId": 1
}
HTTPie
$ echo '{
    "friendlyName": "My File.pdf",
    "fileId": 1
}' | http POST 'https://api.clinked.com/v3/context/discussion_1/attachments' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/context/discussion_1/attachments' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
    "friendlyName": "My File.pdf",
    "fileId": 1
}'
Table 442. Request fields
Path Type Description

friendlyName

String

Attachment file name

fileId

Number

Group file id to attach

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 346

{
  "id" : 50,
  "friendlyName" : "Cat.jpg",
  "name" : "my_file_pdf",
  "contentType" : "image/jpg",
  "size" : 4500,
  "lastModified" : 1713433481782,
  "href" : null,
  "link" : 1,
  "removed" : false,
  "previewInfo" : {
    "finished" : false,
    "successful" : false,
    "values" : {
      "fileId" : 1
    },
    "errorCode" : null
  }
}
Table 443. Definition of the returned fields
Path Type Description

id

Number

Attachment id

friendlyName

String

Attachment name

name

String

Attachment slug

contentType

String

Attachment file content type

size

Number

Attachment file size

lastModified

Number

Last modification date

previewInfo

Object

Preview details

removed

Boolean

Attached group file is removed

link

Number

Linked group file ID

previewInfo.finished

Boolean

Has the preview conversion finished

previewInfo.successful

Boolean

Was the preview conversion successful

previewInfo.values

Object

Values specific to the preview type

previewInfo.values.href

String

File URL

previewInfo.values.fileId

Number

File ID

previewInfo.errorCode

String

Error code if preview conversion failed

Attaches link to Google Drive/Onedrive file.

Table 444. /v3/context/{context}/attachments
Parameter Description

context

Context "name_id". Supported names are: file, page, event, task, discussion

HTTP
POST /v3/context/discussion_1/attachments HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 136

{
    "friendlyName": "My File.pdf",
    "href": "https://drive.google.com/file/d/1svAO-TKvjb4k9Kd1AeDQG_gRx0d4y89L/view?usp=drivesdk"
}
HTTPie
$ echo '{
    "friendlyName": "My File.pdf",
    "href": "https://drive.google.com/file/d/1svAO-TKvjb4k9Kd1AeDQG_gRx0d4y89L/view?usp=drivesdk"
}' | http POST 'https://api.clinked.com/v3/context/discussion_1/attachments' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/context/discussion_1/attachments' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
    "friendlyName": "My File.pdf",
    "href": "https://drive.google.com/file/d/1svAO-TKvjb4k9Kd1AeDQG_gRx0d4y89L/view?usp=drivesdk"
}'
Table 445. Request fields
Path Type Description

friendlyName

String

Attachment file name

href

String

Google file URL

oneDrive.href

String

Onedrive file URL

oneDrive.folder

Boolean

Is folder

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 509

{
  "id" : 50,
  "friendlyName" : "My File.pdf",
  "name" : "my_file_pdf",
  "contentType" : "glink",
  "size" : 0,
  "lastModified" : 1713433481719,
  "href" : "https://drive.google.com/file/d/1svAO-TKvjb4k9Kd1AeDQG_gRx0d4y89L/view?usp=drivesdk",
  "link" : null,
  "removed" : false,
  "previewInfo" : {
    "finished" : false,
    "successful" : false,
    "values" : {
      "href" : "https://drive.google.com/file/d/1svAO-TKvjb4k9Kd1AeDQG_gRx0d4y89L/view?usp=drivesdk"
    },
    "errorCode" : null
  }
}
Table 446. Definition of the returned fields
Path Type Description

id

Number

Attachment id

friendlyName

String

Attachment name

name

String

Attachment slug

contentType

String

Attachment file content type

size

Number

Attachment file size

lastModified

Number

Last modification date

previewInfo

Object

Preview details

removed

Boolean

Attached group file is removed

link

Number

Linked group file ID

previewInfo.finished

Boolean

Has the preview conversion finished

previewInfo.successful

Boolean

Was the preview conversion successful

previewInfo.values

Object

Values specific to the preview type

previewInfo.values.href

String

File URL

previewInfo.values.fileId

Number

File ID

previewInfo.errorCode

String

Error code if preview conversion failed

15.5. Delete attachment

Deletes attachment. If a group file is attaches, it will not delete it from a group.

Table 447. /v3/context/{context}/attachments/{attachment}
Parameter Description

context

Context "name_id". Supported names are: file, page, event, task, discussion

attachment

Attachment id

HTTP
DELETE /v3/context/discussion_1/attachments/1 HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/context/discussion_1/attachments/1' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/context/discussion_1/attachments/1' -i -X DELETE \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

15.6. Download attachment

Downloads attachment file.

Table 448. /v3/context/{context}/attachments/{attachment}/download
Parameter Description

context

Context "name_id". Supported names are: file, page, event, task, discussion

attachment

Attachment id

HTTP
GET /v3/context/discussion_1/attachments/1/download HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/context/discussion_1/attachments/1/download' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/context/discussion_1/attachments/1/download' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Disposition: attachment; filename="Cat.jpg"
Last-Modified: Thu, 18 Apr 2024 09:44:41 GMT
Content-Type: image/jpg
Accept-Ranges: bytes

16. Shares

Find out with whom the entity is shared with. For details how to access shared content visit Shares documentation.

16.1. List shares

Table 449. /v3/context/{context}/shares
Parameter Description

context

Context "name_id". Supported names are: file, page, event, task, discussion

HTTP
GET /v3/context/page_1/shares HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/context/page_1/shares' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/context/page_1/shares' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 402

[ {
  "user" : {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "contentContext" : null,
  "dateCreated" : 1514764800000,
  "dateExpire" : 1514764800000,
  "email" : "jack.bauer@clinked.com",
  "tokenKey" : null,
  "permission" : 1,
  "passwordEnabled" : false,
  "notifications" : false
} ]
Table 450. Definition of the returned fields
Path Type Description

[].user.id

Number

User id

[].user.name

String

Full name

[].user.username

String

Username

[].user.logo

Boolean

Profile picture is defined

[].user.jobTitle

String

Job title

[].user.lastModified

Number

Last modified date

[].contentContext

object

Content context

[].dateCreated

double

Date created

[].dateExpire

double

Date expire

[].email

object<type=String>

Email

[].tokenKey

object<type=String>

Token key

[].permission

double

Permission

[].passwordEnabled

boolean

Is password enabled

[].notifications

boolean

Is notifications enabled

16.2. Share count

Table 451. /v3/context/{context}/shares
Parameter Description

context

Context "name_id". Supported names are: file, page, event, task, discussion

HTTP
HEAD /v3/context/page_1/shares HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http HEAD 'https://api.clinked.com/v3/context/page_1/shares' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/context/page_1/shares' -i -X HEAD \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
X-Count: 100

16.3. Create share

Table 452. /v3/context/{context}/shares
Parameter Description

context

Context "name_id". Supported names are: file, page, event, task, discussion

HTTP
POST /v3/context/page_1/shares HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 207

{"emails":["jasck@example.com"],"type":"SHARE","sendEmail":true,"message":"Shared content with you","dateExpire":1713437077384,"password":"saFEpasWORD","notifications":true,"uploads":false,"downloads":false}
HTTPie
$ echo '{"emails":["jasck@example.com"],"type":"SHARE","sendEmail":true,"message":"Shared content with you","dateExpire":1713437077384,"password":"saFEpasWORD","notifications":true,"uploads":false,"downloads":false}' | http POST 'https://api.clinked.com/v3/context/page_1/shares' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/context/page_1/shares' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{"emails":["jasck@example.com"],"type":"SHARE","sendEmail":true,"message":"Shared content with you","dateExpire":1713437077384,"password":"saFEpasWORD","notifications":true,"uploads":false,"downloads":false}'
Table 453. Request fields
Path Type Description

emails

2003

Array of emails

type

object<type=String>

Type - [SHARE, UPLOAD_REQUEST]

sendEmail

boolean

Send email

message

boolean

Email message

dateExpire

double

Expiry date

password

object<type=String>

Password

notifications

boolean

Send notifications

uploads

boolean

Allow uploads

downloads

boolean

Allow downloads

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 402

[ {
  "user" : {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "contentContext" : null,
  "dateCreated" : 1514764800000,
  "dateExpire" : 1514764800000,
  "email" : "jack.bauer@clinked.com",
  "tokenKey" : null,
  "permission" : 1,
  "passwordEnabled" : false,
  "notifications" : false
} ]
Table 454. Definition of the returned fields
Path Type Description

[].user.id

Number

User id

[].user.name

String

Full name

[].user.username

String

Username

[].user.logo

Boolean

Profile picture is defined

[].user.jobTitle

String

Job title

[].user.lastModified

Number

Last modified date

[].contentContext

object

Content context

[].dateCreated

double

Date created

[].dateExpire

double

Date expire

[].email

object<type=String>

Email

[].tokenKey

object<type=String>

Token key

[].permission

double

Permission

[].passwordEnabled

boolean

Is password enabled

[].notifications

boolean

Is notifications enabled

16.4. Update share

Table 455. /v3/context/{context}/shares/{tokenKey}
Parameter Description

context

Context "name_id". Supported names are: file, page, event, task, discussion

tokenKey

Token key

HTTP
PATCH /v3/context/page_1/shares/1234-567d-fd31-443f-gdfg HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 178

{"sendEmail":true,"message":"Hello patch","expiryEnabled":false,"dateExpire":null,"passwordEnabled":false,"password":null,"notifications":false,"uploads":false,"downloads":false}
HTTPie
$ echo '{"sendEmail":true,"message":"Hello patch","expiryEnabled":false,"dateExpire":null,"passwordEnabled":false,"password":null,"notifications":false,"uploads":false,"downloads":false}' | http PATCH 'https://api.clinked.com/v3/context/page_1/shares/1234-567d-fd31-443f-gdfg' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/context/page_1/shares/1234-567d-fd31-443f-gdfg' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{"sendEmail":true,"message":"Hello patch","expiryEnabled":false,"dateExpire":null,"passwordEnabled":false,"password":null,"notifications":false,"uploads":false,"downloads":false}'
Table 456. Request fields
Path Type Description

sendEmail

boolean

Send email

message

boolean

Email message

dateExpire

double

Expiry date

password

object<type=String>

Password

notifications

boolean

Send notifications

uploads

boolean

Allow uploads

downloads

boolean

Allow downloads

expiryEnabled

boolean

Enable expiry

passwordEnabled

boolean

Enable password

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 389

{
  "user" : {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "contentContext" : null,
  "dateCreated" : 1514764800000,
  "dateExpire" : null,
  "email" : "jack.bauer@clinked.com",
  "tokenKey" : null,
  "permission" : 1,
  "passwordEnabled" : false,
  "notifications" : false
}
Table 457. Definition of the returned fields
Path Type Description

user.id

Number

User id

user.name

String

Full name

user.username

String

Username

user.logo

Boolean

Profile picture is defined

user.jobTitle

String

Job title

user.lastModified

Number

Last modified date

contentContext

object

Content context

dateCreated

double

Date created

dateExpire

double

Date expire

email

object<type=String>

Email

tokenKey

object<type=String>

Token key

permission

double

Permission

passwordEnabled

boolean

Is password enabled

notifications

boolean

Is notifications enabled

16.5. Delete share

Table 458. /v3/context/{context}/shares/{tokenKey}
Parameter Description

context

Context "name_id". Supported names are: file, page, event, task, discussion

tokenKey

Token key

HTTP
DELETE /v3/context/page_1/shares/1234-567d-fd31-443f-gdfg HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/context/page_1/shares/1234-567d-fd31-443f-gdfg' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/context/page_1/shares/1234-567d-fd31-443f-gdfg' -i -X DELETE \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

17. Profile

Profiles endpoints can be used to get or update personal profile information. Also, you can retrieve other available users, meaning users you have permission to see.

17.1. Profile count

HTTP
HEAD /v3/profiles HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http --form HEAD 'https://api.clinked.com/v3/profiles' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/profiles' -i -X HEAD \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 459. Request parameters
Parameter Description

exclude

Array of user Ids to exclude from list

allowSelf

Add yourself to the list of members

name

Name or email address to filter member by

group

Group for which to count members

Example of a success response
HTTP/1.1 200 OK
X-Count: 0

17.2. List visible profiles

Shows list of users you are allowed to see. These can be group and account members you have access to. This is helpful if you want to invite a user to an event, assign a task and other cases when other user ID or username is required.

HTTP
GET /v3/profiles?allowSelf=false HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/profiles?allowSelf=false' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/profiles?allowSelf=false' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 460. Request parameters
Parameter Description

allowSelf

Add yourself to the list of members

name

Name or email address to filter member by

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 671

{
  "items" : [ {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000,
    "locale" : "en",
    "timeZone" : "UTC",
    "twoFactorAuthentication" : false,
    "verifiedEmail" : false,
    "dateFormat" : null,
    "twentyFourHourTimeFormat" : false,
    "email" : "jack.bauer@clinked.com",
    "address" : "71 Pilgrim Avenue",
    "telephone" : "123456789",
    "other" : null,
    "organisation" : "Clinked",
    "profileFields" : { }
  } ],
  "currentPage" : 1,
  "totalPages" : 1,
  "pageSize" : 10,
  "totalResults" : 1,
  "nextPage" : false,
  "previousPage" : false
}
Table 461. Definition of the returned fields
Path Type Description

items

Array

Page items

currentPage

Number

Current page number

pageSize

Number

Current page size

nextPage

Boolean

Next page available

previousPage

Boolean

Previous page available

totalPages

Number

Amount of available pages

totalResults

Number

Total results

items[].id

Number

User id

items[].name

String

Full name

items[].username

String

Username

items[].logo

Boolean

Profile picture is defined

items[].jobTitle

String

Job title

items[].lastModified

Number

Last modified date

items[].organisation

String

Organisation name

items[].email

String

Email address

items[].address

String

Address

items[].telephone

String

Phone number

items[].other

String

Optional other information

items[].timeZone

String

Time zone ID

items[].locale

String

Locale

items[].verifiedEmail

Boolean

Is email verified

items[].twoFactorAuthentication

Boolean

Is 2FA enabled

items[].twoFactorMode

String

2FA mode: [AUTHENTICATOR, SMS, EMAIL]

items[].profileFields

Object

Additional profile fields

items[].twentyFourHourTimeFormat

Boolean

Time format preference - 24hr or 12hr format

items[].dateFormat

Boolean

Date format preference - YMD (Year-Month-Day), MDY (Month/Day/Year) or DMY(Day/Month/Year)

17.3. Show personal profile details

Shows currently authenticated user personal profile information.

HTTP
GET /v3/profiles/me HTTP/1.1
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/profiles/me'
Curl
$ curl 'https://api.clinked.com/v3/profiles/me' -i -X GET
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 512

{
  "id" : 1,
  "name" : "Jack Bauer",
  "username" : "jack",
  "logo" : false,
  "jobTitle" : "Marketing",
  "lastModified" : 1514764800000,
  "locale" : "en",
  "timeZone" : "UTC",
  "twoFactorAuthentication" : false,
  "verifiedEmail" : false,
  "dateFormat" : null,
  "twentyFourHourTimeFormat" : false,
  "realName" : "Jack Bauer",
  "email" : "jack.bauer@clinked.com",
  "address" : "71 Pilgrim Avenue",
  "telephone" : "123456789",
  "other" : null,
  "organisation" : "Clinked",
  "profileFields" : { }
}
Table 462. Definition of the returned fields
Path Type Description

id

Number

User / profile id

name

String

Name

realName

String

Real name visible only to account administrators

username

String

Username

email

String

Email

address

String

Optional address

telephone

String

Optional phone number

other

String

Optional other details

organisation

String

Optional organisation name

jobTitle

String

Optional job title

logo

Boolean

Profile has logo or not

twoFactorAuthentication

Boolean

Profile has 2FA enabled / disabled

locale

String

Profile locale

timeZone

String

Profile time zone

lastModified

Number

Profile was last modified

verifiedEmail

Boolean

Profile e-mail address is verified

twentyFourHourTimeFormat

Boolean

Time format preference - 24hr or 12hr format

dateFormat

String

Date format preference - YMD (Year-Month-Day), MDY (Month/Day/Year) or DMY(Day/Month/Year)

profileFields

Object

Optional custom profile fields

17.4. Update personal profile data

Updates currently authenticated user personal profile information.

HTTP
PATCH /v3/profiles/me HTTP/1.1
Content-Type: application/json
Host: api.clinked.com
Content-Length: 24

{  "telephone": "12345"}
HTTPie
$ echo '{  "telephone": "12345"}' | http PATCH 'https://api.clinked.com/v3/profiles/me' \
    'Content-Type:application/json'
Curl
$ curl 'https://api.clinked.com/v3/profiles/me' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -d '{  "telephone": "12345"}'
Table 463. Request fields
Path Type Description

logoImage

String

Temporary file ID for new user avatar

logo

Boolean

Should avatar be available

name

String

Full name

email

String

Email address

address

String

Physical address

telephone

String

Phone number

other

String

Description / notes

organisation

String

Organisation name

jobTitle

String

Job title

locale

String

Locale ID

timeZone

String

Time zone ID

dateFormat

String

Date format preference - YMD (Year-Month-Day), MDY (Month/Day/Year) or DMY(Day/Month/Year)

realName

String

Real name visible only to account administrators

profileFields

Object

Optional custom profile fields

twentyFourHourTimeFormat

Boolean

Time format preference - 24hr or 12hr format

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 508

{
  "id" : 1,
  "name" : "Jack Bauer",
  "username" : "jack",
  "logo" : false,
  "jobTitle" : "Marketing",
  "lastModified" : 1514764800000,
  "locale" : "en",
  "timeZone" : "UTC",
  "twoFactorAuthentication" : false,
  "verifiedEmail" : false,
  "dateFormat" : null,
  "twentyFourHourTimeFormat" : false,
  "realName" : "Jack Bauer",
  "email" : "jack.bauer@clinked.com",
  "address" : "71 Pilgrim Avenue",
  "telephone" : "12345",
  "other" : null,
  "organisation" : "Clinked",
  "profileFields" : { }
}
Table 464. Definition of the returned fields
Path Type Description

id

Number

User / profile id

name

String

Name

realName

String

Real name visible only to account administrators

username

String

Username

email

String

Email

address

String

Optional address

telephone

String

Optional phone number

other

String

Optional other details

organisation

String

Optional organisation name

jobTitle

String

Optional job title

logo

Boolean

Profile has logo or not

twoFactorAuthentication

Boolean

Profile has 2FA enabled / disabled

locale

String

Profile locale

timeZone

String

Profile time zone

lastModified

Number

Profile was last modified

verifiedEmail

Boolean

Profile e-mail address is verified

twentyFourHourTimeFormat

Boolean

Time format preference - 24hr or 12hr format

dateFormat

String

Date format preference - YMD (Year-Month-Day), MDY (Month/Day/Year) or DMY(Day/Month/Year)

profileFields

Object

Optional custom profile fields

17.5. Get profile details

Returns profile details by username.

Table 465. /v3/profiles/{username}
Parameter Description

username

Username

HTTP
GET /v3/profiles/jack HTTP/1.1
Content-Type: application/json
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/profiles/jack' \
    'Content-Type:application/json'
Curl
$ curl 'https://api.clinked.com/v3/profiles/jack' -i -X GET \
    -H 'Content-Type: application/json'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 512

{
  "id" : 1,
  "name" : "Jack Bauer",
  "username" : "jack",
  "logo" : false,
  "jobTitle" : "Marketing",
  "lastModified" : 1514764800000,
  "locale" : "en",
  "timeZone" : "UTC",
  "twoFactorAuthentication" : false,
  "verifiedEmail" : false,
  "dateFormat" : null,
  "twentyFourHourTimeFormat" : false,
  "realName" : "Jack Bauer",
  "email" : "jack.bauer@clinked.com",
  "address" : "71 Pilgrim Avenue",
  "telephone" : "123456789",
  "other" : null,
  "organisation" : "Clinked",
  "profileFields" : { }
}
Table 466. Definition of the returned fields
Path Type Description

id

Number

User / profile id

name

String

Name

realName

String

Real name visible only to account administrators

username

String

Username

email

String

Email

address

String

Optional address

telephone

String

Optional phone number

other

String

Optional other details

organisation

String

Optional organisation name

jobTitle

String

Optional job title

logo

Boolean

Profile has logo or not

twoFactorAuthentication

Boolean

Profile has 2FA enabled / disabled

locale

String

Profile locale

timeZone

String

Profile time zone

lastModified

Number

Profile was last modified

verifiedEmail

Boolean

Profile e-mail address is verified

twentyFourHourTimeFormat

Boolean

Time format preference - 24hr or 12hr format

dateFormat

String

Date format preference - YMD (Year-Month-Day), MDY (Month/Day/Year) or DMY(Day/Month/Year)

profileFields

Object

Optional custom profile fields

17.6. Update profile

Table 467. /v3/profiles/{username}
Parameter Description

username

Username

HTTP
PATCH /v3/profiles/jack HTTP/1.1
Content-Type: application/json
Host: api.clinked.com
Content-Length: 269

{
  "name" : "John Doe",
  "realName" : "John Saint",
  "email" : "email@example.com",
  "address" : "Never land",
  "telephone" : "123456789",
  "organisation" : "Awesome org",
  "jobTitle" : "Boss",
  "locale" : "en_GB",
  "timeZone" : "UTC",
  "verifyEmail" : true
}
HTTPie
$ echo '{
  "name" : "John Doe",
  "realName" : "John Saint",
  "email" : "email@example.com",
  "address" : "Never land",
  "telephone" : "123456789",
  "organisation" : "Awesome org",
  "jobTitle" : "Boss",
  "locale" : "en_GB",
  "timeZone" : "UTC",
  "verifyEmail" : true
}' | http PATCH 'https://api.clinked.com/v3/profiles/jack' \
    'Content-Type:application/json'
Curl
$ curl 'https://api.clinked.com/v3/profiles/jack' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -d '{
  "name" : "John Doe",
  "realName" : "John Saint",
  "email" : "email@example.com",
  "address" : "Never land",
  "telephone" : "123456789",
  "organisation" : "Awesome org",
  "jobTitle" : "Boss",
  "locale" : "en_GB",
  "timeZone" : "UTC",
  "verifyEmail" : true
}'
Table 468. Request fields
Path Type Description

logoImage

String

Temporary file ID for new user avatar

logo

Boolean

Should avatar be available

name

String

Full name

email

String

Email address

address

String

Physical address

telephone

String

Phone number

other

String

Description / notes

organisation

String

Organisation name

jobTitle

String

Job title

locale

String

Locale ID

timeZone

String

Time zone ID

dateFormat

String

Date format preference - YMD (Year-Month-Day), MDY (Month/Day/Year) or DMY(Day/Month/Year)

realName

String

Real name visible only to account administrators

profileFields

Object

Optional custom profile fields

twentyFourHourTimeFormat

Boolean

Time format preference - 24hr or 12hr format

verifyEmail

Boolean

Verify email

password

String

New password

currentPassword

String

Current password

logo

Boolean

Has logo

logoImage

String

Logo temp file id

Table 469. Example of a success response
Path Type Description

id

Number

User / profile id

name

String

Name

realName

String

Real name visible only to account administrators

username

String

Username

email

String

Email

address

String

Optional address

telephone

String

Optional phone number

other

String

Optional other details

organisation

String

Optional organisation name

jobTitle

String

Optional job title

logo

Boolean

Profile has logo or not

twoFactorAuthentication

Boolean

Profile has 2FA enabled / disabled

locale

String

Profile locale

timeZone

String

Profile time zone

lastModified

Number

Profile was last modified

verifiedEmail

Boolean

Profile e-mail address is verified

twentyFourHourTimeFormat

Boolean

Time format preference - 24hr or 12hr format

dateFormat

String

Date format preference - YMD (Year-Month-Day), MDY (Month/Day/Year) or DMY(Day/Month/Year)

profileFields

Object

Optional custom profile fields

17.7. Properties

User profiles can have custom properties. Endpoints access authenticated user properties.

17.7.1. List properties

HTTP
GET /v3/properties HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/properties' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/properties' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 470. Request parameters
Parameter Description

startsWith

Optional property partial name

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 62

[ {
  "name" : "PropertyName",
  "value" : "PropertyValue"
} ]
Table 471. Definition of the returned fields
Path Type Description

[]

Array

Array of properties

[].name

String

Property name

[].value

String

Property value

17.7.2. Get property

Table 472. /v3/properties/{name}
Parameter Description

name

Property name

HTTP
GET /v3/properties/name HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/properties/name' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/properties/name' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 58

{
  "name" : "PropertyName",
  "value" : "PropertyValue"
}
Table 473. Definition of the returned fields
Path Type Description

name

String

Property name

value

String

Property value

17.7.3. Create property

HTTP
POST /v3/properties HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 47

{"name":"PropertyName","value":"PropertyValue"}
HTTPie
$ echo '{"name":"PropertyName","value":"PropertyValue"}' | http POST 'https://api.clinked.com/v3/properties' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/properties' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{"name":"PropertyName","value":"PropertyValue"}'
Table 474. Request fields
Path Type Description

name

String

Property name

value

String

Property value

Example of a success response
HTTP/1.1 201 Created
Content-Type: application/json;charset=UTF-8
Content-Length: 58

{
  "name" : "PropertyName",
  "value" : "PropertyValue"
}
Table 475. Definition of the returned fields
Path Type Description

name

String

Property name

value

String

Property value

Delete property
Table 476. /v3/properties/{name}
Parameter Description

name

Property name

HTTP
DELETE /v3/properties/PropertyName HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/properties/PropertyName' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/properties/PropertyName' -i -X DELETE \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

17.7.5. Enable 2FA

HTTP
POST /v3/profiles/me/two-factor-authentication HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 32

{"mode":"EMAIL","code":"160747"}
HTTPie
$ echo '{"mode":"EMAIL","code":"160747"}' | http POST 'https://api.clinked.com/v3/profiles/me/two-factor-authentication' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/profiles/me/two-factor-authentication' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{"mode":"EMAIL","code":"160747"}'
Table 477. Request fields
Path Type Description

mode

String

2FA mode AUTHENTICATOR | SMS | EMAIL

code

String

Authentication code

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 144

{
  "backupCodes" : [ "Bqgppy0#", "46iU%cUW", "ygXhzoFU", "aB)UeWLi", "KomY-qnr", "OCzv22QA", "m~EZiMgt", "L#@Ootf-", "2LQAJ2(u", "g(u6pIZE" ]
}
Table 478. Definition of the returned fields
Path Type Description

backupCodes

Array

Array of backup codes

17.7.6. Activate 2FA

HTTP
PUT /v3/profiles/me/two-factor-authentication HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 29

{"mode":"EMAIL","phone":null}
HTTPie
$ echo '{"mode":"EMAIL","phone":null}' | http PUT 'https://api.clinked.com/v3/profiles/me/two-factor-authentication' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/profiles/me/two-factor-authentication' -i -X PUT \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{"mode":"EMAIL","phone":null}'
Table 479. Request fields
Path Type Description

mode

String

2FA mode - [AUTHENTICATOR, SMS, EMAIL]

phone

Number

Phone number

Example of a success response
HTTP/1.1 200 OK

17.7.7. Disable 2FA

HTTP
DELETE /v3/profiles/me/two-factor-authentication HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/profiles/me/two-factor-authentication' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/profiles/me/two-factor-authentication' -i -X DELETE \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

17.7.8. Get QR code

HTTP
GET /v3/profiles/me/two-factor-authentication/qr HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/profiles/me/two-factor-authentication/qr' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/profiles/me/two-factor-authentication/qr' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: image/png
Content-Length: 786

"iVBORw0KGgoAAAANSUhEUgAAAMAAAADAAQAAAAB6p1GqAAACEklEQVR42u3XMQ6rMAwGYFcZssEFkHINtlyJXgDKBeBK2XyNSLkAbAwRfn+qN9BKb0itt1F1od9gkji2S/KPD91www0/QqBHcGuQNTj8QlYBLDsb4TyFPLHDowLoKWah3PSy+O6hhCOPXuaje4gaAjV9mg+3akH24LY+rZxb+dqSSsB5cPf8+/06qEoo5k4bB9sN9it9KiG4OcRWcmPjSDRaBQi1B7UhNj3AXIP/AORp9Km8sXczK4CRbQkJN1qz2dhYBQjyQ5Y+TozX7RqvAO5GQqrJSZF687IKELMfBjHIYvHmuiXVEMxJsgsNPj5L+mqgnEfjsYnp9B8x6kEWWy5AQ3G07pq71SDxGdIL29enzbudFcBIXDwjRVCG4mXl9SAycyaiCafraWIFhHT2uRSLkiVpsQrgPPhuCmnrzWJzyxpA80DpKYexkbnGqAZJLxxDKawwM4sGHGr0I6CE4aXd4hVQ+geyFiuPjTc7KwB9iFAW41Ow8s8bVQ24A7jn6NlIFHd6BUgszexAIctjLysrADEEOZde1iyf97waxC1UjnaXbvB50kBIe5lL5LSyfba7anin786orQlX4toNqgETwPGuPhRbvs4l9VBmuIzZay+RrjF+AMxw8RG60aP6kxaOUqkH3IHjown/Aty1gQYEsLFlDWCGozIqlRiyigLKDAeLGE3e+6iA+1/RDTf8b/gDbFgwKRdT2PYAAAAASUVORK5CYII="

17.7.9. Social apps

Connected social accounts

17.7.10. Get status

Returns social app status.

HTTP
GET /v3/profiles/me/social-login HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/profiles/me/social-login' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/profiles/me/social-login' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 63

{
  "linkedin" : false,
  "google" : false,
  "apple" : false
}
Table 480. Definition of the returned fields
Path Type Description

linkedin

Boolean

Is Linkedin connected

google

Boolean

Is Google connected

apple

Boolean

Is Apple connected

17.7.11. Disconnect

Disconnects specific platform.

Table 481. /v3/profiles/me/social-login/{service}
Parameter Description

service

Service name - google | linkedin | apple

HTTP
DELETE /v3/profiles/me/social-login/google HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/profiles/me/social-login/google' \
    'Content-Type:application/json' \
    'Accept:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/profiles/me/social-login/google' -i -X DELETE \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

18. Reachout

For more information about the feature itself, see our Help Center page.

18.1. List reachouts

HTTP
GET /v3/reachouts?account=1 HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/reachouts?account=1' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/reachouts?account=1' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 482. Request parameters
Parameter Description

account

Account id

page

Page number to load

size

Page size

orderBy

Order field

ascending

Ascending order direction

name

Find reachout by name

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1157

{
  "items" : [ {
    "id" : 111,
    "sender" : {
      "user" : {
        "id" : 1,
        "name" : "Jack Bauer",
        "username" : "jack",
        "logo" : false,
        "jobTitle" : "Marketing",
        "lastModified" : 1514764800000
      },
      "name" : "Jack Bauer",
      "username" : "jack"
    },
    "recipients" : [ {
      "address" : "jack.bauer@clinked.com",
      "name" : "Jack Bauer",
      "locale" : "en"
    } ],
    "groups" : null,
    "tags" : [ "tag1" ],
    "recipientDetails" : [ {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "email" : "jack.bauer@clinked.com",
      "tags" : [ "tag1" ],
      "groups" : [ ],
      "fromPeopleList" : false
    } ],
    "subject" : "subject",
    "content" : "content",
    "test" : false,
    "dateCreated" : 1713433511694,
    "dateModified" : null,
    "account" : {
      "id" : 1,
      "name" : "awesome_org",
      "friendlyName" : "Awesome Organisation",
      "enabled" : true
    },
    "status" : "STARTED"
  } ],
  "currentPage" : 1,
  "totalPages" : 1,
  "pageSize" : 1,
  "totalResults" : 1,
  "nextPage" : false,
  "previousPage" : false
}
Table 483. Definition of the returned fields
Path Type Description

currentPage

Number

Current page

pageSize

Number

Entries per page

items

Array

Reachout entries

nextPage

Boolean

Next page exists

totalPages

Number

Total amount of available pages

previousPage

Boolean

Previous page exists

totalResults

Number

Total amount of entries

items[].id

Number

Reachout id

items[].sender

Object

The user who sent the reachout

items[].recipients

Array

Recipient e-mail addresses

items[].recipientDetails

Array

More details about the recipients. Includes details where the recipient was selected from

items[].groups

Array

Groups to which the e-mail was sent to

items[].tags

Array

Tags to which the e-mail was sent to

items[].subject

String

E-mail subject

items[].content

String

E-mail content

items[].test

Boolean

Is a test e-mail

items[].dateCreated

Number

Date reachout was created

items[].dateModified

Number

Date reachout was modified

items[].account

Object

The account associated with reachout

items[].status

String

Reachout status (either completed or running)

items[].sender.name

String

User’s full name

items[].sender.user

Object

Detailed user data, will be set to null if user is deleted

items[].sender.username

String

User username if user is defined

items[].sender.user.id

Number

User id

items[].sender.user.name

String

Full name

items[].sender.user.username

String

Username

items[].sender.user.logo

Boolean

Profile picture is defined

items[].sender.user.jobTitle

String

Job title

items[].sender.user.lastModified

Number

Last modified date

items[].account.id

Number

User / profile id

items[].account.name

String

Account name slug, used for internal identification and URIs

items[].account.friendlyName

String

Full account name, visible to a user

items[].account.enabled

Boolean

Is account enabled

items[].recipientDetails[].id

Number

User id

items[].recipientDetails[].name

String

Full name

items[].recipientDetails[].username

String

Username

items[].recipientDetails[].email

String

Email address

items[].recipientDetails[].tags

Array

List of tags

items[].recipientDetails[].groups

Array

List of groups

items[].recipientDetails[].fromPeopleList

Boolean

Shows if the user was manually selected from people list on reachout creation

items[].recipients[].address

String

Email address

items[].recipients[].name

String

Full name

items[].recipients[].locale

String

Locale ID

18.2. Reachout status/details

Table 484. /v3/reachouts/{id}/status
Parameter Description

id

Reachout id

HTTP
GET /v3/reachouts/111/status HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/reachouts/111/status' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/reachouts/111/status' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 928

[ {
  "id" : 111,
  "sender" : {
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "name" : "Jack Bauer",
    "username" : "jack"
  },
  "recipients" : [ {
    "address" : "jack.bauer@clinked.com",
    "name" : "Jack Bauer",
    "locale" : "en"
  } ],
  "groups" : null,
  "tags" : [ "tag1" ],
  "recipientDetails" : [ {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "email" : "jack.bauer@clinked.com",
    "tags" : [ "tag1" ],
    "groups" : [ ],
    "fromPeopleList" : false
  } ],
  "subject" : "subject",
  "content" : "content",
  "test" : false,
  "dateCreated" : 1713433511786,
  "dateModified" : null,
  "account" : {
    "id" : 1,
    "name" : "awesome_org",
    "friendlyName" : "Awesome Organisation",
    "enabled" : true
  },
  "status" : "STARTED"
} ]
Table 485. Definition of the returned fields
Path Type Description

[].id

Number

Reachout id

[].sender

Object

The user who sent the reachout

[].recipients

Array

Recipient e-mail addresses

[].recipientDetails

Array

More details about the recipients. Includes details where the recipient was selected from

[].groups

Array

Groups to which the e-mail was sent to

[].tags

Array

Tags to which the e-mail was sent to

[].subject

String

E-mail subject

[].content

String

E-mail content

[].test

Boolean

Is a test e-mail

[].dateCreated

Number

Date reachout was created

[].dateModified

Number

Date reachout was modified

[].account

Object

The account associated with reachout

[].status

String

Reachout status (either completed or running)

[].sender.name

String

User’s full name

[].sender.user

Object

Detailed user data, will be set to null if user is deleted

[].sender.username

String

User username if user is defined

[].sender.user.id

Number

User id

[].sender.user.name

String

Full name

[].sender.user.username

String

Username

[].sender.user.logo

Boolean

Profile picture is defined

[].sender.user.jobTitle

String

Job title

[].sender.user.lastModified

Number

Last modified date

[].account.id

Number

User / profile id

[].account.name

String

Account name slug, used for internal identification and URIs

[].account.friendlyName

String

Full account name, visible to a user

[].account.enabled

Boolean

Is account enabled

[].recipientDetails[].id

Number

User id

[].recipientDetails[].name

String

Full name

[].recipientDetails[].username

String

Username

[].recipientDetails[].email

String

Email address

[].recipientDetails[].tags

Array

List of tags

[].recipientDetails[].groups

Array

List of groups

[].recipientDetails[].fromPeopleList

Boolean

Shows if the user was manually selected from people list on reachout creation

[].recipients[].address

String

Email address

[].recipients[].name

String

Full name

[].recipients[].locale

String

Locale ID

18.3. List recipients

HTTP
POST /v3/reachouts?recipients=true HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 63

{
  "account": 1,
  "tags": ["tag1"],
  "usernames": ["jack"]
}
HTTPie
$ echo '{
  "account": 1,
  "tags": ["tag1"],
  "usernames": ["jack"]
}' | http POST 'https://api.clinked.com/v3/reachouts?recipients=true' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/reachouts?recipients=true' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
  "account": 1,
  "tags": ["tag1"],
  "usernames": ["jack"]
}'
Table 486. Request parameters
Parameter Description

recipients

Get recipients

Table 487. Request fields
Path Type Description

account

Number

Account id

tags

Array

Array of tags

usernames

Array

Array of usernames

groups

Array

Array of groups

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 172

[ {
  "id" : 1,
  "name" : "Jack Bauer",
  "username" : "jack",
  "email" : "jack.bauer@clinked.com",
  "tags" : [ "tag1" ],
  "groups" : [ ],
  "fromPeopleList" : true
} ]
Table 488. Definition of the returned fields
Path Type Description

[].id

Number

Recipient user id

[].name

String

Recipient given name

[].username

String

Recipient username

[].email

String

Recipient e-mail address (delivery address)

[].tags

Array

Tags the recipient was assigned

[].groups

Array

Groups the recipient was a member

[].fromPeopleList

Boolean

Member was added from the member / people list

18.4. Create reachout

HTTP
POST /v3/reachouts HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 111

{
  "account": 1,
  "tags": ["tag1"],
  "usernames": ["jack"],
  "subject": "subject",
  "content": "content"
}
HTTPie
$ echo '{
  "account": 1,
  "tags": ["tag1"],
  "usernames": ["jack"],
  "subject": "subject",
  "content": "content"
}' | http POST 'https://api.clinked.com/v3/reachouts' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/reachouts' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
  "account": 1,
  "tags": ["tag1"],
  "usernames": ["jack"],
  "subject": "subject",
  "content": "content"
}'
Table 489. Request fields
Path Type Description

account

Number

Account id

tags

Array

Array of tags

usernames

Array

Array of usernames

groups

Array

Array of groups

subject

String

Reachout subject

content

String

Reachout content

emailAttachments

Array

Attachments attached to the e-mail

contentAttachments

Array

These attachments are uploaded to CDN and are available publicly.Displayed within e-mail

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 872

{
  "id" : 1,
  "sender" : {
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "name" : "Jack Bauer",
    "username" : "jack"
  },
  "recipients" : [ {
    "address" : "jack.bauer@clinked.com"
  } ],
  "groups" : [ ],
  "tags" : [ "tag1" ],
  "recipientDetails" : [ {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "email" : "jack.bauer@clinked.com",
    "tags" : [ "tag1" ],
    "groups" : [ ],
    "fromPeopleList" : true
  } ],
  "subject" : "subject",
  "content" : "content",
  "test" : false,
  "dateCreated" : 1713433511758,
  "dateModified" : null,
  "account" : {
    "id" : 1,
    "name" : "awesome_org",
    "friendlyName" : "Awesome Organisation",
    "enabled" : true
  },
  "status" : "STARTED"
}
Table 490. Definition of the returned fields
Path Type Description

id

Number

Reachout id

sender

Object

The user who sent the reachout

recipients

Array

Recipient e-mail addresses

recipientDetails

Array

More details about the recipients. Includes details where the recipient was selected from

groups

Array

Groups to which the e-mail was sent to

tags

Array

Tags to which the e-mail was sent to

subject

String

E-mail subject

content

String

E-mail content

test

Boolean

Is a test e-mail

dateCreated

Number

Date reachout was created

dateModified

Number

Date reachout was modified

account

Object

The account associated with reachout

status

String

Reachout status (either completed or running)

sender.name

String

User’s full name

sender.user

Object

Detailed user data, will be set to null if user is deleted

sender.username

String

User username if user is defined

sender.user.id

Number

User id

sender.user.name

String

Full name

sender.user.username

String

Username

sender.user.logo

Boolean

Profile picture is defined

sender.user.jobTitle

String

Job title

sender.user.lastModified

Number

Last modified date

account.id

Number

User / profile id

account.name

String

Account name slug, used for internal identification and URIs

account.friendlyName

String

Full account name, visible to a user

account.enabled

Boolean

Is account enabled

recipientDetails[].id

Number

User id

recipientDetails[].name

String

Full name

recipientDetails[].username

String

Username

recipientDetails[].email

String

Email address

recipientDetails[].tags

Array

List of tags

recipientDetails[].groups

Array

List of groups

recipientDetails[].fromPeopleList

Boolean

Shows if the user was manually selected from people list on reachout creation

recipients[].address

String

Email address

recipients[].name

String

Full name

recipients[].locale

String

Locale ID

19. Audit log

Returns paginated list of account audit log events.

HTTP
GET /v3/audit?account=1&dateStart=2021-01-12&events=login%2C+signup HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/audit?account=1&dateStart=2021-01-12&events=login%2C+signup' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/audit?account=1&dateStart=2021-01-12&events=login%2C+signup' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 491. Request parameters
Parameter Description

account

Account ID

dateStart

Show events from date

dateEnd

Show events before date

events

Comma-separated type names to filter by

group

Group ID to filter by

users

Comma-separated user IDs to filter by

offset

Pagination offset to load next page

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 954

{
  "offset" : "nextToken",
  "items" : [ {
    "id" : "abc",
    "event" : "login",
    "dateCreated" : 1713433476871,
    "componentId" : null,
    "userId" : 1,
    "componentName" : null,
    "userName" : "jack",
    "componentType" : null,
    "component" : null,
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000,
      "email" : "jack.bauer@clinked.com"
    },
    "value" : null,
    "ipAddress" : "127.0.0.1",
    "deviceId" : "Devicey",
    "email" : "email@domain.ltd",
    "accountId" : 1,
    "groupId" : null,
    "groupName" : null,
    "account" : {
      "id" : 1,
      "name" : "awesome_org",
      "friendlyName" : "Awesome Organisation",
      "enabled" : true
    },
    "group" : {
      "id" : 1,
      "name" : "explore_clinked",
      "friendlyName" : "Explore Clinked"
    }
  } ],
  "more" : true
}
Table 492. Definition of the returned fields
Path Type Description

offset

String

Offset for retrieving next page

more

Boolean

Is next page available

items

Array

Audit records

items[].id

String

Audit record ID

items[].event

String

Event name

items[].dateCreated

Number

Date event was created

items[].componentId

Number

Component id

items[].componentName

String

Component name (at the point of event creation)

items[].componentType

String

Component type (at the point of event creation)

items[].userId

Number

User id triggering the event

items[].userName

String

User name triggering the event (at the point of event creation)

items[].accountId

Number

Account id

items[].groupId

Number

Group id

items[].groupName

String

Group name (at the point of event creation)

items[].component

Object

Component in group associated with event

items[].user

Object

User associated with the event

items[].account

Object

Account associacted with the event

items[].group

Object

Group associated with the event

items[].value

String

Additional vlaue

items[].ipAddress

String

IP address

items[].deviceId

String

Device ID

items[].email

String

User e-mail

items[].user.id

Number

User id

items[].user.name

String

Full name

items[].user.username

String

Username

items[].user.logo

Boolean

Profile picture is defined

items[].user.jobTitle

String

Job title

items[].user.lastModified

Number

Last modified date

items[].user.email

String

User email

items[].account.id

Number

User / profile id

items[].account.name

String

Account name slug, used for internal identification and URIs

items[].account.friendlyName

String

Full account name, visible to a user

items[].account.enabled

Boolean

Is account enabled

items[].group.id

Number

User / profile id

items[].group.name

String

Group name slug, used for internal identification and URIs

items[].group.friendlyName

String

Full group name, visible to a user

The global Search API helps you search for the specific item you want to find. For example, you can find a user or a specific piece of content in your client portal. You can perform a search on everything or narrow your search using query parameters.

Supported types for searching are:

  • Users

  • Groups

  • Files

  • Notes

  • Tasks

  • Events

  • Discussions

HTTP
GET /v3/search?account=1&group=1&query=Example&startDate=2022-07-19T12%3A59%3A09.751Z HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/search?account=1&group=1&query=Example&startDate=2022-07-19T12%3A59%3A09.751Z' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/search?account=1&group=1&query=Example&startDate=2022-07-19T12%3A59%3A09.751Z' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 493. Request parameters
Parameter Description

account

Account ID to search in

group

Group id to search in

query

Search query

page

Page number

type

Content type: file, page, task, event, user, discussion, group

startDate

ISO8601 start date - either a simple date or with time

endDate

ISO8601 end date - either a simple date or with time

exact

search for exact phrases

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 6321

{
  "items" : [ {
    "entity" : {
      "id" : 1,
      "contextKey" : {
        "id" : 215
      },
      "sharing" : "NONE",
      "memberPermission" : 2,
      "following" : null,
      "name" : "file_example.pdf",
      "friendlyName" : "File Example.pdf",
      "contentType" : "application/pdf",
      "size" : 1000,
      "uploaded" : {
        "user" : {
          "id" : 1,
          "name" : "Jack Bauer",
          "username" : "jack",
          "logo" : false,
          "jobTitle" : "Marketing",
          "lastModified" : 1514764800000
        },
        "name" : "Jack Bauer",
        "username" : "jack"
      },
      "tags" : "tag1,tag2",
      "locked" : false,
      "locker" : null,
      "lastModified" : 1514764800000,
      "summary" : null,
      "path" : [ ],
      "versions" : 0,
      "previewInfo" : null,
      "watermark" : false,
      "group" : {
        "id" : 1,
        "name" : "explore_clinked",
        "friendlyName" : "Explore Clinked"
      }
    },
    "highlights" : { },
    "type" : "file"
  }, {
    "entity" : {
      "id" : 1,
      "contextKey" : {
        "id" : 517
      },
      "sharing" : "MEMBERS",
      "memberPermission" : 8,
      "name" : "home_page",
      "friendlyName" : "Home Page",
      "template" : false,
      "tags" : "lorem,ipsum",
      "content" : "",
      "dateCreated" : 1514764800000,
      "lastModified" : 1514764800000,
      "creator" : {
        "id" : 1,
        "username" : "jack",
        "enabled" : true,
        "locked" : false,
        "name" : "Jack Bauer",
        "jobTitle" : "Marketing",
        "organisation" : "Clinked",
        "email" : "jack.bauer@clinked.com",
        "address" : "71 Pilgrim Avenue",
        "telephone" : "123456789",
        "other" : null,
        "logo" : false,
        "timeZone" : "UTC",
        "locale" : "en",
        "verifiedEmail" : false,
        "twoFactorAuthentication" : false,
        "twoFactorMode" : null,
        "lastModified" : 1514764800000,
        "dateFormat" : null,
        "twentyFourHourTimeFormat" : false,
        "lastActive" : null
      },
      "versions" : null,
      "pageType" : "PAGE",
      "group" : {
        "id" : 1,
        "name" : "explore_clinked",
        "friendlyName" : "Explore Clinked"
      }
    },
    "highlights" : { },
    "type" : "page"
  }, {
    "entity" : {
      "id" : 1,
      "username" : "jack",
      "enabled" : true,
      "locked" : false,
      "name" : "Jack Bauer",
      "jobTitle" : "Marketing",
      "organisation" : "Clinked",
      "email" : "jack.bauer@clinked.com",
      "address" : "71 Pilgrim Avenue",
      "telephone" : "123456789",
      "other" : null,
      "logo" : false,
      "timeZone" : "UTC",
      "locale" : "en",
      "verifiedEmail" : false,
      "twoFactorAuthentication" : false,
      "twoFactorMode" : null,
      "lastModified" : 1514764800000,
      "dateFormat" : null,
      "twentyFourHourTimeFormat" : false,
      "lastActive" : null
    },
    "highlights" : { },
    "type" : "user"
  }, {
    "entity" : {
      "id" : 1,
      "contextKey" : {
        "id" : 362
      },
      "sharing" : "MEMBERS",
      "memberPermission" : 2,
      "name" : "great_discussion",
      "friendlyName" : "Great discussion",
      "tags" : "",
      "description" : "What do you think about this?",
      "replies" : 5,
      "dateCreated" : 1514764800000,
      "lastModified" : 1514764800000,
      "author" : {
        "user" : {
          "id" : 1,
          "name" : "Jack Bauer",
          "username" : "jack",
          "logo" : false,
          "jobTitle" : "Marketing",
          "lastModified" : 1514764800000
        },
        "name" : "Jack Bauer",
        "username" : "jack"
      },
      "group" : {
        "id" : 1,
        "name" : "explore_clinked",
        "friendlyName" : "Explore Clinked"
      }
    },
    "highlights" : { },
    "type" : "discussion"
  }, {
    "entity" : {
      "id" : 1,
      "contextKey" : {
        "id" : 752
      },
      "sharing" : "MEMBERS",
      "memberPermission" : 8,
      "name" : "meeting_with_a_client",
      "friendlyName" : "Meeting with a client",
      "startDate" : "2018-01-05T14:00Z[UTC]",
      "endDate" : "2018-01-05T15:00Z[UTC]",
      "allDay" : false,
      "location" : "London",
      "tags" : "tag1,tag2",
      "dateReminder" : "2017-12-31T08:00Z[UTC]",
      "recurrence" : "FREQ=WEEKLY;WKST=MO;BYDAY=FR",
      "dateEndRecurrence" : "2024-04-18T09:45:11.106Z[UTC]",
      "description" : "Let's do this every friday",
      "disableMaybe" : false,
      "author" : {
        "id" : 1,
        "name" : "Jack Bauer",
        "username" : "jack",
        "logo" : false,
        "jobTitle" : "Marketing",
        "lastModified" : 1514764800000
      },
      "lastModified" : 1514764800000,
      "color" : "#212121",
      "group" : {
        "id" : 1,
        "name" : "explore_clinked",
        "friendlyName" : "Explore Clinked"
      }
    },
    "highlights" : { },
    "type" : "event"
  }, {
    "entity" : {
      "id" : 1,
      "contextKey" : {
        "id" : 742
      },
      "sharing" : "MEMBERS",
      "memberPermission" : 8,
      "friendlyName" : "Deploy update",
      "name" : "deploy_update",
      "status" : "WAITING",
      "priority" : "MEDIUM",
      "progress" : 0,
      "author" : {
        "id" : 1,
        "name" : "Jack Bauer",
        "username" : "jack",
        "logo" : false,
        "jobTitle" : "Marketing",
        "lastModified" : 1514764800000
      },
      "dueDate" : "2022-08-25T11:56:54Z[UTC]",
      "tags" : "",
      "description" : "Let's do this",
      "dateCreated" : 1514764800000,
      "dateReminder" : "2017-12-31T08:00Z[UTC]",
      "recurrence" : null,
      "order" : 2147483647,
      "category" : null,
      "assignees" : null,
      "numberOfSubTasks" : 0,
      "lastModified" : 1514764800000,
      "timeTracker" : {
        "trackingStartDate" : 1514764800000,
        "timeTracked" : 948480
      },
      "dateCompleted" : 1514764810000,
      "group" : {
        "id" : 1,
        "name" : "explore_clinked",
        "friendlyName" : "Explore Clinked"
      }
    },
    "highlights" : { },
    "type" : "task"
  } ],
  "currentPage" : 1,
  "pageSize" : 25,
  "nextPage" : false,
  "suggestions" : [ ],
  "previousPage" : false
}
Table 494. Definition of the returned fields
Path Type Description

items

Array

Page items

aggregation

Object

Dictionary with types and the matched document count

suggestions

Array

Suggested search terms

currentPage

Number

Current page number

pageSize

Number

Page size

nextPage

Boolean

Next page exists

previousPage

Boolean

Previous page exists

21. Requests

Members send requests to other members. A request is group invite, task assignment and other types.

21.1. List requests

HTTP
GET /v3/requests HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/requests' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/requests' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 495. Request parameters
Parameter Description

kind

Optional request kind 'past' returns 100 past requests

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 918

[ {
  "id" : 1,
  "contextKey" : {
    "id" : 900
  },
  "source" : {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "target" : {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "container" : {
    "id" : 1,
    "contextKey" : {
      "id" : 900
    },
    "type" : "group",
    "name" : "explore_clinked",
    "friendlyName" : "Explore Clinked"
  },
  "sourceName" : "jack.bauer@clinked.com",
  "targetName" : "jack.bauer@clinked.com",
  "type" : "ACCEPT_REJECT",
  "status" : "ACCEPT",
  "scope" : "group",
  "parameters" : null,
  "lastModified" : 1713433515579,
  "account" : {
    "id" : 1,
    "name" : "awesome_org",
    "friendlyName" : "Awesome Organisation",
    "enabled" : true
  }
} ]
Table 496. Definition of the returned fields
Path Type Description

[].id

Number

Entity id

[].contextKey

Object

Context key

[].contextKey.id

Number

Context key ID

[].source

Object

User who created a request

[].target

Object

Target user

[].container

Object

Request container

[].sourceName

String

Source user name

[].targetName

String

Target user name

[].type

String

Request type

[].status

String

Request status

[].scope

String

Scope

[].parameters

Varies

Additional parameters

[].lastModified

Number

Last modification date

[].source.id

Number

User id

[].source.name

String

Full name

[].source.username

String

Username

[].source.logo

Boolean

Profile picture is defined

[].source.jobTitle

String

Job title

[].source.lastModified

Number

Last modified date

[].target.id

Number

User id

[].target.name

String

Full name

[].target.username

String

Username

[].target.logo

Boolean

Profile picture is defined

[].target.jobTitle

String

Job title

[].target.lastModified

Number

Last modified date

[].account.id

Number

User / profile id

[].account.name

String

Account name slug, used for internal identification and URIs

[].account.friendlyName

String

Full account name, visible to a user

[].account.enabled

Boolean

Is account enabled

21.2. Update request

Table 497. /v3/requests/{request}
Parameter Description

request

Request id

HTTP
PATCH /v3/requests/1 HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 25

{
  "status" : "ACCEPT"
}
HTTPie
$ echo '{
  "status" : "ACCEPT"
}' | http PATCH 'https://api.clinked.com/v3/requests/1' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/requests/1' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{
  "status" : "ACCEPT"
}'
Table 498. Request fields
Path Type Description

status

String

Status - [NONE, ACCEPT, DECLINE, MAYBE, REJECT]

parameters

Object

Request parameters

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 914

{
  "id" : 1,
  "contextKey" : {
    "id" : 871
  },
  "source" : {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "target" : {
    "id" : 1,
    "name" : "Jack Bauer",
    "username" : "jack",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "container" : {
    "id" : 1,
    "contextKey" : {
      "id" : 871
    },
    "type" : "group",
    "name" : "explore_clinked",
    "friendlyName" : "Explore Clinked"
  },
  "sourceName" : "jack.bauer@clinked.com",
  "targetName" : "jack.bauer@clinked.com",
  "type" : "ACCEPT_REJECT",
  "status" : "ACCEPT",
  "scope" : "group",
  "parameters" : null,
  "lastModified" : 1713433515492,
  "account" : {
    "id" : 1,
    "name" : "awesome_org",
    "friendlyName" : "Awesome Organisation",
    "enabled" : true
  }
}
Table 499. Definition of the returned fields
Path Type Description

id

Number

Entity id

contextKey

Object

Context key

contextKey.id

Number

Context key ID

source

Object

User who created a request

target

Object

Target user

container

Object

Request container

sourceName

String

Source user name

targetName

String

Target user name

type

String

Request type

status

String

Request status

scope

String

Scope

parameters

Varies

Additional parameters

lastModified

Number

Last modification date

source.id

Number

User id

source.name

String

Full name

source.username

String

Username

source.logo

Boolean

Profile picture is defined

source.jobTitle

String

Job title

source.lastModified

Number

Last modified date

target.id

Number

User id

target.name

String

Full name

target.username

String

Username

target.logo

Boolean

Profile picture is defined

target.jobTitle

String

Job title

target.lastModified

Number

Last modified date

account.id

Number

User / profile id

account.name

String

Account name slug, used for internal identification and URIs

account.friendlyName

String

Full account name, visible to a user

account.enabled

Boolean

Is account enabled

22. Activity

22.1. List activity

HTTP
GET /v3/activity HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/activity' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/activity' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'

Omit parameters to list authenticated user’s activity stream. Parameters can’t be mixed.

Table 500. Request parameters
Parameter Description

account

Account ID to filter activity items by

group

Group ID to filter activity items by

context

Context "name_id". Supported names are: file, page, event, task, discussion. Example file_123

member

Member ID to filter activity items by

offset

Activity offset

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1175

{
  "items" : [ {
    "id" : "c305ae6c-02d7-4e64-8bdc-feca5e76d7ba",
    "messageCodeHint" : null,
    "messageCode" : "update.space.trash.filerecord.create",
    "message" : null,
    "lastModified" : 1514764800000,
    "componentId" : 1,
    "componentEntityId" : 1,
    "componentName" : "Picture 2017-09-28 22-09-58.jpg",
    "userId" : 1,
    "userName" : "Jack Bauer",
    "targetUserId" : null,
    "targetUserName" : null,
    "reservedName" : null,
    "attachments" : [ ],
    "published" : false,
    "commentCount" : 0,
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "component" : null,
    "targetUser" : null,
    "accountId" : 1,
    "accountName" : null,
    "groupId" : 1,
    "groupName" : null,
    "account" : {
      "id" : 1,
      "name" : "awesome_org",
      "friendlyName" : "Awesome Organisation",
      "enabled" : true
    },
    "group" : {
      "id" : 1,
      "name" : "explore_clinked",
      "friendlyName" : "Explore Clinked"
    }
  } ],
  "offset" : "nextToken",
  "additionalProperties" : { }
}
Table 501. Definition of the returned fields
Path Type Description

items

Array

Page items

offset

String

Pagination offset

items[].id

String

Activity item ID

items[].messageCode

String

Activity message code

items[].user.id

Number

User id

items[].user.name

String

Full name

items[].user.username

String

Username

items[].user.logo

Boolean

Profile picture is defined

items[].user.jobTitle

String

Job title

items[].user.lastModified

Number

Last modified date

items[].account.id

Number

User / profile id

items[].account.name

String

Account name slug, used for internal identification and URIs

items[].account.friendlyName

String

Full account name, visible to a user

items[].account.enabled

Boolean

Is account enabled

items[].group.id

Number

User / profile id

items[].group.name

String

Group name slug, used for internal identification and URIs

items[].group.friendlyName

String

Full group name, visible to a user

22.2. Create activity

Send a private group message as activity item.

HTTP
POST /v3/activity?group=1 HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 136

{"message":"Hey","mentions":"jack","attachments":[{"friendlyName":"test.pdf","name":"test.pdf","fileId":1,"tempFile":null,"href":null}]}
HTTPie
$ echo '{"message":"Hey","mentions":"jack","attachments":[{"friendlyName":"test.pdf","name":"test.pdf","fileId":1,"tempFile":null,"href":null}]}' | http POST 'https://api.clinked.com/v3/activity?group=1' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/activity?group=1' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{"message":"Hey","mentions":"jack","attachments":[{"friendlyName":"test.pdf","name":"test.pdf","fileId":1,"tempFile":null,"href":null}]}'
Table 502. Request fields
Path Type Description

message

String

Message text

mentions

String

Users mentioned

attachments

Array

Attachment array

attachments[].friendlyName

String

Attachment friendly name

attachments[].name

String

Attachment name

attachments[].fileId

Number

Group file id to attach

attachments[].tempFile

Number

Temp File id to attach

attachments[].href

Number

Google link to attach

attachments[].oneDrive

Number

OneDrive link to attach

inlineAttachments

Array

Attachments that are part of the content. Same fields as 'attachments'

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1135

{
  "mentions" : null,
  "entity" : {
    "id" : "68071870-f330-4a6f-b30b-ff7dc849d8fa",
    "messageCodeHint" : null,
    "messageCode" : "update.space.trash.filerecord.create",
    "message" : null,
    "lastModified" : 1514764800000,
    "componentId" : 1,
    "componentEntityId" : 1,
    "componentName" : "Picture 2017-09-28 22-09-58.jpg",
    "userId" : 1,
    "userName" : "Jack Bauer",
    "targetUserId" : null,
    "targetUserName" : null,
    "reservedName" : null,
    "attachments" : [ ],
    "published" : false,
    "commentCount" : 0,
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "component" : null,
    "targetUser" : null,
    "accountId" : 1,
    "accountName" : null,
    "groupId" : 1,
    "groupName" : null,
    "account" : {
      "id" : 1,
      "name" : "awesome_org",
      "friendlyName" : "Awesome Organisation",
      "enabled" : true
    },
    "group" : {
      "id" : 1,
      "name" : "explore_clinked",
      "friendlyName" : "Explore Clinked"
    }
  }
}
Table 503. Definition of the returned fields
Path Type Description

entity.user.id

Number

User id

entity.user.name

String

Full name

entity.user.username

String

Username

entity.user.logo

Boolean

Profile picture is defined

entity.user.jobTitle

String

Job title

entity.user.lastModified

Number

Last modified date

entity.account.id

Number

User / profile id

entity.account.name

String

Account name slug, used for internal identification and URIs

entity.account.friendlyName

String

Full account name, visible to a user

entity.account.enabled

Boolean

Is account enabled

entity.group.id

Number

User / profile id

entity.group.name

String

Group name slug, used for internal identification and URIs

entity.group.friendlyName

String

Full group name, visible to a user

mentions

Array

Mentioned users

entity.id

String

Entity id

entity.messageCodeHint

String

Message code hint

entity.messageCode

String

Message code

entity.message

String

Message

entity.lastModified

Number

Last modified

entity.componentId

Number

Component id

entity.componentEntityId

Number

Component entity id

entity.componentName

String

Component name

entity.userId

Number

User id

entity.userName

String

User name

entity.targetUserId

Number

Target user id

entity.targetUserName

String

Target user username

entity.reservedName

String

Reserved name

entity.attachments

Array

Attachments

entity.published

Boolean

Is published

entity.commentCount

Number

Comment count

entity.component

Object

Component

entity.targetUser

Object

Target user

entity.accountId

Number

Account id

entity.accountName

String

Account name

entity.groupId

Number

Group id

entity.groupName

String

Group name

22.3. Delete activity

Table 504. /v3/activity/{id}
Parameter Description

id

Activity update ID

HTTP
DELETE /v3/activity/random-id HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/activity/random-id' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/activity/random-id' -i -X DELETE \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

22.5. List comments

Table 505. /v3/activity/{update}/comments
Parameter Description

update

Activity update ID

HTTP
GET /v3/activity/cc97aee5-2df7-4491-8103-9e97d20688d5/comments HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/activity/cc97aee5-2df7-4491-8103-9e97d20688d5/comments' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/activity/cc97aee5-2df7-4491-8103-9e97d20688d5/comments' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 506. Request parameters
Parameter Description

offset

Pagination offset

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 510

{
  "items" : [ {
    "id" : "e89bf70f-a3c2-4bff-a7e6-fd007507df71",
    "comment" : "Comment text",
    "dateCreated" : 1713433515866,
    "commenter" : {
      "user" : {
        "id" : 1,
        "name" : "Jack Bauer",
        "username" : "jack",
        "logo" : false,
        "jobTitle" : "Marketing",
        "lastModified" : 1514764800000
      },
      "name" : "Jack Bauer",
      "username" : "jack"
    }
  } ],
  "offset" : "aae3c3a9-c48f-48d0-98c6-c8743cbecce2",
  "additionalProperties" : { }
}
Table 507. Definition of the returned fields
Path Type Description

offset

String

Next page offset

items

Array

List of comments in the page

items[].id

String

Item ID

items[].comment

String

Comment text

items[].dateCreated

Number

Comment creation date

items[].commenter

Object

Safe user who created the comment

items[].commenter.name

String

User’s full name

items[].commenter.user

Object

Detailed user data, will be set to null if user is deleted

items[].commenter.username

String

User username if user is defined

items[].commenter.user.id

Number

User id

items[].commenter.user.name

String

Full name

items[].commenter.user.username

String

Username

items[].commenter.user.logo

Boolean

Profile picture is defined

items[].commenter.user.jobTitle

String

Job title

items[].commenter.user.lastModified

Number

Last modified date

22.6. Create comment

Table 508. /v3/activity/{update}/comments
Parameter Description

update

Activity update ID

HTTP
POST /v3/activity/6d6cc48c-b8ec-4996-a49e-86b58a2744e2/comments HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 26

{"comment":"Hello World!"}
HTTPie
$ echo '{"comment":"Hello World!"}' | http POST 'https://api.clinked.com/v3/activity/6d6cc48c-b8ec-4996-a49e-86b58a2744e2/comments' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/activity/6d6cc48c-b8ec-4996-a49e-86b58a2744e2/comments' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{"comment":"Hello World!"}'
Table 509. Request fields
Path Type Description

comment

String

Comment text

Example of a success response
HTTP/1.1 201 Created
Content-Type: application/json;charset=UTF-8
Content-Length: 373

{
  "id" : "7e4ffc70-183e-4ea6-99dd-c208298d6aa8",
  "comment" : "Hello World!",
  "dateCreated" : 1713433515901,
  "commenter" : {
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "name" : "Jack Bauer",
    "username" : "jack"
  }
}
Table 510. Definition of the returned fields
Path Type Description

id

String

Comment id

comment

String

Comment text

dateCreated

Number

Comment creation date

commenter

Object

Safe commenter user data

commenter.name

String

User’s full name

commenter.user

Object

Detailed user data, will be set to null if user is deleted

commenter.username

String

User username if user is defined

commenter.user.id

Number

User id

commenter.user.name

String

Full name

commenter.user.username

String

Username

commenter.user.logo

Boolean

Profile picture is defined

commenter.user.jobTitle

String

Job title

commenter.user.lastModified

Number

Last modified date

22.7. Remove comment

Table 511. /v3/activity/{update}/comments/{comment}
Parameter Description

update

Activity update ID

comment

Comment ID

HTTP
DELETE /v3/activity/8b153a64-089e-4c8e-9b2a-8d67cf0bb4f7/comments/2221c4e7-eebf-42c5-8bdf-a9671529b062 HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/activity/8b153a64-089e-4c8e-9b2a-8d67cf0bb4f7/comments/2221c4e7-eebf-42c5-8bdf-a9671529b062' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/activity/8b153a64-089e-4c8e-9b2a-8d67cf0bb4f7/comments/2221c4e7-eebf-42c5-8bdf-a9671529b062' -i -X DELETE \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

22.9. List attachments

Table 512. /v3/activity/{update}/attachments
Parameter Description

update

Activity update ID

HTTP
GET /v3/activity/6e594cdb-048b-4905-ac67-3624e9591448/attachments HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/activity/6e594cdb-048b-4905-ac67-3624e9591448/attachments' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/activity/6e594cdb-048b-4905-ac67-3624e9591448/attachments' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 119

[ {
  "name" : "Photo.png",
  "type" : "image/png",
  "size" : 1000,
  "url" : "file:photo_png",
  "inline" : false
} ]
Table 513. Definition of the returned fields
Path Type Description

[].name

String

Name

[].type

String

Attachment file type

[].size

Number

Attachment file size

[].url

String

Attachment URL

[].inline

Boolean

Attachment is used within the private message

22.10. Download attachment

Table 514. /v3/activity/{update}/attachments/{name}/download
Parameter Description

update

Activity update ID

name

Attachment name

HTTP
GET /v3/activity/1066489d-77bb-48dc-b0ad-24680addcb7f/attachments/File_Example_pdf/download HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/activity/1066489d-77bb-48dc-b0ad-24680addcb7f/attachments/File_Example_pdf/download' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/activity/1066489d-77bb-48dc-b0ad-24680addcb7f/attachments/File_Example_pdf/download' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Disposition: attachment; filename="File Example.pdf"
Pragma: public
Cache-Control: max-age=30, must-revalidate
Expires: Thu, 18 Apr 2024 09:45:46 GMT
Content-Type: application/pdf
Content-Length: 5

Hello

23. Following

By following entity the user receives updates or notifications.

23.1. List following

HTTP
GET /v3/following?type=file&account=1 HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/following?type=file&account=1' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/following?type=file&account=1' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 515. Request parameters
Parameter Description

page

Page number to load

size

Page size

type

Entity type

account

Limit following content to provided account

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1032

{
  "items" : [ {
    "id" : 1,
    "contextKey" : {
      "id" : 15
    },
    "sharing" : "NONE",
    "memberPermission" : 2,
    "following" : null,
    "name" : "file_example.pdf",
    "friendlyName" : "File Example.pdf",
    "contentType" : "application/pdf",
    "size" : 1000,
    "uploaded" : {
      "user" : {
        "id" : 1,
        "name" : "Jack Bauer",
        "username" : "jack",
        "logo" : false,
        "jobTitle" : "Marketing",
        "lastModified" : 1514764800000
      },
      "name" : "Jack Bauer",
      "username" : "jack"
    },
    "tags" : "tag1,tag2",
    "locked" : false,
    "locker" : null,
    "lastModified" : 1514764800000,
    "summary" : null,
    "path" : [ ],
    "versions" : 0,
    "previewInfo" : null,
    "watermark" : false,
    "group" : {
      "id" : 1,
      "name" : "explore_clinked",
      "friendlyName" : "Explore Clinked"
    }
  } ],
  "currentPage" : 1,
  "totalPages" : 1,
  "pageSize" : 10,
  "totalResults" : 1,
  "nextPage" : false,
  "previousPage" : false
}
Table 516. Definition of the returned fields
Path Type Description

currentPage

Number

Current page

pageSize

Number

Entries per page

items

Array

Reachout entries

nextPage

Boolean

Next page exists

totalPages

Number

Total amount of available pages

previousPage

Boolean

Previous page exists

totalResults

Number

Total amount of entries

items[].id

Number

Entity id

items[].name

String

Name slug

items[].friendlyName

String

Full name

items[].group

Object

Group info

24. Dashboards

For more information about the feature itself, see our Help Center page.

24.1. List dashboards

Table 517. /v3/context/{context}/dashboards
Parameter Description

context

Context "name_id". Supported names are: file, page, event, task, discussion

HTTP
GET /v3/context/group_1/dashboards HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/context/group_1/dashboards' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/context/group_1/dashboards' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 200

[ {
  "id" : 1,
  "columnSizes" : "8,4",
  "name" : "default",
  "widgets" : [ {
    "id" : "id",
    "name" : "widget_1",
    "column" : null,
    "order" : null,
    "configuration" : null
  } ]
} ]
Table 518. Definition of the returned fields
Path Type Description

[]id

Number

Dashboard id

[]columnSizes

String

Column layout

[]name

String

Name (default 'default')

[]default

Boolean

Is system default dashboard

[]widgets

Array

Widgets

[]widgets[].id

String

Unique widget

[]widgets[].name

String

name of widget (from Widget enpdoint)

[]widgets[].column

Number

In which column the widget is located

[]widgets[].order

Number

In what order in column the widget is located

[]widgets[].configuration

Object

Widget related configuration

24.2. Get dashboard details

Table 519. /v3/context/{context}/dashboards/{name}
Parameter Description

context

Context "name_id". Supported names are: file, page, event, task, discussion

name

Name of the dashboard

HTTP
GET /v3/context/group_1/dashboards/default HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/context/group_1/dashboards/default' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/context/group_1/dashboards/default' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 196

{
  "id" : 1,
  "columnSizes" : "8,4",
  "name" : "default",
  "widgets" : [ {
    "id" : "id",
    "name" : "widget_1",
    "column" : null,
    "order" : null,
    "configuration" : null
  } ]
}
Table 520. Definition of the returned fields
Path Type Description

id

Number

Dashboard id

columnSizes

String

Column layout

name

String

Name (default 'default')

default

Boolean

Is system default dashboard

widgets

Array

Widgets

widgets[].id

String

Unique widget

widgets[].name

String

name of widget (from Widget enpdoint)

widgets[].column

Number

In which column the widget is located

widgets[].order

Number

In what order in column the widget is located

widgets[].configuration

Object

Widget related configuration

24.3. Create dashboard

Table 521. /v3/context/{context}/dashboards
Parameter Description

context

Context "name_id". Supported names are: file, page, event, task, discussion

HTTP
POST /v3/context/group_1/dashboards HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 122

{  "name": "default",  "columnSizes": "8,4",  "widgets": [    { "id": "1", "name": "widget", "column": 0, "order": 0 }  ]}
HTTPie
$ echo '{  "name": "default",  "columnSizes": "8,4",  "widgets": [    { "id": "1", "name": "widget", "column": 0, "order": 0 }  ]}' | http POST 'https://api.clinked.com/v3/context/group_1/dashboards' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/context/group_1/dashboards' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{  "name": "default",  "columnSizes": "8,4",  "widgets": [    { "id": "1", "name": "widget", "column": 0, "order": 0 }  ]}'
Table 522. Request fields
Path Type Description

name

object<type=String>

Dashboard name

columnSizes

object<type=String>

Column sizes

widgets

2003

Array of widgets

widgets[].id

object<type=String>

Widget id

widgets[].name

object<type=String>

Widget name

widgets[].column

double

Widget column

widgets[].order

double

Widget order

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 196

{
  "id" : 1,
  "columnSizes" : "8,4",
  "name" : "default",
  "widgets" : [ {
    "id" : "id",
    "name" : "widget_1",
    "column" : null,
    "order" : null,
    "configuration" : null
  } ]
}
Table 523. Definition of the returned fields
Path Type Description

id

Number

Dashboard id

columnSizes

String

Column layout

name

String

Name (default 'default')

default

Boolean

Is system default dashboard

widgets

Array

Widgets

widgets[].id

String

Unique widget

widgets[].name

String

name of widget (from Widget enpdoint)

widgets[].column

Number

In which column the widget is located

widgets[].order

Number

In what order in column the widget is located

widgets[].configuration

Object

Widget related configuration

24.4. Update dashboard

Table 524. /v3/context/{context}/dashboards/{name}
Parameter Description

context

Context "name_id". Supported names are: file, page, event, task, discussion

name

Name of the dashboard

HTTP
PATCH /v3/context/group_1/dashboards/default HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 110

{  "columnSizes": "8,4",  "widgets": [    { "id": "1", "name": "widget_updated", "column": 0, "order": 0 }  ]}
HTTPie
$ echo '{  "columnSizes": "8,4",  "widgets": [    { "id": "1", "name": "widget_updated", "column": 0, "order": 0 }  ]}' | http PATCH 'https://api.clinked.com/v3/context/group_1/dashboards/default' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/context/group_1/dashboards/default' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{  "columnSizes": "8,4",  "widgets": [    { "id": "1", "name": "widget_updated", "column": 0, "order": 0 }  ]}'
Table 525. Request fields
Path Type Description

columnSizes

object<type=String>

Column sizes

widgets

2003

Array of widgets

widgets[].id

object<type=String>

Widget id

widgets[].name

object<type=String>

Widget name

widgets[].column

double

Widget column

widgets[].order

double

Widget order

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 196

{
  "id" : 1,
  "columnSizes" : "8,4",
  "name" : "default",
  "widgets" : [ {
    "id" : "id",
    "name" : "widget_1",
    "column" : null,
    "order" : null,
    "configuration" : null
  } ]
}
Table 526. Definition of the returned fields
Path Type Description

id

Number

Dashboard id

columnSizes

String

Column layout

name

String

Name (default 'default')

default

Boolean

Is system default dashboard

widgets

Array

Widgets

widgets[].id

String

Unique widget

widgets[].name

String

name of widget (from Widget enpdoint)

widgets[].column

Number

In which column the widget is located

widgets[].order

Number

In what order in column the widget is located

widgets[].configuration

Object

Widget related configuration

24.5. Delete dashboard

Table 527. /v3/context/{context}/dashboards/{name}
Parameter Description

context

Context "name_id". Supported names are: file, page, event, task, discussion

name

Name of the dashboard

HTTP
DELETE /v3/context/group_1/dashboards/default HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http DELETE 'https://api.clinked.com/v3/context/group_1/dashboards/default' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/context/group_1/dashboards/default' -i -X DELETE \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

25. Widgets

For more information about the feature itself, see our Help Center page.

25.1. List widgets

HTTP
GET /v3/widgets?scope=ACCOUNT HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/widgets?scope=ACCOUNT' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/widgets?scope=ACCOUNT' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 528. Request parameters
Parameter Description

scope

Widget scope: ACCOUNT or GROUP

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 212

[ {
  "name" : "dummy",
  "title" : "title",
  "description" : "some description comes here",
  "iconName" : "icon",
  "dependsOn" : null,
  "scope" : "ACCOUNT",
  "configurable" : true,
  "singleton" : false
} ]
Table 529. Definition of the returned fields
Path Type Description

[].name

String

Name

[].title

String

Title

[].description

String

Description

[].iconName

String

Icon name

[].dependsOn

String

The widget depends on component

[].scope

String

Widget scope: ACCOUNT or GROUP

[].configurable

Boolean

Widget is configurable

[].singleton

Boolean

Widget is singleton or there can be multiple instances of the same widget

26. Notifications

Notifications are created when content You follow is updated, commented on, You are mentioned, ect.

26.1. List notifications

HTTP
GET /v3/notifications HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/notifications' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/notifications' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 530. Request parameters
Parameter Description

offset

Notification offset

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 876

{
  "newCount" : 1,
  "offset" : null,
  "notifications" : [ {
    "id" : 1,
    "type" : null,
    "source" : {
      "name" : "Jack Bauer",
      "uri" : "uri:user:jack"
    },
    "target" : {
      "name" : "Jack Bauer",
      "uri" : "uri:user:jack"
    },
    "sourceUser" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "targetUser" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "message" : null,
    "containerUri" : null,
    "container" : null,
    "update" : null,
    "uri" : "uri:ctx:1",
    "entity" : null,
    "displayName" : "testing",
    "read" : false,
    "dateCreated" : 1713433520584
  } ]
}
Table 531. Definition of the returned fields
Path Type Description

newCount

Number

Number of unread notification for currently authenticated user

offset

String

Offset for retrieving next notifications

notifications

Array

Notifications

notifications[].id

Number

Notification ID

notifications[].read

Boolean

Notification status is unread or read

notifications[].displayName

String

Display name

notifications[].source

Object

Source participant

notifications[].target

Object

Target participant

notifications[].sourceUser

Object

Source base user dto

notifications[].targetUser

Object

Target base user dto

notifications[].message

String

Optional message with notification

notifications[].containerUri

String

Container URI (i.e. uri:ctx:101)

notifications[].container

Object

DTO describing the container object (contextual entity)

notifications[].update

Object

Additional update dto

notifications[].type

String

Type

notifications[].uri

String

URI to target entity (i.e. uri:ctx:101)

notifications[].entity

Object

DTO describing the target object

notifications[].dateCreated

Number

Date notification was created

notifications[].source.name

String

Full name

notifications[].source.uri

String

Profile URI

notifications[].sourceUser.id

Number

User id

notifications[].sourceUser.name

String

Full name

notifications[].sourceUser.username

String

Username

notifications[].sourceUser.logo

Boolean

Profile picture is defined

notifications[].sourceUser.jobTitle

String

Job title

notifications[].sourceUser.lastModified

Number

Last modified date

notifications[].target.name

String

Full name

notifications[].target.uri

String

Profile URI

notifications[].targetUser.id

Number

User id

notifications[].targetUser.name

String

Full name

notifications[].targetUser.username

String

Username

notifications[].targetUser.logo

Boolean

Profile picture is defined

notifications[].targetUser.jobTitle

String

Job title

notifications[].targetUser.lastModified

Number

Last modified date

26.2. Mark as read

Marks all authenticated user’s notifications as read.

HTTP
PUT /v3/notifications HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http PUT 'https://api.clinked.com/v3/notifications' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/notifications' -i -X PUT \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK

27. Chat

27.1. List conversations

HTTP
GET /v3/chat?unread=false&excludeEmpty=false HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/chat?unread=false&excludeEmpty=false' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/chat?unread=false&excludeEmpty=false' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 940

[ {
  "id" : "test",
  "name" : "test",
  "type" : "direct",
  "user" : {
    "id" : 2,
    "name" : "Black Sheep",
    "username" : "another.user",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "participants" : [ {
    "id" : "uri:user:another.user:2",
    "user" : {
      "id" : 2,
      "name" : "Black Sheep",
      "username" : "another.user",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "name" : "Black Sheep",
    "properties" : [ "nothumb" ]
  }, {
    "id" : "uri:user:jack:1",
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "name" : "Jack Bauer",
    "properties" : [ "nothumb" ]
  } ],
  "unread" : false,
  "lastMessage" : null,
  "dateCreated" : 1713433504479,
  "account" : 1
} ]
Table 532. Definition of the returned fields
Path Type Description

[].id

String

Conversation ID

[].name

String

Name

[].type

String

Type of conversation. Either 'direct' or 'group'

[].group

Object

Group if type is 'group'

[].account

Number

Account ID

[].user

Object

User if type is 'direct'

[].unread

Boolean

True when there are unread messages for the user

[].lastMessage

Object

Last message

[].account

Number

Account id

[].dateCreated

Number

Date conversation was created

[].participants

Array

List of participants in conversation

[].participants[].id

String

Participant URI

[].participants[].user

Object

Participant user info

[].participants[].name

String

Participant full name

[].participants[].properties

Array

Additional participant properties

[].participants[].user.id

Number

User id

[].participants[].user.name

String

Full name

[].participants[].user.username

String

Username

[].participants[].user.logo

Boolean

Profile picture is defined

[].participants[].user.jobTitle

String

Job title

[].participants[].user.lastModified

Number

Last modified date

[].user.id

Number

User id

[].user.name

String

Full name

[].user.username

String

Username

[].user.logo

Boolean

Profile picture is defined

[].user.jobTitle

String

Job title

[].user.lastModified

Number

Last modified date

[].group.id

Number

User / profile id

[].group.name

String

Group name slug, used for internal identification and URIs

[].group.friendlyName

String

Full group name, visible to a user

27.2. Get conversation

Table 533. /v3/chat/{conversation}
Parameter Description

conversation

Conversation ID

HTTP
GET /v3/chat/test HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/chat/test' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/chat/test' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 936

{
  "id" : "test",
  "name" : "test",
  "type" : "direct",
  "user" : {
    "id" : 2,
    "name" : "Black Sheep",
    "username" : "another.user",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "participants" : [ {
    "id" : "uri:user:another.user:2",
    "user" : {
      "id" : 2,
      "name" : "Black Sheep",
      "username" : "another.user",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "name" : "Black Sheep",
    "properties" : [ "nothumb" ]
  }, {
    "id" : "uri:user:jack:1",
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "name" : "Jack Bauer",
    "properties" : [ "nothumb" ]
  } ],
  "unread" : false,
  "lastMessage" : null,
  "dateCreated" : 1713433504446,
  "account" : 1
}
Table 534. Definition of the returned fields
Path Type Description

id

String

Conversation ID

name

String

Name

type

String

Type of conversation. Either 'direct' or 'group'

group

Object

Group if type is 'group'

account

Number

Account ID

user

Object

User if type is 'direct'

unread

Boolean

True when there are unread messages for the user

lastMessage

Object

Last message

account

Number

Account id

dateCreated

Number

Date conversation was created

participants

Array

List of participants in conversation

participants[].id

String

Participant URI

participants[].user

Object

Participant user info

participants[].name

String

Participant full name

participants[].properties

Array

Additional participant properties

participants[].user.id

Number

User id

participants[].user.name

String

Full name

participants[].user.username

String

Username

participants[].user.logo

Boolean

Profile picture is defined

participants[].user.jobTitle

String

Job title

participants[].user.lastModified

Number

Last modified date

user.id

Number

User id

user.name

String

Full name

user.username

String

Username

user.logo

Boolean

Profile picture is defined

user.jobTitle

String

Job title

user.lastModified

Number

Last modified date

group.id

Number

User / profile id

group.name

String

Group name slug, used for internal identification and URIs

group.friendlyName

String

Full group name, visible to a user

27.3. Create conversation

HTTP
POST /v3/chat HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 26

{"account": 1, "user": 2 }
HTTPie
$ echo '{"account": 1, "user": 2 }' | http POST 'https://api.clinked.com/v3/chat' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/chat' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{"account": 1, "user": 2 }'
Table 535. Request fields
Path Type Description

account

Number

Account id

user

Number

User id

group

Number

Group id

Example of a success response
HTTP/1.1 201 Created
Location: https://api.clinked.com/v3/chat/test
Content-Type: application/json;charset=UTF-8
Content-Length: 936

{
  "id" : "test",
  "name" : "test",
  "type" : "direct",
  "user" : {
    "id" : 2,
    "name" : "Black Sheep",
    "username" : "another.user",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "participants" : [ {
    "id" : "uri:user:another.user:2",
    "user" : {
      "id" : 2,
      "name" : "Black Sheep",
      "username" : "another.user",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "name" : "Black Sheep",
    "properties" : [ "nothumb" ]
  }, {
    "id" : "uri:user:jack:1",
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "name" : "Jack Bauer",
    "properties" : [ "nothumb" ]
  } ],
  "unread" : false,
  "lastMessage" : null,
  "dateCreated" : 1713433504527,
  "account" : 1
}
Table 536. Definition of the returned fields
Path Type Description

id

String

Conversation ID

name

String

Name

type

String

Type of conversation. Either 'direct' or 'group'

group

Object

Group if type is 'group'

account

Number

Account ID

user

Object

User if type is 'direct'

unread

Boolean

True when there are unread messages for the user

lastMessage

Object

Last message

account

Number

Account id

dateCreated

Number

Date conversation was created

participants

Array

List of participants in conversation

participants[].id

String

Participant URI

participants[].user

Object

Participant user info

participants[].name

String

Participant full name

participants[].properties

Array

Additional participant properties

participants[].user.id

Number

User id

participants[].user.name

String

Full name

participants[].user.username

String

Username

participants[].user.logo

Boolean

Profile picture is defined

participants[].user.jobTitle

String

Job title

participants[].user.lastModified

Number

Last modified date

user.id

Number

User id

user.name

String

Full name

user.username

String

Username

user.logo

Boolean

Profile picture is defined

user.jobTitle

String

Job title

user.lastModified

Number

Last modified date

group.id

Number

User / profile id

group.name

String

Group name slug, used for internal identification and URIs

group.friendlyName

String

Full group name, visible to a user

27.4. Update conversation

Sets conversation as read.

HTTP
PATCH /v3/chat/test HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 15

{"read": true }
HTTPie
$ echo '{"read": true }' | http PATCH 'https://api.clinked.com/v3/chat/test' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/chat/test' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{"read": true }'
Table 537. Request fields
Path Type Description

read

Boolean

Is read

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 936

{
  "id" : "test",
  "name" : "test",
  "type" : "direct",
  "user" : {
    "id" : 2,
    "name" : "Black Sheep",
    "username" : "another.user",
    "logo" : false,
    "jobTitle" : "Marketing",
    "lastModified" : 1514764800000
  },
  "participants" : [ {
    "id" : "uri:user:jack:1",
    "user" : {
      "id" : 1,
      "name" : "Jack Bauer",
      "username" : "jack",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "name" : "Jack Bauer",
    "properties" : [ "nothumb" ]
  }, {
    "id" : "uri:user:another.user:2",
    "user" : {
      "id" : 2,
      "name" : "Black Sheep",
      "username" : "another.user",
      "logo" : false,
      "jobTitle" : "Marketing",
      "lastModified" : 1514764800000
    },
    "name" : "Black Sheep",
    "properties" : [ "nothumb" ]
  } ],
  "unread" : false,
  "lastMessage" : null,
  "dateCreated" : 1713433504366,
  "account" : 1
}
Table 538. Definition of the returned fields
Path Type Description

id

String

Conversation ID

name

String

Name

type

String

Type of conversation. Either 'direct' or 'group'

group

Object

Group if type is 'group'

account

Number

Account ID

user

Object

User if type is 'direct'

unread

Boolean

True when there are unread messages for the user

lastMessage

Object

Last message

account

Number

Account id

dateCreated

Number

Date conversation was created

participants

Array

List of participants in conversation

participants[].id

String

Participant URI

participants[].user

Object

Participant user info

participants[].name

String

Participant full name

participants[].properties

Array

Additional participant properties

participants[].user.id

Number

User id

participants[].user.name

String

Full name

participants[].user.username

String

Username

participants[].user.logo

Boolean

Profile picture is defined

participants[].user.jobTitle

String

Job title

participants[].user.lastModified

Number

Last modified date

user.id

Number

User id

user.name

String

Full name

user.username

String

Username

user.logo

Boolean

Profile picture is defined

user.jobTitle

String

Job title

user.lastModified

Number

Last modified date

group.id

Number

User / profile id

group.name

String

Group name slug, used for internal identification and URIs

group.friendlyName

String

Full group name, visible to a user

27.5. Conversation messages

27.5.1. List messages

Table 539. /v3/chat/{conversation}/messages
Parameter Description

conversation

Conversation id

HTTP
GET /v3/chat/test/messages HTTP/1.1
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
HTTPie
$ http GET 'https://api.clinked.com/v3/chat/test/messages' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/chat/test/messages' -i -X GET \
    -H 'Authorization: Bearer <YOUR-TOKEN>'
Table 540. Request parameters
Parameter Description

offset

Message offset

markAsRead

Mark conversation as read

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 451

{
  "offset" : null,
  "items" : [ {
    "id" : "id",
    "deliveryId" : "delivery-1",
    "source" : {
      "id" : "uri:user:jack:1",
      "name" : "Jack Bauer",
      "properties" : [ "nothumb" ]
    },
    "body" : "message",
    "type" : "text",
    "read" : true,
    "messageOffset" : "dummyOffset",
    "dateSent" : "2024-04-18T09:45:04.592+0000",
    "dateReceived" : "2024-04-18T09:45:04.592+0000"
  } ],
  "size" : null,
  "more" : false
}
Table 541. Definition of the returned fields
Path Type Description

offset

String

Next offset for the messages

more

Boolean

Has more messages

items

Array

Array of messages

size

Number

Page size

items[].id

String

Message ID

items[].deliveryId

String

Unique delivery ID when message in transit

items[].body

String

Message text

items[].type

String

Type of message. Either 'text', 'update' or 'type'

items[].read

Boolean

Message is read or unread

items[].dateSent

String

Date the message was sent from client

items[].dateReceived

String

Date the message was received on server

items[].source

Object

Conversation participant who sent the message

items[].source.id

String

Participant URI

items[].source.name

String

Participant full name

items[].source.properties

Array

Additional participant properties

items[].messageOffset

String

Message offset from which other messages can be paginated

27.5.2. Create message

Table 542. /v3/chat/{conversation}/messages
Parameter Description

conversation

Conversation id

HTTP
POST /v3/chat/test/messages HTTP/1.1
Content-Type: application/json
Authorization: Bearer <YOUR-TOKEN>
Host: api.clinked.com
Content-Length: 76

{"type": "text","body": "Hello","dateSent": "2000-10-31T01:30:00.000-05:00"}
HTTPie
$ echo '{"type": "text","body": "Hello","dateSent": "2000-10-31T01:30:00.000-05:00"}' | http POST 'https://api.clinked.com/v3/chat/test/messages' \
    'Content-Type:application/json' \
    'Authorization:Bearer <YOUR-TOKEN>'
Curl
$ curl 'https://api.clinked.com/v3/chat/test/messages' -i -X POST \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer <YOUR-TOKEN>' \
    -d '{"type": "text","body": "Hello","dateSent": "2000-10-31T01:30:00.000-05:00"}'
Table 543. Request fields
Path Type Description

type

String

Message type text|update

body

String

Message text

dateSent

String

Date sent

Example of a success response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 401

{
  "id" : "3c8aabc1-75c5-4896-b27b-d82cba8e3c99",
  "deliveryId" : "6f4f4ef1-1853-4ead-b5ce-62526706a50b",
  "source" : {
    "id" : "uri:user:jack:1",
    "name" : "Jack Bauer",
    "properties" : [ "nothumb" ]
  },
  "body" : "Hello",
  "type" : "text",
  "read" : true,
  "messageOffset" : "dummy",
  "dateSent" : "2000-10-31T06:30:00.000+0000",
  "dateReceived" : "2024-04-18T09:45:04.725+0000"
}
Table 544. Definition of the returned fields
Path Type Description

id

String

Message ID

deliveryId

String

Unique delivery ID when message in transit

body

String

Message text

type

String

Type of message. Either 'text', 'update' or 'type'

read

Boolean

Message is read or unread

dateSent

String

Date the message was sent from client

dateReceived

String

Date the message was received on server

source

Object

Conversation participant who sent the message

source.id

String

Participant URI

source.name

String

Participant full name

source.properties

Array

Additional participant properties

messageOffset

String

Message offset from which other messages can be paginated