hyype.com.br/docs/api

Partner API

Integre seu sistema com a Hyype: produtos, ofertas, conteúdos, vendas, coprodutores, leads e checkout — tudo do seu negócio, com um token.

Começar em 4 passos

A Partner API permite que outro sistema (ERP, CRM, automação ou agente de IA) leia e gerencie dados do seu negócio na Hyype, sem usar o painel manualmente.

  1. Entre no painel da Hyype com a conta do produtor (dono do negócio).
  2. Abra Configurações e vá até a seção Chaves de API / Partner API.
  3. Crie uma chave, copie o token e guarde com segurança — ele só aparece na criação.
  4. Cole o token no campo abaixo (ou use no seu sistema) e comece pelas rotas de Produtos → Ofertas → Entregáveis.

Onde obter o token: app.hyype.com.br/settings → Chaves de API

Como produto, oferta e conteúdo se relacionam

Na Hyype, vender algo digital não é um único cadastro. São peças que se ligam. Pense assim:

1. Produto

É o “pacote” que você vende — o nome e a identidade do que o cliente compra (ex.: Curso de Marketing). Ao criar pela API, o produto entra no portfólio padrão (Meus Produtos) para aparecer no painel; você pode informar portfolio_id para escolher outro.

2. Oferta

É a forma de vender o produto: preço, recorrência, status. Um produto pode ter várias ofertas (à vista, mensal, promoção).

3. Conteúdo (entregável)

É o que o comprador recebe de fato: curso, ebook, comunidade, etc. A criação pela API também gera o registro interno do tipo para o painel abrir o conteúdo. O conteúdo se vincula ao produto para liberar o acesso após a compra.

Ordem recomendada

Crie o produto → crie a oferta ligada a esse produto → crie o conteúdo informando product_id (ou POST /products/{id}/deliverables). Sem esse vínculo o produto não entrega acesso após a compra.

Exemplo: produto “Mentoria VIP” → oferta “R$ 997 à vista” ligada a esse produto → entregável “Área de membros”. Afiliados, coprodutores, checkout e vendas usam essa mesma base.

Contrato da Partner API

Toda listagem usa o mesmo envelope. Status sempre em minúsculas. Paginação vale em todas as rotas GET de lista.

Paginação

Use page (padrão 1) e per_page (padrão 25, máximo 100). A resposta traz meta.current_page, meta.per_page, meta.total e meta.last_page. Sem page você recebe só a primeira página.

Status

Carrinhos da loja e do checkout digital usam o mesmo vocabulário em minúsculas: active, pending_payment, abandoned, expired, converted. A API aceita MAIÚSCULAS na query, mas a resposta sempre volta minúscula.

Vendas, taxa e UTM

Em /sales o valor bruto é total_amount. platform_fee é a taxa da Hyype (não do gateway). net_amount = total_amount − platform_fee. A origem de tráfego vem em tracking.utm_source, tracking.utm_medium, tracking.utm_campaign, tracking.utm_term e tracking.utm_content — não é preciso fatiar metadata.referer.

Coprodutores e e-mail

O vínculo de coprodutor é por produto do seu domínio. Já as transações em /coproducers/transactions são unidas pelo e-mail da pessoa em qualquer tenant onde ela seja coprodutora — a mesma pessoa tem user_id diferente em cada negócio. meta.joined_by = email. Cada item traz tenant_name e tenant_domain.

Rastreio histórico

O rastreio de UTM nas vendas passou a ter cobertura confiável a partir de agosto de 2026 (reliable_from). Comparar junho/julho com agosto/setembro parece queda de tráfego pago, mas o que mudou foi a captura. Esse aviso também vem em meta.tracking de /sales e em /sales/report e /tracking/summary.

Autenticação

Em toda requisição, envie o header Authorization com o token. O negócio (domínio) é identificado automaticamente pelo token — você não precisa informar o domínio na URL.

  • Formato: Authorization: Bearer SEU_TOKEN
  • Cada token vale só para o negócio em que foi criado.
  • Usuários compradores não são criados pela API — eles entram pela compra/checkout. Aqui você consulta e atualiza quem já existe no seu domínio.

Usar com IA (MCP)

O MCP (Model Context Protocol) permite que ferramentas como Cursor ou Claude usem a Partner API por meio de “ferramentas” prontas — listar vendas, criar produto, consultar leads — sem você montar cada chamada HTTP na mão.

Há um servidor MCP oficial da Hyype que espelha esta API. Você configura uma vez o token e o agente passa a operar no seu negócio.

  1. Tenha o token da Partner API (mesmo do painel).
  2. No projeto, use o servidor em apps/mcp-partner-api (Node).
  3. No Cursor (ou cliente MCP), adicione a configuração abaixo com seu token e reinicie o agente.
{
  "mcpServers": {
    "hyype-partner-api": {
      "command": "node",
      "args": ["./apps/mcp-partner-api/server.js"],
      "env": {
        "HYYPE_PARTNER_API_URL": "https://api.hyype.com.br/api/v1",
        "HYYPE_PARTNER_API_TOKEN": "seu-token-aqui"
      }
    }
  }
}

Com o MCP ativo, o agente usa as mesmas rotas e o mesmo contrato desta API: paginação page/per_page, taxa Hyype (platform_fee), UTMs em tracking.utm_*, carrinhos com source=all e status em minúsculas, e transações de coprodutor unidas pelo e-mail em qualquer tenant.

Nesta API a importação de arquivo é só por URL. O Google Drive fica no gerenciador de mídia do painel. O recurso é Mídia.

Contexto

GET/me

Contexto do token

Retorna o domínio/negócio vinculado ao token, o usuário técnico da API e metadados do token atual.

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/me' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "message": "OK",
  "data": {
    "tenant": {
      "id": 1,
      "name": "Minha Escola",
      "alias": "minha-escola",
      "domain": "minha-escola.hyype.com.br"
    },
    "api_user": {
      "id": 99,
      "name": "API",
      "email": "[email protected]"
    },
    "token": {
      "name": "partner-api-default",
      "abilities": [
        "partner-api"
      ],
      "last_used_at": null,
      "expires_at": null
    }
  }
}

Usuários

GET/users

Listar usuários

Lista usuários do seu domínio. Filtros: search, role e paginação.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/users?role=member&per_page=25&page=1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "data": [
    {
      "id": 12,
      "name": "Aluno",
      "email": "[email protected]",
      "phone": "11999990000",
      "roles": [
        "member"
      ]
    }
  ],
  "meta": {
    "current_page": 1,
    "per_page": 25,
    "total": 1,
    "last_page": 1
  }
}
GET/users/{id}

Obter usuário

Detalhe de um usuário do seu domínio.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/users/1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "message": "OK",
  "data": {
    "id": 12,
    "name": "Aluno",
    "email": "[email protected]",
    "phone": "11999990000",
    "roles": [
      "member"
    ],
    "notify_by_email": true
  }
}
PATCH/users/{id}

Atualizar usuário

Edita nome, e-mail, telefone e preferências de notificação. Não altera o usuário técnico da API.

Parâmetros

Body (JSON)

