Management API

The Synqly Management APIs enable you to manage the resources within your Synqly organization, such as setting up Accounts for your customers and creating Integrations to connect your product to the different service Providers supported by Synqly.

For more information see the Synqly Overview.

Download OpenAPI description
Languages
Servers
Synqly
https://api.synqly.com/

Accounts

Accounts under your Organization are used to manage Integrations, Credentials, and other account specific resources. Accounts are secure containers and may be used to represent tenants in your system. Data is never shared across accounts.

For more information on Accounts, see the Synqly Overview.

Operations

Audit

Operations

Auth

Operations

Bridges

Operations

Capabilities

Operations

Credentials

Operations

Integration Points

An Integration Point describes a class of Integrations, and lets you describe names, allowed providers and other configuration that should apply to integrations associated with the Integration Point.

While an Integration can be created without associating it with an Integration Point, some Synqly features require the use of Integration Points, such as:

  • Connect UI
  • Validating allowed providers
  • Custom data mapping (coming soon)

Integration Points belong to the Organization, and can be associated with Integrations belonging to different Accounts.

For more information on Integration Points, see the Synqly Overview.

Operations

Integrations

An Integration represents the connection to a specific Provider. Once configured, an Integration enables interaction with the target Provider via our unified and normalized Connector APIs.

Each Integration belongs to an Account and may be associated with an Integration Point to provide additional features and configuration.

For more information on Integrations, see the Synqly Overview.

Operations

Members

Operations

List Members

Request

List all members

Query
limitinteger or null

Number of Member objects to return in this page. Defaults to 100.

start_afterstring or null

Return Member objects starting after this name.

orderArray of strings or null

Select a field to order the results by. Defaults to name. To control the direction of the sorting, append [asc] or [desc] to the field name. For example, name[desc] will sort the results by name in descending order. The ordering defaults to asc if not specified. May be used multiple times to order by multiple fields, and the ordering is applied in the order the fields are specified.

filterArray of strings or null

Filter results by this query. For more information on filtering, refer to our Filtering Guide. Defaults to no filter. If used more than once, the queries are ANDed together.

curl -i -X GET \
  'https://api.synqly.com/v1/members?filter=string&limit=0&order=string&start_after=string' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Bodyapplication/json
resultArray of objects(Member)required
result[].​idstring(Id)required
result[].​statestring(State)required
Enum"disabled""enabled""forgotten""invited""locked"
result[].​last_logonstring(date-time)required

Last logon time

result[].​fullnamestringrequired

User's full display name.

result[].​ttlstringrequired
result[].​token_ttlstringrequired
result[].​expiresstring(date-time)required
result[].​pin_expiresstring(date-time)required
result[].​role_bindingArray of strings(RoleName)required

Roles granted to this member. Tokens inherit this access.

result[].​namestringrequired

Human-readable name for this resource

result[].​created_atstring(date-time)required

Time object was originally created

result[].​updated_atstring(date-time)required

Last time object was updated

result[].​nicknamestring or null

User's nickname

result[].​picturestring or null

Url of user's picture

Response
application/json
{ "result": [ {} ] }

Create Member

Request

Add a new member for this Organization.

Bodyapplication/jsonrequired
namestringrequired

Email name to use for this Member. Also used for duplicate detection and default sort order.

secretstringrequired

Member secret used to logon. Must be at least 8 characters long and fewer than 72 characters. There are no restrictions on the characters used; however, the secret must be sufficiently complex. It cannot be a common word, previously leaked password, or easily guessed sequences like qwerty or 12345.

optionsobject(MemberOptions)required
options.​ttlstringrequired

Optional member time-to-live duration. After a member expires, system requires a change password to re-enable member. Minimum 1 day, Maximum 1 year, Default 180 days.

options.​optionsArray of strings(Options)required

Options: "expired" will force change password on first logon.

Items Enum"disabled""expired""forgotten""invited""locked"
options.​token_ttlstringrequired

Optional token time-to-live duration. Tokens are created for this member with this duration as their TTL. Minimum 10 miniutes, Maximum 1 week, Defaults 1 hour.

