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

> ## Agent Instructions
> Responda em português brasileiro, na segunda pessoa ("você"), com base na documentação Malga.
> Não invente endpoints, parâmetros, status codes ou comportamentos de API. Se não estiver na docs, diga que não encontrou e indique a página mais próxima.
> Use os headers X-Client-Id e X-Api-Key nos exemplos de autenticação.
> Motor de Assinaturas refere-se a /v1/subscriptions* (cycles, trial, retentativas, webhooks subscription.*). Não chame de "motor de recorrência".
> Recorrência (provedor) é paymentMethod.recurrence em POST /v1/charges (initial / subsequent / unscheduled), distinto do Motor de Assinaturas.
> Sandbox é ambiente de testes e não afeta produção.

# Criar chave pública

> Gere uma chave pública temporária (client-token) para uso no client-side da Malga via API SDK em Node.js ou PHP, garantindo segurança PCI.

Crie chaves de acesso com escopos específicos para que possam ser usadas no client-side.

### Método

<Tabs>
  <Tab title="Node.js">
    ```typescript theme={null}
    import { Malga } from "malga";

    const malga = new Malga({
      apiKey: "17a64c8f-a387-4682-bdd8-d280493715e0",
      clientId: "d1d2b51a-0446-432a-b055-034518c2660e",
    });

    await malga.auth.createPublicKey({
      scope: ["tokens"],
      expires: 60,
    });
    ```
  </Tab>
</Tabs>

<Tabs>
  <Tab title="Response">
    ```typescript theme={null}
    {
      publicKey: 'd6452548-70f3-4721-9090-5320a7e19776',
      createdAt: '2023-12-31T14:12:37.735Z',
      clientId: 'd1d2b51a-0446-432a-b055-034518c2660e',
      expires: 60,
      scope: ['tokens'],
    }
    ```
  </Tab>
</Tabs>

### Parâmetros

Lista de todos os parâmetros suportados pelo método.

<ParamField path="scope" type="array" required>
  Escopos suportados da chave.

  Os valores suportados são:

  * `customers`
  * `cards`
  * `tokens`
  * `charges`
  * `webhooks`
  * `sessions`
  * `auth`
  * `reports`
  * `flows`
  * `sellers`
  * `providers`
  * `subscriptions`
</ParamField>

<ParamField path="expires" type="number" required>
  Tempo de expiração da chave em segundos
</ParamField>


## Related topics

- [Criar nova chave pública para uso no client-side](/api-reference/client-token/criar-nova-chave-publica-para-uso-no-client-side.md)
- [Começando em UI SDK's](/sdks/intro-sdk.md)
- [Autentique-se com a Malga](/documentations/welcome/authentication.md)
- [Webhooks v1.1](/documentations/webhooks/webhook1-1.md)
