hosting

PUT /v1/sites/{siteId}/media-offload

Turn media offload on for a site, or change how it behaves.

Все эндпоинты hosting

Вся документация для разработчиков

Аутентификация

Отправьте ключ API в качестве токена носителя (bearer token). Ключ должен иметь разрешение storage.manage; ключ без него отклоняется с кодом 403, а не 404.

Этот эндпоинт не принимает идентификатор организации. Ваш ключ уже определяет организацию, к которой он принадлежит, и ответ ограничивается ее рамками.

Попробовать

Замените всё в угловых скобках на собственные значения, а плейсхолдер ключа — на ключ из вашей панели управления.

curl -X PUT https://api.zinndigital.com/v1/sites/{siteId}/media-offload \
  -H "Authorization: Bearer zdk_live_…" \
  -H "Content-Type: application/json" \
  -d '{  }'

Вошли в систему? Консоль API в вашей панели управления автоматически подставляет реальный идентификатор вашей организации и ваш собственный ключ, а также выполняет запрос к работающему API, чтобы вы могли увидеть актуальный ответ. Откройте эту конечную точку в API-консоли

Подробнее

Creates the offload configuration if it does not exist, provisioning storage for the organisation on first use — "turn on media offload" is what the customer wants, and a bucket is our word for part of how we do it. Moving an offload that is already live to a different bucket answers 422. The objects already written stay where they are, so the switch would leave the site serving half its media from a bucket the configuration no longer names, and nothing would report it because new uploads would keep succeeding. Requires storage.manage.

Параметры

ИмяТипОбязательноЧто это
siteId (path)UuidДаSite ID (UUIDv7).

Тело запроса

ИмяТипОбязательноЧто это
bucket_idstringНетWhich bucket to use. Omit to use the organisation's own, provisioning one on first use. Changing this on a live offload is refused.
enabledbooleanНетPause or resume a paired site. Ignored before the plugin has paired.
rewrite_urlsbooleanНет
delete_localbooleanНет
prefixstringНет
custom_domainstringНетA media domain of the site's own, replacing the shared Zinn® hostname. Must be https:// and a bare domain with no path. Send "" to clear it. Required to turn on URL rewriting…

Ответ

ИмяТипОбязательноЧто это
configuredbooleanДаfalse when this site has no offload set up. The rest of the fields are then absent — except plan, which is present in both states on purpose.
planMediaStorageTermsНетWhat this site's organisation gets included for media storage, what it is using, and what more would cost. Present on every media-offload response, including…
idstringНет
site_idstringНет
bucket_idstringНет
statusstring<awaiting_pairing, active, paused, revoked>Нет
prefixstringНетThe key prefix this site's objects live under.
rewrite_urlsbooleanНетWhether the plugin points media URLs at the bucket. Off means "upload a copy but keep serving locally", which is how a cautious customer migrates.
delete_localbooleanНетWhether the plugin removes the local file after a confirmed upload. Defaults to off, and even when on the plugin refuses to delete after a partial upload.
custom_domainstringНетThe site's OWN media domain, as the customer typed it, or "". This is what belongs in the settings input box. See public_base_url for where media is actually served from — the…
public_base_urlstringНетWhere this site's media is actually served from, after the site's own domain, the footprint rule and the bucket's shared hostname have been resolved. "" means no URL is…
needs_custom_domainbooleanНетtrue when this site is serving media locally only because it has no media domain of its own — a footprint-free site awaiting a CNAME. Distinguishes the one…
accepts_uploadsbooleanНетWhether the plugin may currently upload. Requires both an active offload and a usable bucket.
pairedbooleanНетWhether a plugin token has been issued. The token and its hash are never returned.
plugin_versionstringНет
last_seen_atstringНетWhen the plugin last called. null means it never has.
objects_offloadedintegerНетWhat the plugin reports it has moved. A diagnostic for the screen, never an input to billing — storage is metered by measuring the bucket.
bytes_offloadedintegerНет
created_atstringНет

Ошибки, которые может возвращать этот эндпоинт

401 · 403 · 404 · 422 · 429