# Token Gating

## Como funciona

Um token gating é um mecanismo que permite liberar ou restringir o acesso a determinados recursos com base na posse de ativos tokenizados em uma carteira digital do usuário. Esses ativos tokenizados podem ser NFTs (tokens não fungíveis) ou outros tipos de tokens.

O token gating pode ser aplicado de várias maneiras, tornando possível oferecer benefícios exclusivos aos detentores desses ativos. Algumas das aplicações comuns do token gate incluem:

1. **Conteúdo Exclusivo:** Ao possuir um determinado NFT ou token, o usuário pode acessar conteúdos exclusivos, como artes digitais, vídeos ou artigos especiais.
2. **Descontos e Ofertas:** Os detentores de tokens específicos podem receber descontos exclusivos em produtos, serviços ou eventos relacionados ao projeto ou plataforma.
3. **Experiências Únicas:** O token gate pode conceder acesso físico a eventos exclusivos, meetups ou experiências especiais disponíveis apenas para os detentores dos ativos tokenizados.

**Os passos para a utilização de um token gating são simples:**

1. **Defina o que quer fazer com o token gating**\
   \- Quer dar acesso a sua plataforma\
   \- Quero permitir a compra de um produto\
   \- Quero dar 25% de desconto
2. **Defina o critério de passagem pelo token gating**\
   \- Precisa possuir o token da minha comunidade\
   \- Precisa possuir pelo menos 3 tokens da minha comunidade\
   \- Precisa possuir 1 Bored Ape (Uma coleção de NFTs famosa)
3. **Integre o token gating com seu sistema**

A goTokens é a solução ideal para facilitar todos esses processos, fornecendo uma plataforma completa de token gate. Veja como você pode utilizar nossa plataforma para criar e gerenciar seu próprio token gate.

## Como criar

Após conectar no admin, clique em "Token Gating" no menu lateral esquerdo.

* De um nome para o seu token gating.
* Selecione se deseja ajustar um percentual de desconto.(O percentual de desconto só se aplica em colecionáveis do tipo venda).
* Adicione um limite de uso por usuário.(Use somente se queira limitar o uso desta funcionalidade para o usuário).

<figure><img src="/files/owMxetcKkCqWxMPHBjvH" alt="" width="563"><figcaption></figcaption></figure>

## Criando a condição de acesso

Existem 3 possibilidades de criação de condição. Você pode adicionar mais de uma condição no mesmo gate caso queira.

### Condição interna

Aqui você poderá criar a condição com os colecionáveis da coleção que você mesmo criou em seu admin.

* De um nome a condição.
* Selecione a comunidade no qual vira a coleção para adicionar a condição.
* &#x20;Adicione os tokens necessários que deseja como gate. Ex: 1,2,3.(Caso deixe esta opção vazia contara como qualquer um da coleção).

Ex: Você possui uma coleção com 5 colecionáveis, caso não adicione o id será analisado se o usuário possui qualquer um da coleção selecionada.

* Adicione a quantidade necessária que o usuário precisa ter para passar pelo gate.

Ex: Caso seja o número 1, será verificado se possui pelo menos uma unidade, se for 2 será analisado se possui pelo menos 2 unidades do colecionável.

* Selecione a lógica de contagem.

A lógica consiste em quatro tipos verificações.

1. O usuário precisa ter 1 de cada um dos tokens selecionados. Quando adiciona id(s) do(s) token(s).

Ex: Quero criar adicionando os colecionáveis 1 e 2. Imagine que seu colecionável 1 possua o nome Worker e o 2 possua o nome Colabs, sendo que o colecionável 3 não seja adicionado na condição do gate.

No momento do resgate será analisado se o usuário possui pelo menos 1 do colecionável Worker ou 1 do colecionável Colabs.(Caso a quantidade necessária seja 1 ou outro número será analisado se o usuário possui a quantidade necessária adicionada).

2. O usuário precisa ter 1 de cada um dos tokens selecionados. Quando Não se adiciona id(s) do(s) token(s).

Ex: Quero criar sem adicionar os colecionáveis 1, 2 e 3.

No momento do resgate será analisado se o usuário possui ou o colecionável 1, ou colecionável 2, ou o colecionável 3.

3. A quantidade somada de tokens precisa ser pelo menos 1.

