64 lines
2.8 KiB
Markdown
64 lines
2.8 KiB
Markdown
# TrustPilot
|
|
|
|
## Prerequisites
|
|
|
|
* Trustpilot API Token or Zendesk OAuth 2.0 redentials
|
|
* Trustpilot Business Unit URLs
|
|
|
|
## Authentication methods
|
|
|
|
You can either authenticate with API key or with OAuth 2.0. Setting up OAuth 2.0 is a bit more complex but will give you access to more streams.
|
|
|
|
## Setup guide
|
|
|
|
### Step 1: Set up your Trustpilot App
|
|
|
|
Create a Trustpilot App as described in [Trustpilot docs](https://support.trustpilot.com/hc/en-us/articles/207309867-Getting-started-with-Trustpilot-s-APIs).
|
|
|
|
Enter the API key in the Airbyte source configuration "API key". In case you want to use OAuth 2.0 authentication, copy the API secret as well.
|
|
|
|
### Step 2: Requesting OAuth 2.0 refresh token (Optional)
|
|
|
|
Request the OAuth 2.0 request token by sending the following HTTP request:
|
|
|
|
``` http
|
|
GET https://api.trustpilot.com/v1/oauth/oauth-business-users-for-applications/accesstoken
|
|
Authorization: Basic base64(apikey:secret)
|
|
Content-Type: application/x-www-form-urlencoded
|
|
|
|
grant_type=password&username=YOUR_TRUSTPILOT_USERNAME_OR_LOGIN_EMAIL_HERE&password=YOUR_TRUSTPILOT_PASSWORD_HERE
|
|
```
|
|
|
|
When succeeded, it will return a json object. Extrat the properties `access_token`, `refresh_token`.
|
|
|
|
Fill now the missing configuration fields in the Airbyte source configuration. As token expiry date, use the current time + 4 days (or calculate it yourself by calculating the date time of request add the seconds given in property `expires_in`).
|
|
|
|
## Supported sync modes
|
|
|
|
The **Trustpilot** source connector supports the following [sync modes](https://docs.airbyte.com/cloud/core-concepts#connection-sync-modes):
|
|
* Full Refresh
|
|
* Incremental Sync
|
|
|
|
## Supported Streams
|
|
|
|
This Source is capable of syncing the following Streams:
|
|
|
|
* [Configured Business Units](https://documentation-apidocumentation.trustpilot.com/business-units-api-(public)#find-a-business-unit) - loads business units defined in the configuration
|
|
* [Business Units](https://documentation-apidocumentation.trustpilot.com/business-units-api-(public)#get-a-list-of-all-business-units) - loads **all** business units
|
|
* [Private Reviews](https://documentation-apidocumentation.trustpilot.com/business-units-api#business-unit-private-reviews) \(Incremental sync\)
|
|
|
|
## Performance considerations
|
|
|
|
The connector is restricted by Trustpilot [rate limit guidelines](https://documentation-apidocumentation.trustpilot.com/#LimitRates).
|
|
|
|
The Trustpilot connector should not run into any limits under normal usage. Please [create an issue](https://github.com/airbytehq/airbyte/issues) if you see any rate limit issues that are not automatically retried successfully.
|
|
|
|
|
|
## Changelog
|
|
|
|
|
|
| Version | Date | Pull Request | Subject |
|
|
|:--------|:-----------| :----- |:----------------------------------|
|
|
| `0.1.0` | 2023-03-16 | [24009](https://github.com/airbytehq/airbyte/pull/24009) | Initial version |
|
|
|