# rotateSiteSecret

Source: <https://telegafirst.com/docs/api-op-rotatesitesecret>
Locale: ru
releaseGitSha: ea133cd4ad87fe549ef000b139be145be9bd1717
sourceContentDigest: f2ff7eb8a9ac377e834453ee913bb1ccdfbde74f93f5a2e28fb77a26b99a2006
Version: 2

# rotateSiteSecret

`PUT /api/v1/tools/site/secrets/{name}`

Request approval or rotate a stored secret

## Авторизация и права

Scopes: ALL. Auth alternatives: OR; scopes внутри альтернативы: ALL.

| Поле | Значение |
| - | - |
| security.0.hubApiKey | \[] |
| security.1.hubBearer | \[] |
| securitySchemes.hubApiKey.in | "header" |
| securitySchemes.hubApiKey.name | "X-Api-Key" |
| securitySchemes.hubApiKey.type | "apiKey" |
| securitySchemes.hubBearer.scheme | "bearer" |
| securitySchemes.hubBearer.type | "http" |
| x-required-scopes | \["site:write"] |

## Параметры запроса

| Поле | Значение |
| - | - |
| 0.description | "Tenant, credential and handler-bound byte-shape replay key" |
| 0.in | "header" |
| 0.name | "Idempotency-Key" |
| 0.required | false |
| 0.schema | [0.schema](https://telegafirst.com/docs/schema-9ac136edb99a2063b3091602181c8d2022fdccb5b514991319d58544c2e57e95) |
| 1.in | "path" |
| 1.name | "name" |
| 1.required | true |
| 1.schema | [1.schema](https://telegafirst.com/docs/schema-7e21cd524d02448eb3dc6f924ec7c947a8ee58ced146fdaf3e7ee68a47ec9238) |

## Тело запроса

| Поле | Значение |
| - | - |
| content.application/json.schema | [SiteSecretRotateRequest](https://telegafirst.com/docs/schema-906e60edafcaf6a6f2c1b682a623c379d34c78e8e0c1e3595ee3f87bde2cafce) |
| required | true |

## Ответы

| Поле | Значение |
| - | - |
| 200.content.application/json.schema | [SiteSecretMutation](https://telegafirst.com/docs/schema-709443248a56d49cc5a17798bcef1e4ddf8a27f7cdbacb44ae51df54cb8b0921) |
| 200.description | "Tenant site control-plane result" |
| 200.headers.X-Bot-Username.description | "Active bot username, when resolved" |
| 200.headers.X-Bot-Username.schema | [200.headers.X-Bot-Username.schema](https://telegafirst.com/docs/schema-00404e686415370f1711c4d7acfa2905444d3cf23cef2e10c47d445ebe690f96) |
| 200.headers.X-Client-Slug.description | "Active tenant slug, when resolved" |
| 200.headers.X-Client-Slug.schema | [200.headers.X-Client-Slug.schema](https://telegafirst.com/docs/schema-00404e686415370f1711c4d7acfa2905444d3cf23cef2e10c47d445ebe690f96) |
| 200.headers.X-RateLimit-Limit.description | "Effective request budget" |
| 200.headers.X-RateLimit-Limit.schema | [200.headers.X-RateLimit-Limit.schema](https://telegafirst.com/docs/schema-00404e686415370f1711c4d7acfa2905444d3cf23cef2e10c47d445ebe690f96) |
| 200.headers.X-RateLimit-Remaining.description | "Remaining request budget" |
| 200.headers.X-RateLimit-Remaining.schema | [200.headers.X-RateLimit-Remaining.schema](https://telegafirst.com/docs/schema-00404e686415370f1711c4d7acfa2905444d3cf23cef2e10c47d445ebe690f96) |
| 200.headers.X-RateLimit-Reset.description | "Unix window reset in seconds" |
| 200.headers.X-RateLimit-Reset.schema | [200.headers.X-RateLimit-Reset.schema](https://telegafirst.com/docs/schema-00404e686415370f1711c4d7acfa2905444d3cf23cef2e10c47d445ebe690f96) |

## Ошибки

| Поле | Значение |
| - | - |
| 400.content.application/problem+json.schema | [ProblemDetails](https://telegafirst.com/docs/schema-c4113f3de00d728702a8663612e2074cbe3e8b3bb70d2b0dee6f3503fe89bd41) |
| 400.description | "Invalid name, strict value body or approval UUID" |
| 400.x-error-codes | \["VALIDATION\_ERROR"] |
| 401.content.application/problem+json.schema | [ProblemDetails](https://telegafirst.com/docs/schema-c4113f3de00d728702a8663612e2074cbe3e8b3bb70d2b0dee6f3503fe89bd41) |
| 401.description | "Missing, invalid, revoked or conflicting credential; surface JWT is refused" |
| 401.x-error-codes | \["INVALID\_API\_KEY"] |
| 403.content.application/problem+json.schema | [ProblemDetails](https://telegafirst.com/docs/schema-c4113f3de00d728702a8663612e2074cbe3e8b3bb70d2b0dee6f3503fe89bd41) |
| 403.description | "Missing scope, prohibited publishable credential, missing active bot or refused owner approval" |
| 403.x-error-codes | \["INSUFFICIENT\_SCOPE","PUBLISHABLE\_KEY\_NOT\_ALLOWED","NO\_ACTIVE\_BOT","FORBIDDEN"] |
| 404.content.application/problem+json.schema | [ProblemDetails](https://telegafirst.com/docs/schema-c4113f3de00d728702a8663612e2074cbe3e8b3bb70d2b0dee6f3503fe89bd41) |
| 404.description | "No live tenant secret by this name" |
| 404.x-error-codes | \["NOT\_FOUND"] |
| 409.content.application/problem+json.schema | [ProblemDetails](https://telegafirst.com/docs/schema-c4113f3de00d728702a8663612e2074cbe3e8b3bb70d2b0dee6f3503fe89bd41) |
| 409.description | "Typed domain conflict or request in flight" |
| 409.x-error-codes | \["CONFLICT"] |
| 413.content.application/problem+json.schema | [ProblemDetails](https://telegafirst.com/docs/schema-c4113f3de00d728702a8663612e2074cbe3e8b3bb70d2b0dee6f3503fe89bd41) |
| 413.description | "Resource policy size or item-count limit exceeded" |
| 413.x-error-codes | \["PAYLOAD\_TOO\_LARGE","ITEM\_COUNT\_EXCEEDED"] |
| 422.content.application/problem+json.schema | [ProblemDetails](https://telegafirst.com/docs/schema-c4113f3de00d728702a8663612e2074cbe3e8b3bb70d2b0dee6f3503fe89bd41) |
| 422.description | "Replay key reused for different input" |
| 422.x-error-codes | \["IDEMPOTENCY\_KEY\_MISMATCH"] |
| 429.content.application/problem+json.schema | [ProblemDetails](https://telegafirst.com/docs/schema-c4113f3de00d728702a8663612e2074cbe3e8b3bb70d2b0dee6f3503fe89bd41) |
| 429.description | "Resource rate budget exceeded or unavailable" |
| 429.headers.Retry-After.description | "Retry delay in seconds, when supplied by the limiter" |
| 429.headers.Retry-After.schema | [429.headers.Retry-After.schema](https://telegafirst.com/docs/schema-00404e686415370f1711c4d7acfa2905444d3cf23cef2e10c47d445ebe690f96) |
| 429.x-error-codes | \["RATE\_LIMIT\_EXCEEDED","RATE\_LIMIT\_UNAVAILABLE"] |
| 500.content.application/problem+json.schema | [ProblemDetails](https://telegafirst.com/docs/schema-c4113f3de00d728702a8663612e2074cbe3e8b3bb70d2b0dee6f3503fe89bd41) |
| 500.description | "Unexpected internal failure" |
| 500.x-error-codes | \["INTERNAL\_ERROR"] |

## Дополнительные условия

| Поле | Значение |
| - | - |
| description | "Owner-only site:write. Name is immutable path address; strict body contains value and optional UUID action\_id. Without action\_id return pending\_approval; after owner confirmation repeat with action\_id and value. Returns only name/timestamps. Idempotency-Key is optional for PUT; use separate keys for approval and execution legs." |
| operationId | "rotateSiteSecret" |
| summary | "Request approval or rotate a stored secret" |
| tags | \["site"] |
| x-idempotency.conflictStatus | 422 |
| x-idempotency.implementation | "global-cache" |
| x-idempotency.replayStatus | 200 |
| x-idempotency.required | false |
| x-idempotency.scope | \["client","credential","controller-handler","key"] |
| x-idempotency.ttlSeconds | 86400 |
| x-pagination.queryParameters | \[] |
| x-pagination.supported | false |
| x-scope-semantics | "ALL" |
