---
title: "Initiate KYC terms of service"
method: POST
path: "/v1/users/{user_id}/kyc/tos"
tags: ["Fiat"]
---

# Initiate KYC terms of service

`POST /v1/users/{user_id}/kyc/tos`

## Request

- Base URL: `https://api.privy.io`
- URL: `https://api.privy.io/v1/users/{user_id}/kyc/tos`
- Auth: HTTP basic

Generates a Bridge terms-of-service acceptance link for the user.

## Path parameters

- `user_id` string, required: The ID of the user.

## Headers

- `privy-app-id` string, required: ID of your Privy app.

## Request body

- KyxTosRequestBody: Request body for initiating Terms of Service acceptance.
  - `provider` 'bridge', required: KYC/KYB provider identifier.
  - `environment` 'production' | 'sandbox': Provider environment (production or sandbox).
  - `email` string, email: Email for the user. If not provided, falls back to the user's linked email.

## Response `200`

Terms of service link and current acceptance status.

- KyxTosResponse: Response containing a Terms of Service link.
  - `provider` 'bridge', required: KYC/KYB provider identifier.
  - `environment` 'production' | 'sandbox', required: Provider environment (production or sandbox).
  - `status` string, required: Status of Terms of Service acceptance. Passthrough from the provider.
  - `link` string, uri, required: URL for the Terms of Service acceptance page.

## Changes

- **2026-10-16** `4facbfa7f9d4`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/privy-io/apis/privy-api/changes/v1/users/:user_id/kyc/tos/post.md)

---

[API](https://skmtc.dev/privy-io/apis/privy-api.md) - [All operations](https://skmtc.dev/privy-io/apis/privy-api/llms.txt) - [OpenAPI document](https://skmtc.dev/privy-io/apis/privy-api/revisions/3a2288470053?raw)