CampoTipoValores permitidos
namestringtexto livre
emailstringtexto livre
phonestringtexto livre
notify_by_emailbooleantrue, false
notify_by_whatsappbooleantrue, false
notify_by_pushbooleantrue, false

Exemplos de código

curl -X PATCH 'https://api.hyype.com.br/api/v1/users/1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "name": "Nome Atualizado",
  "phone": "11999999999",
  "notify_by_email": true
}'

Exemplo de resposta

{
  "success": true,
  "message": "Usuário atualizado.",
  "data": {
    "id": 12,
    "name": "Nome Atualizado",
    "email": "[email protected]",
    "phone": "11999999999",
    "notify_by_email": true
  }
}
DELETE/users/{id}

Arquivar usuário

Arquiva o usuário. Administradores do negócio e o usuário técnico da API não podem ser removidos.

Parâmetros

Exemplos de código

curl -X DELETE 'https://api.hyype.com.br/api/v1/users/1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "message": "Usuário arquivado.",
  "data": null
}

Portfólios

GET/portfolios

Listar portfólios

Lista os portfólios do domínio. O painel agrupa produtos por portfólio. Se ainda não existir, cria o padrão Meus Produtos.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/portfolios?per_page=25&page=1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "data": [
    {
      "id": 1,
      "name": "Meus Produtos",
      "slug": "meus-produtos",
      "is_default": true,
      "is_active": true,
      "products_count": 3
    }
  ],
  "meta": {
    "current_page": 1,
    "per_page": 25,
    "total": 1,
    "last_page": 1
  }
}

Produtos

GET/products

Listar produtos

Lista produtos do seu domínio, com os portfólios vinculados.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/products?status=active&type=course&per_page=25&page=1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "data": [
    {
      "id": 1,
      "name": "Curso de Marketing",
      "slug": "curso-marketing",
      "status": "active",
      "type": "course",
      "base_price": 197,
      "currency_code": "BRL",
      "portfolios": [
        {
          "id": 1,
          "name": "Meus Produtos",
          "is_default": true
        }
      ]
    }
  ],
  "meta": {
    "current_page": 1,
    "per_page": 25,
    "total": 1,
    "last_page": 1
  }
}
POST/products

Criar produto

Cria um produto e o vincula a um portfólio. Sem portfolio_id usa o portfólio padrão. Informe deliverable_ids para vincular conteúdos; sem isso o produto fica sem entregável.

Body (JSON)

CampoTipoValores permitidos
nameobrigatóriostringtexto livre
descriptionstringtexto livre
long_descriptionstringtexto livre
typestringdigital, course, bundle, subscription, ebook, masterclass, consulting, membership, physical, digital_download, live_series
statusstringdraft, active, inactive, archived
base_pricenumbertexto livre
currency_codestringBRL, USD, EUR
is_featuredbooleantrue, false
metadataobjecttexto livre
portfolio_idintegerID do portfólio. Se omitido na criação, o produto entra no portfólio padrão.
deliverable_idsarrayIDs dos entregáveis para vincular ao produto. Sem isso o produto fica sem conteúdo.

Exemplos de código

curl -X POST 'https://api.hyype.com.br/api/v1/products' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "name": "Meu Produto",
  "description": "Descrição curta",
  "type": "course",
  "status": "draft",
  "base_price": 97,
  "currency_code": "BRL",
  "portfolio_id": 1
}'

Exemplo de resposta

{
  "success": true,
  "message": "Produto criado e vinculado ao portfólio.",
  "data": {
    "id": 1,
    "name": "Meu Produto",
    "type": "course",
    "status": "draft",
    "base_price": 97,
    "currency_code": "BRL",
    "portfolios": [
      {
        "id": 1,
        "name": "Meus Produtos",
        "is_default": true
      }
    ],
    "deliverables": [
      {
        "id": 8,
        "name": "Curso Completo",
        "slug": "curso-completo",
        "type": "course",
        "status": "draft"
      }
    ]
  }
}
GET/products/{id}

Obter produto

Detalhe com ofertas, entregáveis, pixels (sem tokens) e webhooks (secret mascarado).

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/products/1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "message": "OK",
  "data": {
    "id": 1,
    "name": "Curso de Marketing",
    "status": "active",
    "type": "course",
    "portfolios": [
      {
        "id": 1,
        "name": "Meus Produtos",
        "is_default": true
      }
    ],
    "deliverables": [
      {
        "id": 8,
        "name": "Curso Completo",
        "slug": "curso-completo",
        "type": "course",
        "status": "published"
      }
    ],
    "variants": [
      {
        "id": 10,
        "name": "À vista",
        "price": 197
      }
    ],
    "pixels": [
      {
        "id": 1,
        "platform": "meta_ads",
        "pixel_id": "123456789",
        "enabled_events": [
          "Purchase"
        ],
        "has_access_token": true
      }
    ]
  }
}
PUT/products/{id}

Atualizar produto

Atualiza campos do produto. Informe portfolio_id para vincular a um portfólio.

Parâmetros

Body (JSON)

CampoTipoValores permitidos
namestringtexto livre
descriptionstringtexto livre
typestringdigital, course, bundle, subscription, ebook, masterclass, consulting, membership, physical, digital_download, live_series
statusstringdraft, active, inactive, archived
base_pricenumbertexto livre
currency_codestringBRL, USD, EUR
is_featuredbooleantrue, false
slugstringtexto livre
metadataobjecttexto livre
portfolio_idintegerID do portfólio. Se omitido na criação, o produto entra no portfólio padrão.
deliverable_idsarrayIDs dos entregáveis para vincular ao produto. Sem isso o produto fica sem conteúdo.

Exemplos de código

curl -X PUT 'https://api.hyype.com.br/api/v1/products/1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "name": "Produto Atualizado",
  "status": "active",
  "portfolio_id": 1,
  "deliverable_ids": [
    8
  ]
}'
DELETE/products/{id}

Remover produto

Remove o produto do catálogo ativo.

Parâmetros

Exemplos de código

curl -X DELETE 'https://api.hyype.com.br/api/v1/products/1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \
GET/products/{id}/pixels

Listar pixels do produto

Pixels de conversão deste produto. Tokens e secrets não são expostos — só has_access_token / has_api_secret.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/products/1/pixels?platform=meta_ads&per_page=25&page=1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "data": [
    {
      "id": 1,
      "product_id": 1,
      "platform": "meta_ads",
      "pixel_id": "123456789",
      "enabled_events": [
        "Purchase",
        "InitiateCheckout"
      ],
      "available_events": [
        "PageView",
        "ViewContent",
        "InitiateCheckout",
        "AddPaymentInfo",
        "Purchase",
        "Lead",
        "CompleteRegistration"
      ],
      "has_access_token": true,
      "has_api_secret": false,
      "has_test_event_code": false
    }
  ],
  "meta": {
    "current_page": 1,
    "per_page": 25,
    "total": 1,
    "last_page": 1
  }
}
POST/products/{id}/pixels

Criar pixel do produto

Cadastra um pixel por plataforma (meta_ads, google_ads, analytics, tag_manager, tiktok). access_token, api_secret e test_event_code são gravados, mas não voltam na resposta.

Parâmetros