fullnamestring or null

User's full display name. Defaults to the same value as the 'name' field if not specified.

nicknamestring or null

User's nickname

picturestring or null

Url of user's picture

role_bindingArray of strings or null(RoleName)

Roles granted to this member. Tokens inherit this access. Defaults to member.

curl -i -X POST \
  https://api.synqly.com/v1/members \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "name": "string",
    "fullname": "string",
    "nickname": "string",
    "picture": "string",
    "secret": "string",
    "role_binding": [
      "string"
    ],
    "options": {
      "ttl": "string",
      "options": [
        "disabled"
      ],
      "token_ttl": "string"
    }
  }'

Responses

Bodyapplication/json
resultobject(CreateMemberResponseResult)required
result.​memberobject(Member)required
result.​member.​idstring(Id)required
result.​member.​statestring(State)required
Enum"disabled""enabled""forgotten""invited""locked"
result.​member.​last_logonstring(date-time)required

Last logon time

result.​member.​fullnamestringrequired

User's full display name.

result.​member.​ttlstringrequired
result.​member.​token_ttlstringrequired
result.​member.​expiresstring(date-time)required
result.​member.​pin_expiresstring(date-time)required
result.​member.​role_bindingArray of strings(RoleName)required

Roles granted to this member. Tokens inherit this access.

result.​member.​namestringrequired

Human-readable name for this resource

result.​member.​created_atstring(date-time)required

Time object was originally created

result.​member.​updated_atstring(date-time)required

Last time object was updated

result.​member.​nicknamestring or null

User's nickname

result.​member.​picturestring or null

Url of user's picture

Response
application/json
{ "result": { "member": {} } }

Get Member

Request

Retrieve a Member by ID

Path
memberIdstring(Id)required
curl -i -X GET \
  'https://api.synqly.com/v1/members/{memberId}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Bodyapplication/json
resultobject(Member)required
result.​idstring(Id)required
result.​statestring(State)required
Enum"disabled""enabled""forgotten""invited""locked"
result.​last_logonstring(date-time)required

Last logon time

result.​fullnamestringrequired

User's full display name.

result.​ttlstringrequired
result.​token_ttlstringrequired
result.​expiresstring(date-time)required
result.​pin_expiresstring(date-time)required
result.​role_bindingArray of strings(RoleName)required

Roles granted to this member. Tokens inherit this access.

result.​namestringrequired

Human-readable name for this resource

result.​created_atstring(date-time)required

Time object was originally created

result.​updated_atstring(date-time)required

Last time object was updated

result.​nicknamestring or null

User's nickname

result.​picturestring or null

Url of user's picture

Response
application/json
{ "result": { "id": "string", "state": "disabled", "last_logon": "2019-08-24T14:15:22Z", "fullname": "string", "nickname": "string", "picture": "string", "ttl": "string", "token_ttl": "string", "expires": "2019-08-24T14:15:22Z", "pin_expires": "2019-08-24T14:15:22Z", "role_binding": [], "name": "string", "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z" } }

Update Member

Request

Update a Member by ID

Path
memberIdstring(Id)required
Bodyapplication/jsonrequired
idstring(Id)required
statestring(State)required
Enum"disabled""enabled""forgotten""invited""locked"
last_logonstring(date-time)required

Last logon time

fullnamestringrequired

User's full display name.

ttlstringrequired
token_ttlstringrequired
expiresstring(date-time)required
pin_expiresstring(date-time)required
role_bindingArray of strings(RoleName)required

Roles granted to this member. Tokens inherit this access.

namestringrequired

Human-readable name for this resource

created_atstring(date-time)required

Time object was originally created

updated_atstring(date-time)required

Last time object was updated

nicknamestring or null

User's nickname

picturestring or null

Url of user's picture

