Getting Started with BrightSync API
BrightSync API lets developers manage Aurinko's sync logic between mailboxes and business platforms for seamless two-way calendar, contacts, and tasks sync.
Last updated
BrightSync API lets developers manage Aurinko's sync logic between mailboxes and business platforms for seamless two-way calendar, contacts, and tasks sync.
Last updated
BrightSync API allows developers to configure, activate, and manage Aurinko’s pre-built sync logic, which is a worker process migrating data between mailbox or email marketing providers and one business platform (also called “portal”):
Two-way calendar sync between user mailboxes and a business platform\
One-way email logging to a business platform with contact/opportunity matching\
Two-way contacts sync between user mailboxes and a business platform\
Two-way tasks sync between user mailboxes and the business platform\
A custom Aurinko connector for your business platform needs to be created by Yoxel. See .
You need to obtain appId & appSecret from Yoxel.
Please contact us at to discuss your integration.
BrightSync runs a sync job for every registered user so first step for your integration is to create a sync account for your user: POST user signup details to the endpoint:
Where:
appId - ID we assign to your integration, together with a secret key
compExtId - Org/Tenant/Company ID that the user is associated with in your platform. BrightSync groups all users by their organizations.
companyName - the name of the Org/Tenant/Company
instanceUrl - API URL associated with the Org/Tenant/Company.
userExtId - your platform’s user ID
apiHash - HMAC signature using your app secret
requestTimestamp - time of the request, is used in the signature calculation
Here is the sample Java code to generate the apiHash:
This call returns an access token for the user which should be used in all other API calls:
{"accessToken":"djIjMjYxMCN2O...jIxNDU5"}
\
The access token returned by the signup call should be used to call all other API methods.
You need to use the BASIC
HTTP authentication with username={access_token}
, password=X
.
GET https://api.yoxel.com/v2/me
Response:
BrightSync needs to be able to connect to remote accounts which are called services.
First, check if services already exist for the current user as there are scenarios when some services are auto-populated during signup, i.e. if you’d configured Org wide sync templates (see about sync templates below).
GET https://api.yoxel.com/v2/services
Non-null authRedirectUrl
means the user has not authorized BrightSync to access this account yet or the access token has been lost. Direct your user to authRedirectUrl
in a browser popup window to get a new authorization.
POST https://api.yoxel.com/v2/services
GET https://api.yoxel.com/v2/services/{id}
GET https://api.yoxel.com/v2/services/syncSettings
PUT https://api.yoxel.com/v2/services/syncSettings
Here is an example of the key options you control:
Initially, BrightSync for a new user is in the “review” mode, except when locked templates are in place that auto-provision all user services (see below about the templates).
Non-empty needReview
indicates if any of the sync modules are in the review mode.
In this mode, you can run the sync but it will only load data from remote accounts without updating/creating anything:
POST /sync
Payload:
GET /sync
GET /rules/<type>/report
PUT /rules/<type>/allowSync
or PUT /allowSync
Payload:
POST /sync
Payload:
GET /sync
GET /sync
Check syncState
:
IDLE - the sync is not currently running\
REQUESTED - a request for syncing was received but the sync is not running yet\
QUEUED - the sync is in a queue to be run\
EXECUTING - the sync is running
Non-empty needsReview
indicated that a sync module is not completely activated and the user needs to review the data that the synced prepared for syncing.
Sync templates are team-level configurations that can be assigned to sync users and result in auto-populating services and settings. Using the templates also disables the “review” steps and allows user sync to activate completely right away.
GET https://api.yoxel.com/v2/templateGroups
POST https://api.yoxel.com/v2/templateGroups
PUT https://api.yoxel.com/v2/templateGroups/{gid}
GET https://api.yoxel.com/v2/templateGroups/{gid}/services
BrightSync supports admin/app-level connectivity for Google, Office 365, MS Exchange, and Salesforce accounts which can be configured at the template level.
Non-null authRedirectUrl means the Org admin has not authorized BrightSync to access this Org yet or the access token has been lost. Direct the admin user to authRedirectUrl
in a browser popup window to get a new authorization.
POST https://api.yoxel.com/v2/templateGroups/{gid}/services
GET https://api.yoxel.com/v2/templateGroups/{gid}services/{id}
GET https://api.yoxel.com/v2/templateGroups/{gid}/syncSettings
PUT https://api.yoxel.com/v2/templateGroups/{gid}/syncSettings
Here is an example of the key options you control (very similar to the user-level sync settings):
With an admin user’s access token, it is possible to manage other users’ syncs.
If you get the 401 - Unauthorized
HTTP status in response that means that the user access token is invalid and you need to repeat the .
Refer to the for more details. Here is an example of the key data returned:
The endpoints allow you to configure a user sync between two services: one business platform (also called portal) and one mailbox (i.e. Google, Office 365,…) or an email marketing account (i.e. Hubspot, Constant Contact,…)
The sync progress can be monitored by polling its :
The endpoints all you to manage multiple sync templates and their assignments to users.
Refer to the for more details. Here is an example of the key data returned:
The endpoints allow you to prepare a sync configuration between two services: one business platform (also called portal) and one mailbox (i.e. Google, Office 365,…) or an email marketing account (i.e. Hubspot, Constant Contact,…)
Additional documentation detailing the endpoints i being developed.