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

# getValidityProof

> Retorna uma única prova ZK usada pelo programa de compressão para verificar que as contas fornecidas são válidas e que os novos endereços podem ser criados.

## Parâmetros de Solicitação

<ParamField body="hashes" type="array">
  Array de hashes criptográficos para contas comprimidas do Solana a serem verificadas
</ParamField>

<ParamField body="newAddressesWithTrees" type="array">
  Array de endereços de contas Solana com suas árvores de merkle associadas para verificação
</ParamField>


## OpenAPI

````yaml pt-BR/openapi/zk-compression/getValidityProof.yaml POST /
openapi: 3.0.3
info:
  title: API de Validação de Proof de Conhecimento Zero Solana
  description: >
    Indexador Solana avançado para validação de compressão de estado usando
    criptografia de conhecimento zero.

    Esta API especializada permite a verificação de NFTs comprimidos e contas de
    token na blockchain Solana

    através de provas de validade criptográficas, proporcionando certeza
    matemática da integridade dos dados para

    ativos comprimidos enquanto mantém as garantias de segurança do modelo de
    consenso da Solana.
  license:
    name: Apache-2.0
  version: 0.50.0
servers:
  - url: https://mainnet.helius-rpc.com
    description: Endpoint RPC Mainnet
  - url: https://devnet.helius-rpc.com
    description: Endpoint RPC Devnet
security: []
paths:
  /:
    summary: getValidityProof
    post:
      description: >
        Recuperar provas de validade criptográficas de conhecimento zero para
        contas comprimidas do Solana.

        Este endpoint de verificação avançada retorna os componentes da prova
        matemática necessários para

        validar NFTs comprimidos e contas de token sem exigir todos os dados
        on-chain.

        Essencial para aplicativos que precisam de verificação criptográfica do
        estado de ativos comprimidos

        enquanto se beneficiam da tecnologia de compressão de estado da Solana
        para custos de armazenamento reduzidos

        e melhor escalabilidade.
      operationId: getValidityProof
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
                - jsonrpc
                - id
                - method
                - params
              properties:
                jsonrpc:
                  type: string
                  description: A versão do protocolo JSON-RPC.
                  enum:
                    - '2.0'
                  default: '2.0'
                id:
                  type: string
                  description: Um ID para identificar a solicitação.
                  default: '1'
                method:
                  type: string
                  description: O nome do método a ser invocado.
                  enum:
                    - getValidityProof
                  default: getValidityProof
                params:
                  type: object
                  default:
                    hashes:
                      - gEF8v1TLb2T9vTaJarFj6kQoSfWNkskMSCJpPJSxZzT
                  properties:
                    hashes:
                      type: array
                      items:
                        $ref: '#/components/schemas/Hash'
                      description: >-
                        Array de hashes criptográficos para contas comprimidas
                        do Solana para verificar
                    newAddressesWithTrees:
                      type: array
                      items:
                        $ref: '#/components/schemas/AddressWithTree'
                      description: >-
                        Array de endereços de contas do Solana com suas árvores
                        de merkle associadas para verificação
                  additionalProperties: false
        required: true
      responses:
        '200':
          description: >-
            Prova de validade para contas comprimidas do Solana recuperada com
            sucesso
          content:
            application/json:
              schema:
                type: object
                required:
                  - value
                  - context
                properties:
                  context:
                    $ref: '#/components/schemas/Context'
                  value:
                    $ref: '#/components/schemas/CompressedProofWithContext'
                additionalProperties: false
        '400':
          description: >-
            Requisição Incorreta - Parâmetros de solicitação inválidos ou
            solicitação malformada.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                jsonrpc: '2.0'
                error:
                  code: -32602
                  message: Parâmetros inválidos
                id: '1'
        '401':
          description: Não autorizado - Chave API inválida ou ausente.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                jsonrpc: '2.0'
                error:
                  code: -32001
                  message: Não autorizado
                id: '1'
        '429':
          description: Muitas Solicitações - Limite de taxa excedido.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                jsonrpc: '2.0'
                error:
                  code: -32005
                  message: Muitas solicitações
                id: '1'
        '500':
          description: Erro Interno do Servidor - Ocorreu um erro no servidor.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                jsonrpc: '2.0'
                error:
                  code: -32603
                  message: Erro interno
                id: '1'
        '503':
          description: Serviço Indisponível - O serviço está temporariamente indisponível.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                jsonrpc: '2.0'
                error:
                  code: -32002
                  message: Serviço indisponível
                id: '1'
        '504':
          description: >-
            Tempo de Espera do Gateway - O tempo limite da solicitação foi
            excedido.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                jsonrpc: '2.0'
                error:
                  code: -32003
                  message: Tempo de espera do gateway
                id: '1'
      security:
        - ApiKeyQuery: []
