On this page
You can authenticate with BrightTALK to create your own instance of the BrightTALK connector through the UI or through APIs. Once authenticated, you can use the connector instance to access the different functionality offered by the BrightTALK platform.
Authenticate Through the UI
Use the UI to authenticate with BrightTALK and create a connector instance. You will need your BrightTALK username (entered in the API Key field) and password (entered in the API Secret field).
After successfully authenticating, we give you several options for next steps. Make requests using the API docs associated with the instance, map the instance to a common resource, or use it in a formula template.
Authenticate Through API
You can provision instances through SAP Open Connectors or through APIs. This section describes both methods and includes parameter details, a request sample, and a response sample.
To provision your BrightTALK Connector, use the /instances API.
Note: token is returned upon successful execution of this API. Retain the token for all subsequent requests involving this connector instance.
The provisioning API call includes:
- HTTP Headers: Authorization- User , Organization
- HTTP Verb: POST
- Request URL: /instances
- Request Body: Required – see below
- Query Parameters: none
Request Body
You must include an instance.json file with your instance request. See Parameters for information about each parameter. The Boolean parameters show default values.
Note: If you don't specify a required parameter, your response results in an error.
{
"element": {
"key": "brighttalk"
},
"configuration": {
"brighttalk.api.key": "<INSERT_BrightTALK_KEY>",
"brighttalk.api.secret": "<INSERT_BrightTALK_SECRET>",
"brighttalk.isstaging": false,
"brighttalk.bulkignore.emailnotpresent": true,
"filter.response.nulls": true
},
"tags": [
"<INSERT_TAGS>"
],
"name": "<INSERT_INSTANCE_NAME>"
}
Note: Make sure that you use straight quotes in your JSON files and cURL commands. Use plain text formatting in your code and ensure that you do not include spaces in the cURL command.
Parameters
The following table shows the parameters used to provision an instance. We noted optional parameters in the table, but if you do not specify values, the connector will be provisioned with default values for the optional parameters.
Parameter | Description | Data Type |
---|---|---|
Instance Namename | The name for the instance created during provisioning. | String |
API Keybrighttalk.api.key | The code that identifies the calling connector instance to BrightTALK. This is your BrightTALK username. | String |
API Secretbrighttalk.api.secret | The secret associated with the API Key that identifies the calling connector instance to BrightTALK. This is your BrightTALK password. | String |
Stagingbrighttalk.isstaging | Optional. Indicates whether the instance should connect to a production or staging environment. No or false indicates production.Default: false | Boolean |
Bulk ignore if email not presentbrighttalk.bulkignore.emailnotpresent | Optional. Specifies what to do with a record during bulk download if it is missing an email . Set to Yes or true to ignore the record during download.Default: true | Boolean |
Filter null values from the responsefilter.response.nulls | Optional. Determines if null values in the response JSON should be filtered from the response. Yes or true indicates that SAP Open Connectors will filter null values.Default: true | Boolean |
Tags | Optional. User-defined tags to further identify the instance. | object |
Sample Request
Below is an example cURL request:
curl -X POST -H "Content-Type: application/json" -H "Authorization: User rapG956KSQJ/lZo20kdg2uurkG+wYU836miX1uQQT4k=, Organization 976c3406ee321baf50acfe6cf5eac1ac" -H "Cache-Control: no-cache" -H "Postman-Token: 5b56f6d5-e58e-d53f-a757-671f7cab58fa" -d '{
"element": {
"key": "brighttalk"
},
"configuration": {
"brighttalk.api.key": "xxxxxx",
"brighttalk.api.secret": "xxxxxxxxxxxxxxxxxxxxxxx",
"brighttalk.isstaging": false,
"brighttalk.bulkignore.emailnotpresent": true,
"filter.response.nulls": true
},
"tags": [
"Docs"
],
"name": "BrightTalkforDocs"
}
' "https://api.openconnectors.us2.ext.hana.ondemand.com/elements/api-v2/instances"
Sample Response
Below is an abridged successful JSON response:
{
"id": 411183,
"name": "BrightTalkforDocs",
"createdDate": "2017-03-14T19:20:16Z",
"token": "xxxxxxxxxxxxxxxxxxxxxxx=",
"element": {
"id": 184,
"name": "BrightTALK",
"hookName": "BrightTALK",
"key": "brighttalk",
"description": "Add an BrightTALK Instance to connect your existing BrightTALK account to the Marketing Hub, allowing you to manage your channels, subscribers, activities, etc. You will need your BrightTALK account information to add an instance.",
"image": "https://www.brighttalk.com/resources/images/logo_b.png?v=97373",
"active": true,
"deleted": false,
"typeOauth": false,
"trialAccount": false,
"signupURL": "http://www.brighttalk.com",
"defaultTransformations": []
},
"configuration": {
"brighttalk.api.secret": "xxxxxxxxxxxxxxxxxxxxxxx",
"filter.response.nulls": "true",
"brighttalk.bulkignore.emailnotpresent": "true",
"brighttalk.isstaging": "false",
"brighttalk.api.key": "xxxxxxxxxxxxxxxxxxxxxxx"
}
}
Instance Configuration
The content in the configuration
section or nested object in the body posted to the POST /instances
or PUT /instances/{id}
APIs varies depending on which connector is being instantiated. However, some configuration properties are common to all connectors and available to be configured for all connectors. These properties are -
event.notification.enabled
: This property is aboolean
property, and determines if event reception (viawebhook
orpolling
) is enabled for the connector instance. This property defaults to false.event.vendor.type
: Whenevent.notification.enabled
property is set to true, this property determines the mechanism to use to receive or fetch changed events from the service endpoint. The supported values arewebhook
andpolling
. Most connectors support one mechanism or the other, but some like Salesforce.com support both mechanisms. This property is optional.event.notification.type
: This property can be used to determine how an event notification should be sent to the consumer of the connector instance, in most cases your application. Currently,webhook
is the only supported value for this property. This means that when an event is received by the connector instance, it will get forwarded to the providedevent.notification.callback.url
via awebhook
to you. This property is optional.event.notification.callback.url
: As mentioned above, the value of this property is anhttp
orhttps
URL to which we will post the event for consumption by your application. This property is optional.filter.response.nulls
: This property defaults to true, i.e., it'sboolean
property, and determines ifnull
values in the responseJSON
should or should not be filtered from the response returned to the consuming application. By default, allnull
values are filtered from the response before sending the response to the consuming application.