---
title: "Provision Opinion credentials and set the USDT allowance"
method: POST
path: "/exchanges/opinion/enable-trading"
tags: ["Onboarding"]
---

# Provision Opinion credentials and set the USDT allowance

`POST /exchanges/opinion/enable-trading`

## Request

- Base URL: `https://execution.kairos.trade`
- URL: `https://execution.kairos.trade/exchanges/opinion/enable-trading`
- Auth: API key in header `X-Client-Id` and API key in header `X-Api-Key` and API key in header `X-Api-Secret`

One-time onboarding for Opinion: auto-provisions Opinion API credentials through their builder API, encrypts and stores them, then sets the USDT allowance on BSC (gas-sponsored).
**Known recovery case.** If Opinion already has the wallet on file but Kairos has lost the original API key, and Opinion's recovery endpoint is unavailable, the call returns `400` with `error_details.code = AUTH_CREDENTIALS_NOT_FOUND` and actions pointing at Kairos support (email + Discord). That state cannot be resolved by retrying — the Opinion account must be reset manually.
**Auth & scope.** Requires `trade:execute` for `opinion`, wallet ownership, the mutation gate, and a current Turnkey policy version.

## Request body

- OrderOpinionEnableTradingRequest
  - `wallet_address` string, required

## Response `200`

Credentials provisioned and USDT approved.

- OrderOpinionEnableTradingResponse
  - `success` boolean, required
  - `message` string, required
  - `usdt_tx_hash` string: OMITTED entirely (not null) when no USDT approval was needed.

## Other responses

- `400`: `ValidationInvalidOrder` — invalid user id; or `AuthCredentialsNotFound` — the manual-reset recovery case described above.
- `401`: No valid credential presented — missing/invalid API-key headers or an invalid/expired session token.
- `403`: Missing `trade:execute` scope, API-key access to `opinion` disabled, wallet not owned by the caller, or installed Turnkey policies behind the required version (`AUTH_POLICY_OUTDATED`).
- `500`: `DatabaseError`, or credential provisioning / the allowance transaction failed.
- `503`: API-key access to `opinion` could not be checked (fails closed).

---

[API](https://skmtc.dev/kairos/apis/kairos-order-execution-api.md) - [All operations](https://skmtc.dev/kairos/apis/kairos-order-execution-api/llms.txt) - [OpenAPI document](https://skmtc.dev/kairos/apis/kairos-order-execution-api/revisions/9ba7d463d505?raw)
