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

# Test Addresses

> Test addresses and example inputs for verifying your Risk API integration across all endpoints.

Use these addresses and parameters to test your Risk API integration. Each example produces a known, predictable result so you can verify correct parsing, display logic, and error handling.

<Info>
  All examples use real onchain data. Responses may shift over time as new
  threat intelligence becomes available, but the general risk profile of each
  address should remain stable.
</Info>

***

## Address Risk Score

Test addresses for the [`GET /v1/risk/address`](/risk-api/risk/get-address-risk-score) endpoint.

### High Risk (Score 10 - Directly Malicious)

```bash theme={null}
curl -G https://api.range.org/v1/risk/address \
  --data-urlencode "address=42RLPACwZPx3vYYmxSueqsogfynBDqXK298EDsNoyoHi" \
  --data-urlencode "network=solana" \
  -H "Authorization: Bearer YOUR_API_KEY"
```

| Field                     | Expected                              |
| ------------------------- | ------------------------------------- |
| `riskScore`               | `10`                                  |
| `numHops`                 | `0`                                   |
| `maliciousAddressesFound` | Non-empty (address itself is flagged) |

### Low Risk (Score 1 - Clean Address)

```bash theme={null}
curl -G https://api.range.org/v1/risk/address \
  --data-urlencode "address=6AwuGoRLd54NTjAWeYZBVHnK4reK78FYpsqe6Z2PvU27" \
  --data-urlencode "network=solana" \
  -H "Authorization: Bearer YOUR_API_KEY"
```

| Field                     | Expected    |
| ------------------------- | ----------- |
| `riskScore`               | `1`         |
| `numHops`                 | `5`         |
| `maliciousAddressesFound` | Empty array |

### Attribution Override (System Address)

```bash theme={null}
curl -G https://api.range.org/v1/risk/address \
  --data-urlencode "address=TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA" \
  --data-urlencode "network=solana" \
  -H "Authorization: Bearer YOUR_API_KEY"
```

| Field         | Expected                                              |
| ------------- | ----------------------------------------------------- |
| `riskScore`   | `1`                                                   |
| `attribution` | Present - `"Token Program"` / `"Solana"` / `"SYSTEM"` |

This address demonstrates the attribution override: despite being close to malicious addresses, it scores 1 because it's a verified system program.

### Additional Test Addresses

| Network         | Identifier    | Address                                                           | Expected Score | Description        |
| --------------- | ------------- | ----------------------------------------------------------------- | :------------: | ------------------ |
| Solana          | `solana`      | `42RLPACwZPx3vYYmxSueqsogfynBDqXK298EDsNoyoHi`                    |       10       | Directly malicious |
| Solana          | `solana`      | `6AwuGoRLd54NTjAWeYZBVHnK4reK78FYpsqe6Z2PvU27`                    |        1       | Clean address      |
| Ethereum        | `eth`         | `0x08723392ed15743cc38513c4925f5e6be5c17243`                      |       10       | Directly malicious |
| BNB Smart Chain | `bnb`         | `0x279ac60785a2fcb85550eb243b9a42a543171cc7`                      |        3       | Clean address      |
| Polygon         | `pol`         | `0xd56e4eab23cb81f43168f9f45211eb027b9ac7cc`                      |        3       | Clean address      |
| Base            | `base`        | `0x23055618898e202386e6c13955a58d3c68200bfb`                      |        3       | Clean address      |
| Arbitrum One    | `arb1`        | `0x0711dd777ae626ef5e0a4f50e199c7a0e0666857`                      |        3       | Clean address      |
| Bitcoin         | `bitcoin`     | `3BMEXs4aRnQRKBXtfrvmxYMyt3wWkSsnHb`                              |        3       | Clean address      |
| Tron            | `tron`        | `TXJgMdjVX5dKiQaUi9QobwNxtSQaFqccvd`                              |        3       | Clean address      |
| Stellar         | `stellar`     | `GB3RMPTL47E4ULVANHBNCXSXM2ZA5JFY5ISDRERPCXNJUDEO73QFZUNK`        |        1       | Clean address      |
| Celestia        | `celestia`    | `celestiavaloper1vl3dkus7g0cj4lg0e2jrqk2reukmlht0ee7cr4`          |        1       | Clean address      |
| Osmosis         | `osmosis-1`   | `osmo1tl43tjmylclp37jduelnwrzeyuef2unxn9c04wrlakmgvzsnmgtqqet6za` |        1       | Clean address      |
| Cosmos Hub      | `cosmoshub-4` | `cosmos10d07y265gmmuvt4z0w9aw880jnsr700j6zn9kn`                   |        1       | Clean address      |