Body (JSON)

CampoTipoValores permitidos
platformobrigatóriostringmeta_ads, google_ads, analytics, tag_manager, tiktok
pixel_idobrigatóriostringtexto livre
enabled_eventsarraytexto livre
access_tokenstringtexto livre
api_secretstringtexto livre
test_event_codestringtexto livre
notesstringtexto livre

Exemplos de código

curl -X POST 'https://api.hyype.com.br/api/v1/products/1/pixels' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "platform": "meta_ads",
  "pixel_id": "123456789",
  "enabled_events": [
    "Purchase",
    "InitiateCheckout"
  ],
  "access_token": "EAAB..."
}'

Exemplo de resposta

{
  "success": true,
  "message": "Pixel criado.",
  "data": {
    "id": 1,
    "product_id": 1,
    "platform": "meta_ads",
    "pixel_id": "123456789",
    "enabled_events": [
      "Purchase",
      "InitiateCheckout"
    ],
    "has_access_token": true
  }
}
GET/products/{id}/pixels/{pixel_id}

Obter pixel do produto

Detalhe do pixel, com eventos habilitados e available_events da plataforma.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/products/1/pixels/1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "message": "OK",
  "data": {
    "id": 1,
    "product_id": 1,
    "platform": "meta_ads",
    "pixel_id": "123456789",
    "enabled_events": [
      "Purchase"
    ],
    "has_access_token": true
  }
}
PUT/products/{id}/pixels/{pixel_id}

Atualizar pixel do produto

Altera código, eventos, notas ou tokens. Uma plataforma por produto.

Parâmetros

Body (JSON)

CampoTipoValores permitidos
platformstringmeta_ads, google_ads, analytics, tag_manager, tiktok
pixel_idstringtexto livre
enabled_eventsarraytexto livre
access_tokenstringtexto livre
api_secretstringtexto livre
test_event_codestringtexto livre
notesstringtexto livre

Exemplos de código

curl -X PUT 'https://api.hyype.com.br/api/v1/products/1/pixels/1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "enabled_events": [
    "Purchase"
  ],
  "notes": "Campanha principal"
}'

Exemplo de resposta

{
  "success": true,
  "message": "Pixel atualizado.",
  "data": {
    "id": 1,
    "platform": "meta_ads",
    "pixel_id": "123456789",
    "enabled_events": [
      "Purchase"
    ],
    "notes": "Campanha principal",
    "has_access_token": true
  }
}
DELETE/products/{id}/pixels/{pixel_id}

Remover pixel do produto

Remove o pixel de conversão deste produto.

Parâmetros

Exemplos de código

curl -X DELETE 'https://api.hyype.com.br/api/v1/products/1/pixels/1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "message": "Pixel removido.",
  "data": null
}
GET/products/{id}/webhooks

Listar webhooks do produto

Endpoints que recebem eventos de venda deste produto. O secret vem mascarado.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/products/1/webhooks?per_page=25&page=1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "data": [
    {
      "id": 3,
      "product_id": 1,
      "name": "Membro Club",
      "url": "https://exemplo.com/webhook/hyype",
      "events": [
        "purchase",
        "customer_converted"
      ],
      "active": true,
      "secret": "••••••••••••sec_",
      "has_auth_token": false
    }
  ],
  "meta": {
    "current_page": 1,
    "per_page": 25,
    "total": 1,
    "last_page": 1
  }
}
POST/products/{id}/webhooks

Criar webhook do produto

Cadastra a URL. O secret (whsec_…) volta só nesta resposta. reuse_secret reutiliza a chave HMAC de outro webhook do tenant.

Parâmetros

Body (JSON)

CampoTipoValores permitidos
nameobrigatóriostringtexto livre
urlobrigatóriostringtexto livre
eventsarraypage_view, new_lead, purchase_intent, customer_converted, purchase, pix_expired, boleto_expired, checkout_abandoned, payment_refunded, chargeback
activebooleantrue, false
auth_tokenstringtexto livre
reuse_secretbooleantrue, false
secretstringSecret já existente neste tenant (whsec_…). Não aceita um secret inventado.

Exemplos de código

curl -X POST 'https://api.hyype.com.br/api/v1/products/1/webhooks' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "name": "Membro Club",
  "url": "https://exemplo.com/webhook/hyype",
  "events": [
    "purchase",
    "customer_converted"
  ],
  "reuse_secret": false
}'

Exemplo de resposta

{
  "success": true,
  "message": "Webhook criado.",
  "data": {
    "id": 3,
    "product_id": 1,
    "name": "Membro Club",
    "url": "https://exemplo.com/webhook/hyype",
    "events": [
      "purchase",
      "customer_converted"
    ],
    "active": true,
    "secret": "whsec_abc123"
  }
}
GET/products/{id}/webhooks/{webhook_id}

Obter webhook do produto

Detalhe do webhook com secret mascarado.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/products/1/webhooks/3' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "message": "OK",
  "data": {
    "id": 3,
    "name": "Membro Club",
    "url": "https://exemplo.com/webhook/hyype",
    "events": [
      "purchase"
    ],
    "active": true,
    "secret": "••••••••••••sec_"
  }
}
PUT/products/{id}/webhooks/{webhook_id}

Atualizar webhook do produto

Altera URL, eventos, status ou regenera o secret.

Parâmetros

Body (JSON)

CampoTipoValores permitidos
namestringtexto livre
urlstringtexto livre
eventsarraypage_view, new_lead, purchase_intent, customer_converted, purchase, pix_expired, boleto_expired, checkout_abandoned, payment_refunded, chargeback
activebooleantrue, false
auth_tokenstringtexto livre
regenerate_secretbooleantrue, false

Exemplos de código

curl -X PUT 'https://api.hyype.com.br/api/v1/products/1/webhooks/3' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "active": true,
  "events": [
    "purchase",
    "chargeback"
  ]
}'
DELETE/products/{id}/webhooks/{webhook_id}

Remover webhook do produto

Remove o webhook deste produto (soft delete).

Parâmetros

Exemplos de código

curl -X DELETE 'https://api.hyype.com.br/api/v1/products/1/webhooks/3' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "message": "Webhook removido.",
  "data": null
}
GET/products/{id}/webhooks/{webhook_id}/reveal

Revelar secret do webhook

Devolve secret e auth_token completos. Use só quando precisar validar a assinatura HMAC.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/products/1/webhooks/3/reveal' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "message": "OK",
  "data": {
    "id": 3,
    "secret": "whsec_abc123"
  }
}
POST/products/{id}/webhooks/{webhook_id}/test

Enviar payload de teste

Enfileira um evento de exemplo para cada item em events.

Parâmetros

Exemplos de código

curl -X POST 'https://api.hyype.com.br/api/v1/products/1/webhooks/3/test' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "message": "1 teste(s) enfileirado(s)",
  "data": {
    "deliveries": [
      {
        "id": 10,
        "event_type": "purchase",
        "is_test": true,
        "status": "pending"
      }
    ]
  }
}
GET/products/{id}/webhook-deliveries

Listar entregas do webhook

