Para desenvolvedores

Link na Bio

Publique páginas de links com perfil, botões e redes sociais em um subdomínio dedicado bio.*, separado das landing pages de marketing.

A gestão é feita no painel em Marketing → Link na Bio. As permissões reutilizam as mesmas de landing page (view_landing_page, manage_landing_page, manage_landing_page_publicar).

Visão geral

O recurso Link na Bio é independente das landing pages de marketing. Cada workspace pode ter várias páginas Bio, cada uma com template, textos, tema e blocos configuráveis.

Por padrão, as páginas publicadas ficam disponíveis na zona:

Texto
Link na Bio: {slug-publico}.bio.vendanochat.com.br

O slug público segue o mesmo padrão das landing pages: {nome-da-pagina}-{slug-do-workspace}. A diferença é a zona de subdomínio — landing pages usam lp.*, Link na Bio usa bio.*.

Domínios customizados podem ser configurados em Domínios customizados com o campo bio_custom_base_domain (ex.: bio.minhaloja.com.br). Sem domínio customizado, as páginas usam o subdomínio padrão bio.vendanochat.com.br.

URL pública

Cada página usa um slug público no formato {nome-da-pagina}-{slug-do-workspace}. A URL final fica:

Texto
https://{slug-publico}.bio.vendanochat.com.br/

Exemplo com domínio padrão da plataforma:

Texto
https://meu-link-meu-workspace.bio.vendanochat.com.br/

O slug é gerado automaticamente a partir do nome da página e do slug do workspace. Ele aparece no painel ao publicar e no campo public_slug da API.

O frontend expõe a rota interna /bio/{slug-publico}, reescrita a partir do subdomínio *.bio.vendanochat.com.br pelo proxy do Next.js.

API administrativa

Endpoints autenticados com token (Authorization: Token …). Base: /api/workspaces/{workspace_id}/bio/.

Listar e criar

Texto
GET  /api/workspaces/{workspace_id}/bio/
POST /api/workspaces/{workspace_id}/bio/

POST aceita opcionalmente { "name": "Minha página" } e retorna a página criada em rascunho.

Detalhe e edição

Texto
GET   /api/workspaces/{workspace_id}/bio/{bio_id}/
PATCH /api/workspaces/{workspace_id}/bio/{bio_id}/

Campos aceitos no PATCH:

  • name — nome exibido e usado no slug público
  • template_id — identificador do template (link_bio, bio_light, bio_teal)
  • texts — mapa de chaves de texto por bloco
  • theme — cores e fontes da página
  • components — lista de blocos ativos (perfil, links, redes)
  • reset_defaults / reset_template — restauram textos e blocos do template

Publicar e despublicar

Texto
POST /api/workspaces/{workspace_id}/bio/{bio_id}/publish/
POST /api/workspaces/{workspace_id}/bio/{bio_id}/unpublish/

Para publicar, a página precisa ter nome, template válido e ao menos um bloco ativo. Dois rascunhos podem compartilhar o mesmo slug, mas apenas uma página publicada por slug é permitida por workspace.

Catálogo e upload

Texto
GET  /api/workspaces/{workspace_id}/bio/catalog/
POST /api/workspaces/{workspace_id}/bio/upload-image/

O catálogo retorna templates, categorias e tipos de componente disponíveis. O upload aceita JPG, PNG, WebP ou GIF (até 5 MB) via multipart em image.

Exemplo de resposta (detalhe)

JSON
{
  "id": 12,
  "workspace_slug": "meu-workspace",
  "name": "Meu Link",
  "template_id": "link_bio",
  "status": "published",
  "texts": {
    "profile.name": "Seu nome",
    "profile.bio": "Conteúdos, produtos e contatos em um só lugar.",
    "links.links_json": "[{\"id\":\"1\",\"label\":\"WhatsApp\",\"href\":\"https://wa.me/\",\"enabled\":true}]"
  },
  "theme": {
    "primary": "#fafafa",
    "background": "#0a0a0a"
  },
  "components": [
    {
      "id": "profile",
      "type": "bio_profile",
      "enabled": true,
      "order": 0,
      "label": "Perfil"
    },
    {
      "id": "links",
      "type": "bio_links",
      "enabled": true,
      "order": 1,
      "label": "Links"
    },
    {
      "id": "social",
      "type": "bio_social",
      "enabled": true,
      "order": 2,
      "label": "Redes sociais"
    }
  ],
  "public_slug": "meu-link-meu-workspace",
  "public_url": "https://meu-link-meu-workspace.bio.vendanochat.com.br/",
  "is_published": true,
  "published_at": "2026-07-01T12:00:00Z"
}

API pública

Endpoint aberto (sem autenticação) para renderizar a página publicada ou integrar com sistemas externos:

Texto
GET /api/bio/{slug-publico}/

Retorna 404 se a página não existir ou não estiver publicada. A resposta inclui name, template_id, texts, theme, components, public_url e published_at.

Exemplo

Texto
curl https://vendanochat.com.br/api/bio/meu-link-meu-workspace/

Templates e componentes

Templates disponíveis:

  • link_bio — visual escuro (padrão)
  • bio_light — fundo claro e tipografia legível
  • bio_teal — identidade visual da plataforma

Tipos de bloco (components[].type):

  • bio_profile — foto, nome e bio
  • bio_links — lista de links (JSON em links.links_json)
  • bio_social — ícones de redes sociais

Textos seguem o padrão {bloco}.{campo}, por exemplo profile.name e _layout.footer.text para o rodapé. Páginas publicadas exibem Feito por Venda no Chat no rodapé, além do texto configurável.

Precisa de ajuda?

Consulte também a documentação de domínios customizados e a central de ajuda.