> For the complete documentation index, see [llms.txt](https://docs.erathos.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.erathos.com/connectors/apis/trustvox.md).

# Trustvox

Connect your Trustvox review platform to your data warehouse. Sync product opinions, ratings, questions, seller reviews, and store data to BigQuery, Redshift, PostgreSQL, Databricks, and more.

## Using the Erathos platform

When selecting Trustvox as a new connector on the Erathos platform, you will need to name your connection and fill in the following form:

* **Token** — your Trustvox API token, used to authenticate all requests to the Trustvox API
* **Store URL** — the URL of your Trustvox store, used to identify which store's data to extract
* **Admin Email** — the administrator email associated with your Trustvox account
* **Store ID** — the numeric identifier of your store in Trustvox

With this connection created you can seamlessly move your Trustvox data to your BigQuery, Redshift or PostgreSQL data warehouse.

### How to find my token?

Log in to your Trustvox account at <https://app.trustvox.com.br> and go to the account/admin settings area. Under the API or integrations section, generate or copy your API token. This token is sent as a `Bearer` credential in the `Authorization` header of every request, alongside the `Accept: application/vnd.trustvox.com; version=1` header that selects the API version.

You will also need your store URL, the admin email for the account, and your store ID — these identify which store's opinions, orders, products, and reviews will be extracted.

Paste the token into the **Token** field on the Erathos platform, fill in the **Store URL**, **Admin Email** and **Store ID** fields, and click **Save and close** to complete the setup.

## Endpoints and fields

### opinions

Sync type availability: Full-refresh

| Field            | Type      |
| ---------------- | --------- |
| id               | text      |
| rate             | integer   |
| text             | text      |
| product          | json      |
| client           | json      |
| recommends       | text      |
| upvotes\_count   | integer   |
| downvotes\_count | integer   |
| created\_at      | timestamp |
| order            | json      |
| photos           | json      |
| survey           | json      |

### orders

Sync type availability: Full-refresh

| Field              | Type      |
| ------------------ | --------- |
| id                 | integer   |
| order\_id          | text      |
| tags               | json      |
| client             | json      |
| delivery\_date     | date      |
| state              | text      |
| review\_url        | text      |
| store\_review\_url | text      |
| store\_review      | json      |
| created\_at        | timestamp |
| items              | json      |

### product\_by\_code

Sync type availability: Full-refresh

Child of [products](#products)

| Field       | Type    |
| ----------- | ------- |
| tags        | json    |
| product\_id | integer |
| store\_id   | integer |
| skus        | json    |

### product\_opinions

Sync type availability: Full-refresh

Child of [products](#products)

| Field            | Type    |
| ---------------- | ------- |
| id               | integer |
| opinion\_title   | text    |
| opinion          | text    |
| rate             | integer |
| created\_at      | date    |
| upvotes\_count   | integer |
| downvotes\_count | integer |
| third\_party     | boolean |
| user             | json    |
| sale\_item       | json    |
| recommends       | text    |
| review\_photos   | json    |
| sale             | json    |
| comments         | json    |
| links            | json    |

### product\_opinions\_overview

Sync type availability: Full-refresh

Child of [products](#products)

| Field                         | Type    |
| ----------------------------- | ------- |
| rate                          | json    |
| top\_rated\_opinion           | json    |
| top\_rated\_negative\_opinion | json    |
| opinions\_count               | json    |
| questions\_count              | integer |
| clickable\_logo               | boolean |
| store\_rate                   | json    |
| overall\_opinions\_rate       | json    |
| features                      | json    |
| store\_name                   | text    |
| raw\_store\_name              | text    |
| store\_locale                 | text    |
| prefetched\_opinions          | json    |
| prefetched\_questions         | json    |
| items                         | json    |
| links                         | json    |

### product\_question\_suggestions

Sync type availability: Full-refresh

Child of [products](#products)

| Field        | Type    |
| ------------ | ------- |
| answer       | text    |
| answered\_at | date    |
| id           | integer |
| links        | json    |
| origin       | text    |
| question     | text    |

### product\_questions

Sync type availability: Full-refresh

Child of [products](#products)

| Field        | Type    |
| ------------ | ------- |
| question     | text    |
| id           | integer |
| origin       | text    |
| answer       | text    |
| answered\_at | date    |
| links        | json    |

### product\_rate

Sync type availability: Full-refresh

Child of [products](#products)

| Field         | Type    |
| ------------- | ------- |
| product\_code | text    |
| average       | float   |
| count         | integer |
| product\_name | text    |

### product\_recommendation\_summary

Sync type availability: Full-refresh

Child of [products](#products)

| Field              | Type    |
| ------------------ | ------- |
| averageAnswerCount | integer |
| percentage         | float   |

### product\_survey\_answers\_summary

Sync type availability: Full-refresh

Child of [products](#products)

| Field             | Type    |
| ----------------- | ------- |
| average           | float   |
| description       | text    |
| options           | json    |
| totalAnswersCount | integer |

### product\_survey\_question\_summaries

Sync type availability: Full-refresh

Child of [products](#products)

| Field       | Type    |
| ----------- | ------- |
| description | text    |
| id          | integer |
| kind        | text    |
| options     | json    |

### products

Sync type availability: Full-refresh

Parent of [product\_by\_code](#product_by_code), [product\_opinions](#product_opinions), [product\_opinions\_overview](#product_opinions_overview), [product\_question\_suggestions](#product_question_suggestions), [product\_questions](#product_questions), [product\_rate](#product_rate), [product\_recommendation\_summary](#product_recommendation_summary), [product\_survey\_answers\_summary](#product_survey_answers_summary), [product\_survey\_question\_summaries](#product_survey_question_summaries)

| Field             | Type    |
| ----------------- | ------- |
| id                | text    |
| name              | text    |
| average\_rate     | text    |
| total\_recommends | integer |
| total\_opinions   | integer |
| ean               | json    |
| opinions          | json    |
| links             | json    |

### questions

Sync type availability: Full and incremental refresh

[Cursor](https://docs.erathos.com/platform/connections/sync-types#understanding-cursors): `updated_at`

| Field       | Type      | Cursor |
| ----------- | --------- | ------ |
| id          | integer   |        |
| text        | text      |        |
| created\_at | timestamp |        |
| updated\_at | timestamp | ✓      |
| visible     | boolean   |        |
| state       | text      |        |
| consumer    | json      |        |
| product     | json      |        |
| answer      | json      |        |

### seller\_detail

Sync type availability: Full-refresh

Child of [sellers](#sellers)

| Field           | Type      |
| --------------- | --------- |
| id              | integer   |
| name            | text      |
| store\_id       | integer   |
| external\_id    | text      |
| created\_at     | timestamp |
| updated\_at     | timestamp |
| average\_rate   | float     |
| total\_opinions | integer   |
| photo\_url      | text      |
| nps             | json      |
| histogram       | json      |
| summaries       | json      |

### seller\_reviews

Sync type availability: Full-refresh

| Field       | Type      |
| ----------- | --------- |
| id          | integer   |
| rate        | integer   |
| text        | text      |
| client\_id  | integer   |
| sale\_id    | integer   |
| seller\_id  | integer   |
| created\_at | timestamp |
| updated\_at | timestamp |
| seller      | json      |
| client      | json      |

### sellers

Sync type availability: Full-refresh

Parent of [seller\_detail](#seller_detail)

| Field        | Type      |
| ------------ | --------- |
| id           | integer   |
| name         | text      |
| store\_id    | integer   |
| external\_id | text      |
| created\_at  | timestamp |
| updated\_at  | timestamp |
| photo\_url   | text      |

### store\_by\_url

Sync type availability: Full-refresh

| Field        | Type      |
| ------------ | --------- |
| id           | integer   |
| name         | text      |
| created\_at  | timestamp |
| cnpj         | text      |
| store\_token | text      |
| links        | json      |

### store\_reviews

Sync type availability: Full-refresh

| Field       | Type      |
| ----------- | --------- |
| id          | integer   |
| text        | text      |
| rate        | integer   |
| created\_at | timestamp |
| client      | json      |

### tags

Sync type availability: Full-refresh

| Field | Type    |
| ----- | ------- |
| id    | integer |
| name  | text    |

## Entity Relationships

```mermaid
erDiagram
    products ||--o{ product_by_code : "id = _pk_products"
    products ||--o{ product_opinions : "id = _pk_products"
    products ||--o{ product_opinions_overview : "id = _pk_products"
    products ||--o{ product_question_suggestions : "id = _pk_products"
    products ||--o{ product_questions : "id = _pk_products"
    products ||--o{ product_rate : "id = _pk_products"
    products ||--o{ product_recommendation_summary : "id = _pk_products"
    products ||--o{ product_survey_answers_summary : "id = _pk_products"
    products ||--o{ product_survey_question_summaries : "id = _pk_products"
    sellers ||--o{ seller_detail : "id = _pk_sellers"
    sellers ||--o{ seller_reviews : "id = seller_id"

    opinions {
        text id PK
    }
    orders {
        integer id PK
    }
    products {
        text id PK
    }
    product_by_code {
        text _pk_products PK
        integer product_id PK
    }
    product_opinions {
        text _pk_products PK
        integer id PK
    }
    product_opinions_overview {
        text _pk_products PK
    }
    product_question_suggestions {
        text _pk_products PK
        integer id PK
    }
    product_questions {
        text _pk_products PK
        integer id PK
    }
    product_rate {
        text _pk_products PK
        text product_code PK
    }
    product_recommendation_summary {
        text _pk_products PK
    }
    product_survey_answers_summary {
        text _pk_products PK
    }
    product_survey_question_summaries {
        text _pk_products PK
        integer id PK
    }
    questions {
        integer id PK
    }
    seller_detail {
        text _pk_sellers PK
        integer id PK
    }
    seller_reviews {
        integer id PK
    }
    sellers {
        integer id PK
    }
    store_by_url {
        integer id PK
    }
    store_reviews {
        integer id PK
    }
    tags {
        integer id PK
    }
```
