Manual Remotion

# Remotion Render Server — API Reference

**Base URL**: `http://remotion:18806` (internal) or `https://remotion.stratia.app.br` (external)

## Authentication

No authentication required for internal calls. External access should go through the reverse proxy.

---

## Endpoints

### Health Check

```
GET /health
```

**Response**:
```json
{
  "status": "ok",
  "bundleReady": true,
  "templatesLoaded": true,
  "templateCount": 44,
  "brandCount": 4,
  "activeJobs": 0,
  "totalJobs": 5
}
```

---

### List Brands

```
GET /brands
```

Returns all 4 brand presets with colors, fonts, logos.

**Response**: `BrandPreset[]`

---

### List Templates

```
GET /templates
GET /templates?brandId=investiza
```

**Query Parameters**:
| Param | Type | Description |
|-------|------|-------------|
| `brandId` | string | Filter by brand: `henriquenapoles`, `investiza`, `navigo`, `ciadosorriso` |

**Response**: Array of template summaries:
```json
[
  {
    "id": "inv_dinheiro_na_mesa",
    "brandId": "investiza",
    "name": "Dinheiro na Mesa",
    "description": "Barras comparativas + apresentador",
    "category": "dados",
    "requiredProps": ["videoUrl", "subtitles", "hookValue", "hookText", "chartItems", "ctaText"],
    "optionalProps": ["subtitleStyle", "music"]
  }
]
```

---

### Get Template Details

```
GET /templates/:id
```

Returns the full template including segment definitions and example payload.

**Response**: Full `TemplatePreset` object with `examplePayload`.

---

### Start a Render (Template-Based)

```
POST /renders
Content-Type: application/json
```

**Request Body** (template mode):
```json
{
  "templateId": "inv_dinheiro_na_mesa",
  "templateProps": {
    "videoUrl": "https://storage.example.com/video.mp4",
    "subtitles": [
      {"start": 0, "end": 3, "text": "Você está deixando dinheiro na mesa"}
    ],
    "hookValue": 500000,
    "hookText": "Valor médio não captado",
    "chartItems": [
      {"label": "Empresa A", "value": 500000, "color": "#00C2A8"},
      {"label": "Empresa B", "value": 200000}
    ],
    "ctaText": "Fale com um especialista"
  }
}
```

**Request Body** (raw mode — existing behavior):
```json
{
  "compositionId": "VideoFactory",
  "inputProps": {
    "format": "9:16",
    "segments": [...],
    "globalStyle": {...}
  }
}
```

**Response** (202 Accepted):
```json
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "status": "queued",
  "compositionId": "VideoFactory",
  "templateId": "inv_dinheiro_na_mesa"
}
```

**Validation Error** (400):
```json
{
  "error": "Missing required props: videoUrl, subtitles",
  "requiredProps": ["videoUrl", "subtitles", "hookValue", "hookText", "chartItems", "ctaText"],
  "examplePayload": {...}
}
```

---

### Check Render Status

```
GET /renders/:id
```

**Response**:
```json
{
  "id": "550e8400-...",
  "compositionId": "VideoFactory",
  "templateId": "inv_dinheiro_na_mesa",
  "status": "rendering",
  "progress": 45,
  "createdAt": "2026-03-13T12:00:00.000Z",
  "error": null
}
```

Status values: `queued` → `rendering` → `done` (or `error`)

---

### Download Rendered Video

```
GET /renders/:id/output
```

Returns the video file (mp4). Only available when status is `done`.

---

### Delete Render Job

```
DELETE /renders/:id
```

Removes the job and deletes the output file.

---

## Render Flow for AI Agents

1. **Choose template**: `GET /templates?brandId=investiza` → pick one
2. **Check requirements**: `GET /templates/inv_dinheiro_na_mesa` → read `requiredProps` and `examplePayload`
3. **Submit render**: `POST /renders` with `templateId` + `templateProps`
4. **Poll status**: `GET /renders/:id` until `status === 'done'`
5. **Download**: `GET /renders/:id/output`

### "Simple" Templates

Templates ending in `_simple` (e.g., `hnap_simple`, `inv_simple`) use a special resolution mode:
- Pass `videoUrl`, `subtitles`, `duration`
- Optionally pass `brolls[]` to interleave b-roll clips
- The system auto-generates `talking_head ↔ broll` alternating segments
- Subtitles continue over b-rolls seamlessly

```json
{
  "templateId": "inv_simple",
  "templateProps": {
    "videoUrl": "https://storage.example.com/henrique-talking.mp4",
    "subtitles": [...],
    "duration": 60,
    "brolls": [
      {"mediaUrl": "https://storage.example.com/office.mp4", "startAt": 8, "duration": 4},
      {"mediaUrl": "https://storage.example.com/chart.png", "startAt": 20, "duration": 3, "effect": "ken_burns"}
    ]
  }
}
```

---

## Segment Types Reference

| Type | Key Props | Duration Calc |
|------|-----------|---------------|
| `hook` | `template`, `text`, `duration` | `duration` (seconds) |
| `talking_head` | `videoUrl`, `subtitles`, `startTime`, `endTime` | `endTime - startTime` |
| `broll` | `mediaUrl`, `effect`, `duration` | `duration` (seconds) |
| `dataviz` | `template`, `items/value`, `duration` | `duration` (seconds) |
| `cta` | `template`, `text`, `duration` | `duration` (seconds) |
| `overlay` | `template`, `videoUrl` (optional), `duration` | `duration` (seconds) |
| `versus` | `template`, `leftLabel`, `rightLabel`, `duration` | `duration` (seconds) |
| `timeline` | `steps[]`, `duration` | `duration` (seconds) |
| `reveal` | `template`, `beforeImage/afterImage`, `duration` | `duration` (seconds) |
| `showcase` | `template`, `logos/testimonial`, `duration` | `duration` (seconds) |
| `interactive` | `template`, `question/options`, `duration` | `duration` (seconds) |

---

## Rate Limits

- Max concurrent renders: limited by server memory (~3-4 simultaneous)
- Recommended: poll renders every 2-3 seconds, not faster
- Max input JSON size: 10MB