Log das tentativas de envio deste produto.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/products/1/webhook-deliveries?per_page=25&page=1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "data": [
    {
      "id": 10,
      "producer_webhook_id": 3,
      "event_type": "purchase",
      "status": "success",
      "http_status_code": 200,
      "is_test": false
    }
  ],
  "meta": {
    "current_page": 1,
    "per_page": 25,
    "total": 1,
    "last_page": 1
  }
}
GET/products/{id}/webhook-deliveries/{delivery_id}

Obter entrega do webhook

Detalhe de uma entrega, com payload e resposta.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/products/1/webhook-deliveries/10' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \
GET/products/{id}/deliverables

Listar conteúdos do produto

Entregáveis vinculados a este produto. Sem vínculo o comprador não recebe acesso.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/products/1/deliverables?per_page=25&page=1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "data": [
    {
      "id": 8,
      "name": "Curso Completo",
      "slug": "curso-completo",
      "type": "course",
      "status": "published",
      "is_optional": false,
      "sort_order": 0
    }
  ],
  "meta": {
    "current_page": 1,
    "per_page": 25,
    "total": 1,
    "last_page": 1
  }
}
POST/products/{id}/deliverables

Vincular conteúdo ao produto

Associa um entregável existente ao produto. Informe deliverable_id.

Parâmetros

Body (JSON)

CampoTipoValores permitidos
deliverable_idobrigatóriointegerID do entregável/conteúdo no seu domínio.
is_optionalbooleantrue, false
sort_orderintegertexto livre

Exemplos de código

curl -X POST 'https://api.hyype.com.br/api/v1/products/1/deliverables' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "deliverable_id": 8
}'

Exemplo de resposta

{
  "success": true,
  "message": "Entregável vinculado ao produto.",
  "data": {
    "id": 8,
    "name": "Curso Completo",
    "type": "course",
    "status": "published",
    "is_optional": false,
    "sort_order": 0
  }
}
DELETE/products/{id}/deliverables/{deliverable_id}

Desvincular conteúdo do produto

Remove o vínculo entre o produto e o entregável.

Parâmetros

Exemplos de código

curl -X DELETE 'https://api.hyype.com.br/api/v1/products/1/deliverables/8' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "message": "Entregável desvinculado do produto.",
  "data": null
}

Ofertas

GET/offers

Listar ofertas

Ofertas de venda vinculadas a produtos do domínio.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/offers?product_id=1&status=active&per_page=25&page=1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "data": [
    {
      "id": 10,
      "name": "À vista",
      "price": 197,
      "status": "active",
      "product_id": 1,
      "notify_buyer": true
    }
  ],
  "meta": {
    "current_page": 1,
    "per_page": 25,
    "total": 1,
    "last_page": 1
  }
}
POST/offers

Criar oferta

Cria oferta vinculada a um product_id do seu domínio. notify_buyer (padrão true) controla as mensagens da Hyype para o comprador.

Body (JSON)

CampoTipoValores permitidos
product_idobrigatóriointegertexto livre
nameobrigatóriostringtexto livre
descriptionstringtexto livre
priceobrigatórionumbertexto livre
compare_at_pricenumbertexto livre
currency_codestringBRL, USD, EUR
billing_typestringone_time, recurring
billing_periodstringmonthly, quarterly, yearly
statusstringactive, inactive, sold_out
skustringtexto livre
is_defaultbooleantrue, false
notify_buyerbooleantrue, false
metadataobjecttexto livre

Exemplos de código

curl -X POST 'https://api.hyype.com.br/api/v1/offers' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "product_id": 1,
  "name": "Oferta principal",
  "price": 197,
  "currency_code": "BRL",
  "billing_type": "one_time",
  "status": "active",
  "notify_buyer": true
}'
GET/offers/{id}

Obter oferta

Detalhe da oferta.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/offers/1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \
PUT/offers/{id}

Atualizar oferta

Atualiza preço, status, cobrança, notify_buyer e metadados.

Parâmetros

Body (JSON)

CampoTipoValores permitidos
namestringtexto livre
descriptionstringtexto livre
pricenumbertexto livre
compare_at_pricenumbertexto livre
currency_codestringBRL, USD, EUR
billing_typestringone_time, recurring
billing_periodstringmonthly, quarterly, yearly
statusstringactive, inactive, sold_out
skustringtexto livre
is_defaultbooleantrue, false
sales_page_urlstringtexto livre
notify_buyerbooleantrue, false
metadataobjecttexto livre

Exemplos de código

curl -X PUT 'https://api.hyype.com.br/api/v1/offers/1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "price": 247,
  "status": "active",
  "notify_buyer": true
}'
DELETE/offers/{id}

Remover oferta

Remove a oferta do catálogo ativo.

Parâmetros

Exemplos de código

curl -X DELETE 'https://api.hyype.com.br/api/v1/offers/1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Afiliados

GET/affiliates

Listar afiliados

Afiliados vinculados às ofertas do seu domínio.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/affiliates?status=accepted&is_active=true&per_page=25&page=1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "data": [
    {
      "id": 3,
      "email": "[email protected]",
      "commission_percentage": 30,
      "status": "accepted",
      "is_active": true
    }
  ],
  "meta": {
    "current_page": 1,
    "per_page": 25,
    "total": 1,
    "last_page": 1
  }
}
POST/affiliates

Criar afiliado

Convida ou cadastra afiliado em uma oferta.

Body (JSON)

CampoTipoValores permitidos
offer_idobrigatóriointegerID da oferta.
emailobrigatóriostringtexto livre
user_idintegertexto livre
commission_percentagenumbertexto livre
commission_fixednumbertexto livre
statusstringpending, accepted, rejected, expired
is_activebooleantrue, false
attribution_modelstringlast_click, first_click
cookie_duration_daysintegertexto livre

Exemplos de código

curl -X POST 'https://api.hyype.com.br/api/v1/affiliates' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "offer_id": 1,
  "email": "[email protected]",
  "commission_percentage": 30,
  "status": "pending",
  "attribution_model": "last_click"
}'
GET/affiliates/{id}

Obter afiliado

Detalhe do vínculo de afiliado.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/affiliates/1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \
PUT/affiliates/{id}

Atualizar afiliado

Comissão, status e ativação.

Parâmetros

Body (JSON)

CampoTipoValores permitidos
emailstringtexto livre
commission_percentagenumbertexto livre
commission_fixednumbertexto livre
statusstringpending, accepted, rejected, expired
is_activebooleantrue, false
attribution_modelstringlast_click, first_click
cookie_duration_daysintegertexto livre

Exemplos de código

curl -X PUT 'https://api.hyype.com.br/api/v1/affiliates/1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "commission_percentage": 40,
  "is_active": true,
  "status": "accepted"
}'
DELETE/affiliates/{id}

Remover afiliado

Remove o vínculo de afiliado.

Parâmetros

Exemplos de código

curl -X DELETE 'https://api.hyype.com.br/api/v1/affiliates/1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Coprodutores

GET/coproducers

Listar coprodutores