components:
  schemas:
    Hash:
      type: string
      description: >-
        Um hash criptográfico de 32 bytes representado como uma string base58,
        usado para verificação de conta comprimida Solana.
      example: 11111112cMQwSC9qirWGjZM6gLGwW69X22mqwLLGP
    AddressWithTree:
      type: object
      required:
        - address
        - tree
      properties:
        address:
          $ref: '#/components/schemas/SerializablePubkey'
          description: >-
            Endereço da conta Solana para verificar através de prova de
            conhecimento zero
        tree:
          $ref: '#/components/schemas/SerializablePubkey'
          description: >-
            Endereço da árvore de merkle onde a conta Solana comprimida está
            armazenada
      additionalProperties: false
    Context:
      type: object
      required:
        - slot
      properties:
        slot:
          type: integer
          default: 100
          example: 100
          description: >-
            Slot atual da blockchain Solana para esta solicitação de prova de
            validade
    CompressedProofWithContext:
      type: object
      required:
        - compressedProof
        - roots
        - rootIndices
        - leafIndices
        - leaves
        - merkleTrees
      properties:
        compressedProof:
          $ref: '#/components/schemas/CompressedProof'
          description: >-
            A prova criptográfica de conhecimento zero para validar contas
            comprimidas Solana
        leafIndices:
          type: array
          items:
            type: integer
            format: int32
            minimum: 0
          description: >-
            Índices das folhas nas árvores de merkle Solana para as contas
            comprimidas
        leaves:
          type: array
          items:
            type: string
          description: >-
            Dados do nó folha para as contas comprimidas Solana sendo
            verificadas
        merkleTrees:
          type: array
          items:
            type: string
          description: >-
            Endereços das árvores de merkle Solana contendo as contas
            comprimidas
        rootIndices:
          type: array
          items:
            type: integer
            format: int64
            minimum: 0
          description: >-
            Índices das raízes nas árvores de merkle Solana para as contas
            comprimidas
        roots:
          type: array
          items:
            type: string
          description: >-
            Hashes das raízes das árvores de merkle Solana para as contas
            comprimidas
    ErrorResponse:
      type: object
      properties:
        jsonrpc:
          type: string
          description: A versão do protocolo JSON-RPC.
          enum:
            - '2.0'
          example: '2.0'
        error:
          type: object
          properties:
            code:
              type: integer
              description: O código de erro.
              example: -32602
            message:
              type: string
              description: A mensagem de erro.
            data:
              type: object
              description: Dados adicionais sobre o erro.
        id:
          type: string
          description: Identificador correspondente à solicitação.
          example: '1'
    SerializablePubkey:
      type: string
      description: >-
        Uma chave pública Solana representada como uma string base58, usada para
        identificar contas, árvores e programas.
      default: 11111118eRTi4fUVRoeYEeeTyL4DPAwxatvWT5q1Z
      example: 11111118eRTi4fUVRoeYEeeTyL4DPAwxatvWT5q1Z
    CompressedProof:
      type: object
      required:
        - a
        - b
        - c
      properties:
        a:
          type: string
          format: binary
          description: Primeiro componente da prova de validade de conhecimento zero Solana
        b:
          type: string
          format: binary
          description: Segundo componente da prova de validade de conhecimento zero Solana
        c:
          type: string
          format: binary
          description: Terceiro componente da prova de validade de conhecimento zero Solana
  securitySchemes:
    ApiKeyQuery:
      type: apiKey
      in: query
      name: api-key
      description: >-
        Sua chave API Helius. Você pode obter uma gratuitamente no
        [dashboard](https://dashboard.helius.dev/api-keys).

````