Ex: Quero criar adicionando os colecionáveis 1 e 2. Imagine que seu colecionável 1 possua o nome Worker e o 2 possua o nome Colabs, sendo que o colecionável 3 não seja adicionado na condição do gate.

No momento do resgate será analisado se o usuário possui o colecionável com id 1 Worker, e o colecionável com id 2  Colabs.(Caso a quantidade necessária seja 1 ou outro número será analisado se o usuário possui a quantidade necessária adicionada).

4. A quantidade somada de tokens precisa ser pelo menos 1. Quando Não se adiciona id(s) do(s) token(s).

Ex: Quero criar sem adicionar os colecionáveis 1, 2 e 3.

No momento do resgate será analisado se o usuário possui  o colecionável 1, o colecionável 2 e o colecionável 3.

<figure><img src="/files/gAGIgf6IOuesgAupFJ2g" alt="" width="563"><figcaption></figcaption></figure>

Após a seleção da lógica utilizada clique em "Criar condição", caso queira adicionar mais outra condição clique em "Adicionar nova condição". Caso uma condição já baste, clique em Criar Gate.

<figure><img src="/files/xLAig7y0k8fgvAlZXtDx" alt="" width="563"><figcaption></figcaption></figure>

### Condição externa

Aqui você poderá criar a condição com os colecionáveis externos pre selecionados.

* De um nome a condição.
* Selecione uma das opções de coleções já salvas em nosso sistema.
* &#x20;Adicione os tokens necessários que deseja como gate. Ex: 1,2,3.(Caso deixe esta opção vazia contara como qualquer um da coleção).

A coleção possui 5 colecionáveis, caso não adicione o id será analisado se o usuário possui qualquer um da coleção selecionada.

* Adicione a quantidade necessária que o usuário precisa ter para passar pelo gate.

Caso seja o número 1, será verificado se possui pelo menos uma unidade, se for 2 será analisado se possui pelo menos 2 unidades do colecionável.

* Selecione a lógica de contagem.

A lógica consiste em quatro tipos verificações.

1. O usuário precisa ter 1 de cada um dos tokens selecionados. Quando adiciona id(s) do(s) token(s).

Ex: Quero criar adicionando os colecionáveis 1 e 2. Imagine que o colecionável 1 possua o nome Worker e o 2 possua o nome Colabs, sendo que o colecionável 3 não seja adicionado na condição do gate.

No momento do resgate será analisado se o usuário possui pelo menos 1 do colecionável Worker ou 1 do colecionável Colabs.(Caso a quantidade necessária seja 1 ou outro número será analisado se o usuário possui a quantidade necessária adicionada).

2. O usuário precisa ter 1 de cada um dos tokens selecionados. Quando Não se adiciona id(s) do(s) token(s).

Ex: Quero criar sem adicionar os colecionáveis 1, 2 e 3.

No momento do resgate será analisado se o usuário possui ou o colecionável 1, ou colecionável 2, ou o colecionável 3.

3. A quantidade somada de tokens precisa ser pelo menos 1.

Ex: Quero criar adicionando os colecionáveis 1 e 2. Imagine que o colecionável 1 possua o nome Worker e o 2 possua o nome Colabs, sendo que o colecionável 3 não seja adicionado na condição do gate.

No momento do resgate será analisado se o usuário possui o colecionável com id 1 Worker, e o colecionável com id 2  Colabs.(Caso a quantidade necessária seja 1 ou outro número será analisado se o usuário possui a quantidade necessária adicionada).

4. A quantidade somada de tokens precisa ser pelo menos 1. Quando Não se adiciona id(s) do(s) token(s).

Ex: Quero criar sem adicionar os colecionáveis 1, 2 e 3.

No momento do resgate será analisado se o usuário possui o colecionável 1, o colecionável 2 e o colecionável 3.

<figure><img src="/files/O47QiXBhgFeaRDs7MFxx" alt="" width="563"><figcaption></figcaption></figure>

Após a seleção da lógica utilizada clique em "Criar condição", caso queira adicionar mais outra condição clique em "Adicionar nova condição". Caso uma condição já baste, clique em Criar Gate.

<figure><img src="/files/xLAig7y0k8fgvAlZXtDx" alt="" width="563"><figcaption></figcaption></figure>

### Condição por contrato