Vínculos de coprodutor nos produtos do seu domínio.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/coproducers?product_id=1&status=accepted&is_active=true&per_page=25&page=1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "data": [
    {
      "id": 4,
      "email": "[email protected]",
      "name": "Sócio",
      "commission_percentage": 20,
      "commission_fixed": 0,
      "status": "accepted",
      "is_active": true,
      "product": {
        "id": 1,
        "name": "Curso de Marketing",
        "slug": "curso-marketing"
      }
    }
  ],
  "meta": {
    "current_page": 1,
    "per_page": 25,
    "total": 1,
    "last_page": 1
  }
}
POST/coproducers

Criar coprodutor

Convida ou cadastra coprodutor em um produto.

Body (JSON)

CampoTipoValores permitidos
product_idobrigatóriointegerID do produto no seu domínio.
emailobrigatóriostringtexto livre
user_idintegertexto livre
commission_percentagenumbertexto livre
commission_fixednumbertexto livre
statusstringpending, accepted, rejected, expired, terminated
is_activebooleantrue, false
receives_producer_salesbooleantrue, false
receives_affiliate_salesbooleantrue, false
contract_duration_daysintegertexto livre

Exemplos de código

curl -X POST 'https://api.hyype.com.br/api/v1/coproducers' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "product_id": 1,
  "email": "[email protected]",
  "commission_percentage": 20,
  "status": "pending",
  "receives_producer_sales": true,
  "receives_affiliate_sales": true
}'

Exemplo de resposta

{
  "success": true,
  "message": "Coprodutor criado.",
  "data": {
    "id": 4,
    "email": "[email protected]",
    "commission_percentage": 20,
    "status": "pending",
    "is_active": true,
    "product": {
      "id": 1,
      "name": "Curso de Marketing",
      "slug": "curso-marketing"
    }
  }
}
GET/coproducers/transactions

Listar transações

Comissões, saques e chargebacks unidos pelo e-mail do coprodutor em qualquer tenant. meta.joined_by = email.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/coproducers/transactions?type=commission&per_page=25&page=1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Campos da resposta

CampoTipoDescrição
idintegerID da transação na carteira do coprodutor.
typestringcommission, withdraw, withdraw_fee, chargeback ou cancellation.
amountnumberValor em reais (comissões positivas; saques conforme o lançamento).
emailstringE-mail que une as contas da mesma pessoa em todos os tenants.
tenant_namestringNome do negócio de origem da transação.
tenant_domainstringDomínio do negócio de origem da transação.

Exemplo de resposta

{
  "success": true,
  "data": [
    {
      "id": 8801,
      "type": "commission",
      "category": "coproducer_commission",
      "status": "completed",
      "amount": 39.4,
      "currency": "BRL",
      "email": "[email protected]",
      "product_name": "Curso de Marketing",
      "variant_name": "À vista",
      "invoice_id": 1001,
      "invoice_number": "INV-ABC123",
      "tenant_id": 2,
      "tenant_name": "Outra Escola",
      "tenant_domain": "outra-escola.hyype.com.br",
      "created_at": "2026-09-01T12:00:00-03:00"
    }
  ],
  "meta": {
    "current_page": 1,
    "per_page": 25,
    "total": 1,
    "last_page": 1,
    "joined_by": "email"
  }
}
GET/coproducers/report

Relatório de coprodutores

Totais por e-mail e por tenant, com as transações já unidas pelo e-mail.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/coproducers/report?type=commission' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "message": "OK",
  "data": {
    "emails_count": 1,
    "joined_by": "email",
    "commission_count": 2,
    "commission_amount": 150,
    "withdraw_count": 0,
    "withdraw_amount": 0,
    "chargeback_count": 0,
    "chargeback_amount": 0,
    "by_email": [
      {
        "email": "[email protected]",
        "commission_count": 2,
        "commission_amount": 150,
        "tenants": [
          "minha-escola.hyype.com.br",
          "outra-escola.hyype.com.br"
        ]
      }
    ],
    "by_tenant": [
      {
        "tenant_id": 1,
        "tenant_name": "Minha Escola",
        "tenant_domain": "minha-escola.hyype.com.br",
        "commission_count": 1,
        "commission_amount": 100
      },
      {
        "tenant_id": 2,
        "tenant_name": "Outra Escola",
        "tenant_domain": "outra-escola.hyype.com.br",
        "commission_count": 1,
        "commission_amount": 50
      }
    ]
  }
}
GET/coproducers/{id}

Obter coprodutor

Detalhe do vínculo e lista de tenants onde o mesmo e-mail é coprodutor.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/coproducers/1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "message": "OK",
  "data": {
    "id": 4,
    "email": "[email protected]",
    "name": "Sócio",
    "status": "accepted",
    "is_active": true,
    "commission_percentage": 20,
    "product": {
      "id": 1,
      "name": "Curso de Marketing",
      "slug": "curso-marketing"
    },
    "tenants": [
      {
        "user_id": 21,
        "tenant_id": 1,
        "tenant_name": "Minha Escola",
        "tenant_domain": "minha-escola.hyype.com.br"
      },
      {
        "user_id": 88,
        "tenant_id": 2,
        "tenant_name": "Outra Escola",
        "tenant_domain": "outra-escola.hyype.com.br"
      }
    ]
  }
}
GET/coproducers/{id}/transactions

Transações do coprodutor

Extrato daquele e-mail em todos os tenants onde a pessoa é coprodutora.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/coproducers/1/transactions?type=commission&per_page=25&page=1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Campos da resposta

CampoTipoDescrição
idintegerID da transação na carteira do coprodutor.
typestringcommission, withdraw, withdraw_fee, chargeback ou cancellation.
amountnumberValor em reais (comissões positivas; saques conforme o lançamento).
emailstringE-mail que une as contas da mesma pessoa em todos os tenants.
tenant_namestringNome do negócio de origem da transação.
tenant_domainstringDomínio do negócio de origem da transação.

Exemplo de resposta

{
  "success": true,
  "data": [
    {
      "id": 8801,
      "type": "commission",
      "amount": 39.4,
      "email": "[email protected]",
      "product_name": "Curso de Marketing",
      "tenant_name": "Outra Escola",
      "tenant_domain": "outra-escola.hyype.com.br",
      "created_at": "2026-09-01T12:00:00-03:00"
    }
  ],
  "meta": {
    "current_page": 1,
    "per_page": 25,
    "total": 1,
    "last_page": 1,
    "joined_by": "email"
  }
}
PUT/coproducers/{id}

Atualizar coprodutor

Comissão, status, ativação e regras de recebimento.

Parâmetros

Body (JSON)

CampoTipoValores permitidos
emailstringtexto livre
commission_percentagenumbertexto livre
commission_fixednumbertexto livre
statusstringpending, accepted, rejected, expired, terminated
is_activebooleantrue, false
receives_producer_salesbooleantrue, false
receives_affiliate_salesbooleantrue, false
contract_duration_daysintegertexto livre

Exemplos de código

curl -X PUT 'https://api.hyype.com.br/api/v1/coproducers/1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "commission_percentage": 25,
  "is_active": true,
  "status": "accepted"
}'
DELETE/coproducers/{id}

Remover coprodutor

Remove o vínculo de coprodutor.

Parâmetros

Exemplos de código

curl -X DELETE 'https://api.hyype.com.br/api/v1/coproducers/1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "message": "Coprodutor removido.",
  "data": null
}