curl -i -X PUT \
  'https://api.synqly.com/v1/members/{memberId}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "id": "string",
    "state": "disabled",
    "last_logon": "2019-08-24T14:15:22Z",
    "fullname": "string",
    "nickname": "string",
    "picture": "string",
    "ttl": "string",
    "token_ttl": "string",
    "expires": "2019-08-24T14:15:22Z",
    "pin_expires": "2019-08-24T14:15:22Z",
    "role_binding": [
      "string"
    ],
    "name": "string",
    "created_at": "2019-08-24T14:15:22Z",
    "updated_at": "2019-08-24T14:15:22Z"
  }'

Responses

Bodyapplication/json
resultobject(Member)required
result.​idstring(Id)required
result.​statestring(State)required
Enum"disabled""enabled""forgotten""invited""locked"
result.​last_logonstring(date-time)required

Last logon time

result.​fullnamestringrequired

User's full display name.

result.​ttlstringrequired
result.​token_ttlstringrequired
result.​expiresstring(date-time)required
result.​pin_expiresstring(date-time)required
result.​role_bindingArray of strings(RoleName)required

Roles granted to this member. Tokens inherit this access.

result.​namestringrequired

Human-readable name for this resource

result.​created_atstring(date-time)required

Time object was originally created

result.​updated_atstring(date-time)required

Last time object was updated

result.​nicknamestring or null

User's nickname

result.​picturestring or null

Url of user's picture

Response
application/json
{ "result": { "id": "string", "state": "disabled", "last_logon": "2019-08-24T14:15:22Z", "fullname": "string", "nickname": "string", "picture": "string", "ttl": "string", "token_ttl": "string", "expires": "2019-08-24T14:15:22Z", "pin_expires": "2019-08-24T14:15:22Z", "role_binding": [], "name": "string", "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z" } }

Patch Member

Request

Update a Member by ID

Path
memberIdstring(Id)required
Bodyapplication/jsonrequiredArray [
opstring(PatchOp)required
Enum"add""copy""move""remove""replace""test"
pathstringrequired

The path to the field to update. The path is a JSON Pointer.

fromstring or null

The path to the field to copy from. This is required for copy and move operations.

valueany or null

The value to set the field to. This is required for add, replace and test operations.

]
curl -i -X PATCH \
  'https://api.synqly.com/v1/members/{memberId}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '[
    {
      "op": "add",
      "path": "string",
      "from": "string",
      "value": null
    }
  ]'

Responses

Bodyapplication/json
resultobject(Member)required
result.​idstring(Id)required
result.​statestring(State)required
Enum"disabled""enabled""forgotten""invited""locked"
result.​last_logonstring(date-time)required

Last logon time

result.​fullnamestringrequired

User's full display name.

result.​ttlstringrequired
result.​token_ttlstringrequired
result.​expiresstring(date-time)required
result.​pin_expiresstring(date-time)required
result.​role_bindingArray of strings(RoleName)required

Roles granted to this member. Tokens inherit this access.

result.​namestringrequired

Human-readable name for this resource

result.​created_atstring(date-time)required

Time object was originally created

result.​updated_atstring(date-time)required

Last time object was updated

result.​nicknamestring or null

User's nickname

result.​picturestring or null

Url of user's picture

Response
application/json
{ "result": { "id": "string", "state": "disabled", "last_logon": "2019-08-24T14:15:22Z", "fullname": "string", "nickname": "string", "picture": "string", "ttl": "string", "token_ttl": "string", "expires": "2019-08-24T14:15:22Z", "pin_expires": "2019-08-24T14:15:22Z", "role_binding": [], "name": "string", "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z" } }

Delete Member

Request

Delete a Member by ID. Also deletes all Tokens for the Member.

Path
memberIdstring(Id)required
curl -i -X DELETE \
  'https://api.synqly.com/v1/members/{memberId}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Response
No content

Meta

Operations

Operations (In Development)

In Development

This feature is actively being developed. Breaking changes should be expected.

Please contact us before using this feature.

Operations

Organization Webhooks

Operations

Organization

Operations

Permissionset

Operations

Roles

Operations

Status

Operations

Sub Orgs

Operations

Tokens

Operations

Transforms

Operations