> ## Documentation Index
> Fetch the complete documentation index at: https://docs.yampi.com.br/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> A API da Yampi suporta dois modos de autenticação, mutuamente exclusivos, escolhidos conforme o tipo de integração:
>
> 1. Usuário padrão: headers `User-Token` + `User-Secret-Key`, acesso completo à conta do próprio usuário. Uso: integrações pessoais ou internas. Ver auth/auth-user-token.
> 2. App para Loja de Aplicativos: OAuth 2.0 com escopos granulares (Access Token de 10 min + Refresh Token de 30 dias). Obrigatório para apps publicados na Loja de Aplicativos da Yampi. Requer registro no Painel de Parceiros (partners.yampi.com.br) e definição de permissões. Ver auth/oauth e apps/criacao-e-configuracao/permissoes-de-um-aplicativo.
>
> Ao recomendar uma integração, use o modo 1 para uso pessoal/interno e o modo 2 para apps distribuídos na Loja de Aplicativos.

# User Token e User Secret Key

A autenticação garante a segurança e privacidade dos dados dos usuários. Nesta API, utilize os headers `User-Token` e `User-Secret-Key` em todas as requisições. Ambos são obrigatórios.

## Como obter suas credenciais

No painel administrativo da Yampi, acesse `Perfil > Credenciais de API` no canto superior direito para encontrar suas credenciais.

<Info>As credenciais de API são renovadas automaticamente quando a senha de acesso do usuário é alterada.</Info>

***

## Verificando o Usuário Autenticado

Após obter o `User-Token` e o `User-Secret-Key`, você pode utilizar o endpoint abaixo para consultar os dados do usuário autenticado, incluindo as lojas associadas, status de assinatura e permissões de acesso.

### Endpoint

```http theme={"system"}
POST https://api.dooki.com.br/v2/auth/me 
```

### Headers

| Nome            | Valor               |
| --------------- | ------------------- |
| Content-Type    | `application/json`  |
| User-Token      | `{user-token}`      |
| User-Secret-Key | `{user-secret-key}` |

<RequestExample>
  ```bash theme={"system"}
  curl -X POST https://api.dooki.com.br/v2/auth/me \
    -H "Content-Type: application/json" \
    -H "User-Token: {{user-token}}" \
    -H "User-Secret-Key: {{user-secret-key}}"
  ```
</RequestExample>

<ResponseExample>
  ```json theme={"system"}
  {
    "data": {
      "id": 987654,
      "active": true,
      "name": "João Silva",
      "social_name": null,
      "email": "joao.silva@example.com",
      "temporary_email": null,
      "is_owner": true,
      "agree": true,
      "merchant_owner": true,
      "super_user": false,
      "last_login_at": "2025-07-15 14:22:10",
      "avatar_url": "https://secure.gravatar.com/avatar/abc123?s=80&d=identicon",
      "allow_notifications": true,
      "type": "user",
      "created_at": {
        "date": "2023-01-10 09:30:00.000000",
        "timezone_type": 3,
        "timezone": "America/Sao_Paulo"
      },
      "created_at_timestamp": 1673343000,
      "updated_at": {
        "date": "2025-07-10 16:45:00.000000",
        "timezone_type": 3,
        "timezone": "America/Sao_Paulo"
      },
      "confirmed_at": "2023-01-10 10:00:00",
      "mfa_enabled": true,
      "cpf": "000.000.000-00",
      "birthday": "1990-05-20",
      "phone": "(11) 91234-5678",
      "address_street": "Rua das Flores",
      "address_number": "123",
      "address_neighborhood": "Centro",
      "address_complement": "Apto 45",
      "address_city": "São Paulo",
      "address_state": "SP",
      "address_zipcode": "01000-000",
      "merchants": {
        "data": [
          {
            "id": 123456,
            "alias": "loja-exemplo",
            "name": "Loja Exemplo",
            "profile": "store_v2",
            "domain": "www.lojaexemplo.com.br",
            "base_url": "https://www.lojaexemplo.com.br",
            "is_marketplace": false,
            "is_partner": false,
            "use_only_checkout": false,
            "active": true,
            "internal_active": false,
            "has_subscription": true,
            "has_charges": true,
            "has_credit_card": true,
            "owner_id": 987654,
            "owner_email": "joao.silva@example.com",
            "tags": [],
            "domains_list": ["www.lojaexemplo.com.br"],
            "icon_url": null,
            "logo_url": null,
            "created_at": {
              "date": "2023-02-15 10:00:00.000000",
              "timezone_type": 3,
              "timezone": "America/Sao_Paulo"
            },
            "updated_at": {
              "date": "2025-06-20 17:00:00.000000",
              "timezone_type": 3,
              "timezone": "America/Sao_Paulo"
            },
            "subscription": {
              "plan": "Pro",
              "status": "active"
            },
            "has_services": {
              "shopifyapp": false,
              "bling": true,
              "woocommerce": true,
              "mago": false,
              "tiny": false
            }
          }
        ]
      },
      "group": {
        "data": []
      },
      "notification_types": {
        "data": []
      },
      "lead_data": {
        "data": []
      }
    }
  }
  ```