Entregáveis

GET/deliverables

Listar entregáveis

Conteúdos do domínio (cursos, ebooks, etc.).

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/deliverables?type=course&status=published&per_page=25&page=1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "data": [
    {
      "id": 8,
      "name": "Curso Completo",
      "type": "course",
      "status": "published"
    }
  ],
  "meta": {
    "current_page": 1,
    "per_page": 25,
    "total": 1,
    "last_page": 1
  }
}
POST/deliverables

Criar entregável

Cria o entregável e o registro interno do tipo (curso, área de membros, etc.) para o painel abrir o conteúdo. Informe product_id para vincular ao produto — sem isso o produto fica sem conteúdo. Em members_area use access_url (URL da área externa).

Body (JSON)

CampoTipoValores permitidos
nameobrigatóriostringtexto livre
typeobrigatóriostringcourse, ebook, document, masterclass, live_series, consulting, community, app, members_area
descriptionstringtexto livre
statusstringdraft, published, active, inactive
thumbnail_urlstringtexto livre
sort_orderintegertexto livre
metadataobjecttexto livre
product_idintegerID do produto no seu domínio.
access_urlstringURL da área de membros, curso ou comunidade. Sem isso a API usa um placeholder para o painel abrir.
platformstringtexto livre
subscription_typestringPeriodicidade da área de membros: vitalicio, mensal, anual ou trimestral. Padrão mensal.
webhook_urlstringtexto livre
access_instructionsstringtexto livre
scheduling_urlstringtexto livre
file_urlstringtexto livre

Exemplos de código

curl -X POST 'https://api.hyype.com.br/api/v1/deliverables' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "name": "Área de Membros",
  "type": "members_area",
  "status": "published",
  "description": "Conteúdo principal",
  "product_id": 1,
  "access_url": "https://membros.exemplo.com",
  "subscription_type": "mensal"
}'

Exemplo de resposta

{
  "success": true,
  "message": "Entregável criado.",
  "data": {
    "id": 8,
    "name": "Área de Membros",
    "type": "members_area",
    "status": "published",
    "deliverableable_id": 12
  }
}
GET/deliverables/{id}

Obter entregável

Detalhe com tipo, registro interno (deliverableable) e produtos vinculados. Repara entregáveis antigos sem entity_id.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/deliverables/1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \
PUT/deliverables/{id}

Atualizar entregável

Atualiza metadados, status e campos do tipo (access_url, etc.). Repara o registro interno se estiver ausente.

Parâmetros

Body (JSON)

CampoTipoValores permitidos
namestringtexto livre
typestringcourse, ebook, document, masterclass, live_series, consulting, community, app, members_area
descriptionstringtexto livre
statusstringdraft, published, active, inactive
thumbnail_urlstringtexto livre
sort_orderintegertexto livre
metadataobjecttexto livre
product_idintegerID do produto no seu domínio.
access_urlstringURL da área de membros, curso ou comunidade. Sem isso a API usa um placeholder para o painel abrir.
platformstringtexto livre
subscription_typestringPeriodicidade da área de membros: vitalicio, mensal, anual ou trimestral. Padrão mensal.
webhook_urlstringtexto livre
access_instructionsstringtexto livre
scheduling_urlstringtexto livre
file_urlstringtexto livre

Exemplos de código

curl -X PUT 'https://api.hyype.com.br/api/v1/deliverables/1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "status": "published",
  "product_id": 1,
  "access_url": "https://membros.exemplo.com"
}'
DELETE/deliverables/{id}

Remover entregável

Remove o entregável do catálogo ativo.

Parâmetros

Exemplos de código

curl -X DELETE 'https://api.hyype.com.br/api/v1/deliverables/1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Vendas

GET/sales

Listar vendas

Vendas do domínio. Inclui platform_fee (taxa Hyype), net_amount e tracking.utm_*. Paginação: page e per_page.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/sales?status=paid&payment_method=pix&from=2026-01-01&to=2026-12-31&per_page=25&page=1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Campos da resposta

CampoTipoDescrição
idintegerID da venda (invoice).
invoice_numberstringNúmero exibido da venda.
statusstringStatus em minúsculas: pending, paid, failed, refunded, cancelled, overdue.
amountnumberSubtotal da venda, sem frete/juros extras.
total_amountnumberValor total cobrado do cliente.
tax_amountnumberImposto da nota — não é taxa da Hyype nem do gateway. Em geral 0.
platform_feenumberTaxa da plataforma Hyype nesta venda (R$).
platform_fee_percentagenumberPercentual da taxa Hyype aplicado.
platform_fee_fixednumberParcela fixa da taxa Hyype (R$).
platform_fee_sourcestringapplied = valor creditado na carteira; estimated = calculado pela regra atual do tenant.
net_amountnumbertotal_amount menos a taxa da Hyype.
tracking.utm_sourcestringutm_source já separado.
tracking.utm_mediumstringutm_medium já separado.
tracking.utm_campaignstringutm_campaign já separado.
tracking.utm_termstringutm_term já separado.
tracking.utm_contentstringutm_content já separado.
tracking_capturedbooleantrue se algum UTM foi encontrado (campo próprio, carrinho ou query string).

Exemplo de resposta

{
  "success": true,
  "data": [
    {
      "id": 1001,
      "invoice_number": "INV-ABC123",
      "status": "paid",
      "amount": 197,
      "total_amount": 197,
      "discount_amount": 0,
      "tax_amount": 0,
      "currency": "BRL",
      "payment_method": "pix",
      "payment_gateway": "asaas",
      "platform_fee": 15.74,
      "platform_fee_percentage": 7.99,
      "platform_fee_fixed": 0,
      "platform_fee_source": "applied",
      "net_amount": 181.26,
      "customer_name": "Maria Silva",
      "customer_email": "[email protected]",
      "tracking": {
        "utm_source": "facebook",
        "utm_medium": "cpc",
        "utm_campaign": "lancamento",
        "utm_term": null,
        "utm_content": "anuncio-a",
        "referrer": "https://facebook.com",
        "landing_url": null
      },
      "tracking_captured": true,
      "product": {
        "id": 1,
        "name": "Curso de Marketing",
        "slug": "curso-marketing"
      },
      "product_variant": {
        "id": 10,
        "name": "À vista",
        "sale_uuid": "sale_abc"
      },
      "paid_at": "2026-09-01T12:00:00-03:00",
      "created_at": "2026-09-01T12:00:00-03:00"
    }
  ],
  "meta": {
    "current_page": 1,
    "per_page": 25,
    "total": 1,
    "last_page": 1,
    "tracking": {
      "reliable_from": "2026-08-01",
      "message": "O rastreio de UTM nas vendas passou a ter cobertura confiável a partir de agosto de 2026. Meses anteriores não devem ser comparados com os atuais para avaliar tráfego pago."
    }
  }
}
GET/sales/report

Relatório de vendas

