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

# Mock Batch Scores

> Get mock individual credit scores for multiple addresses

## Overview

Returns mock individual credit scores for multiple addresses without aggregation. Use this to test batch scoring scenarios where you need per-wallet scores.

<Warning>
  **SANDBOX**: This endpoint returns mock data for testing only. Do not use for production decisions.
</Warning>

## Query Parameters

<ParamField query="address" type="string" required>
  Comma-separated list of Ethereum addresses (e.g., `address=0x123...,0x456...,0x789...`)
</ParamField>

## Response

<ResponseField name="scores" type="array">
  Array of individual mock score objects
</ResponseField>

<ResponseField name="scores[].address" type="string">
  The Ethereum address
</ResponseField>

<ResponseField name="scores[].score" type="integer">
  Mock credit score between 300 and 1000
</ResponseField>

<ResponseField name="scores[].decile" type="integer">
  Score decile from 1 to 10
</ResponseField>

<ResponseField name="scores[].range" type="string">
  Score range: `low`, `fair`, `good`, `very_good`, or `excellent`
</ResponseField>

<ResponseField name="count" type="integer">
  Number of scores returned
</ResponseField>

## Comparison: Batch vs Aggregated

| Endpoint                | Returns                       | Use Case            |
| ----------------------- | ----------------------------- | ------------------- |
| `/sandbox/score/batch/` | Individual scores per address | Per-wallet display  |
| `/sandbox/score/`       | Single aggregated score       | Combined assessment |

<RequestExample>
  ```bash cURL theme={null}
  curl -X GET "https://api.credprotocol.com/api/v2/sandbox/score/batch/?address=0x1111111111111111111111111111111111111111,0x2222222222222222222222222222222222222222" \
    -H "Authorization: Bearer YOUR_API_KEY"
  ```

  ```javascript JavaScript theme={null}
  const addresses = [
    '0x1111111111111111111111111111111111111111',
    '0x2222222222222222222222222222222222222222'
  ];

  const response = await fetch(
    `https://api.credprotocol.com/api/v2/sandbox/score/batch/?address=${addresses.join(',')}`,
    {
      headers: {
        'Authorization': 'Bearer YOUR_API_KEY'
      }
    }
  );

  const data = await response.json();
  data.scores.forEach(s => console.log(`${s.address}: ${s.score}`));
  ```

  ```python Python theme={null}
  import requests

  addresses = [
      '0x1111111111111111111111111111111111111111',
      '0x2222222222222222222222222222222222222222'
  ]

  response = requests.get(
      'https://api.credprotocol.com/api/v2/sandbox/score/batch/',
      params={'address': ','.join(addresses)},
      headers={'Authorization': 'Bearer YOUR_API_KEY'}
  )

  data = response.json()
  for s in data['scores']:
      print(f"{s['address']}: {s['score']}")
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={null}
  {
    "scores": [
      {
        "address": "0x1111111111111111111111111111111111111111",
        "score": 726,
        "decile": 8,
        "range": "good",
        "model_version": "andromeda_1.0",
        "timestamp": "2024-01-15T10:30:00Z"
      },
      {
        "address": "0x2222222222222222222222222222222222222222",
        "score": 845,
        "decile": 9,
        "range": "very_good",
        "model_version": "andromeda_1.0",
        "timestamp": "2024-01-15T10:30:00Z"
      }
    ],
    "count": 2
  }
  ```
</ResponseExample>

## Performance

* **Response Time**: Instant (no blockchain queries)
* **Quota**: Does not count against your API quota
