> For the complete documentation index, see [llms.txt](https://docs.airops.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.airops.com/docs/pt/integracoes/overview/integrations/sanity.md).

# Sanity

A integração com Sanity permite listar, criar, atualizar e consultar conteúdo no seu site Sanity.io.

<div align="center" data-full-width="true"><figure><img src="https://31915162-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FX2n5yPRPynbnWuO4SH0M%2Fuploads%2Fgit-blob-e27a0b7062ab6de2c18690fd8ff1b5be375d719b%2Fimage.png?alt=media" alt="" width="375"><figcaption><p>Exemplo de fluxo de trabalho listando recursos</p></figcaption></figure></div>

## Autenticação

1. **Gerar uma chave de API**
   1. Acesse o painel do seu projeto no Sanity.io
   2. Vá para a aba da API
   3. Clique no botão "Adicionar token de API"
   4. Defina um nome para o seu token (por exemplo, "AirOps")
   5. Defina as permissões como "Editor"
   6. Clique em "Salvar"
   7. Copie o token gerado
2. **Adicione a chave de API ao AirOps**
   1. Acesse a página AirOps > Configurações > Integrações
   2. Clique em "Adicionar novo" e selecione Sanity
   3. Cole o token gerado no campo Chave de API
   4. Clique em "Salvar"

**Nota de segurança:** Trate sua chave de API como uma senha. Ela fornece acesso à API REST à sua instância do Sanity e não deve ser compartilhada. Armazene-a com segurança e use-a apenas em ambientes do lado do servidor ou em ambientes seguros/autenticados.

## Funções e Seus Parâmetros <a href="#user-content-functions-and-their-parameters" id="user-content-functions-and-their-parameters"></a>

#### Parâmetros de Configuração Comuns

1. **ID do projeto**: O ID do seu projeto Sanity. (por exemplo, "w22x3y4z")
2. **Conjunto de dados**: O conjunto de dados que você deseja usar. (por exemplo, "production")

### **Listar recursos**

Busca uma lista de recursos do seu projeto Sanity. Isso é útil para recuperar posts, imagens ou outros tipos de conteúdo existentes. Retorna 100 registros por página.

1. **Tipo de recurso**: O tipo de recurso que você deseja listar. (por exemplo, "post")
2. **Último ID**: Para usar paginação, você pode definir o último ID da solicitação anterior. (Opcional)
3. **Incluir rascunhos?**: Se deve incluir recursos em rascunho nos resultados. (Opcional)

### **Buscar recurso**

Busca um único recurso do seu projeto Sanity. Isso é útil para recuperar informações detalhadas sobre um post ou imagem específica.

O array de blocos será retornado como está, mas uma estrutura de dados complementar será retornada com os atributos dos blocos convertidos para HTML simples dentro do `__airops.html` caminho JSON.

1. **ID do recurso**: O ID do recurso que você deseja buscar. (por exemplo, "4ddb0459-2734-4611-b1af-4ee13f3d5630")

### **Criar recurso**

Cria um novo recurso no seu projeto Sanity. Isso é útil para adicionar novos posts, imagens ou outros tipos de conteúdo.

1. **JSON do recurso**: O objeto JSON que representa o recurso que você deseja criar.
   * Por exemplo: `{ "title": "My New Post", "category": "blog" }`
   * Quando usado em conjunto com a entrada HTML do recurso, os atributos HTML serão ignorados desta entrada.
   * Veja <https://www.sanity.io/docs/js-client#creating-documents>.
2. **HTML do recurso**: Um objeto JSON contendo o nome do atributo do recurso como chave e o documento HTML como valor. (Opcional)
   * Por exemplo: `{ "body": "<h1>My New Post</h1><p>This is the content of my new post.</p>" }`
   * Isso é útil para criar posts com conteúdo de rich text.
   * O HTML será convertido para a estrutura Portable Text do Sanity e usado no payload para criar o recurso. Envie quantos atributos HTML forem necessários.

### **Atualizar recurso**

Atualiza um recurso existente no seu projeto Sanity.

1. **ID do recurso**: O ID do recurso que você deseja atualizar. (por exemplo, "4ddb0459-2734-4611-b1af-4ee13f3d5630")
2. **JSON do recurso**: O objeto JSON que representa o recurso que você deseja atualizar.
   * Por exemplo: `{ "title": "My Updated Post", "category": "blog" }`
   * Quando usado em conjunto com a entrada HTML do recurso, os atributos HTML serão ignorados desta entrada.
   * Veja <https://www.sanity.io/docs/js-client#patchupdate-a-document>.
3. **HTML do recurso**: Um objeto JSON contendo o nome do atributo do recurso como chave e o documento HTML como valor. (Opcional)
   * Por exemplo: `{ "body": "<h1>My New Post</h1><p>This is the content of my new post.</p>" }`
   * Isso é útil para criar posts com conteúdo de rich text.
   * O HTML será convertido para a estrutura Portable Text do Sanity e usado no payload para criar o recurso. Envie quantos atributos HTML forem necessários.

### **Enviar imagem**

Envia uma imagem para o seu projeto Sanity. Isso é útil para adicionar imagens ao seu conteúdo ou biblioteca de mídia.

1. **URL da imagem**: A URL da imagem que você deseja enviar para o Sanity. (por exemplo, "<https://example.com/image.jpg>")

### **Publicar recurso**

Publica um recurso em rascunho no seu projeto Sanity, tornando-o ativo e visível para o seu público.

1. **ID do recurso**: O ID do recurso em rascunho que você deseja publicar. (por exemplo, "drafts.4ddb0459-2734-4611-b1af-4ee13f3d5630")

### **Executar consulta**

Executa uma [GROQ](https://www.sanity.io/docs/groq) consulta arbitrária ao seu projeto Sanity. Isso é útil para buscar dados com filtragem, ordenação ou projeções personalizadas que vão além da ação integrada Listar recursos.

1. **Consulta**: A consulta GROQ a ser executada no seu conjunto de dados. (por exemplo, `*[_type == "post" && status == "published"] | order(publishedAt desc) { _id, title, slug, publishedAt }`)
2. **Parâmetros da consulta**: Um objeto JSON de parâmetros nomeados para passar para a consulta. (Opcional)
   * Por exemplo: `{ "status": "published" }` pode ser usado com uma consulta como `*[_type == "post" && status == $status]`
   * Veja <https://www.sanity.io/docs/query-cheat-sheet> para referência da sintaxe GROQ.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

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

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.airops.com/docs/pt/integracoes/overview/integrations/sanity.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