Agregados: totais pagos, por método, por dia e cobertura de UTM (tracking.reliable_from).

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/sales/report?from=2026-01-01&to=2026-12-31' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "message": "OK",
  "data": {
    "total_invoices": 40,
    "paid_count": 32,
    "paid_amount": 6304,
    "pending_count": 6,
    "refunded_count": 2,
    "by_payment_method": [
      {
        "payment_method": "pix",
        "count": 20,
        "amount": 3940
      }
    ],
    "by_day": [
      {
        "day": "2026-09-01",
        "count": 4,
        "amount": 788
      }
    ],
    "tracking": {
      "reliable_from": "2026-08-01",
      "message": "O rastreio de UTM nas vendas passou a ter cobertura confiável a partir de agosto de 2026. Meses anteriores não devem ser comparados com os atuais para avaliar tráfego pago.",
      "sales_with_utm": 27,
      "sales_total": 32,
      "coverage_percent": 84.4
    }
  }
}
GET/sales/{id}

Obter venda

Detalhe da venda com itens, taxa da Hyype e UTMs já separados.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/sales/1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Campos da resposta

CampoTipoDescrição
idintegerID da venda (invoice).
invoice_numberstringNúmero exibido da venda.
statusstringStatus em minúsculas: pending, paid, failed, refunded, cancelled, overdue.
amountnumberSubtotal da venda, sem frete/juros extras.
total_amountnumberValor total cobrado do cliente.
tax_amountnumberImposto da nota — não é taxa da Hyype nem do gateway. Em geral 0.
platform_feenumberTaxa da plataforma Hyype nesta venda (R$).
platform_fee_percentagenumberPercentual da taxa Hyype aplicado.
platform_fee_fixednumberParcela fixa da taxa Hyype (R$).
platform_fee_sourcestringapplied = valor creditado na carteira; estimated = calculado pela regra atual do tenant.
net_amountnumbertotal_amount menos a taxa da Hyype.
tracking.utm_sourcestringutm_source já separado.
tracking.utm_mediumstringutm_medium já separado.
tracking.utm_campaignstringutm_campaign já separado.
tracking.utm_termstringutm_term já separado.
tracking.utm_contentstringutm_content já separado.
tracking_capturedbooleantrue se algum UTM foi encontrado (campo próprio, carrinho ou query string).

Exemplo de resposta

{
  "success": true,
  "message": "OK",
  "data": {
    "id": 1001,
    "invoice_number": "INV-ABC123",
    "status": "paid",
    "amount": 197,
    "total_amount": 197,
    "discount_amount": 0,
    "tax_amount": 0,
    "currency": "BRL",
    "payment_method": "pix",
    "payment_gateway": "asaas",
    "platform_fee": 15.74,
    "platform_fee_percentage": 7.99,
    "platform_fee_fixed": 0,
    "platform_fee_source": "applied",
    "net_amount": 181.26,
    "customer_name": "Maria Silva",
    "customer_email": "[email protected]",
    "tracking": {
      "utm_source": "facebook",
      "utm_medium": "cpc",
      "utm_campaign": "lancamento",
      "utm_term": null,
      "utm_content": "anuncio-a",
      "referrer": "https://facebook.com",
      "landing_url": null
    },
    "tracking_captured": true,
    "product": {
      "id": 1,
      "name": "Curso de Marketing",
      "slug": "curso-marketing"
    },
    "product_variant": {
      "id": 10,
      "name": "À vista",
      "sale_uuid": "sale_abc"
    },
    "paid_at": "2026-09-01T12:00:00-03:00",
    "created_at": "2026-09-01T12:00:00-03:00"
  }
}

Checkout / Carrinhos

GET/checkout-sessions

Listar sessões

Carrinhos da loja e/ou do checkout digital. source=all une as duas origens. Status sempre em minúsculas.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/checkout-sessions?source=all&status=abandoned&per_page=25&page=1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Campos da resposta

CampoTipoDescrição
idstring|integerID do carrinho (número na loja, UUID no digital).
sourcestringstore ou digital.
statusstringStatus em minúsculas.
customer_emailstringE-mail capturado no carrinho.
totalnumberValor do carrinho.
utm_sourcestringutm_source já separado.
utm_contentstringutm_content já separado.

Exemplo de resposta

{
  "success": true,
  "data": [
    {
      "id": 55,
      "source": "store",
      "status": "abandoned",
      "token": "2f8c1e2a-7c1a-4b0e-9f11-0c3d8a1b2c3d",
      "customer_name": "João",
      "customer_email": "[email protected]",
      "total": 197,
      "utm_source": "google",
      "utm_medium": "cpc",
      "utm_campaign": null,
      "utm_term": null,
      "utm_content": "ad-1",
      "referrer": "https://google.com",
      "landing_url": null,
      "created_at": "2026-09-01T11:00:00-03:00",
      "updated_at": "2026-09-01T11:20:00-03:00"
    }
  ],
  "meta": {
    "current_page": 1,
    "per_page": 25,
    "total": 1,
    "last_page": 1,
    "source": "all",
    "store": {
      "current_page": 1,
      "per_page": 25,
      "total": 1,
      "last_page": 1
    },
    "digital": {
      "current_page": 1,
      "per_page": 25,
      "total": 0,
      "last_page": 1
    }
  }
}
GET/checkout-sessions/abandoned

Carrinhos abandonados

Atalho para recuperação de carrinho abandonado.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/checkout-sessions/abandoned?source=digital&per_page=25&page=1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Campos da resposta

CampoTipoDescrição
idstring|integerID do carrinho (número na loja, UUID no digital).
sourcestringstore ou digital.
statusstringStatus em minúsculas.
customer_emailstringE-mail capturado no carrinho.
totalnumberValor do carrinho.
utm_sourcestringutm_source já separado.
utm_contentstringutm_content já separado.

Exemplo de resposta

{
  "success": true,
  "data": [
    {
      "id": 55,
      "source": "store",
      "status": "abandoned",
      "token": "2f8c1e2a-7c1a-4b0e-9f11-0c3d8a1b2c3d",
      "customer_name": "João",
      "customer_email": "[email protected]",
      "total": 197,
      "utm_source": "google",
      "utm_medium": "cpc",
      "utm_campaign": null,
      "utm_term": null,
      "utm_content": "ad-1",
      "referrer": "https://google.com",
      "landing_url": null,
      "created_at": "2026-09-01T11:00:00-03:00",
      "updated_at": "2026-09-01T11:20:00-03:00"
    }
  ],
  "meta": {
    "current_page": 1,
    "per_page": 25,
    "total": 1,
    "last_page": 1,
    "source": "all"
  }
}
GET/checkout-sessions/{id}

Obter sessão

Detalhe por id numérico ou token do carrinho da loja.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/checkout-sessions/1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Campos da resposta

CampoTipoDescrição
idstring|integerID do carrinho (número na loja, UUID no digital).
sourcestringstore ou digital.
statusstringStatus em minúsculas.
customer_emailstringE-mail capturado no carrinho.
totalnumberValor do carrinho.
utm_sourcestringutm_source já separado.
utm_contentstringutm_content já separado.

Exemplo de resposta

