---
title: "Upsert Tenant Sms Config"
method: PUT
path: "/sms_config_admin/tenants/{tenant_id}"
tags: ["sms_config_admin"]
---

# Upsert Tenant Sms Config

`PUT /sms_config_admin/tenants/{tenant_id}`

Create or update SMS configuration for a tenant.

## Path parameters

- `tenant_id` string, uuid, required

## Request body

- SMSConfigCreate — Request model for creating/updating tenant SMS configuration.
  - `provider` 'surge' | 'twilio', required — SMS provider: 'surge' for US, 'twilio' for international
  - `twilio_messaging_service_sid` string, nullable — Twilio Messaging Service SID (required for twilio provider)
  - `twilio_account_sid` string, nullable — Twilio Account SID (required for twilio provider)
  - `twilio_auth_token` string, nullable — Twilio Auth Token (required for twilio provider)
  - `surge_account_id` string, nullable — Optional custom Surge account ID

## Response `200`

Successful Response

- SMSConfigRead — Response model for tenant SMS configuration.
  - `tenant_id` string, uuid, required
  - `provider` 'surge' | 'twilio', required
  - `twilio_messaging_service_sid` string, nullable
  - `twilio_account_sid_set` boolean
  - `surge_account_id` string, nullable
  - `status` 'pending' | 'active' | 'expired' | 'revoked', required

## Other responses

- `422` — Validation Error

## Changes

> 26 revisions in range; 1 not diffed.

- **2026-09-03** `d65b8fefae34` — 2 info
  - added the optional property `detail/items/ctx` to the response with the `422` status
  - added the optional property `detail/items/input` to the response with the `422` status

[Change history](https://skmtc.dev/getanana/apis/cleon-api/changes/sms_config_admin/tenants/:tenant_id/put.md)

---

[API](https://skmtc.dev/getanana/apis/cleon-api.md) · [All operations](https://skmtc.dev/getanana/apis/cleon-api/llms.txt) · [OpenAPI document](https://skmtc.dev/getanana/apis/cleon-api/revisions/4df7b22a7dae?raw)