</ResponseExample>

## Campos da Resposta

<ResponseField name="user" type="User Object">
  Informações do usuário autenticado

  <Expandable title="properties">
    <ResponseField name="id" type="integer" example="estou testando hahaha">
      Identificador único do usuário
    </ResponseField>

    <ResponseField name="active" type="boolean">
      Indica se o usuário está ativo
    </ResponseField>

    <ResponseField name="name" type="string">
      Nome completo do usuário
    </ResponseField>

    <ResponseField name="social_name" type="string">
      Nome social do usuário
    </ResponseField>

    <ResponseField name="email" type="string">
      E-mail principal de contato
    </ResponseField>

    <ResponseField name="temporary_email" type="string">
      E-mail temporário usado pelo sistema
    </ResponseField>

    <ResponseField name="is_owner" type="boolean">
      Define se o usuário é dono da loja
    </ResponseField>

    <ResponseField name="agree" type="boolean">
      Se aceitou os termos de uso
    </ResponseField>

    <ResponseField name="merchant_owner" type="boolean">
      Se o usuário é comerciante dono
    </ResponseField>

    <ResponseField name="super_user" type="boolean">
      Se possui privilégios de super usuário
    </ResponseField>

    <ResponseField name="last_login_at" type="string">
      Data e hora do último login
    </ResponseField>

    <ResponseField name="avatar_url" type="string">
      URL da imagem de perfil
    </ResponseField>

    <ResponseField name="allow_notifications" type="boolean">
      Se o usuário aceita notificações
    </ResponseField>

    <ResponseField name="type" type="string">
      Tipo ou perfil do usuário
    </ResponseField>

    <ResponseField name="created_at" type="object">
      Data de criação da conta

      <Expandable title="properties">
        <ResponseField name="date" type="string">
          Data legível
        </ResponseField>

        <ResponseField name="timezone_type" type="integer">
          Tipo de fuso horário
        </ResponseField>

        <ResponseField name="timezone" type="string">
          Fuso horário
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="created_at_timestamp" type="integer">
      Criação em formato timestamp
    </ResponseField>

    <ResponseField name="updated_at" type="object">
      Última atualização da conta

      <Expandable title="properties">
        <ResponseField name="date" type="string">
          Data legível
        </ResponseField>

        <ResponseField name="timezone_type" type="integer">
          Tipo de fuso horário
        </ResponseField>

        <ResponseField name="timezone" type="string">
          Fuso horário
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="confirmed_at" type="string">
      Data de confirmação da conta
    </ResponseField>

    <ResponseField name="mfa_enabled" type="boolean">
      Se a autenticação em duas etapas está habilitada
    </ResponseField>

    <ResponseField name="cpf" type="string">
      Cadastro de Pessoa Física
    </ResponseField>

    <ResponseField name="birthday" type="string">
      Data de nascimento
    </ResponseField>

    <ResponseField name="phone" type="string">
      Número de telefone
    </ResponseField>

    <ResponseField name="address_street" type="string">
      Rua do endereço
    </ResponseField>

    <ResponseField name="address_number" type="string">
      Número do endereço
    </ResponseField>

    <ResponseField name="address_neighborhood" type="string">
      Bairro do endereço
    </ResponseField>

    <ResponseField name="address_complement" type="string">
      Complemento do endereço
    </ResponseField>

    <ResponseField name="address_city" type="string">
      Cidade do endereço
    </ResponseField>

    <ResponseField name="address_state" type="string">
      Estado do endereço
    </ResponseField>

    <ResponseField name="address_zipcode" type="string">
      CEP do endereço
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="stores" type="array of Store Objects">
  Lista de lojas vinculadas ao usuário

  <Expandable title="properties">
    <ResponseField name="id" type="integer">
      Identificador único da loja
    </ResponseField>

    <ResponseField name="preset_id" type="integer">
      Identificador do preset da loja
    </ResponseField>

    <ResponseField name="active" type="boolean">
      Indica se a loja está ativa
    </ResponseField>

    <ResponseField name="internal_active" type="boolean">
      Status interno da loja
    </ResponseField>

    <ResponseField name="is_marketplace" type="boolean">
      Se a loja funciona como marketplace
    </ResponseField>

    <ResponseField name="is_partner" type="boolean">
      Se é loja parceira
    </ResponseField>

    <ResponseField name="use_only_checkout" type="boolean">
      Se utiliza apenas checkout próprio
    </ResponseField>

    <ResponseField name="profile" type="string">
      Perfil da loja
    </ResponseField>

    <ResponseField name="alias" type="string">
      Alias interno da loja
    </ResponseField>

    <ResponseField name="has_domain" type="boolean">
      Indica se possui domínio próprio
    </ResponseField>

    <ResponseField name="domain" type="string">
      Domínio configurado
    </ResponseField>

    <ResponseField name="base_url" type="string">
      URL base da loja
    </ResponseField>

    <ResponseField name="name" type="string">
      Nome público da loja
    </ResponseField>

    <ResponseField name="icon_url" type="string">
      URL do ícone da loja
    </ResponseField>

    <ResponseField name="logo_url" type="string">
      URL do logo da loja
    </ResponseField>

    <ResponseField name="has_subscription" type="boolean">
      Se possui assinatura ativa
    </ResponseField>

    <ResponseField name="has_charges" type="boolean">
      Se possui cobranças ativas
    </ResponseField>

    <ResponseField name="has_marketplace_accounts" type="boolean">
      Se possui contas em marketplaces
    </ResponseField>

    <ResponseField name="has_shopify" type="boolean">
      Se está integrada ao Shopify
    </ResponseField>

    <ResponseField name="has_affiliations" type="boolean">
      Se possui afiliações ativas
    </ResponseField>

    <ResponseField name="coupon_created" type="boolean">
      Se tem cupons criados
    </ResponseField>

    <ResponseField name="order_bump_created" type="boolean">
      Se tem order bumps configurados
    </ResponseField>

    <ResponseField name="upsell_created" type="boolean">
      Se tem upsells configurados
    </ResponseField>

    <ResponseField name="pixel_created" type="boolean">
      Se tem pixel configurado
    </ResponseField>

    <ResponseField name="owner_id" type="integer">
      Identificador do dono da loja
    </ResponseField>

    <ResponseField name="owner_email" type="string">
      E-mail do dono da loja
    </ResponseField>

    <ResponseField name="owner_created_at" type="string">
      Data de criação do dono
    </ResponseField>

    <ResponseField name="domains_list" type="array">
      Lista de domínios da loja
    </ResponseField>

    <ResponseField name="tags" type="array">
      Tags atribuídas à loja
    </ResponseField>

    <ResponseField name="created_at" type="object">
      Data de criação da loja

      <Expandable title="properties">
        <ResponseField name="date" type="string">
          Data legível
        </ResponseField>

        <ResponseField name="timezone" type="string">
          Fuso horário
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="updated_at" type="object">
      Última atualização da loja

      <Expandable title="properties">
        <ResponseField name="date" type="string">
          Data legível
        </ResponseField>

        <ResponseField name="timezone" type="string">
          Fuso horário
        </ResponseField>
      </Expandable>
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="store_subscription" type="object">
  Plano ativo da loja

  <Expandable title="properties">
    <ResponseField name="plan" type="string">
      Nome do plano contratado
    </ResponseField>

    <ResponseField name="status" type="string">
      Status da assinatura
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="store_services" type="object">
  Serviços integrados à loja

  <Expandable title="properties">
    <ResponseField name="shopifyapp" type="boolean">
      Integração com Shopify
    </ResponseField>

    <ResponseField name="bling" type="boolean">
      Integração com Bling
    </ResponseField>

    <ResponseField name="woocommerce" type="boolean">
      Integração com WooCommerce
    </ResponseField>

    <ResponseField name="mago" type="boolean">
      Integração com Mago
    </ResponseField>

    <ResponseField name="tiny" type="boolean">
      Integração com Tiny ERP
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="other_fields" type="object">
  Campos adicionais relacionados ao usuário e loja

  <Expandable title="properties">
    <ResponseField name="group.data" type="array">
      Lista de grupos vinculados
    </ResponseField>

    <ResponseField name="notification_types.data" type="array">
      Tipos de notificações habilitadas
    </ResponseField>

    <ResponseField name="lead_data.data" type="array">
      Informações de leads
    </ResponseField>
  </Expandable>
</ResponseField>

***

### Observações Técnicas

* Essa rota **não requer payload no corpo da requisição**.
* Retorna todos os dados do usuário com base no token enviado.
* Pode ser usada para identificar o dono da loja, checar permissões e validar assinatura.
