---
title: "Connect Servicetitan"
method: POST
path: "/api/integrations/servicetitan/connect"
---

# Connect Servicetitan

`POST /api/integrations/servicetitan/connect`

Validate ServiceTitan client credentials and persist them.

## Request body

- ServiceTitanConnectRequest — The three values from ServiceTitan's API Application Access page. ``client_secret`` is a ``SecretStr`` so it is masked in logs/reprs and marked write-only in the OpenAPI schema; the value still arrives as a plain JSON string from the client.
  - `tenant_id` string, required
  - `client_id` string, required
  - `client_secret` string, password, required

## Response `200`

Successful Response

- IntegrationConnectionResponse — Result of a connect/disconnect on a web-form integration.
  - `integration` string, required
  - `connected` boolean, required

## Other responses

- `422` — Validation Error

## Changes

- **2026-06-04** `612d1627a573` — 1 info
  - endpoint added
- **2026-03-20** `4c528359213d` — 1 breaking
  - api path removed without deprecation

[Change history](https://skmtc.dev/mozilla-ai/apis/clawbolt/changes/api/integrations/servicetitan/connect/post.md)

---

[API](https://skmtc.dev/mozilla-ai/apis/clawbolt.md) · [All operations](https://skmtc.dev/mozilla-ai/apis/clawbolt/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/mozilla-ai/clawbolt/revisions/579c110de1b8/schema)
