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

# getAssetWithProof

> Получение сжатого NFT Solana и его доказательства Меркла в одном запросе DAS с помощью getAssetWithProof в OrbitFlare.

## Обзор

Для сборки инструкции Bubblegum на передачу, сжигание или делегирование нужны данные из двух источников: сам актив (владелец, делегат, хеш данных, хеш создателей, индекс листа) и его доказательство Меркла. `getAssetWithProof` возвращает и то и другое за один запрос.

Этот метод является дополнением OrbitFlare. Вы по-прежнему можете вызывать [getAsset](/ru/das-api/methods/getAsset) и [getAssetProof](/ru/das-api/methods/getAssetProof) по отдельности.

## Параметры

<ResponseField name="id" type="string" required>
  ID сжатого актива (base-58).
</ResponseField>

<ResponseField name="options" type="object">
  [Параметры отображения](/ru/das-api/display-options) для актива: `showUnverifiedCollections`, `showCollectionMetadata`, `showInscription`. Также принимается как `displayOptions`.
</ResponseField>

## Ответ

<ResponseField name="result" type="object">
  <Expandable title="поля result">
    <ResponseField name="asset" type="object">
      [Объект актива](/ru/das-api/asset-object).
    </ResponseField>

    <ResponseField name="proof" type="object">
      Доказательство Меркла с теми же полями, что и в [getAssetProof](/ru/das-api/methods/getAssetProof).
    </ResponseField>
  </Expandable>
</ResponseField>

## Примеры кода

### Запрос

```bash theme={"theme":{"light":"github-light","dark":"github-dark-default"}}
curl https://fra.rpc.orbitflare.com?api_key=YOUR-API-KEY -X POST -H "Content-Type: application/json" -d '{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "getAssetWithProof",
  "params": {
    "id": "JEKNNLZK6uQaQUEUz9GRoYZ7buHQ4rTN6k3qhX9NG8qU"
  }
}'
```

### Ответ

```json theme={"theme":{"light":"github-light","dark":"github-dark-default"}}
{
  "jsonrpc": "2.0",
  "result": {
    "asset": {
      "interface": "V1_NFT",
      "id": "JEKNNLZK6uQaQUEUz9GRoYZ7buHQ4rTN6k3qhX9NG8qU",
      "compression": {
        "eligible": false,
        "compressed": true,
        "data_hash": "6TuHoKagPg1Vqz92K5fiUNJtSC7wXHXSQfadLPnXsP8s",
        "creator_hash": "EuiqSYWYf6KnUcEmorrTrGQovPKF9a1wSVJAk7bfLgnR",
        "asset_hash": "CcMhrzXFkjyLwZdijjRibgSYw4tUzXYALoCxwms4aMFH",
        "tree": "E7fYCRWkNykc8HNZvEMRj5GuNYSwJ3WjA6HuLsh3YHvL",
        "seq": 627605,
        "leaf_id": 622994
      },
      "ownership": {
        "frozen": false,
        "delegated": false,
        "delegate": null,
        "ownership_model": "single",
        "owner": "5MRNQW3NxNes1EDnxUhqyXwffseQBLpdu6QJF8G4MdN9"
      }
    },
    "proof": {
      "root": "3wxyaNRvzuZqDd9jtqthCu87spdKuhcpaKVzP1msGyHW",
      "proof": [
        "8mjbWMPrBwYJeEmQbeYLR7mscS4umW4U3kxibuH8hcY1",
        "DV31TLc5BXCnCQMaQ9H6empbG9i69w4AWkjR5RPiyXr8",
        "G6f1pEKetujNm6JXQxD47eBudxLV1irR1U5atpAXBb4q"
      ],
      "node_index": 1671570,
      "leaf": "CcMhrzXFkjyLwZdijjRibgSYw4tUzXYALoCxwms4aMFH",
      "tree_id": "E7fYCRWkNykc8HNZvEMRj5GuNYSwJ3WjA6HuLsh3YHvL"
    }
  },
  "id": 1
}
```

Актив и доказательство сокращены. Полные примеры см. в [getAsset](/ru/das-api/methods/getAsset) и [getAssetProof](/ru/das-api/methods/getAssetProof).

### TypeScript

Сбор полей, необходимых для передачи через Bubblegum:

```typescript theme={"theme":{"light":"github-light","dark":"github-dark-default"}}
const RPC_URL = 'https://fra.rpc.orbitflare.com?api_key=YOUR-API-KEY';

async function getTransferInputs(assetId: string) {
  const response = await fetch(RPC_URL, {
    method: 'POST',
    headers: { 'Content-Type': 'application/json' },
    body: JSON.stringify({
      jsonrpc: '2.0',
      id: 1,
      method: 'getAssetWithProof',
      params: { id: assetId },
    }),
  });
  const { result, error } = await response.json();
  if (error) throw new Error(error.message);

  const { asset, proof } = result;
  return {
    merkleTree: proof.tree_id,
    root: proof.root,
    proof: proof.proof,
    leafOwner: asset.ownership.owner,
    leafDelegate: asset.ownership.delegate ?? asset.ownership.owner,
    dataHash: asset.compression.data_hash,
    creatorHash: asset.compression.creator_hash,
    nonce: asset.compression.leaf_id,
    index: asset.compression.leaf_id,
  };
}
```

## Распространённые ошибки

| Код | Сообщение | Решение |
| - | - | - |
| -32602 | Pubkey Validation Err: ... is invalid | Передайте действительный ID актива в base-58 |
| -32000 | Asset Proof Not Found | Актив не является сжатым или ещё не проиндексирован |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.