Communitygithub.com

Orshot: Automação de Geração de Imagens, PDFs e Vídeos a partir…

Automatize a geração de vídeos, PDFs e imagens a partir de modelos e a publicação em redes sociais com a API Orshot, usando o servidor MCP hospedado (OAuth, sem chave) ou REST.

O que é Orshot: Automação de Geração de Imagens, PDFs e Vídeos a partir…?

Este skill capacita o agente a gerar imagens, PDFs e vídeos sob demanda a partir de modelos predefinidos (criados no Orshot Studio ou importados do Canva/Figma), e publicar os resultados diretamente em mais de 13 plataformas de redes sociais. Ele abstrai as complexidades da API Orshot, como o uso de chaves `parameterId` em vez de nomes de camadas, prefixos `page1@` para modelos de várias páginas, e o tratamento assíncrono necessário para vídeos. Funciona perfeitamente com o servidor MCP da Orshot (que requer apenas login OAuth e oferece visualizações inline) ou, alternativamente, via REST com uma chave de API para cenários headless como scripts cron ou n8n. O skill pode renderizar modelos, redimensionar designs para vários formatos sociais em uma única chamada, gerar lotes personalizados (ex: certificados), criar URLs assinadas dinâmicas e agendar/publicar posts. Inclui regras de segurança importantes, como confirmar publicações, evitar exclusões não autorizadas e exibir custos antes de trabalhos em massa, garantindo o uso responsável dos créditos pagos da plataforma.

Funciona com✓Claude Code✓Codex CLI✓Cursor✓Windsurf
npx skills add https://github.com/Orshot-HQ/orshot-openclaw/tree/HEAD/skills/orshot

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Orshot: automatize geração de vídeo, PDF e imagem a partir de modelos e publicação em redes sociais

Orshot é uma API para geração automatizada de imagens, PDFs e vídeos a partir de modelos. Crie um modelo uma vez no Orshot Studio (ou importe do Canva ou Figma), renderize-o com textos, imagens e vídeos novos a cada chamada, e publique o resultado em contas sociais conectadas na mesma requisição. A renderização é determinística: o mesmo modelo com os mesmos dados sempre produz a mesma saída.

  • Documentação: https://orshot.com/docs (adicione .md a qualquer URL de documentação para obter markdown)
  • Servidor MCP hospedado: https://mcp.orshot.com/mcp (mais de 100 ferramentas orshot_*)
  • Base REST: https://api.orshot.com/v1
  • Plano gratuito: 100 créditos por mês, sem cartão de crédito.

Conecte-se primeiro (MCP, sem chave para colar)

O servidor MCP hospedado é a rota mais rápida e a única que retorna prévias inline, cartões de postagem visual e verificações de design. Adicione-o, faça login com a conta Orshot do usuário no navegador, e todas as ferramentas abaixo funcionarão.

openclaw mcp add orshot --url https://mcp.orshot.com/mcp --transport streamable-http --auth oauth
openclaw mcp login orshot

Ainda não tem uma conta Orshot? A página de login oferece cadastro; o plano gratuito começa com 100 créditos por mês. Claude Code: claude mcp add --transport http orshot https://mcp.orshot.com/mcp. Cursor, Windsurf, VS Code, Codex e ChatGPT aceitam a mesma URL como um servidor MCP remoto.

Confirme com orshot_get_account. Ele retorna o perfil, workspaces e créditos. Se disser que a assinatura está inativa ou que um limite do plano foi atingido, isso é um estado de faturamento, não um erro de autenticação: aponte o usuário para a página de faturamento do workspace em https://orshot.com/pricing e pare de tentar.

Fallback headless: REST com uma chave de API. Apenas quando o agente não puder executar MCP (um cron job, um script no lado do servidor, n8n).

export ORSHOT_API_KEY=...   # Configurações do Workspace > Chaves de API
curl -s https://api.orshot.com/v1/me -H "Authorization: Bearer $ORSHOT_API_KEY"

Não prossiga até que um dos dois funcione.

O que você pode fazer com isso