A criação com o contrato segue uma lógica bem parecida com a do contrato da coleção externa. Porem e você que adiciona o endereço de contrato da coleção.

* De um nome a condição.
* Selecione qual rede está a coleção que você quer integrar na lógica do gate.

<figure><img src="/files/v0HuV06otZh48FaYL6K0" alt="" width="563"><figcaption></figcaption></figure>

* Adicione o endereço de contrato da coleção que você quer adicionar na lógica do gate.
* &#x20;Adicione os tokens necessários que deseja como gate. Ex: 1,2,3.(Caso deixe esta opção vazia contara como qualquer um da coleção).

A coleção possui 5 colecionáveis, caso não adicione o id será analisado se o usuário possui qualquer um da coleção selecionada.

* Adicione a quantidade necessária que o usuário precisa ter para passar pelo gate.

Caso seja o número 1, será verificado se possui pelo menos uma unidade, se for 2 será analisado se possui pelo menos 2 unidades do colecionável.

* Selecione a lógica de contagem.

1. O usuário precisa ter 1 de cada um dos tokens selecionados. Quando adiciona id(s) do(s) token(s).

Ex: Quero criar adicionando os colecionáveis 1 e 2. Imagine que o colecionável 1 possua o nome Worker e o 2 possua o nome Colabs, sendo que o colecionável 3 não seja adicionado na condição do gate.

No momento do resgate será analisado se o usuário possui pelo menos 1 do colecionável Worker ou 1 do colecionável Colabs.(Caso a quantidade necessária seja 1 ou outro número será analisado se o usuário possui a quantidade necessária adicionada).

2. O usuário precisa ter 1 de cada um dos tokens selecionados. Quando Não se adiciona id(s) do(s) token(s).

Ex: Quero criar sem adicionar os colecionáveis 1, 2 e 3.

No momento do resgate será analisado se o usuário possui ou o colecionável 1, ou colecionável 2, ou o colecionável 3.

3. A quantidade somada de tokens precisa ser pelo menos 1.

Ex: Quero criar adicionando os colecionáveis 1 e 2. Imagine que o colecionável 1 possua o nome Worker e o 2 possua o nome Colabs, sendo que o colecionável 3 não seja adicionado na condição do gate.

No momento do resgate será analisado se o usuário possui o colecionável com id 1 Worker, e o colecionável com id 2  Colabs.(Caso a quantidade necessária seja 1 ou outro número será analisado se o usuário possui a quantidade necessária adicionada).

4. A quantidade somada de tokens precisa ser pelo menos 1. Quando Não se adiciona id(s) do(s) token(s).

Ex: Quero criar sem adicionar os colecionáveis 1, 2 e 3.

No momento do resgate será analisado se o usuário possui o colecionável 1, o colecionável 2 e o colecionável 3.

Após a seleção da lógica utilizada clique em "Criar condição", caso queira adicionar mais outra condição clique em "Adicionar nova condição". Caso uma condição já baste, clique em Criar Gate.

<figure><img src="/files/xLAig7y0k8fgvAlZXtDx" alt="" width="563"><figcaption></figcaption></figure>

## Atrelando gate ao colecionável

Criar o token gate e sómente uma etapa do processo. Para que realmente seja util e necessário atrelar o gate ao colecionável que você deseja coloca-lo como "objeto" somente que possui o gate obtera vantagem no resgate do colecionável.&#x20;

O gate só pode ser atrelado ao colecionável, e não a coleção.

* No menu lateral esquerdo clique em comunidades.
* No menu superior clique em coleções.
* Clique em gerenciar "Gerenciar coleção" que você deseja atrelar o gate.
* Clique em "Gerenciar" no colecionável que deseja adicionar o token gate.
* Clique em "Editar colecionável"

Procure por "Vincular Token Gate ao colecionável"

* Selecione o(s) gate(s) que deseja necessário para o resgate.

Logo a baixo tera uma opção se você deseja que o usuário passe pelo token gate para resgatar o benefício.(Caso queira a obrigatoriedade para passar pelo gate clique no switch para habilitar).

<figure><img src="/files/Jw8WCHP6v0XJhnBoLALJ" alt="" width="563"><figcaption></figcaption></figure>

Clique em "Salvar Alterações". E pronto! Seu gate esta configurado.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.gotokens.io/gotokens/como-comecar-admin/token-gating.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
