Management Console Configuration¶
In a particular environment, available connectors can be configured using a config.json
file. This file has a property called connector_config
whose value is the configuration of an embedded pipe with the same name. By editing the entities in the embedded source, the various connectors can be configured.
Properties¶
Property |
Type |
Description |
Required? |
---|---|---|---|
|
String |
The id of the connector. This id will be used throughout the various components |
Yes |
|
String |
Must always be equal to |
Yes |
|
Boolean |
Specifies if this connector should be visible in the UI at all. Default is true. |
No |
|
Object |
Dictionary of objects that specifies values that we need from the user and what they should be called. The key specifies the identifier of the property |
No |
|
String |
Display name for the property for the user - becomes the label for the text field. |
No |
|
String |
Description of the property for the user that explains what it is. |
No |
|
Object |
Dictionary for configuring the account selection feature. This can be used if the system supports multiple accounts per user and there is a way for us to get that list and present it to the user to choose between. |
No |
|
String |
The endpoint in the external system that the backend should POST to in order to retrieve the list of accounts. |
No |
|
String | Array<String> |
Optional, can be a string, or a list of strings, and defines how to traverse the obtained response from the system. |
No |
|
String | Array<String> |
Tells which property to use for obtaining the account, after (optionally) traversing the obtained response using payload_property. |
No |
|
String | Array<String> |
Tells which property in the response to use for labeling the account, after (optionally) traversing the obtained response using payload_property. |
No |
|
Object |
Configuration options related to the authorization scheme for the particular system. The properties under this object are shown below. |
Yes |
|
String |
The text shown below the title in the connector card on the dashboard in Management Console. |
Yes |
|
String |
A link to our own docs on this specific connector. |
Yes |
|
String |
A URL that holds the logo for the system this connector is made for. This property should point to a bigger version of the logo, with the name if the system included. |
Yes |
|
String |
A URL that holds the logo for the system this connector is made for. This property should point to a bigger version of the logo, with the name if the system included. |
Yes |
|
String |
A URL that holds the logo for the system this connector is made for. This property should point to a smaller version of the logo, an icon without text, if available. |
Yes |
|
Array |
A list of entity types that should be hidden from the UI for this connector. The values here must reference the ids of the entity types as defined in the manifest. |
No |
|
Boolean |
This property tells us if this connector is something that every tenant can use. With the exception of “shared” connectors like |
|
|
String |
Favicon used for this connector. |
No |
|
String |
The title shown on the connector card on the dashboard in Management Console. |
Yes |
|
String |
Which category of system this is, such as ERP, CRM. Unused in the UI currently. |
Yes |
|
String |
Which stage of development this connector is in. Unused in the UI currently. |
Yes |
|
String |
Important property as this points towards the raw URL for which connector repository to use, including the branch (or commit hash). Ex: https://raw.githubusercontent.com/sesam-io/wave-connector/playground |
Yes |
|
Object |
A dictionary of parameters that should overwrite those specified in the connector manifest. E.g. if there is a |
No |
|
Object |
Properties that can be used to configure the connection flow for this connector. |
No |
|
Array |
With this you can specify custom sections of text in the connect flow as such: |
No |
|
Integer |
Specifies the ordering of the section |
No |
|
String |
Title of the section |
No |
|
String |
The actual body of text for the section |
No |
|
Object |
Parameters that determine the styling of the dashboard when this connector is chosen as the vendor (i.e. the first connector). |
Yes |
|
String |
The name of the “product” that corresponds to when this connector is used as the vendor (primary/first system), e.g. Making Freshteam Talk |
Yes |
|
String |
The text used in the dashboard when this system is used as the vendor, e.g. Connect to these services to synchronize your data with SuperOffice.. |
Yes |
|
String |
The display title used for the system this connector connects to, e.g. SuperOffice. |
Yes |
|
Array |
A list of connectors that can be connected to when this system is the vendor. This filters the connectors that can be seen in the dashboard after the first connection. The entries in the list need to correspond to the _ids of the other connectors. |
No |
|
Array |
List of entity type options that should be hiddne from the UI for all connectors, when we are using this vendor. Example values are |
No |
|
Object |
Properties for the logo of the homepage for this vendor |
No |
|
String |
URL for the logo used for the homepage link. |
No |
|
String |
URL of the corresponding marketplace for this vendor, e.g. |
No |
Properties in the auth
object for API key based connectors¶
Property |
Type |
Description |
Required? |
---|---|---|---|
|
String |
Specifies the type of authorization - either |
Yes |
|
String |
This will replace the |
Yes |
|
String |
Human-readable label for the API key field. Without it, the field is just called “API Key”. Only relevant for api key based connectors. |
Yes |
Properties in the auth
object for OAuth2 based connectors¶
Property |
Type |
Description |
Required? |
---|---|---|---|
|
“api_key” | “oauth2” |
Specifies the type of authorization - either |
Yes |
|
String |
Similar to the config for the API key type authentication, the connector-deployer uses this for the |
Yes |
|
String |
The endpoint that the Management Console should use when requesting an access token. The access token is used in API requests towards the connector’s systems. |
Yes |
|
String |
The scopes that represent which permissions the user must grant to our OAuth2 application. In the case of Hubspot, the scopes must be a subset of the scopes that we have set in the application configuration - this might vary from connector to connector. Some OAuth2 connectors don’t require any scopes at all. It is recommended to use the openid scope if the provider supports it, since that allows us to extract the identity of the user that is connecting. |
Yes |
|
String |
Currently only HubSpot uses this. This is an endpoint that provides user identity information given an existing access token. In this case it is required for determining the account ID of the tenant. |
Yes |
|
Object |
This is the URL that we should send the tenant to when they want to connect this connector. Generally, this is the page where the tenant will select their account on the external site. Sometimes it’s called the “authorize” URL, and often ends with |
Yes |
|
String | Array |
A bit of a misleading name, since this property is used for pointing to which property in the response from the external system that should be used as the account_id (not tenant_id). This property is taken from the token response when authorizing. As en example, the response from HubSpot (after calling the identity endpoint) returns properties where one of them is called |
Yes |