> ## 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.

# getSignatureStatuses

> Returns the statuses of a list of signatures

## Parameters

<ParamField query="signatures" type="array" required>
  An array of transaction signatures to confirm, as base-58 encoded strings
</ParamField>

<ParamField query="config" type="object" optional>
  <Expandable title="config fields">
    <ParamField name="searchTransactionHistory" type="boolean" optional>
      If true, a Solana node will search its ledger cache for any signatures not found in the recent status cache
    </ParamField>
  </Expandable>
</ParamField>

## Response

<ResponseField name="result" type="object">
  <Expandable title="result fields">
    <ResponseField name="context" type="object">
      <ResponseField name="slot" type="number">
        The slot this request was processed in
      </ResponseField>
    </ResponseField>

    <ResponseField name="value" type="array">
      <Expandable title="value elements">
        <ResponseField name="slot" type="number">
          The slot the transaction was processed
        </ResponseField>

        <ResponseField name="confirmations" type="number | null">
          Number of blocks since signature confirmation, null if rooted or not found
        </ResponseField>

        <ResponseField name="err" type="object | null">
          Error if transaction failed, null if transaction succeeded
        </ResponseField>

        <ResponseField name="confirmationStatus" type="string | null">
          The transaction's cluster confirmation status; either "processed", "confirmed", or "finalized"
        </ResponseField>
      </Expandable>
    </ResponseField>
  </Expandable>
</ResponseField>

## Code Examples

### Basic Request

```bash theme={null}
curl http://fra.rpc.orbitflare.com?api_key=YOUR-API-KEY -X POST -H "Content-Type: application/json" -d '{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "getSignatureStatuses",
  "params": [
    [
      "5VERv8NMvzbJMEkV8xnrLkEaWRtSz9CosKDYjCJjBRnbJLgp8uirBgmQpjKhoR4tjF3ZpRzrFmBV6UjKdiSZkQUW",
      "5j7s6NiJS3JAkvgkoc18WVAsiSaci2pxB2A6ueCJP4tprA2TFg9wSyTLeYouxPBJEMzJinENTkpA52YStRW5Dia7"
    ]
  ]
}'
```

### Using web3.js

```typescript theme={null}
import { Connection } from '@solana/web3.js';

const connection = new Connection('http://fra.rpc.orbitflare.com?api_key=YOUR-API-KEY');
const signatures = [
  '5VERv8NMvzbJMEkV8xnrLkEaWRtSz9CosKDYjCJjBRnbJLgp8uirBgmQpjKhoR4tjF3ZpRzrFmBV6UjKdiSZkQUW',
  '5j7s6NiJS3JAkvgkoc18WVAsiSaci2pxB2A6ueCJP4tprA2TFg9wSyTLeYouxPBJEMzJinENTkpA52YStRW5Dia7'
];
const statuses = await connection.getSignatureStatuses(signatures);
console.log(statuses);
```

### Using Python

```python theme={null}
from solana.rpc.api import Client

client = Client("http://fra.rpc.orbitflare.com?api_key=YOUR-API-KEY")
signatures = [
    "5VERv8NMvzbJMEkV8xnrLkEaWRtSz9CosKDYjCJjBRnbJLgp8uirBgmQpjKhoR4tjF3ZpRzrFmBV6UjKdiSZkQUW",
    "5j7s6NiJS3JAkvgkoc18WVAsiSaci2pxB2A6ueCJP4tprA2TFg9wSyTLeYouxPBJEMzJinENTkpA52YStRW5Dia7"
]
response = client.get_signature_statuses(signatures)
print(response)
```

## Notes

1. Returns the statuses of a list of transaction signatures
2. By default, only searches recent status cache (last \~5 minutes of transactions)
3. Setting searchTransactionHistory to true will search further back in the ledger
4. null values in the response array indicate signatures that could not be found
5. confirmationStatus indicates how finalized a transaction is on the network

## Best Practices

1. Use this method to check the status of recently submitted transactions
2. Pass multiple signatures in a single request to reduce network overhead
3. Set searchTransactionHistory to true only when needed (performance impact)
4. Handle null values in the response array appropriately
5. Check confirmationStatus to determine transaction finality level