{
  "success": true,
  "message": "OK",
  "data": {
    "id": 55,
    "source": "store",
    "status": "abandoned",
    "token": "2f8c1e2a-7c1a-4b0e-9f11-0c3d8a1b2c3d",
    "customer_name": "João",
    "customer_email": "[email protected]",
    "total": 197,
    "utm_source": "google",
    "utm_medium": "cpc",
    "utm_campaign": null,
    "utm_term": null,
    "utm_content": "ad-1",
    "referrer": "https://google.com",
    "landing_url": null,
    "created_at": "2026-09-01T11:00:00-03:00",
    "updated_at": "2026-09-01T11:20:00-03:00"
  }
}

Leads

GET/leads

Listar leads

Leads capturados no seu domínio.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/leads?per_page=25&page=1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "data": [
    {
      "id": 44,
      "email": "[email protected]",
      "name": "Lead Exemplo",
      "phone": "11988887777",
      "source": "partner_api",
      "is_client": false
    }
  ],
  "meta": {
    "current_page": 1,
    "per_page": 25,
    "total": 1,
    "last_page": 1
  }
}
POST/leads

Criar/atualizar lead

Cria lead ou atualiza se o e-mail já existir.

Body (JSON)

CampoTipoValores permitidos
emailobrigatóriostringtexto livre
namestringtexto livre
phonestringtexto livre
notesstringtexto livre
sourcestringOrigem do lead (texto livre, ex.: partner_api, ads, organic).

Exemplos de código

curl -X POST 'https://api.hyype.com.br/api/v1/leads' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "email": "[email protected]",
  "name": "Lead Exemplo",
  "phone": "11988887777",
  "source": "partner_api"
}'
GET/leads/{id}

Obter lead

Detalhe do lead.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/leads/1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \
PUT/leads/{id}

Atualizar lead

Notas, telefone e flags.

Parâmetros

Body (JSON)

CampoTipoValores permitidos
namestringtexto livre
phonestringtexto livre
notesstringtexto livre
sourcestringtexto livre
is_clientbooleantrue, false

Exemplos de código

curl -X PUT 'https://api.hyype.com.br/api/v1/leads/1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "notes": "Contatado via WhatsApp",
  "is_client": false
}'
DELETE/leads/{id}

Remover lead

Exclui o lead.

Parâmetros

Exemplos de código

curl -X DELETE 'https://api.hyype.com.br/api/v1/leads/1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Tracking

GET/tracking/pixels

Listar pixels

Listagem de todos os pixels do domínio (somente leitura). Para criar ou editar, use /products/{id}/pixels.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/tracking/pixels?platform=meta_ads' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "message": "OK",
  "data": [
    {
      "id": 1,
      "product_id": 1,
      "platform": "meta_ads",
      "pixel_id": "123456789",
      "enabled_events": [
        "Purchase"
      ],
      "has_access_token": true
    }
  ]
}
GET/tracking/summary

Resumo de tracking

Totais por plataforma e aviso de cobertura histórica de UTM nas vendas.

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/tracking/summary' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "message": "OK",
  "data": {
    "products_with_pixels": 2,
    "total_pixels": 3,
    "by_platform": {
      "meta_ads": 2,
      "google_ads": 1
    },
    "sales_utm": {
      "reliable_from": "2026-08-01",
      "message": "O rastreio de UTM nas vendas passou a ter cobertura confiável a partir de agosto de 2026. Meses anteriores não devem ser comparados com os atuais para avaliar tráfego pago."
    }
  }
}

Logs de mensageria

GET/messaging-logs

Listar logs

Fila de mensagens enviadas apenas deste domínio (e-mail, WhatsApp, push).

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/messaging-logs?channel=email&status=sent&per_page=25&page=1' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "data": [
    {
      "id": 77,
      "channel": "email",
      "status": "sent",
      "recipient_address": "[email protected]",
      "subject": "Seu acesso"
    }
  ],
  "meta": {
    "current_page": 1,
    "per_page": 25,
    "total": 1,
    "last_page": 1
  }
}
GET/messaging-logs/{id}

Obter log

Detalhe de uma mensagem na fila.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/messaging-logs/%7Bid%7D' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "message": "OK",
  "data": {
    "id": 77,
    "channel": "email",
    "status": "sent",
    "recipient_address": "[email protected]",
    "subject": "Seu acesso",
    "body": "Olá, seu acesso foi liberado."
  }
}

Mídia

Envie uma URL pública do arquivo (MP4, playlist HLS .m3u8, imagem, áudio ou PDF). Uma playlist com várias resoluções usa a mais alta e vira MP4 nessa resolução, sem recompactar. Playlist criptografada ou ao vivo é recusada. A resposta já devolve o id da mídia e não espera o vídeo terminar: o status vem processing e o arquivo fica disponível depois. Imagem, áudio e PDF voltam ready. Use GET /media/{id} para acompanhar esse id. Ele só existe no seu negócio. Para enviar um vídeo a partir do computador, use o Gerenciador de mídia no painel. Link do Google Drive não é aceito nesta API: use a aba Google Drive nesse mesmo gerenciador. No painel, esse id é a mídia que você escolhe numa aula, módulo ou outro conteúdo.

POST/media/import-url

Importar mídia por URL

Envie url (obrigatória), title e folder_path opcionais. A URL precisa ser pública e devolver um MP4, uma playlist HLS .m3u8, imagem, áudio ou PDF. HLS usa a resolução mais alta da playlist e vira MP4 sem recompactar. A resposta já traz o id e não espera o vídeo ficar pronto. Link do Google Drive não é aceito. Para enviar do computador, use o Gerenciador de mídia no painel.

Body (JSON)

CampoTipoValores permitidos
urlobrigatóriostringURL HTTP ou HTTPS pública. Aceita o arquivo direto ou uma playlist HLS .m3u8. Sem link de visualização do Google Drive.
titlestringNome na biblioteca. Se vazio, a API usa o nome do arquivo.
folder_pathstringPasta na biblioteca, por exemplo aulas/modulo-1.

Exemplos de código

curl -X POST 'https://api.hyype.com.br/api/v1/media/import-url' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "url": "https://cdn.exemplo.com/aula.mp4",
  "title": "Aula 1",
  "folder_path": "aulas"
}'

Exemplo de resposta

{
  "success": true,
  "message": "Importação iniciada. O vídeo será processado e ficará disponível na biblioteca.",
  "data": {
    "media": {
      "id": "9f1c2a",
      "type": "video",
      "original_name": "Aula 1",
      "title": "Aula 1",
      "cdn_url": null,
      "folder_path": "aulas"
    },
    "status": "processing"
  }
}
GET/media/{id}

Consultar mídia

Devolve a mídia deste negócio pelo id da importação. status processing significa que o vídeo ainda será processado. status ready significa que já está disponível. Um id de outro negócio responde como não encontrado.

Parâmetros

Exemplos de código

curl -X GET 'https://api.hyype.com.br/api/v1/media/%7Bid%7D' \
  -H 'Authorization: Bearer SEU_TOKEN_AQUI' \
  -H 'Accept: application/json' \

Exemplo de resposta

{
  "success": true,
  "message": "OK",
  "data": {
    "media": {
      "id": "9f1c2a",
      "type": "video",
      "title": "Aula 1",
      "cdn_url": null,
      "folder_path": "aulas"
    },
    "status": "processing"
  }
}