---
title: "Get latest confirmed benchmarks for a player"
method: GET
path: "/get-benchmarks"
tags: ["GET"]
---

# Get latest confirmed benchmarks for a player

`GET /get-benchmarks`

# Notes

* Query parameter `<block_id>` must be the latest block. Use `/get-block` endpoint

* Query parameter `<player_id>` must be lowercase and start with `0x`

* Returns all confirmed precommits, benchmarks, proofs, and frauds for the player where the benchmark was started within `120` blocks of the latest block.

* Fields `benchmark.solution_nonces`, `benchmark.discarded_solution_nonces`, `proof.merkle_proofs`, and `fraud.allegation` will always be `null`

    * To retrieve that data, use /get-benchmark-data endpoint

## Query parameters

- `block_id` string, required
- `player_id` string, required

## Response `200`

Success

- GetBenchmarksResponse
  - `precommits` Precommit[]
    - `benchmark_id` string
    - `details` PrecommitDetails
      - `block_started` integer
      - `num_nonces` integer
      - `rand_hash` string
      - `fee_paid` string
    - `settings` BenchmarkSettings
      - `player_id` string
      - `block_id` string
      - `challenge_id` string
      - `algorithm_id` string
      - `difficulty` integer[]
    - `state` PrecommitState
      - `block_confirmed` integer
  - `benchmarks` Benchmark[]
    - `id` string
    - `details` BenchmarkDetails
      - `num_solutions` integer
      - `num_discarded_solutions` integer
      - `merkle_root` string
      - `sampled_nonces` integer[]
    - `state` BenchmarkState
      - `block_confirmed` integer
    - `solution_nonces` integer[]
    - `discarded_solution_nonces` integer[]
  - `proofs` Proof[]
    - `benchmark_id` string
    - `details` ProofDetails
      - `submission_delay` integer
    - `state` ProofState
      - `block_confirmed` integer
      - `block_active` integer
    - `merkle_proofs` MerkleProof[]
      - `leaf` OutputData
        - `nonce` integer
        - `runtime_signature` array[]
          - integer[]
        - `fuel_consumed` integer
        - `solution` object
        - `cpu_arch` 'amd64' | 'arm64'
      - `branch` string
  - `frauds` Fraud[]
    - `benchmark_id` string
    - `state` FraudState
      - `block_confirmed` integer
    - `allegation` string

## Changes

- **2025-06-09** `c589c03b93d9` — 1 info
  - added the optional property `proofs/items/merkle_proofs/items/leaf/cpu_arch` to the response with the `200` status
- **2025-06-05** `77a999862d17` — 2 info
  - added the optional property `benchmarks/items/details/num_discarded_solutions` to the response with the `200` status
  - added the optional property `benchmarks/items/discarded_solution_nonces` to the response with the `200` status
- **2024-11-27** `f857f902a23c` — 2 breaking, 3 warning, 5 info
  - the `precommits/items/details/fee_paid` response's property type changed from `integer` to `string`, and format from `uint256` to no format for status `200`
  - the `proofs/items/merkle_proofs/items/leaf/runtime_signature` response's property type changed from `integer` to `array`, and format from `uint64` to no format for status `200`
  - removed the optional property `benchmarks/items/state/sampled_nonces` from the response with the `200` status
  - removed the optional property `precommits/items/state/rand_hash` from the response with the `200` status
  - …6 more
- …earlier changes not shown

[Full history](https://skmtc.dev/tig-foundation/apis/the-innovation-game-api/changes/get-benchmarks/get.md)

---

[API](https://skmtc.dev/tig-foundation/apis/the-innovation-game-api.md) · [All operations](https://skmtc.dev/tig-foundation/apis/the-innovation-game-api/llms.txt) · [OpenAPI document](https://skmtc.dev/tig-foundation/apis/the-innovation-game-api/revisions/4e2cb20a0dbd?raw)