# Template Catalog — All 44 Templates ## Quick Reference | Brand | Templates | IDs Prefix | |-------|-----------|------------| | @henriquenapoles | 11 | `hnap_` | | Investiza | 11 | `inv_` | | Navigo | 11 | `nav_` | | Cia do Sorriso | 11 | `cds_` | --- ## @henriquenapoles (11 templates) ### 1. hnap_mentira_da_semana **Category**: apologetico | **Segments**: overlay(glitch_text) → talking_head → cta **Description**: Henrique fala com glitch text "MENTIRA #X" overlay animado. Efeito de interferência digital. | Required Props | Type | Description | |---------------|------|-------------| | `videoUrl` | string | URL do vídeo do Henrique falando | | `subtitles` | Subtitle[] | Legendas sincronizadas | | `mentiraText` | string | Texto da mentira (ex: "MENTIRA #47") | | Optional: `subtitleStyle`, `music` | ### 2. hnap_versus_teologico **Category**: apologetico | **Segments**: hook → versus(split_compare) → talking_head → cta **Description**: Split screen: falso vs bíblico. Henrique nos dois lados explicando. | Required Props | Type | Description | |---------------|------|-------------| | `videoUrl` | string | URL do vídeo | | `subtitles` | Subtitle[] | Legendas | | `hookText` | string | Texto do hook inicial | | `leftLabel` | string | Label esquerda (ex: "FALSO") | | `rightLabel` | string | Label direita (ex: "BÍBLICO") | | `leftItems` | string[] | Pontos da esquerda | | `rightItems` | string[] | Pontos da direita | | Optional: `subtitleStyle`, `ctaText` | ### 3. hnap_frase_profetica **Category**: profetico | **Segments**: reveal(cinematic_quote) → talking_head **Description**: Frase em parallax com câmera lenta. Henrique comenta depois. | Required Props | Type | Description | |---------------|------|-------------| | `videoUrl` | string | URL do vídeo | | `subtitles` | Subtitle[] | Legendas | | `quote` | string | Frase profética | | `author` | string | Autor da frase | | Optional: `subtitleStyle` | ### 4. hnap_countdown_revelation **Category**: educativo | **Segments**: interactive(ranked_list) → talking_head **Description**: Counter 5→1, Henrique PiP reagindo a cada revelação. | Required Props | Type | Description | |---------------|------|-------------| | `videoUrl` | string | URL do vídeo | | `subtitles` | Subtitle[] | Legendas | | `rankedItems` | Array<{rank,text,detail?,icon?}> | Items do ranking | | Optional: `subtitleStyle` | ### 5. hnap_heresia_detector **Category**: apologetico | **Segments**: overlay(scanner) → talking_head → hook **Description**: Scanner vermelho analisa frase herética. Henrique explica o erro. | Required Props | Type | Description | |---------------|------|-------------| | `videoUrl` | string | URL do vídeo | | `subtitles` | Subtitle[] | Legendas | | `scanTitle` | string | Título do scanner (ex: "HERESIA DETECTADA") | | `scanItems` | Array<{label,value?,color?}> | Resultados do scan | | Optional: `subtitleStyle` | ### 6. hnap_reaction_video **Category**: entretenimento | **Segments**: overlay(commentary) → talking_head **Description**: Tela dividida: conteúdo + Henrique reagindo com badges. | Required Props | Type | Description | |---------------|------|-------------| | `videoUrl` | string | URL do vídeo | | `subtitles` | Subtitle[] | Legendas | | Optional: `commentaryTitle`, `reactions`, `subtitleStyle` | ### 7. hnap_qa_comunidade **Category**: engajamento | **Segments**: overlay(question_card) → talking_head **Description**: Card de pergunta da comunidade → Henrique responde. | Required Props | Type | Description | |---------------|------|-------------| | `videoUrl` | string | URL do vídeo | | `subtitles` | Subtitle[] | Legendas | | `question` | string | Pergunta da comunidade | | Optional: `questionAuthor`, `subtitleStyle` | ### 8. hnap_timeline_igreja **Category**: educativo | **Segments**: hook → timeline → talking_head → cta **Description**: Timeline histórica da igreja com Henrique narrando. | Required Props | Type | Description | |---------------|------|-------------| | `videoUrl` | string | URL do vídeo | | `subtitles` | Subtitle[] | Legendas | | `hookText` | string | Texto do hook | | `timelineSteps` | Array<{year?,label,description?,icon?}> | Passos da timeline | | Optional: `timelineTitle`, `subtitleStyle`, `ctaText` | ### 9. hnap_duelo_doutrinas **Category**: apologetico | **Segments**: hook → versus(card_battle) → talking_head **Description**: 2 cards de doutrina colidem. Henrique escolhe o vencedor. | Required Props | Type | Description | |---------------|------|-------------| | `videoUrl` | string | URL do vídeo | | `subtitles` | Subtitle[] | Legendas | | `hookText` | string | Texto do hook | | `leftLabel` | string | Doutrina A | | `rightLabel` | string | Doutrina B | | `leftItems` | string[] | Argumentos A | | `rightItems` | string[] | Argumentos B | | Optional: `winner`, `subtitleStyle` | ### 10. hnap_monologo_profetico **Category**: profetico | **Segments**: overlay(prophetic) → talking_head **Description**: Close extremo, partículas flutuantes, texto overlay profético. | Required Props | Type | Description | |---------------|------|-------------| | `videoUrl` | string | URL do vídeo | | `subtitles` | Subtitle[] | Legendas | | `quote` | string | Frase profética | | Optional: `author`, `subtitleStyle` | ### 11. hnap_simple **Category**: simples | **Segments**: talking_head ↔ broll (auto-interleaved) **Description**: Henrique falando + cortes para b-roll. Legendas sempre visíveis. | Required Props | Type | Description | |---------------|------|-------------| | `videoUrl` | string | URL do vídeo | | `subtitles` | Subtitle[] | Legendas | | `duration` | number | Duração total em segundos | | Optional: `brolls`, `subtitleStyle`, `music` | --- ## Investiza (11 templates) ### 1. inv_dinheiro_na_mesa **Category**: dados | **Segments**: hook(number_counter) → dataviz(bar_chart) → talking_head → cta | Required: `videoUrl`, `subtitles`, `hookValue`, `hookText`, `chartItems`, `ctaText` | ### 2. inv_case_60s **Category**: case | **Segments**: overlay(story_card) → talking_head → dataviz(number_ticker) | Required: `videoUrl`, `subtitles`, `storyTitle`, `storySubtitle`, `storyItems`, `metricValue`, `metricLabel` | ### 3. inv_mapa_oportunidades **Category**: dados | **Segments**: overlay(map) → talking_head → dataviz(bar_chart) | Required: `videoUrl`, `subtitles`, `mapPoints`, `chartItems` | ### 4. inv_banco_recusou **Category**: drama | **Segments**: overlay(stamp_drama) → talking_head → cta | Required: `videoUrl`, `subtitles`, `ctaText` | ### 5. inv_counter_impacto **Category**: dados | **Segments**: hook(number_counter) → dataviz → talking_head | Required: `videoUrl`, `subtitles`, `hookValue`, `hookText`, `metricValue`, `metricLabel` | ### 6. inv_elegibilidade_express **Category**: interativo | **Segments**: interactive(quiz) → talking_head → cta | Required: `videoUrl`, `subtitles`, `question`, `options`, `ctaText` | ### 7. inv_erro_custa_caro **Category**: educativo | **Segments**: hook(shake_text) → talking_head → dataviz → cta | Required: `videoUrl`, `subtitles`, `hookText`, `chartItems` | ### 8. inv_linha_do_mes **Category**: produto | **Segments**: timeline → talking_head → dataviz | Required: `videoUrl`, `subtitles`, `timelineSteps`, `metricValue`, `metricLabel` | ### 9. inv_depoimento_cliente **Category**: social_proof | **Segments**: showcase(testimonial) → talking_head | Required: `videoUrl`, `subtitles`, `testimonial` | ### 10. inv_webinar_teaser **Category**: convite | **Segments**: hook → talking_head → broll → cta(countdown) | Required: `videoUrl`, `subtitles`, `hookText`, `brollUrl`, `ctaText`, `countdownSeconds` | ### 11. inv_simple **Category**: simples | **Segments**: auto-interleaved | Required: `videoUrl`, `subtitles`, `duration` | --- ## Navigo (11 templates) ### 1. nav_planilha_vs_sap **Category**: comparativo | **Segments**: versus → talking_head → reveal(before_after) | Required: `videoUrl`, `subtitles`, `leftLabel`, `rightLabel`, `leftItems`, `rightItems`, `beforeImage`, `afterImage` | ### 2. nav_stat_shock **Category**: dados | **Segments**: hook(number_counter) → dataviz → talking_head | Required: `videoUrl`, `subtitles`, `hookValue`, `hookText`, `chartItems` | ### 3. nav_client_wall **Category**: social_proof | **Segments**: showcase(logo_wall) → talking_head → dataviz | Required: `videoUrl`, `subtitles`, `logos`, `metricValue`, `metricLabel` | ### 4. nav_bastidores **Category**: institucional | **Segments**: overlay(credential) → talking_head → broll | Required: `videoUrl`, `subtitles`, `credentialName`, `credentialTitle`, `brollUrl` | ### 5. nav_roadmap **Category**: educativo | **Segments**: timeline → talking_head → cta | Required: `videoUrl`, `subtitles`, `timelineSteps`, `ctaText` | ### 6. nav_roi_calculator **Category**: interativo | **Segments**: interactive(calculator) → talking_head → dataviz | Required: `videoUrl`, `subtitles`, `calcLabel`, `calcSteps`, `calcValue`, `metricValue`, `metricLabel` | ### 7. nav_hot_take **Category**: opiniao | **Segments**: overlay(hot_take) → talking_head → cta | Required: `videoUrl`, `subtitles`, `hotTakeTitle` | ### 8. nav_antes_depois_dept **Category**: comparativo | **Segments**: versus → talking_head → reveal(before_after) | Required: `videoUrl`, `subtitles`, `leftLabel`, `rightLabel`, `leftItems`, `rightItems`, `beforeImage`, `afterImage` | ### 9. nav_depoimento_diretor **Category**: social_proof | **Segments**: showcase(testimonial) → talking_head | Required: `videoUrl`, `subtitles`, `testimonial` | ### 10. nav_evento_highlight **Category**: institucional | **Segments**: showcase(highlight_reel) → broll → talking_head → cta | Required: `videoUrl`, `subtitles`, `highlightClips`, `brollUrl`, `ctaText` | ### 11. nav_simple **Category**: simples | **Segments**: auto-interleaved | Required: `videoUrl`, `subtitles`, `duration` | --- ## Cia do Sorriso (11 templates) ### 1. cds_smile_reveal **Category**: transformacao | **Segments**: reveal(before_after) → talking_head → cta | Required: `videoUrl`, `subtitles`, `beforeImage`, `afterImage`, `ctaText` | ### 2. cds_30_anos **Category**: institucional | **Segments**: timeline → talking_head → showcase(logo_wall) | Required: `videoUrl`, `subtitles`, `timelineSteps`, `logos` | ### 3. cds_frame_procedimento **Category**: procedimento | **Segments**: reveal(frame_showcase) → talking_head → broll | Required: `videoUrl`, `subtitles`, `showcaseMediaUrl`, `brollUrl` | ### 4. cds_depoimento_real **Category**: social_proof | **Segments**: showcase(testimonial) → talking_head | Required: `videoUrl`, `subtitles`, `testimonial` | ### 5. cds_mito_verdade **Category**: educativo | **Segments**: versus(split_compare) → talking_head → cta | Required: `videoUrl`, `subtitles`, `leftLabel`, `rightLabel`, `leftItems`, `rightItems`, `ctaText` | ### 6. cds_apresentacao_especialista **Category**: institucional | **Segments**: overlay(credential) → talking_head → broll | Required: `videoUrl`, `subtitles`, `credentialName`, `credentialTitle`, `brollUrl` | ### 7. cds_jornada_sorriso **Category**: paciente | **Segments**: timeline → talking_head → reveal(before_after) | Required: `videoUrl`, `subtitles`, `timelineSteps`, `beforeImage`, `afterImage` | ### 8. cds_tech_clinica **Category**: tecnologia | **Segments**: overlay(lifestyle) → talking_head → broll | Required: `videoUrl`, `subtitles`, `brollUrl` | ### 9. cds_lifestyle_premium **Category**: lifestyle | **Segments**: overlay(lifestyle) → talking_head → broll → cta | Required: `videoUrl`, `subtitles`, `brollUrl`, `ctaText` | ### 10. cds_cta_direto **Category**: conversao | **Segments**: hook → talking_head → cta | Required: `videoUrl`, `subtitles`, `hookText`, `ctaText` | ### 11. cds_simple **Category**: simples | **Segments**: auto-interleaved | Required: `videoUrl`, `subtitles`, `duration` | --- ## Data Types Reference ### Subtitle ```json {"start": 0, "end": 3.5, "text": "Olá, tudo bem?"} ``` With word-level timing (for Hormozi style): ```json { "start": 0, "end": 3.5, "text": "Olá tudo bem", "words": [ {"start": 0, "end": 1, "text": "Olá"}, {"start": 1, "end": 2.2, "text": "tudo"}, {"start": 2.2, "end": 3.5, "text": "bem"} ] } ``` ### Testimonial ```json { "name": "João Silva", "role": "CEO da TechCorp", "text": "Transformou nossa operação completamente", "rating": 5, "metric": "+300% de eficiência" } ``` ### B-Roll (for simple templates) ```json {"mediaUrl": "https://storage.example.com/clip.mp4", "startAt": 8, "duration": 4, "effect": "ken_burns"} ``` Effects: `fullscreen`, `pip`, `split_screen`, `parallax`, `ken_burns`, `mockup_phone`