Cada linha nomeia primeiro a ferramenta MCP e depois a rota REST.

  • Renderizar qualquer modelo com seus dados: Imagens OG, criativos de anúncios, certificados, faturas, carrosséis, reels. orshot_render_template ou POST /v1/studio/render.
  • Criar e refinar modelos do studio a partir de um briefing, com prévias inline e verificações de design. orshot_create_template_design, orshot_update_template_design, orshot_patch_template_elements (leia orshot://template-design-spec primeiro; o skill orshot-social-media-content contém as regras de criação).
  • Renderizar vídeo verdadeiro: animações e transições por elemento, trilhas sonoras do kit da marca, prévias de movimento gratuitas antes de uma renderização paga. Mesma ferramenta de renderização com format: "mp4".
  • Comece com modelos utilitários prontos: capturas de tela de tweets, capturas de tela de sites, gráficos de barras e comparação, capturas de tela de lojas de aplicativos, mockups de telefone, remoção de fundo. orshot_render_library_template ou POST /v1/generate/:renderType.
  • Redimensionar um design para cada formato social em uma chamada (Smart Resize). size e extraSizes na renderização.
  • Renderizar em lote variações personalizadas, como certificados para uma lista de nomes. orshot_batch_render_template.
  • Manter a identidade visual: cores, fontes, imagens, vídeos e áudio do kit da marca. orshot_get_brand_kit, orshot_import_brand_website.
  • Organizar: pastas, compartilhamento de modelos, alternância entre workspaces de clientes. orshot_list_template_folders, orshot_set_active_workspace.
  • Criar URLs dinâmicos assinados para imagens OG e embeds. orshot_create_dynamic_url ou POST /v1/signed-url/create.
  • Rascunhar, agendar e publicar posts em redes sociais, descubra o melhor horário para postar com base nos dados de engajamento do usuário, leia análises de alcance e engajamento. orshot_publish_social_post, orshot_get_best_time_to_post, orshot_get_social_analytics. O skill orshot-social-media-scheduler contém o ciclo completo.
  • Construir e executar fluxos de trabalho de automação que continuam produzindo conteúdo em um cronograma. orshot_create_workflow, orshot_run_workflow.

Exemplos de prompts que mapeiam diretamente para essas ferramentas:

  • "Renderize o modelo de lançamento como uma imagem OG com o título 'Acabamos de enviar'"
  • "Crie um modelo de post do Instagram com um título, subtítulo e imagem do produto"
  • "Redimensione meu design de lançamento para Instagram story, quadrado e OG em uma chamada"
  • "Gere certificados para esta lista de 40 nomes como PDFs"
  • "Capture a tela deste tweet" / "Capture orshot.com como uma imagem" / "Faça um gráfico de barras a partir destes números"
  • "Publique esta renderização no Instagram no melhor horário e me mostre o desempenho dos posts da semana passada"

Fluxo de trabalho principal

  1. Conecte-se (acima).
  2. Encontre o modelo. orshot_list_studio_templates (pesquise por nome e tags) ou GET /v1/studio/templates/all?page=1&limit=10. Ainda não tem modelo? Use os mais de 2.000 modelos da biblioteca (orshot_list_library_templates) ou crie um com orshot_create_template_design.
  3. Leia seus parâmetros. orshot_get_studio_template_modifications ou GET /v1/studio/templates/:id. As modificações usam a chave parameterId, nunca o nome da camada. Nunca adivinhe as chaves.
  4. Renderize. orshot_render_template com modifications, ou POST /v1/studio/render com response: { type: "url", format: "png" }.
  5. Entregue ou publique. Mostre ao usuário a URL de saída. Adicione publish para publicá-la nas redes sociais na mesma chamada.
  6. Automatize. Coloque a chamada no n8n, Make, Zapier ou cron que o usuário já usa, ou crie um Workflow Orshot.
  7. Verifique. orshot_list_workspace_logs ou GET /v1/workspace/logs mostra a renderização e sua source. Mostre a saída antes de considerar concluído.

Regras de segurança para agentes

  • Confirme antes que algo saia do workspace. Publicar um post social, executar um workflow (gasta créditos e pode entregar ou publicar) e excluir um modelo, workflow ou ativo da marca precisam de uma autorização explícita. Diga o que será publicado, onde e quando.
  • Posts sociais padrão como rascunhos. "Prepare", "rascunhe", "deixe-me ver primeiro" significam status: "draft". Um rascunho não alcança ninguém até ser publicado.
  • Mostre o custo antes de trabalhos em massa. Renderizações gastam créditos, modificações .prompt gastam créditos de IA, e cada conta social conectada é um complemento pago. Diga isso antes de um loop de centenas de renderizações.
  • Nunca cole a chave da API no chat, arquivos ou URLs. Leia-a do ambiente. Prefira MCP, que não tem chave alguma.
  • Não exclua nada para "limpar" por conta própria.

Armadilhas comuns (leia antes de renderizar)

  1. Modificações usam a chave parameterId, não o nome da camada. Se um valor for ignorado, a chave está errada. Busque o modelo em vez de adivinhar.
  2. Modelos de várias páginas precisam de um prefixo pageN@. "page1@title", "page2@title". Um "title" simples só atinge a página 1.
  3. templateId do Studio é um inteiro; templateId utilitário é uma string (/v1/generate/:renderType aceita um slug como "website-screenshot").
  4. A saída de vídeo não precisa de camadas de vídeo. format: "mp4", "webm" ou "gif" renderiza qualquer modelo. Renderizações de vídeo longas devem usar response.mode: "async" e consultar orshot_get_render_job ou GET /v1/studio/render-jobs/:id, ou o cliente atingirá o tempo limite.
  5. URLs de imagem e vídeo em modificações devem ser públicas. O renderizador as busca no lado do servidor; localhost, URLs assinadas expiradas e URLs protegidas por autenticação falham.
  6. Substituições de estilo usam notação de ponto no parameterId: "title.fontSize": "48px".
  7. A forma da resposta difere conforme o número de páginas. Uma página: data é um objeto (data.content). Várias páginas: data é um array de { page, content }.
  8. base64 e binary não se combinam. binary transmite um arquivo.
  9. Créditos e créditos de IA são separados. Modificações .prompt gastam créditos de IA adicionais.
  10. Em 429, recue usando Retry-After.
  11. PDFs não podem ser publicados em redes sociais. Imagens não podem ir para TikTok ou YouTube (apenas vídeo). Vídeo não pode ir para Google Business.
  12. IDs de contas sociais são números. Duas contas na mesma plataforma têm IDs diferentes. Sempre publique por ID, nunca pelo nome da plataforma.
  13. Publicação social é um complemento pago. Workspaces do plano gratuito não podem conectar contas. A publicação em si não gasta créditos extras.

Fundamentos de renderização

Referência completa de campos: references/render-configuration.md e references/api-reference.md.

await fetch("https://api.orshot.com/v1/studio/render", {
  method: "POST",
  headers: { "Content-Type": "application/json", Authorization: `Bearer ${apiKey}` },
  body: JSON.stringify({
    templateId: 123,
    modifications: {
      title: "Dia do lançamento",             // texto
      hero_image: "https://.../a.png", // url da imagem
      "title.fontSize": "56px",        // substituição de estilo
      "page2@title": "Slide dois",      // várias páginas
    },
    response: { type: "url", format: "png", size: "instagram-story",
                extraSizes: ["1080x1080", "1200x630"] },
  }),
});

O mesmo objeto é a entrada de orshot_render_template via MCP.

  • format: png, jpg, webp, pdf, mp4, webm, gif.
  • size renderiza o design em outro predefinido ou LARGURAxALTURA; extraSizes adiciona mais cópias em uma chamada (Smart Resize). Predefinições: orshot://formats.
  • response.mode: "async" retorna um job; consulte-o ou passe webhook_url. Use para vídeo.
  • Muitas variantes de uma vez: orshot_batch_render_template, ou loop na chamada de renderização via REST.
  • URLs assinados: POST /v1/signed-url/create para uma URL de renderização que você pode incorporar sem expor a chave.

SDKs para uso headless: npm install [email protected], pip install orshot==0.2.0, composer require rishimohan/orshot:0.2.0, gem install orshot -v 0.2.0.

import { Orshot } from "orshot";
const orshot = new Orshot(apiKey); // leia do seu ambiente
const res = await orshot.renderFromTemplate({
  templateId: "open-graph-image-1",
  modifications: { title: "Olá Mundo" },
  responseType: "url",
  responseFormat: "png",
});

Publicação social (a versão curta)

O Orshot publica renderizações em mais de 13 plataformas: X, Instagram, Facebook, LinkedIn, TikTok, YouTube, Pinterest, Reddit, Bluesky, Threads, Telegram, Snapchat, Google Business. O skill orshot-social-media-scheduler contém agendamento, rascunhos, análises e melhor horário; este é o núcleo.

  1. Contas. orshot_list_social_accounts ou GET /v1/social/accounts?include_health=true. As contas são conectadas por um humano no painel (Workspace > Social > Contas); a API não pode conectar uma. Uma lista vazia significa enviar o usuário para lá.
  2. Renderize e publique em uma chamada. Adicione publish à renderização:
publish: {
  accounts: [1, 3],
  content: "Legenda, máximo 5000 caracteres",
  status: "draft",                       // "published" (padrão) | "draft" | "scheduled"
  // scheduled_for: "2026-11-01T14:00:00Z", timezone: "America/New_York",
  platformOptions: { "3": { firstComment: "https://orshot.com" } },
  tiktokSettings: { autoAddMusic: true }, // Carrosséis de fotos no TikTok
}

Modelos de várias páginas são publicados automaticamente como carrossel. A resposta carrega publish[] com status, url e error por conta. Uma publicação com falha nunca bloqueia a renderização.

  1. Publique uma URL de mídia existente. orshot_publish_social_post ou POST /v1/social/publish com media_urls.
  2. Posts retidos. orshot_list_social_posts, orshot_get_social_post (cartão visual), orshot_update_social_post, orshot_publish_social_draft, orshot_discard_social_post. REST: GET|PATCH|DELETE /v1/social/posts/:id, POST /v1/social/posts/:id/publish.
  3. Análises e melhor horário. orshot_get_social_analytics, orshot_get_social_analytics_daily, orshot_get_social_followers, orshot_get_best_time_to_post. REST: GET /v1/social/analytics, /daily, /accounts, /insights.

Receitas comuns

Imagem OG em cada deploy

response: { type: "url", format: "png", size: "og-image" }
// <meta property="og:image" content={data.content} />

Lote a partir de um CSV (certificados, faturas, badges): orshot_batch_render_template com um conjunto de modificações por linha e format: "pdf", ou loop POST /v1/studio/render.

Gráfico semanal para redes sociais, publicado como rascunho para revisão: renderize com publish.status: "draft", depois orshot_publish_social_draft após a aprovação do usuário.

Um design, todos os tamanhos: extraSizes: ["1080x1920", "1080x1080", "1200x630"].

Carrossel TikTok, Instagram ou LinkedIn: consulte o skill orshot-carousel.

Pipeline recorrente: references/recurring-automation.md. Verifique os logs do workspace para a source que o usuário já executa (n8n, Make, Zapier, SDK) e adicione a ela; ofereça Workflows Orshot apenas quando eles não executarem nada ainda.

Arquivos de referência

Leia-os sob demanda; eles não são carregados por padrão.

ArquivoQuando
references/api-reference.mdcada endpoint REST: renderização, modelos, URLs assinados, ativos da marca, URLs dinâmicos, pastas, workflows
references/render-configuration.mdtipos de modificação, opções de vídeo, jobs assíncronos, animações, áudio, Smart Resize, tipos de resposta, créditos
references/template-design-spec.mdesquema de elementos para criar ou editar modelos via API
references/recurring-automation.mdmanual de n8n, Make, Zapier, Pipedream, cron e Workflows Orshot
references/integrations-and-errors.mdlista de integrações, códigos de erro, melhores práticas
references/oauth-developer-apps.mdconstrução de aplicativos de terceiros no Orshot com OAuth
references/embed.mdincorporação do editor white-label (iframe, React, Vue)
references/migration.mdmigração do Bannerbear, Placid, Templated, Creatomate ou similares

Qualquer página de documentação está disponível como markdown: https://orshot.com/docs/<path>.md. O servidor MCP também serve orshot://template-design-spec e orshot://formats.

Referência rápida

# conectar
openclaw mcp add orshot --url https://mcp.orshot.com/mcp --transport streamable-http --auth oauth && openclaw mcp login orshot
curl -s https://api.orshot.com/v1/me -H "Authorization: Bearer $ORSHOT_API_KEY"   # verificação REST

# modelos
GET  /v1/studio/templates/all?page=1&limit=2

…

[truncado para tradução]

Individual skills in this repo

This repo contains 2 individual skills — each has its own dedicated page.

Habilidades Relacionadas