Replace a structure set
PUT /api/v1/structure-sets/{id}
https://app.tanba-ooh.kz/api/v1/structure-sets/{id}
Технический текст справочника написан на английском.
Scope write:submissions. Replaces the name and the structures. Submissions already created keep the structures they expanded to.
Аутентификация
Ключ API в заголовке Authorization или сессия консоли.
Право доступа: write:submissions
Параметры
| Имя | Где | Тип | Обязательный | Описание | Пример |
|---|---|---|---|---|---|
id | путь | string (uuid) | да | Id of the set. | 5d3f3e0a-2a53-4b3c-8d0a-6f63b4d9a111 |
Тело запроса
application/json
StructureSetInput
| Имя | Тип | Обязательный | Описание | Пример |
|---|---|---|---|---|
name | string | да | Name, unique within the organisation. | "Almaty city boards" |
structure_ids | array of string (uuid) | да | Structures of the set; repeats are dropped. | ["0b6f9d0e-6c1e-4a6a-9d55-0f8a6a6f3c11"] |
Пример
{
"name": "Almaty city boards",
"structure_ids": [
"0b6f9d0e-6c1e-4a6a-9d55-0f8a6a6f3c11"
]
}
Ответы
200 The updated set.
application/json
StructureSet
| Имя | Тип | Обязательный | Описание | Пример |
|---|---|---|---|---|
id | string (uuid) | да | Id of the set. | "5d3f3e0a-2a53-4b3c-8d0a-6f63b4d9a111" |
name | string | да | Name, unique within the organisation. | "Almaty city boards" |
structure_ids | array of string (uuid) | да | Structures of the set in the order given. | ["0b6f9d0e-6c1e-4a6a-9d55-0f8a6a6f3c11"] |
created_at | string | да | When the set was saved first. | "2026-10-14T10:00:00+05:00" |
updated_at | string | да | When the set was last changed. | "2026-10-14T10:00:00+05:00" |
Пример
{
"id": "5d3f3e0a-2a53-4b3c-8d0a-6f63b4d9a111",
"name": "Almaty city boards",
"structure_ids": [
"0b6f9d0e-6c1e-4a6a-9d55-0f8a6a6f3c11"
],
"created_at": "2026-10-14T10:00:00+05:00",
"updated_at": "2026-10-14T10:00:00+05:00"
}
Ошибки
Ошибки приходят документом problem (application/problem+json) со стабильным полем code.
| Статус | Значение |
|---|---|
| 401 | Нет действительной сессии или ключа API (unauthenticated, session_expired, invalid_api_key). |
| 403 | Роль или право ключа этого не допускает (forbidden, key_scope_denied, key_route_denied). |
| 404 | Ничего нет или вызывающему это не видно. |
| 409 | Ошибка в виде документа problem. |
| 422 | Ошибки полей (validation_failed). |
| default | Ошибка в виде документа problem. |
Примеры кода
curl
curl -X PUT 'https://app.tanba-ooh.kz/api/v1/structure-sets/5d3f3e0a-2a53-4b3c-8d0a-6f63b4d9a111' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"name": "Almaty city boards",
"structure_ids": [
"0b6f9d0e-6c1e-4a6a-9d55-0f8a6a6f3c11"
]
}'
Python
import requests
response = requests.put(
"https://app.tanba-ooh.kz/api/v1/structure-sets/5d3f3e0a-2a53-4b3c-8d0a-6f63b4d9a111",
headers={
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json",
},
json={
"name": "Almaty city boards",
"structure_ids": [
"0b6f9d0e-6c1e-4a6a-9d55-0f8a6a6f3c11",
],
},
)
print(response.status_code, response.text)
Go
package main
import (
"fmt"
"io"
"net/http"
"strings"
)
func main() {
body := strings.NewReader(`{
"name": "Almaty city boards",
"structure_ids": [
"0b6f9d0e-6c1e-4a6a-9d55-0f8a6a6f3c11"
]
}`)
req, err := http.NewRequest("PUT", "https://app.tanba-ooh.kz/api/v1/structure-sets/5d3f3e0a-2a53-4b3c-8d0a-6f63b4d9a111", body)
if err != nil {
panic(err)
}
req.Header.Set("Authorization", "Bearer YOUR_API_KEY")
req.Header.Set("Content-Type", "application/json")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
data, _ := io.ReadAll(resp.Body)
fmt.Println(resp.Status, string(data))
}