API de vídeosGuias
Atualizar chamadas para ação
Crie, edite e exclua os CTAs que aparecem sobre ou abaixo do vídeo.
call_actions traz um interruptor do recurso, enabled, acima da lista items que ele
controla. A lista é mesclada por item: um item com um id altera esse CTA, um
item sem ele cria um CTA novo, e um item com "_destroy": true o exclui. Os
CTAs que você não mencionar ficam como estão.
Isto é um merge-patch: envie só as chaves que você quer alterar, e todo o resto mantém o valor salvo.
Edite um CTA, crie outro, exclua um terceiro
curl -X PATCH https://api.vturb.com/v1/videos/{id} \
-H "Authorization: Bearer vt_..." \
-H "Content-Type: application/json" \
-d '{ "call_actions": {
"enabled": true,
"items": [
{ "id": "66f2...", "window": { "start": 30 } },
{ "base": { "name": "Buy now", "type": "outside_video", "active": true },
"window": { "start": 60, "end": 120 } },
{ "id": "66f3...", "_destroy": true }
]
} }'O interruptor do recurso
| Chave | Tipo | Define |
|---|---|---|
enabled | booleano | Liga ou desliga o recurso de CTA inteiro (fica ao lado de items) |
As chaves do item (dentro de items)
| Chave | Tipo | Define |
|---|---|---|
id | string | Aponta para um CTA existente; omita para criar um |
_destroy | booleano | true exclui o CTA para o qual o id aponta |
base.name | string | Rótulo interno — só é aceito quando action.as_html ou image_as_button está definido; em um botão de texto, o content é o rótulo |
base.type | string | inside_video (sobre o player) ou outside_video (abaixo dele) |
base.active | booleano | Liga ou desliga o CTA |
window.start | inteiro | Segundo em que o CTA aparece |
window.end | inteiro | Segundo em que o CTA desaparece |
window.persist_on_video_end | booleano | Mantém o CTA visível depois que o vídeo termina |
action.content | string | Texto do rótulo do botão (o caminho estruturado, sem HTML) |
action.url | string | URL http(s) que o CTA abre |
action.open_in_new_tab | booleano | Abre a URL em uma nova aba |
action.html | string | HTML personalizado que o CTA renderiza (exige action.as_html) |
action.as_html | booleano | Trata o conteúdo como HTML bruto |
design.typography | objeto | Fonte de um botão de texto: family, letter_spacing, line_height, size, weight |
design.styles | objeto | Aparência de um botão de texto: as cores, border_radius, padding, shadow |
Um botão de texto (sem action.as_html, sem image_as_button) exige action.content,
action.url e um design.typography + design.styles completos. Dentro de um item, o
merge continua raso por grupo: alterar window.start não mexe em window.end.