# Brand Presets Reference ## @henriquenapoles | Property | Value | |----------|-------| | **ID** | `henriquenapoles` | | **Name** | @henriquenapoles | | **Description** | Pastor e teólogo — conteúdo apologético e profético | | **Primary Color** | `#1A1A2E` (deep navy) | | **Accent Color** | `#E94560` (vibrant red) | | **Secondary** | `#533483` (deep purple) | | **Background** | `#0F0F1A` | | **Heading Font** | Playfair Display | | **Body Font** | Lato | | **Social** | @henriquenapoles | ### Template Categories - Apologético (mentira, versus, heresia, duelo) - Profético (frase, monólogo) - Educativo (countdown, timeline) - Engajamento (Q&A, reaction) - Simples (talking head + b-rolls) --- ## Investiza | Property | Value | |----------|-------| | **ID** | `investiza` | | **Name** | Investiza | | **Description** | Assessoria de crédito empresarial — B2B financeiro | | **Primary Color** | `#0D2137` (dark blue) | | **Accent Color** | `#00C2A8` (teal green) | | **Secondary** | `#1B4D6E` (mid blue) | | **Background** | `#091520` | | **Heading Font** | Montserrat | | **Body Font** | Inter | | **Social** | @investiza | | **Website** | investiza.com.br | ### Template Categories - Dados (dinheiro, counter, mapa) - Case (case 60s) - Drama (banco recusou) - Interativo (elegibilidade) - Educativo (erro, linha do mês) - Social Proof (depoimento) - Convite (webinar) - Simples --- ## Navigo | Property | Value | |----------|-------| | **ID** | `navigo` | | **Name** | Navigo | | **Description** | Consultoria SAP B1 — transformação digital para indústrias | | **Primary Color** | `#1E3A5F` (corporate blue) | | **Accent Color** | `#FF8C42` (warm orange) | | **Secondary** | `#4A7FB5` (light blue) | | **Background** | `#0E1F33` | | **Heading Font** | Montserrat | | **Body Font** | Nunito Sans | | **Social** | @navigoconsultoria | | **Website** | navigo.com.br | ### Template Categories - Comparativo (planilha vs SAP, antes/depois) - Dados (stat shock) - Social Proof (client wall, depoimento) - Institucional (bastidores, evento) - Educativo (roadmap) - Interativo (ROI calculator) - Opinião (hot take) - Simples --- ## Cia do Sorriso | Property | Value | |----------|-------| | **ID** | `ciadosorriso` | | **Name** | Cia do Sorriso | | **Description** | Clínica odontológica premium — 30 anos em Recife | | **Primary Color** | `#006A71` (teal) | | **Accent Color** | `#FFD93D` (warm gold) | | **Secondary** | `#00A8A8` (bright teal) | | **Background** | `#002B2E` | | **Heading Font** | Cormorant Garamond | | **Body Font** | Nunito Sans | | **Social** | @ciadosorriso | | **Website** | ciadosorriso.com.br | ### Template Categories - Transformação (smile reveal) - Institucional (30 anos, apresentação) - Procedimento (frame) - Social Proof (depoimento) - Educativo (mito/verdade) - Paciente (jornada) - Tecnologia (tech clínica) - Lifestyle (lifestyle premium) - Conversão (CTA direto) - Simples