***

## Sanctions & Blacklist Check

Test addresses for the [`GET /v1/risk/sanctions`](/risk-api/risk/get-sanctions-blacklist-check) endpoint.

### Sanctioned Address

```bash theme={null}
curl -G https://api.range.org/v1/risk/sanctions \
  --data-urlencode "address=42RLPACwZPx3vYYmxSueqsogfynBDqXK298EDsNoyoHi" \
  --data-urlencode "network=solana" \
  -H "Authorization: Bearer YOUR_API_KEY"
```

Expect `sanctioned: true` or equivalent sanctions flag in the response.

### Clean Address

```bash theme={null}
curl -G https://api.range.org/v1/risk/sanctions \
  --data-urlencode "address=6AwuGoRLd54NTjAWeYZBVHnK4reK78FYpsqe6Z2PvU27" \
  --data-urlencode "network=solana" \
  -H "Authorization: Bearer YOUR_API_KEY"
```

Expect no sanctions or blacklist flags.

### Additional Test Addresses

| Network  | Identifier | Address                                        | Expected Result | Description                                    |
| -------- | ---------- | ---------------------------------------------- | --------------- | ---------------------------------------------- |
| Solana   | `solana`   | `42RLPACwZPx3vYYmxSueqsogfynBDqXK298EDsNoyoHi` | Sanctioned      | OFAC Sanctioned - Sokolovski Rolan             |
| Solana   | `solana`   | `6AwuGoRLd54NTjAWeYZBVHnK4reK78FYpsqe6Z2PvU27` | Clean           | Binance Deposit                                |
| Ethereum | `eth`      | `0x08723392ed15743cc38513c4925f5e6be5c17243`   | Sanctioned      | OFAC Sanctioned - Lazarus Group (aka APT-C-26) |
| Ethereum | `eth`      | `0x4e0924d3a751be199c426d52fb1f2337fa96f736`   | Clean           | Uniswap: LUSD-USDC                             |
| Tron     | `tron`     | `TBHTJqAy4DhHhmT3dNceJYNRz4SdLofLre`           | Sanctioned      | OFAC Sanctioned - Wang Yunhe (aka Trafficcarb) |
| Bitcoin  | `bitcoin`  | `3bsyz7qrfsi3nsaov1ff724qagrepjvuhm`           | Sanctioned      | OFAC Sanctioned - Vasinskyi Yaroslav           |

***

## Payment Risk Assessment

Test parameters for the [`GET /v1/risk/payment`](/risk-api/risk/get-payment-risk-assessment) endpoint.

### High Risk - First Interaction with New Wallet

```bash theme={null}
curl -G https://api.range.org/v1/risk/payment \
  --data-urlencode "sender_address=[To Do]" \
  --data-urlencode "recipient_address=[To Do]" \
  --data-urlencode "amount=1000.0" \
  --data-urlencode "sender_network=solana" \
  --data-urlencode "recipient_network=solana" \
  -H "Authorization: Bearer YOUR_API_KEY"
```

| Field                | Expected                                                |
| -------------------- | ------------------------------------------------------- |
| `overall_risk_level` | `"high"`                                                |
| `risk_factors`       | Includes `new_wallet_recipient` and `first_interaction` |

### Low Risk - Established Relationship

```bash theme={null}
curl -G https://api.range.org/v1/risk/payment \
  --data-urlencode "sender_address=[To Do]" \
  --data-urlencode "recipient_address=[To Do]" \
  --data-urlencode "amount=250.0" \
  --data-urlencode "sender_network=solana" \
  --data-urlencode "recipient_network=solana" \
  -H "Authorization: Bearer YOUR_API_KEY"
```

| Field                | Expected                                                                      |
| -------------------- | ----------------------------------------------------------------------------- |
| `overall_risk_level` | `"low"`                                                                       |
| `risk_factors`       | Includes `established_wallet_recipient` and `established_interaction_history` |

### Additional Test Scenarios

| Sender Network | Sender Address | Recipient Network | Recipient Address |   Amount | Expected Risk | Description                   |
| -------------- | -------------- | ----------------- | ----------------- | -------: | :-----------: | ----------------------------- |
| `solana`       | `[To Do]`      | `solana`          | `[To Do]`         |     1000 |      High     | First interaction, new wallet |
| `solana`       | `[To Do]`      | `solana`          | `[To Do]`         |      250 |      Low      | Established relationship      |
| `osmosis-1`    | `[To Do]`      | `cosmoshub-4`     | `[To Do]`         | \[To Do] |    \[To Do]   | Cross-chain payment           |
| `solana`       | `[To Do]`      | `stellar`         | `[To Do]`         | \[To Do] |    \[To Do]   | Cross-chain payment           |
| `solana`       | `[To Do]`      | `solana`          | `[To Do]`         | \[To Do] |    \[To Do]   | Dormant wallet recipient      |