# Example Payloads — All 44 Templates Each example is a complete `POST /renders` body ready to copy-paste. --- ## @henriquenapoles ### hnap_mentira_da_semana ```json { "templateId": "hnap_mentira_da_semana", "templateProps": { "videoUrl": "https://storage.example.com/henrique-mentira.mp4", "subtitles": [ {"start": 0, "end": 4, "text": "Essa é a mentira número 47 que derrubamos"}, {"start": 4, "end": 8, "text": "Muita gente acredita nisso sem questionar"}, {"start": 8, "end": 12, "text": "Mas a Bíblia diz algo completamente diferente"} ], "mentiraText": "MENTIRA #47" } } ``` ### hnap_versus_teologico ```json { "templateId": "hnap_versus_teologico", "templateProps": { "videoUrl": "https://storage.example.com/henrique-versus.mp4", "subtitles": [ {"start": 0, "end": 5, "text": "Vamos comparar o que dizem com o que a Bíblia realmente ensina"}, {"start": 15, "end": 22, "text": "A diferença é gigantesca quando você olha o texto original"} ], "hookText": "FALSO vs BÍBLICO", "leftLabel": "Teologia da Prosperidade", "rightLabel": "Ensino Bíblico", "leftItems": ["Deus quer você rico", "Oferte para receber", "Fé é uma moeda de troca"], "rightItems": ["Contentamento é ganho", "Dai sem esperar retorno", "Fé é confiança em Deus"], "ctaText": "Siga para mais verdades" } } ``` ### hnap_frase_profetica ```json { "templateId": "hnap_frase_profetica", "templateProps": { "videoUrl": "https://storage.example.com/henrique-profetico.mp4", "subtitles": [ {"start": 6, "end": 12, "text": "Essa frase mudou minha forma de ver o ministério"}, {"start": 12, "end": 18, "text": "E acredito que vai impactar sua vida também"} ], "quote": "Não é sobre ter todas as respostas, é sobre fazer as perguntas certas diante de Deus", "author": "Charles Spurgeon" } } ``` ### hnap_countdown_revelation ```json { "templateId": "hnap_countdown_revelation", "templateProps": { "videoUrl": "https://storage.example.com/henrique-countdown.mp4", "subtitles": [ {"start": 15, "end": 25, "text": "O número 1 vai te surpreender completamente"} ], "rankedItems": [ {"rank": 5, "text": "Calvino debateu com Serveto", "detail": "1553 em Genebra"}, {"rank": 4, "text": "Lutero pregou as 95 teses", "detail": "1517 em Wittenberg"}, {"rank": 3, "text": "Wesley iniciou o metodismo", "detail": "1738 na Inglaterra"}, {"rank": 2, "text": "Athanasius contra mundum", "detail": "325 em Niceia"}, {"rank": 1, "text": "Paulo no Areópago", "detail": "Atos 17 - o maior debate da história", "icon": "👑"} ] } } ``` ### hnap_heresia_detector ```json { "templateId": "hnap_heresia_detector", "templateProps": { "videoUrl": "https://storage.example.com/henrique-heresia.mp4", "subtitles": [ {"start": 0, "end": 5, "text": "O scanner detectou algo sério nessa frase"}, {"start": 10, "end": 18, "text": "Vamos analisar ponto por ponto o que está errado"} ], "scanTitle": "HERESIA DETECTADA", "scanItems": [ {"label": "Base bíblica", "value": "NENHUMA", "color": "#ff2020"}, {"label": "Origem", "value": "Gnosticismo", "color": "#ff8800"}, {"label": "Perigo", "value": "ALTO", "color": "#ff2020"} ] } } ``` ### hnap_reaction_video ```json { "templateId": "hnap_reaction_video", "templateProps": { "videoUrl": "https://storage.example.com/henrique-react.mp4", "subtitles": [ {"start": 0, "end": 6, "text": "Acabei de ver esse vídeo e preciso comentar"}, {"start": 6, "end": 12, "text": "O que ele disse aqui não tem base nenhuma"} ], "commentaryTitle": "REAGINDO", "reactions": [ {"label": "Sem base bíblica", "icon": "❌"}, {"label": "Contexto errado", "icon": "⚠️"}, {"label": "Mistura de fontes", "icon": "🔀"} ] } } ``` ### hnap_qa_comunidade ```json { "templateId": "hnap_qa_comunidade", "templateProps": { "videoUrl": "https://storage.example.com/henrique-qa.mp4", "subtitles": [ {"start": 3, "end": 10, "text": "Ótima pergunta, vou explicar com calma"}, {"start": 10, "end": 18, "text": "Na verdade existem três perspectivas sobre isso"} ], "question": "Pastor, qual a diferença entre predestinação e livre arbítrio?", "questionAuthor": "@maria_santos" } } ``` ### hnap_timeline_igreja ```json { "templateId": "hnap_timeline_igreja", "templateProps": { "videoUrl": "https://storage.example.com/henrique-timeline.mp4", "subtitles": [ {"start": 5, "end": 12, "text": "A história da igreja é fascinante quando você entende os marcos"}, {"start": 20, "end": 28, "text": "Cada um desses momentos mudou o rumo do cristianismo"} ], "hookText": "2000 ANOS EM 60 SEGUNDOS", "timelineTitle": "Marcos da Igreja", "timelineSteps": [ {"year": "33 d.C.", "label": "Pentecostes", "description": "Nascimento da Igreja"}, {"year": "325", "label": "Concílio de Niceia", "description": "Definição da Trindade"}, {"year": "1517", "label": "Reforma Protestante", "description": "Lutero e as 95 teses"}, {"year": "1738", "label": "Avivamento Wesleyano", "description": "Metodismo na Inglaterra"}, {"year": "1906", "label": "Azusa Street", "description": "Movimento Pentecostal"} ], "ctaText": "Aprenda mais no canal" } } ``` ### hnap_duelo_doutrinas ```json { "templateId": "hnap_duelo_doutrinas", "templateProps": { "videoUrl": "https://storage.example.com/henrique-duelo.mp4", "subtitles": [ {"start": 5, "end": 12, "text": "Essas duas doutrinas parecem iguais mas são opostas"}, {"start": 18, "end": 25, "text": "Vou mostrar qual tem mais respaldo bíblico"} ], "hookText": "DUELO DE DOUTRINAS", "leftLabel": "Cessacionismo", "rightLabel": "Continuísmo", "leftItems": ["Dons cessaram com apóstolos", "Suficiência das Escrituras", "Razão + Palavra"], "rightItems": ["Dons são para hoje", "Espírito continua operando", "Experiência + Palavra"], "winner": "right" } } ``` ### hnap_monologo_profetico ```json { "templateId": "hnap_monologo_profetico", "templateProps": { "videoUrl": "https://storage.example.com/henrique-monologo.mp4", "subtitles": [ {"start": 0, "end": 8, "text": "Há algo que precisa ser dito nessa geração"}, {"start": 8, "end": 16, "text": "A igreja precisa acordar para sua verdadeira missão"} ], "quote": "O maior inimigo da fé não é a dúvida, é a indiferença" } } ``` ### hnap_simple ```json { "templateId": "hnap_simple", "templateProps": { "videoUrl": "https://storage.example.com/henrique-fala.mp4", "subtitles": [ {"start": 0, "end": 4, "text": "Hoje vou falar sobre algo que muitos ignoram"}, {"start": 4, "end": 9, "text": "A importância do contexto na interpretação bíblica"}, {"start": 9, "end": 15, "text": "Sem contexto, qualquer versículo vira pretexto"} ], "duration": 30, "brolls": [ {"mediaUrl": "https://storage.example.com/biblia-aberta.jpg", "startAt": 5, "duration": 3, "effect": "ken_burns"}, {"mediaUrl": "https://storage.example.com/pergaminho.mp4", "startAt": 12, "duration": 4} ] } } ``` --- ## Investiza ### inv_dinheiro_na_mesa ```json { "templateId": "inv_dinheiro_na_mesa", "templateProps": { "videoUrl": "https://storage.example.com/investiza-dinheiro.mp4", "subtitles": [ {"start": 7, "end": 14, "text": "Sua empresa pode estar perdendo crédito aprovado"}, {"start": 14, "end": 20, "text": "Veja o comparativo real de empresas do mesmo porte"} ], "hookValue": 500000, "hookText": "R$ que empresas deixam na mesa todo mês", "chartItems": [ {"label": "Com assessoria", "value": 500000, "color": "#00C2A8"}, {"label": "Sem assessoria", "value": 120000, "color": "#ff6b6b"}, {"label": "Média do mercado", "value": 250000} ], "ctaText": "Descubra seu potencial" } } ``` ### inv_case_60s ```json { "templateId": "inv_case_60s", "templateProps": { "videoUrl": "https://storage.example.com/investiza-case.mp4", "subtitles": [ {"start": 8, "end": 15, "text": "Em 60 dias conseguimos virar o jogo para essa empresa"}, {"start": 20, "end": 26, "text": "O resultado foi surpreendente até para nós"} ], "storyTitle": "TechFabric Ltda", "storySubtitle": "Indústria têxtil — Recife/PE", "storyItems": [ {"label": "Faturamento", "value": "R$ 8M/ano"}, {"label": "Problema", "value": "Capital de giro"}, {"label": "Solução", "value": "BNDES Automático"} ], "metricValue": 2000000, "metricLabel": "Crédito aprovado" } } ``` ### inv_mapa_oportunidades ```json { "templateId": "inv_mapa_oportunidades", "templateProps": { "videoUrl": "https://storage.example.com/investiza-mapa.mp4", "subtitles": [ {"start": 8, "end": 15, "text": "Existem linhas específicas para cada região do Brasil"} ], "mapTitle": "Linhas de Crédito por Região", "mapPoints": [ {"x": 25, "y": 20, "label": "FNE - Nordeste"}, {"x": 55, "y": 50, "label": "FCO - Centro-Oeste"}, {"x": 70, "y": 70, "label": "BNDES - Sudeste"}, {"x": 40, "y": 15, "label": "FNO - Norte"} ], "chartItems": [ {"label": "FNE", "value": 800, "color": "#00C2A8"}, {"label": "BNDES", "value": 650}, {"label": "FCO", "value": 400} ] } } ``` ### inv_banco_recusou ```json { "templateId": "inv_banco_recusou", "templateProps": { "videoUrl": "https://storage.example.com/investiza-banco.mp4", "subtitles": [ {"start": 4, "end": 10, "text": "O banco recusou mas nós encontramos o caminho"}, {"start": 10, "end": 18, "text": "Com a estratégia certa, o crédito foi aprovado em 30 dias"} ], "ctaText": "Fale com um especialista" } } ``` ### inv_counter_impacto ```json { "templateId": "inv_counter_impacto", "templateProps": { "videoUrl": "https://storage.example.com/investiza-counter.mp4", "subtitles": [ {"start": 10, "end": 18, "text": "Esse é o impacto real que entregamos aos nossos clientes"} ], "hookValue": 150, "hookText": "Empresas atendidas em 2025", "metricValue": 47000000, "metricLabel": "Total em crédito aprovado", "metricPrefix": "R$ " } } ``` ### inv_elegibilidade_express ```json { "templateId": "inv_elegibilidade_express", "templateProps": { "videoUrl": "https://storage.example.com/investiza-quiz.mp4", "subtitles": [ {"start": 8, "end": 15, "text": "Vamos descobrir se sua empresa é elegível"} ], "question": "Sua empresa fatura mais de R$ 300K/ano?", "options": [ {"text": "Sim, acima de R$ 300K", "correct": true, "icon": "✅"}, {"text": "Não, abaixo de R$ 300K", "icon": "📊"}, {"text": "Não sei informar", "icon": "❓"} ], "ctaText": "Faça sua análise grátis" } } ``` ### inv_erro_custa_caro ```json { "templateId": "inv_erro_custa_caro", "templateProps": { "videoUrl": "https://storage.example.com/investiza-erro.mp4", "subtitles": [ {"start": 5, "end": 12, "text": "Esse erro custa caro e muitas empresas cometem"}, {"start": 15, "end": 22, "text": "Veja os números reais de quanto se perde"} ], "hookText": "ERRO DE R$ 200K", "chartItems": [ {"label": "Juros banco tradicional", "value": 180000, "color": "#ff6b6b"}, {"label": "Linha BNDES", "value": 45000, "color": "#00C2A8"}, {"label": "Diferença = Lucro", "value": 135000, "color": "#FFD700"} ] } } ``` ### inv_linha_do_mes ```json { "templateId": "inv_linha_do_mes", "templateProps": { "videoUrl": "https://storage.example.com/investiza-linha.mp4", "subtitles": [ {"start": 8, "end": 16, "text": "A linha do mês é a Proger Urbano do Banco do Brasil"} ], "timelineTitle": "Proger Urbano — Passo a Passo", "timelineSteps": [ {"label": "Consulta de elegibilidade", "description": "Análise do CNPJ em 24h"}, {"label": "Documentação", "description": "Enviamos checklist completo"}, {"label": "Submissão ao banco", "description": "Protocolo em até 5 dias"}, {"label": "Aprovação", "description": "Prazo médio: 15-30 dias"} ], "metricValue": 500000, "metricLabel": "Limite máximo por operação" } } ``` ### inv_depoimento_cliente ```json { "templateId": "inv_depoimento_cliente", "templateProps": { "videoUrl": "https://storage.example.com/investiza-depo.mp4", "subtitles": [ {"start": 10, "end": 18, "text": "Esse é o tipo de resultado que buscamos para cada cliente"} ], "testimonial": { "name": "Carlos Mendes", "role": "CEO — FabricaTech", "text": "A Investiza conseguiu aprovar R$ 2M em crédito que 3 bancos tinham negado", "rating": 5, "metric": "R$ 2M aprovados em 45 dias" } } } ``` ### inv_webinar_teaser ```json { "templateId": "inv_webinar_teaser", "templateProps": { "videoUrl": "https://storage.example.com/investiza-webinar.mp4", "subtitles": [ {"start": 5, "end": 12, "text": "Na próxima terça vamos revelar as melhores linhas de 2026"} ], "hookText": "WEBINAR GRATUITO", "brollUrl": "https://storage.example.com/office-broll.mp4", "ctaText": "Garanta sua vaga", "countdownSeconds": 5 } } ``` ### inv_simple ```json { "templateId": "inv_simple", "templateProps": { "videoUrl": "https://storage.example.com/investiza-fala.mp4", "subtitles": [ {"start": 0, "end": 5, "text": "Três dicas para conseguir crédito empresarial"}, {"start": 5, "end": 11, "text": "Primeira: tenha seu balanço organizado"}, {"start": 11, "end": 17, "text": "Segunda: conheça as linhas disponíveis"} ], "duration": 25, "brolls": [ {"mediaUrl": "https://storage.example.com/escritorio.mp4", "startAt": 6, "duration": 3}, {"mediaUrl": "https://storage.example.com/graficos.jpg", "startAt": 14, "duration": 3, "effect": "parallax"} ] } } ``` --- ## Navigo ### nav_planilha_vs_sap ```json { "templateId": "nav_planilha_vs_sap", "templateProps": { "videoUrl": "https://storage.example.com/navigo-vs.mp4", "subtitles": [ {"start": 8, "end": 15, "text": "A diferença entre planilha e SAP é absurda"}, {"start": 22, "end": 28, "text": "Olha o antes e depois de um dos nossos clientes"} ], "leftLabel": "Planilha Excel", "rightLabel": "SAP Business One", "leftItems": ["Dados duplicados", "Sem rastreabilidade", "Retrabalho constante"], "rightItems": ["Dados unificados", "Rastreamento completo", "Processos automatizados"], "beforeImage": "https://storage.example.com/planilha-caos.png", "afterImage": "https://storage.example.com/dashboard-sap.png" } } ``` ### nav_stat_shock ```json { "templateId": "nav_stat_shock", "templateProps": { "videoUrl": "https://storage.example.com/navigo-stat.mp4", "subtitles": [ {"start": 8, "end": 15, "text": "A maioria das implementações falha por um motivo simples"} ], "hookValue": 70, "hookText": "% das implementações ERP falham", "hookPrefix": "", "chartItems": [ {"label": "Escopo mal definido", "value": 35, "color": "#ff6b6b"}, {"label": "Falta de treinamento", "value": 25}, {"label": "Dados sujos", "value": 20}, {"label": "Outros", "value": 20} ] } } ``` ### nav_client_wall ```json { "templateId": "nav_client_wall", "templateProps": { "videoUrl": "https://storage.example.com/navigo-clients.mp4", "subtitles": [ {"start": 6, "end": 12, "text": "Essas empresas confiaram na Navigo para sua transformação digital"} ], "logos": [ {"url": "https://storage.example.com/logo1.png", "name": "IndústriaX"}, {"url": "https://storage.example.com/logo2.png", "name": "TechFab"}, {"url": "https://storage.example.com/logo3.png", "name": "AlimentosBR"}, {"url": "https://storage.example.com/logo4.png", "name": "MetalSul"} ], "metricValue": 120, "metricLabel": "Empresas implementadas" } } ``` ### nav_bastidores ```json { "templateId": "nav_bastidores", "templateProps": { "videoUrl": "https://storage.example.com/navigo-bastidores.mp4", "subtitles": [ {"start": 5, "end": 12, "text": "Hoje vou mostrar como funciona uma implementação por dentro"} ], "credentialName": "Ricardo Almeida", "credentialTitle": "Consultor SAP Sênior", "credentialInstitution": "12 anos de experiência", "brollUrl": "https://storage.example.com/escritorio-navigo.mp4" } } ``` ### nav_roadmap ```json { "templateId": "nav_roadmap", "templateProps": { "videoUrl": "https://storage.example.com/navigo-roadmap.mp4", "subtitles": [ {"start": 8, "end": 16, "text": "São 5 fases até sua empresa estar 100% no SAP"} ], "timelineTitle": "Roadmap de Implementação", "timelineSteps": [ {"year": "Fase 1", "label": "Discovery", "description": "Mapeamento de processos"}, {"year": "Fase 2", "label": "Blueprint", "description": "Desenho da solução"}, {"year": "Fase 3", "label": "Configuração", "description": "Setup e customização"}, {"year": "Fase 4", "label": "Testes", "description": "Validação com usuários"}, {"year": "Fase 5", "label": "Go-Live", "description": "Entrada em produção"} ], "ctaText": "Agende uma conversa" } } ``` ### nav_roi_calculator ```json { "templateId": "nav_roi_calculator", "templateProps": { "videoUrl": "https://storage.example.com/navigo-roi.mp4", "subtitles": [ {"start": 8, "end": 15, "text": "Veja quanto sua empresa pode economizar com SAP"} ], "calcLabel": "ROI da Implementação SAP", "calcSteps": [ {"label": "Redução de retrabalho", "value": "R$ 180K/ano"}, {"label": "Automação de processos", "value": "R$ 120K/ano"}, {"label": "Redução de estoque", "value": "R$ 90K/ano"}, {"label": "Investimento SAP", "value": "- R$ 150K"} ], "calcValue": 240000, "calcUnit": "/ano", "metricValue": 240000, "metricLabel": "ROI líquido anual" } } ``` ### nav_hot_take ```json { "templateId": "nav_hot_take", "templateProps": { "videoUrl": "https://storage.example.com/navigo-hottake.mp4", "subtitles": [ {"start": 5, "end": 12, "text": "Vou dizer algo que muitos consultores não falam"}, {"start": 12, "end": 20, "text": "SAP não é para toda empresa e tudo bem"} ], "hotTakeTitle": "SAP não é para todo mundo", "hotTakeSubtitle": "E tá tudo bem" } } ``` ### nav_antes_depois_dept ```json { "templateId": "nav_antes_depois_dept", "templateProps": { "videoUrl": "https://storage.example.com/navigo-dept.mp4", "subtitles": [ {"start": 8, "end": 15, "text": "Veja a transformação departamento por departamento"} ], "leftLabel": "Antes do SAP", "rightLabel": "Depois do SAP", "leftItems": ["Financeiro manual", "Estoque por planilha", "Compras por telefone"], "rightItems": ["Fechamento em 2 dias", "Estoque em tempo real", "Portal de compras"], "beforeImage": "https://storage.example.com/before-dept.png", "afterImage": "https://storage.example.com/after-dept.png" } } ``` ### nav_depoimento_diretor ```json { "templateId": "nav_depoimento_diretor", "templateProps": { "videoUrl": "https://storage.example.com/navigo-depo.mp4", "subtitles": [ {"start": 10, "end": 18, "text": "Esse tipo de feedback é o que nos motiva"} ], "testimonial": { "name": "Ana Paula Ferreira", "role": "Diretora de Operações — IndústriaTech", "text": "A Navigo entendeu nosso negócio antes de tocar no sistema. Isso fez toda diferença", "rating": 5, "metric": "Implementação em 4 meses" } } } ``` ### nav_evento_highlight ```json { "templateId": "nav_evento_highlight", "templateProps": { "videoUrl": "https://storage.example.com/navigo-evento.mp4", "subtitles": [ {"start": 10, "end": 16, "text": "Foi incrível ter tantas empresas reunidas"} ], "highlightClips": [ {"mediaUrl": "https://storage.example.com/evento1.mp4", "caption": "Abertura do evento"}, {"mediaUrl": "https://storage.example.com/evento2.mp4", "caption": "Painel de clientes"}, {"mediaUrl": "https://storage.example.com/evento3.mp4", "caption": "Networking"} ], "brollUrl": "https://storage.example.com/evento-broll.mp4", "ctaText": "Próximo evento em maio" } } ``` ### nav_simple ```json { "templateId": "nav_simple", "templateProps": { "videoUrl": "https://storage.example.com/navigo-fala.mp4", "subtitles": [ {"start": 0, "end": 5, "text": "Três sinais de que sua empresa precisa de um ERP"}, {"start": 5, "end": 10, "text": "Primeiro: você tem dados em mais de 3 planilhas"} ], "duration": 30, "brolls": [ {"mediaUrl": "https://storage.example.com/planilha.png", "startAt": 6, "duration": 3, "effect": "ken_burns"} ] } } ``` --- ## Cia do Sorriso ### cds_smile_reveal ```json { "templateId": "cds_smile_reveal", "templateProps": { "videoUrl": "https://storage.example.com/cds-reveal.mp4", "subtitles": [ {"start": 6, "end": 12, "text": "Olha essa transformação incrível do sorriso"}, {"start": 12, "end": 18, "text": "30 anos fazendo isso com excelência"} ], "beforeImage": "https://storage.example.com/antes-sorriso.jpg", "afterImage": "https://storage.example.com/depois-sorriso.jpg", "ctaText": "Agende sua avaliação" } } ``` ### cds_30_anos ```json { "templateId": "cds_30_anos", "templateProps": { "videoUrl": "https://storage.example.com/cds-historia.mp4", "subtitles": [ {"start": 8, "end": 15, "text": "30 anos de história transformando sorrisos em Recife"} ], "timelineTitle": "Nossa História", "timelineSteps": [ {"year": "1994", "label": "Fundação", "description": "Primeira clínica em Boa Viagem"}, {"year": "2005", "label": "Expansão", "description": "Nova sede com 8 consultórios"}, {"year": "2015", "label": "Tecnologia", "description": "Scanner 3D e planejamento digital"}, {"year": "2024", "label": "30 anos", "description": "+3.000 sorrisos transformados"} ], "logos": [ {"url": "https://storage.example.com/cert1.png", "name": "CRO-PE"}, {"url": "https://storage.example.com/cert2.png", "name": "ISO 9001"}, {"url": "https://storage.example.com/cert3.png", "name": "Invisalign"} ] } } ``` ### cds_frame_procedimento ```json { "templateId": "cds_frame_procedimento", "templateProps": { "videoUrl": "https://storage.example.com/cds-proc.mp4", "subtitles": [ {"start": 6, "end": 12, "text": "Veja como funciona o procedimento de lente de contato dental"} ], "showcaseMediaUrl": "https://storage.example.com/procedimento-lente.mp4", "brollUrl": "https://storage.example.com/clinica-equipamentos.mp4", "frameStyle": "gold" } } ``` ### cds_depoimento_real ```json { "templateId": "cds_depoimento_real", "templateProps": { "videoUrl": "https://storage.example.com/cds-depo.mp4", "subtitles": [ {"start": 10, "end": 18, "text": "Cada depoimento desses nos enche de orgulho"} ], "testimonial": { "name": "Maria Helena", "role": "Paciente há 5 anos", "text": "Meu sorriso mudou minha vida. A equipe da Cia do Sorriso é extraordinária", "rating": 5, "metric": "+3.000 sorrisos transformados" } } } ``` ### cds_mito_verdade ```json { "templateId": "cds_mito_verdade", "templateProps": { "videoUrl": "https://storage.example.com/cds-mito.mp4", "subtitles": [ {"start": 8, "end": 15, "text": "Vamos separar o mito da verdade sobre clareamento"}, {"start": 20, "end": 26, "text": "A ciência é bem clara sobre isso"} ], "leftLabel": "MITO ❌", "rightLabel": "VERDADE ✅", "leftItems": ["Clareamento estraga o dente", "Bicarbonato clareia", "Resultado é permanente"], "rightItems": ["Não danifica o esmalte", "Bicarbonato é abrasivo", "Manutenção é necessária"], "ctaText": "Agende sua avaliação" } } ``` ### cds_apresentacao_especialista ```json { "templateId": "cds_apresentacao_especialista", "templateProps": { "videoUrl": "https://storage.example.com/cds-especialista.mp4", "subtitles": [ {"start": 5, "end": 12, "text": "Conheça a especialista em harmonização orofacial"} ], "credentialName": "Dra. Fernanda Lima", "credentialTitle": "Especialista em Harmonização Orofacial", "credentialInstitution": "CRO-PE 12345 | USP", "credentialPhoto": "https://storage.example.com/dra-fernanda.jpg", "tags": ["Botox", "Preenchimento", "Fios PDO", "Bioestimuladores"], "brollUrl": "https://storage.example.com/consultorio.mp4" } } ``` ### cds_jornada_sorriso ```json { "templateId": "cds_jornada_sorriso", "templateProps": { "videoUrl": "https://storage.example.com/cds-jornada.mp4", "subtitles": [ {"start": 8, "end": 15, "text": "Acompanhe a jornada completa do tratamento"} ], "timelineTitle": "Jornada do Sorriso", "timelineSteps": [ {"label": "Avaliação inicial", "description": "Scanner 3D + planejamento digital", "icon": "🔍"}, {"label": "Tratamento", "description": "Lentes de contato dental personalizadas", "icon": "🦷"}, {"label": "Resultado", "description": "Sorriso transformado em 2 sessões", "icon": "✨"} ], "beforeImage": "https://storage.example.com/jornada-antes.jpg", "afterImage": "https://storage.example.com/jornada-depois.jpg" } } ``` ### cds_tech_clinica ```json { "templateId": "cds_tech_clinica", "templateProps": { "videoUrl": "https://storage.example.com/cds-tech.mp4", "subtitles": [ {"start": 5, "end": 12, "text": "Tecnologia de ponta para resultados excepcionais"} ], "lifestyleTitle": "Tecnologia na Cia do Sorriso", "lifestyleTags": ["Scanner 3D", "CAD/CAM", "Laser", "Radiografia Digital"], "brollUrl": "https://storage.example.com/equipamentos-tech.mp4" } } ``` ### cds_lifestyle_premium ```json { "templateId": "cds_lifestyle_premium", "templateProps": { "videoUrl": "https://storage.example.com/cds-lifestyle.mp4", "subtitles": [ {"start": 5, "end": 12, "text": "Seu sorriso é seu melhor acessório"} ], "lifestyleTitle": "Sorria com confiança", "lifestyleTags": ["Premium", "30 anos", "Recife"], "brollUrl": "https://storage.example.com/lifestyle-clinica.mp4", "ctaText": "Agende sua avaliação gratuita" } } ``` ### cds_cta_direto ```json { "templateId": "cds_cta_direto", "templateProps": { "videoUrl": "https://storage.example.com/cds-cta.mp4", "subtitles": [ {"start": 4, "end": 10, "text": "Não perca essa oportunidade única"}, {"start": 10, "end": 16, "text": "Agende sua avaliação gratuita hoje"} ], "hookText": "AVALIAÇÃO GRATUITA", "hookSubtext": "Só essa semana", "ctaText": "Agendar agora", "urgency": "Vagas limitadas" } } ``` ### cds_simple ```json { "templateId": "cds_simple", "templateProps": { "videoUrl": "https://storage.example.com/cds-fala.mp4", "subtitles": [ {"start": 0, "end": 5, "text": "Hoje vou falar sobre cuidados com aparelho ortodôntico"}, {"start": 5, "end": 10, "text": "Escovação é o ponto mais importante"}, {"start": 10, "end": 16, "text": "Use a escova interdental após cada refeição"} ], "duration": 25, "brolls": [ {"mediaUrl": "https://storage.example.com/escova-inter.jpg", "startAt": 6, "duration": 3, "effect": "ken_burns"}, {"mediaUrl": "https://storage.example.com/sorriso-bonito.mp4", "startAt": 13, "duration": 4} ] } } ```

Você achou esse artigo útil?