***

## Token Risk Assessment

Test mint addresses for the [`GET /v1/risk/token`](/risk-api/risk/get-token-risk-assessment) endpoint (Solana only).

### Stablecoins (Expect Low Risk)

```bash theme={null}
curl -G "https://api.range.org/api/v1/ml/risk/assessment/token" \
  --data-urlencode "mint_address=EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v" \
  --data-urlencode "network=solana" \
  -H "Authorization: Bearer YOUR_API_KEY"
```

| Field                           | Expected             |
| ------------------------------- | -------------------- |
| `overall_assessment.risk_level` | `"LOW"`              |
| `summary.total_factors`         | 10+ factors assessed |

<Note>
  USDC and USDT will show HIGH for `freeze_authority` and `minting_authority` -
  this is expected for regulated stablecoins and does not indicate a problem.
  The overall assessment remains LOW because these are verified, established
  tokens.
</Note>

### Test Mint Addresses

| Token       | Mint Address                                   | Expected Risk | Notes                                                        |
| ----------- | ---------------------------------------------- | :-----------: | ------------------------------------------------------------ |
| USDC        | `EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v` |      LOW      | Regulated stablecoin; freeze/mint authority HIGH is expected |
| USDT        | `Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB` |      LOW      | Regulated stablecoin                                         |
| Wrapped SOL | `So11111111111111111111111111111111111111112`  |      LOW      | Core infrastructure token                                    |
| JUP         | `JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN`  |      LOW      | Established DeFi token                                       |
| Pyth        | `HZ1JovNiVvGrGNiiYvEozEVgZ58xaU3RKwX8eACQBCt3` |      LOW      | Infrastructure / oracle token                                |
| BONK        | `DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263` |    \[To Do]   | Meme token - useful for testing varied risk factors          |
| WIF         | `EKpQGSJtjMFqKZ9KQanSqYXRcF8fBopzLHYxdM65zcjm` |    \[To Do]   | Meme token                                                   |
| POPCAT      | `7GCihgDB8fe6KNjn2MYtkzZcRjQy3t9GHdC8uHYmW2hr` |    \[To Do]   | Meme token                                                   |

Meme tokens are useful for testing the full range of risk factors. Expect more factors to trigger MEDIUM or HIGH compared to stablecoins.

***

## Integration Checklist

Use this checklist to verify your integration handles all response variations:

<Steps>
  <Step title="Score 10 - Direct malicious hit">
    Call Address Risk Score with the high-risk address. Verify your UI displays
    the critical risk warning and `reasoning` text.
  </Step>

  <Step title="Score 1 with attribution">
    Call Address Risk Score with the Token Program address. Verify your UI
    correctly handles the `attribution` object and shows the override
    explanation.
  </Step>

  <Step title="Score 1 - Clean address">
    Call Address Risk Score with a low-risk address. Verify your UI handles
    empty `maliciousAddressesFound` arrays.
  </Step>

  <Step title="Payment with multiple risk factors">
    Call Payment Risk Assessment with the high-risk example. Verify your UI
    displays all individual `risk_factors` and the `overall_risk_level`.
  </Step>

  <Step title="Token with partial data">
    Call Token Risk Assessment with a lesser-known token. Verify your UI handles
    the `errors` array (skipped assessments) and adjusts display for fewer
    factors.
  </Step>

  <Step title="Error handling">
    Send a request with an invalid address or missing parameters. Verify your
    integration handles 400/422 error responses gracefully.
  </Step>
</Steps>

***

## Error Scenarios

Test these inputs to verify your error handling:

| Scenario                        | Input                             | Expected                      |
| ------------------------------- | --------------------------------- | ----------------------------- |
| Missing address                 | Omit `address` param              | `400` - validation error      |
| Invalid network                 | `network=invalid_chain`           | `404` - network not found     |
| Same sender/recipient (Payment) | Same address for both             | `400` - validation error      |
| Zero amount (Payment)           | `amount=0`                        | `400` - amount must be >0     |
| Invalid mint address (Token)    | `mint_address=not_a_real_address` | `422` - pattern mismatch      |
| Unsupported network (Token)     | `network=ethereum`                | `400` - only Solana supported |
