Only this pageAll pages
Powered by GitBook
Couldn't generate the PDF for 130 pages, generation stopped at 100.
Extend with 50 more pages.
1 of 100

1.5.x

Documentation

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

REST API

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Introduction

CSPR.cloud is an enterprise-grade middleware platform aimed to super-charge developers and to be the primary way for dApps to interact with the Casper Network. It provides access to indexed and enriched blockchain data, real-time streaming subscriptions, and access to reliable and maintained Casper Node. The APIs include:

  • Indexed and normalized network data

  • Integrations with the existing fungible and non-fungible (NFT) token standards, such as CEP-18, CEP-47, and CEP-78

  • Support of the existing smart contract-level event standards, such as , which is also natively supported by the

  • Relevant off-chain data, such as CSPR rates or

  • and more

CSPR.cloud was built with developer experience in mind and expands the Casper Node RPC API with more data points and querying possibilities, which are not available via the native node API. You can check for examples in the section.

Reference

To get familiar with CSPR.cloud, we recommend that you read these documents:

  • Learn about the general technical aspects of CSPR.cloud API, and how it works

  • Learn how to make your first API request and start your integration with the Casper Network

  • Learn about CSPR.cloud API possibilities, which aren't present in the Casper Node RPC API

Support

If you have any questions or run into any issues while using the CSPR.cloud Web API, you can find help in the . Here you can connect and get help from other developers.

Legal

By using CSPR.cloud, you agree to our and acknowledge that you have read our .

REST API Get familiar with the REST API reference to know what endpoints are available
  • Streaming API Get familiar with the Streaming API reference to know what Web Socket subscriptions are available

  • Casper Node API Learn how to connect to the private Casper Node powered by CSPR.cloud using the most popular SDKs

  • Casper Event Standard (CES)
    Odra smart contract framework
    account info standard data
    Highlights
    Overview
    Getting started
    Highlights
    CSPR.cloud Developer Community
    Developer Terms of Service
    Privacy Policy

    Overview

    CSPR.cloud REST API is an HTTP-based API that dApps can use to programmatically query Casper network data. It has predictable resource-oriented endpoints and uses standard HTTP response codes, authentication, and verbs.

    CSPR.cloud Streaming API is WebSocket-based and follows the WebSocket standard conventions.

    Base URLs

    The APIs can be accessed using the following base URLs

    Mainnet

    API
    Base URL

    Testnet

    API
    Base URL

    Authorization

    The API is protected and requires access tokens to be provided with each request. The access tokens identify the API user and their corresponding access tier limits. Visit the page to learn more.

    Rate limits and quotas

    The API is rate-limited, with rate limits defined by the user access tier. The total number of requests to each of the APIs is limited by monthly and daily quotas. Visit the page to learn more.

    Responses

    The API sends data in the JSON format. Successful REST API responses contain the data property, which contains the response data:

    The Streaming API messages additionally include the action and timestamp properties:

    Pagination

    Requests that potentially may return an unlimited number of items are paginated. Endpoints that return paginated responses accept the page and limit query parameters to control the page and the number of items per page, correspondingly. Paginated responses contain two additional properties providing information on the total number of items and the total number of pages:

    Visit the page to learn more.

    Sorting

    Some of the endpoints that return paginated responses provide a possibility to sort the results. Sorting is controlled by the order_by and order_direction query params. Visit the page to learn more.

    Filtering

    Some of the endpoints that return paginated responses provide a possibility to filter the results by certain properties. Available filter properties vary for different endpoints and are specified in the corresponding endpoint documentation. Visit the page to learn more.

    Optional properties

    Some of the endpoints provide a possibility to include optional properties into the responses using the includes query param. Visit the page to learn more.

    Errors

    Error responses contain the error property with optional code, message, and description properties providing more information about the error that occurred:

    Visit the page to learn more.

    Versions

    This documentation covers CSPR.cloud V2. Click for CSPR.cloud V1 documentation, which will be deprecated soon.

    CSPR.cloud REST API

    https://api.cspr.cloud

    CSPR.cloud Streaming API

    wss://streaming.cspr.cloud

    Casper Node RPC API

    https://node.cspr.cloud

    Casper Node SSE API

    https://node-sse.cspr.cloud

    CSPR.cloud REST API

    https://api.testnet.cspr.cloud

    CSPR.cloud Streaming API

    wss://streaming.testnet.cspr.cloud

    Casper Node RPC API

    https://node.testnet.cspr.cloud

    Casper Node SSE API

    https://node-sse.testnet.cspr.cloud

    Authorization
    Rate limits and quotas
    Pagination
    Sorting
    Filtering
    Optional properties
    Errors
    here
    {
        "data": <ResponseData>
    }
    {
        "action": <string>,
        "data": <MessageData>,
        "timestamp": <datetime>
    }
    {
        "data": [<ResponseData>],
        "item_count": <int>,
        "page_count": <int>
    }
    {
        "error": {
            "code": 404,
            "message": "The requested block was not found"
        }
    }

    Get auction metrics

    Get auction metrics

    GET /auction-metrics

    Query params

    None

    Sorting

    None

    Optional properties

    None

    Response

    Example

    Authorization

    The CSPR.cloud API is exclusively available to registered users. To authorize your API requests, an access token is required. The access tokens identify the API user and their corresponding access tier limitations. Please visit the CSPR.cloud website to learn about the tiers and to submit an access token request. To learn more about rate limites and quotas please read the Rate limits and quotas documentation page.

    Authorization header

    The access token should be included in the Authorization header:

    curl --request GET \
        'https://node.testnet.cspr.cloud/status' \
        --header "Authorization: 55f79117-fc4d-4d60-9956-65423f39a06a"

    The access token provided in the example above is for the demonstration purposes only, and has limited capabilities.

    To learn how to include the Authorization header in Casper SDKs to access the CSPR.cloud Casper Node please read the page.

    Accessing from a browser

    At this moment CPSR.cloud provides only the server side integration. By using your access token in a front-end application, you'll expose it to the world.

    Reporting

    You can request the usage report by sending an email from your registered account to .

    Highlights

    CSPR.cloud indexes and normalizes on-chain data to improve developers' experience when building on the Casper Network. Below are examples that demonstrate some of the possibilities CSPR.cloud offers. For the full list, please see the API reference pages.

    • Including related entities Receive related entities in a single response to minimize the number of network requests needed to load the data

    • Including CSPR rates Include CSPR rates that were relevant at the moment of a transfer, contract call, or reward creation

    • Include account info information provided by the account owner in the responses that contain account identifiers

    • Query granular pieces of the auction data that interest you, like all account delegations or a list of the current era validators

    • Query fungible token data relevant to your dApp

    • Query NFT movements and ownership from CSPR.cloud while focusing on the core business value of your application

    • Check aggregated historical contract costs to provide your users with better pricing

    • Translate account hashes to the corresponding public key for accounts that were observed on the network

    • Translate account main purses to the account public keys to better trace the fund movements

    • Subscribe to contract-level events the contracts from your dApps emit to track and aggregate the off-chain state for a better user experience

    Get total validator delegators' rewards

    Get total amount of delegator rewards for a validator.

    GET /validators/{public_key}/total-delegator-rewards

    Query params

    None

    Sorting

    None

    Optional properties

    None

    Response

    uint64

    Example

    Including CSPR rates

    Often, when looking at the fiat value of a native token amount, we want it to be converted using the rate that was relevant at the moment when the corresponding action happened. CSPR.cloud REST API provides the possibility to do so when requesting data having the timestamp property and when it's semantically acceptable To learn more, visit the page.

    In the example below, we include the USD to CSPR rate in the account delegation rewards response by calling the rate with the USD currency ID as the argument in the includes query param:

    De-anonymizing account purses

    Similarly to , CSPR.cloud can also "de-anonymize" account purses which can be used as the only transfer source or destination parameter. Let's have a look at transfers that happened in this for example.

    The to_account_hash was not specified in the transfer parameters. Let's "de-anonymize" it by including the to_purse_public_key :

    Note the to_purse_public_key property that was added in the second response. It contains the public key that corresponds to the account having the to_purse as its main purse. Please check to learn about all the optional data that can be included in the responses.

    Add Awaiting Deploy signatures

    Add more signatures to awaiting deploy

    Query params

    None

    Sorting

    Get block

    Get block by its identifier (block height or block hash)

    Query params

    None

    Filtering

    REST and WebSocket API endpoints that return multiple results may provide possibility to filter the data by certain properties. Not all properties can be used as filters. Please check the endpoint documentation to find out what properties are available for filtering.

    Requests

    To filter the results by a property, the corresponding property should be provided as a query param. Multiply filters can be used in one request to narrow down the data to what fits your dApp use-case. Some filters can accept multiple values separated by a comma.

    Get centralized account infos

    Get centralized account infos

    Endpoint

    Query params

    Get deploy execution types

    Get deploy execution types.

    Query params

    None

    Get NFT standards

    Get NFT standards

    Query params

    None

    Sorting

    Get off-chain NFT metadata statuses

    Get off-chain NFT metadata statuses

    Query params

    None

    Get CSPR.name resolution

    Get CSPR.name resolution by name

    Query params

    None

    Sorting

    Connecting with an SDK
    [email protected]
    Including account info
    Accessing auction data
    Accessing token data
    Accessing NFT data
    Accessing historical contract costs
    De-anonymizing account hashes
    De-anonymizing account purses
    Receiving contract-level events
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/auction-metrics' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    AuctionMetrics
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/validators/0106ca7c39cd272dbf21a86eeb3b36b7c26e2e9b94af64292419f7862936bca2ca/total-delegator-rewards' \
      -H 'Accept: application/json' \
      -H 'Authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/accounts/019aa4adcd6f58f92eb4c98c0245e5d86b61de4919245c23ae9e906a6df5d41b0c/delegation-rewards?includes=rate(1)' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "item_count": 38490,
      "page_count": 3849,
      "data": [
        {
          "amount": "139319",
          "era_id": 11774,
          "public_key": "019aa4adcd6f58f92eb4c98c0245e5d86b61de4919245c23ae9e906a6df5d41b0c",
          "rate": 0.04051209,
          "timestamp": "2023-12-20T12:55:54Z",
          "validator_public_key": "0106ca7c39cd272dbf21a86eeb3b36b7c26e2e9b94af64292419f7862936bca2ca"
        },
        {
          "amount": "186761050",
          "era_id": 11774,
          "public_key": "019aa4adcd6f58f92eb4c98c0245e5d86b61de4919245c23ae9e906a6df5d41b0c",
          "rate": 0.04051209,
          "timestamp": "2023-12-20T12:55:54Z",
          "validator_public_key": "017d96b9a63abcb61c870a4f55187a0a7ac24096bdb5fc585c12a686a4d892009e"
        },
        ...
        {
          "amount": "139010",
          "era_id": 11771,
          "public_key": "019aa4adcd6f58f92eb4c98c0245e5d86b61de4919245c23ae9e906a6df5d41b0c",
          "rate": 0.0403257,
          "timestamp": "2023-12-20T06:55:27Z",
          "validator_public_key": "0106ca7c39cd272dbf21a86eeb3b36b7c26e2e9b94af64292419f7862936bca2ca"
        }
      ]
    }
    CSPR rate
    function
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/deploys/014989ad6e5b0c26a00f23606b8d6ec963003a9cc2e5e32f43b8ababc55fb8ab/transfers' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "amount": "99000000",
          "deploy_hash": "014989ad6e5b0c26a00f23606b8d6ec963003a9cc2e5e32f43b8ababc55fb8ab",
          "from_purse": "uref-faf8e43069a7551cbb0594dd1f93396cf204e80b59886129d3476bf3319d7aef-007",
          "id": null,
          "initiator_account_hash": "d65804fef96e8c4294c7a95daf5c7dd219f19f08e2613418b453b08eb84364ab",
          "timestamp": "2021-09-16T16:06:16Z",
          "to_account_hash": null,
          "to_purse": "uref-faf8e43069a7551cbb0594dd1f93396cf204e80b59886129d3476bf3319d7aef-007",
          "transform_key": "213bd956791dd9be048bd20b793a277d5807682bb1fa827e344cbe1ad2a3cc53"
        }
      ],
      "item_count": 1,
      "page_count": 1
    }
    "de-anonymizing account hashes"
    deploy
    optional property
    Transfer Optional Properties
    Transfer API

    Including account info

    Accounts on Casper Mainnet and Testnet networks have the possibility to self-identify themselves in a decentralized with the Casper Account Info Standard smart contract. Many validators and contract owner accounts provide information about themselves to increase trust on the network.

    CSPR.cloud REST API allows including account information to simplify the integration with the standard for dApps developers. Typically, account info standard data can be included in responses that contain account identifiers like account hashes or public keys.

    In the example below, we'll include validator account info data in the account delegations API response. To demonstrate the possibility of filtering included object data, we'll request only the owner name and logo properties of the account info object.

    curl -X 'GET' -G \
      'https://api.testnet.cspr.cloud/accounts/018df66cb0257dd378d1944d665ea001518419408d55db740a9bb1a262093cefd9/delegations' \
      --data-urlencode 'includes=validator_account_info{info{owner{name,branding{logo}}}}' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "bonding_purse": "uref-845ca8130882c27ee0da81252ed0deb7787796a3868df4b771e0518383d89a4b-007",
          "public_key": "018df66cb0257dd378d1944d665ea001518419408d55db740a9bb1a262093cefd9",
          "stake": "235732110487",
          "validator_account_info": null,
          "validator_public_key": "0196948158bf5b35c0c84f680f110b8debaa4e7628e13ba336a95651a214d3b9bd"
        },
        {
          "bonding_purse": "uref-a5bac0a17edeed284a0264f3fbbd189d3c4819f0e788a576792dc028c8476fba-007",
          "public_key": "018df66cb0257dd378d1944d665ea001518419408d55db740a9bb1a262093cefd9",
          "stake": "565388190696",
          "validator_account_info": {
            "info": {
              "owner": {
                "branding": {
                  "logo": {
                    "png_1024": "",
                    "png_256": "https://picsum.photos/256/256",
                    "svg": ""
                  }
                },
                "name": "ACME"
              }
            }
          },
          "validator_public_key": "0106ca7c39cd272dbf21a86eeb3b36b7c26e2e9b94af64292419f7862936bca2ca"
        }
      ],
      "item_count": 2,
      "page_count": 1
    }

    Resolving CSPR.name

    CSPR.cloud REST API provides the possibility to resolve CSPR.name names either directly by calling the CSPR.name Resolution API or by including CSPR.name names as optional properties.

    At the moment of writing this page (August 27th, 2024), the CSPR.name is not launched yet. That's why we added a test CSPR.name for the Faucet account to allow developers to implement and test their CSPR.name integration before the launch.

    Direct CSPR.name to account hash resolution can be done using the Get CSPR.name resolution API and is recommended for the situations when you receive the name outside CSPR.cloud and want to resolve it to the corresponding account hash:

    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/cspr-name-resolutions/faucet.cspr' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": {
        "name_token_id": "0000000000000000000000000000000000000000000000000000000000000000",
        "name": "faucet.cspr",
        "resolved_hash": "b383c7cc23d18bc1b42406a1b2d29fc8dba86425197b6f553d7fd61375b5e446",
        "expires_at": "2124-08-27T12:00:00Z"
      }
    }

    In situations, when you want to resolve account hashes to the corresponding CSPR.name names, in most of the cases it's possible to do by requesting CSPR.name as optional property in the includes query parameter:

    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/deploys/872394dcb8ac58b61f543e6fa0e3425b1db6b83a03d9d46cbf55c9d4b736624f?includes=caller_cspr_name' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'

    If you want to find the primary CSPR.name for an account, you can include it in the Get account API:

    None

    Optional properties

    None

    Response

    Status [boolean]

    Example

    HTTP Status Created (201)

    POST /awaiting-deploys/{deploy_hash}/approvals
    Example

    Filter NFT tokens by owner and contract package:

    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/nft-tokens?owner_hash=8c9675894eb753007c17058b4616dee224171365f0ac5e161152b1e5c95ce944&contract_package_hash=998af6825d77da15485baf4bb89aeef3f1dfb4a78841d149574b0be694ce4821' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    Name
    Type
    Description

    account_hash

    []string

    Comma-separated list of account hashes

    Sorting

    Property
    Description

    account_hash

    Comma-separated list of account hashes

    Optional properties

    None

    Response

    PaginatedResponse<CentralizedAccountInfo>

    Example

    Sorting

    None

    Optional properties

    None

    Response

    List of value objects describing the available deploy execution types

    Example

    GET /deploy-execution-types
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/deploy-execution-types' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'

    None

    Optional properties

    None

    Response

    List of value objects describing the available NFT standards

    Example

    GET /nft-token-standards
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/nft-token-standards' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    Sorting

    None

    Optional properties

    None

    Response

    List of value objects describing the available off-chain NFT metadata statuses

    Example

    GET /nft-token-offchain-metadata-statuses
    None

    Optional properties

    None |

    Response

    <CSPRNameResolution>

    Example

    GET /cspr-name-resolutions/{name}
    {
      "data": {
        "current_era_id": 12137,
        "active_validator_number": 100,
        "total_bids_number": 256,
        "active_bids_number": 110,
        "total_active_era_stake": "17143148308665709822"
      }
    }
    {
      "data": 3448524944825704
    }
    curl -X 'GET' -G \
      'https://api.testnet.cspr.cloud/deploys/014989ad6e5b0c26a00f23606b8d6ec963003a9cc2e5e32f43b8ababc55fb8ab/transfers' \
      --data-urlencode 'includes=to_purse_public_key' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "amount": "99000000",
          "deploy_hash": "014989ad6e5b0c26a00f23606b8d6ec963003a9cc2e5e32f43b8ababc55fb8ab",
          "from_purse": "uref-faf8e43069a7551cbb0594dd1f93396cf204e80b59886129d3476bf3319d7aef-007",
          "id": null,
          "initiator_account_hash": "d65804fef96e8c4294c7a95daf5c7dd219f19f08e2613418b453b08eb84364ab",
          "timestamp": "2021-09-16T16:06:16Z",
          "to_account_hash": null,
          "to_purse": "uref-faf8e43069a7551cbb0594dd1f93396cf204e80b59886129d3476bf3319d7aef-007",
          "to_purse_public_key": "01f25c7f82f8bf57b195f18412f9c13b239e95b007eb226f559f8320f3acffac7c",
          "transform_key": "213bd956791dd9be048bd20b793a277d5807682bb1fa827e344cbe1ad2a3cc53"
        }
      ],
      "item_count": 1,
      "page_count": 1
    }
    {
      "data": {
        "args": {
          "amount": {
            "cl_type": "U512",
            "parsed": "1000000000000"
          },
          "target": {
            "cl_type": {
              "ByteArray": 32
            },
            "parsed": "3234c6a8e17a19976300d18d6dcc444839ff981c5bfcd0d8724e3a0c018f61f3"
          }
        },
        "block_hash": "b8e7c74faed73e54be402a5f575a6cd8adf7382ed58bdb0ed48271464a122415",
        "block_height": 3618748,
        "caller_cspr_name": "faucet.cspr",
        "caller_public_key": "018afa98ca4be12d613617f7339a2d576950a2f9a92102ca4d6508ee31b54d2c02",
        "contract_hash": null,
        "contract_package_hash": null,
        "cost": "2976291766",
        "deploy_hash": "872394dcb8ac58b61f543e6fa0e3425b1db6b83a03d9d46cbf55c9d4b736624f",
        "entry_point_id": null,
        "error_message": null,
        "execution_type_id": 1,
        "payment_amount": "4000000000",
        "status": "processed",
        "timestamp": "2024-08-26T14:34:56Z"
      }
    }
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/accounts/018afa98ca4be12d613617f7339a2d576950a2f9a92102ca4d6508ee31b54d2c02?includes=cspr_name' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": {
        "account_hash": "b383c7cc23d18bc1b42406a1b2d29fc8dba86425197b6f553d7fd61375b5e446",
        "balance": 9516302858997050000,
        "cspr_name": "faucet.cspr",
        "deployment_threshold": 1,
        "key_management_threshold": 1,
        "main_purse_uref": "uref-b06a1ab0cfb52b5d4f9a08b68a5dbe78e999de0b0484c03e64f5c03897cf637b-007",
        "public_key": "018afa98ca4be12d613617f7339a2d576950a2f9a92102ca4d6508ee31b54d2c02"
      }
    }
    curl -X 'POST' \
      'https://api.testnet.cspr.cloud/awaiting-deploys/aa46828cd1b756686c2ed1af7fcd8ab0b37305a208164dd55aaf19d23607dfa9' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
      -d '{
            "signer": "01b687decf949c368be61262a622bb302d0ce2b12cad9b2f01d7ba08aa9e3e3f03",
            "signature": "01dcb1af7af51f02e67cb1f3dad48ddaa8ede92e72f428d298f69ffbbe53441ab52beb19a5405968c9c60b9262a980d8ccb93f56a358aaee67ff16b73ab9879103"
          }'
    {
      "data": true
    }
    {
      "data": [
        {
          "contract_package_hash": "998af6825d77da15485baf4bb89aeef3f1dfb4a78841d149574b0be694ce4821",
          "is_burned": false,
          "offchain_metadata": null,
          "offchain_metadata_status": 0,
          "onchain_metadata": "eyJuYW1lIjogIlF1aWV0IHBsYWNlcyIsICJhc3NldCI6ICJodHRwczovL21hcml0aW1lLnNlYWxzdG9yYWdlLmlvL21ha2UvOTk4YWY2ODI1ZDc3ZGExNS9iMzQ0NzhkMzkyNjY0OGEyODkzZWNlM2NiNzJiMGIwMSIsICJkZXNjcmlwdGlvbiI6ICJhIGxvZnQgIn0=",
          "owner_hash": "8c9675894eb753007c17058b4616dee224171365f0ac5e161152b1e5c95ce944",
          "owner_type": 0,
          "timestamp": "2022-12-06T18:41:41Z",
          "token_id": "13",
          "token_standard_id": 1,
          "tracking_id": 21455
        },
        {
          "contract_package_hash": "998af6825d77da15485baf4bb89aeef3f1dfb4a78841d149574b0be694ce4821",
          "is_burned": false,
          "offchain_metadata": null,
          "offchain_metadata_status": 0,
          "onchain_metadata": "eyJuYW1lIjogImxpYnJhcnkiLCAiYXNzZXQiOiAiaHR0cHM6Ly9tYXJpdGltZS5zZWFsc3RvcmFnZS5pby9tYWtlLzk5OGFmNjgyNWQ3N2RhMTUvNTQ0ZjI5ZDJiOTZmNDc1ZjhmYWMwMmJmMzY5ZWM2MGUiLCAiZGVzY3JpcHRpb24iOiAiYW5vdGhlciBjb29sIHF1aWV0IHBsYWNlIn0=",
          "owner_hash": "8c9675894eb753007c17058b4616dee224171365f0ac5e161152b1e5c95ce944",
          "owner_type": 0,
          "timestamp": "2022-12-06T18:44:45Z",
          "token_id": "14",
          "token_standard_id": 1,
          "tracking_id": 21456
        }
      ],
      "item_count": 2,
      "page_count": 1
    }
    GET /centralized-account-info
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/centralized-account-info?account_hash=02FAAA3D8155039A88589D531F8107335476589C2E920980A6981F905671E20D' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "account_hash": "02faaa3d8155039a88589d531f8107335476589c2e920980a6981f905671e20d",
          "avatar_url": "https://casper-assets.s3.amazonaws.com/accounts/casper-association.png",
          "name": "Casper Association - Developer grants",
          "url": null
        }
      ],
      "item_count": 1,
      "page_count": 1
    }
    {
      "data": [
        {
          "id": 1,
          "name": "ModuleBytes"
        },
        {
          "id": 2,
          "name": "StoredContractByHash"
        },
        {
          "id": 3,
          "name": "StoredContractByName"
        },
        {
          "id": 4,
          "name": "StoredVersionedContractByHash"
        },
        {
          "id": 5,
          "name": "StoredVersionedContractByName"
        },
        {
          "id": 6,
          "name": "Transfer"
        }
      ]
    }
    {
      "data": [
        {
          "id": 1,
          "name": "CEP47"
        },
        {
          "id": 2,
          "name": "CEP78"
        }
      ]
    }
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/nft-token-offchain-metadata-statuses' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "id": 0,
          "name": "None"
        },
        {
          "id": 1,
          "name": "Pending"
        },
        {
          "id": 2,
          "name": "Synced"
        },
        {
          "id": 3,
          "name": "Failed"
        }
      ]
    }
    curl -X 'GET' \
       'https://api.testnet.cspr.cloud/cspr-name-resolutions/faucet.cspr' \
       -H 'Accept: application/json' \
       -H 'Authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": {
          "name_token_id": "0000000000000000000000000000000000000000000000000000000000000000",
          "name": "faucet.cspr",
          "resolved_hash": "b383c7cc23d18bc1b42406a1b2d29fc8dba86425197b6f553d7fd61375b5e446",
          "is_primary": true,
          "expires_at": "2124-08-27 12:00:00.00"
      }
    }
    Sorting

    None

    Optional properties

    Property
    Type
    Description

    proposer_account_info

    provided by the block proposer

    proposer_centralized_account_info

    Account information available for known accounts provided by CSPR.cloud team

    proposer_cspr_name

    string

    Primary CSPR.name of the block proposer account

    Response

    Block

    Example

    Getting started

    This tutorial will help you make your first API call to receive a list of NFT tokens in the CSPR.studio contract.

    Prerequisites

    We will use cURL to make API calls. You can install it from the curl.se website or by using the package manager of your choice.

    Create an access token

    Please register on to create a CSPR.cloud access token.

    First API call

    To fetch the NFT tokens in the contract we'll be using the . The endpoint requires a contract package hash, which we can find on :

    Replace "[Your-Access-Token]" with your actual access token in each example.

    What's next

    Please proceed with the following documents to get familiar with CSPR.cloud:

    • Learn about the general technical aspects of CSPR.cloud API, and how it works

    • Learn about CSPR.cloud API possibilities, which aren't present in the Casper Node RPC API

    • Get familiar with the REST API reference to know what endpoints are available

    Pagination

    REST API endpoints that potentially may return an unlimited number of items are paginated.

    Requests

    In addition to the endpoint-specific parameters, endpoints that return paginated responses accept the following pagination parameters to control the page and number of items per page correspondingly:

    Parameter
    Type
    Default
    Description

    The maximum number of items per page is 250.

    Responses

    Paginated responses contain two additional properties providing information on the total number of items and the total number of pages:

    Parameter
    Type
    Description

    Example

    Get the second page of accounts with 25 items per page:

    Traversing results

    When making an API request to an endpoint that returns paginated data, you usually don't receive all of the results in a single response. To traverse the data, you need to increment the page number in your requests until you collect all the required items. When doing so, note the . Setting the number of items per page to its maximum value of 250 will minimize the chances of being rate-limited for most of the use cases.

    Note that if new objects are added to the list of items being paginated, the contents of each page will change.

    Get contract package

    Get a contract package by its identifier (contract package hash).

    This endpoint allows you to retrieve detailed information about a specific contract package using its unique identifier, the contract package hash. The response includes various properties such as owner public key, name, description, metadata, latest version contract type ID, timestamp, icon URL, and deploys number.

    Query params

    None

    Sorting

    None

    Optional properties

    Property
    Type
    Description

    Response

    Example

    Rate limits and quotas

    At CSPR.cloud, we distinguish between rate limits and quotas to ensure efficient API management.

    Rate limit

    We impose a limit on the number of requests per minute. This measure helps manage load and avoid overloading our systems.

    Quotas

    Quotas control the overall call rates over an extended period, often tied to subscription tiers.

    • Long-term Management: Quotas determine the total number of calls that can be made in a set period, like a month.

    • Tier-based Access: For example, a free tier might allow 10,000 calls per month, while a premium tier could permit up to 10,000,000 calls in the same timeframe.

    Exceeding these limits triggers a 429 error, signaling a rate limit breach.

    Free tier limits

    The free tier limits are set to ensure that you can test the API and integrate it into your application.

    Mainnet

    Service
    Monthly quota
    Daily quota
    Rate limit /min

    Testnet

    Service
    Monthly quota
    Daily quota
    Rate limit /min

    Handling limits

    To effectively manage your API usage and comply with rate limit or quota, consider the following strategies:

    • Upgrade to Premium Tier: If your needs exceed the free tier quota, consider upgrading to our Premium tier for higher limits. You can apply at .

    • Implement a Backoff-Retry Strategy: In cases where you encounter a 429 error (rate limit or quota exceeded), it's advisable to implement a backoff-retry strategy. This involves reducing the frequency of your API requests to stay within the allowed limits.

    • Monitor API Calls: Utilize logging tools to monitor your application’s API usage. This can help you identify patterns and optimize your request strategy to ensure efficient usage.

    Adhering to these strategies will help you efficiently manage your API usage within the CSPR.cloud environment.

    Accessing token data

    Fungible tokens are one of the most used abstractions implemented on blockchains. CSPR.cloud allows dApp developers to focus on the core logic of their applications by tracking the token activity on the Casper Network for CEP-18 compatible tokens and providing APIs to query that data. CSPR.cloud provides a possibility to:

    • Get list of tokens owned by an account with their balances

    • Get list of token owners for a fungible token contract

    Below is an example, that demonstrated fetching list of tokens owned by an account. Note, that we are about the contract package using the includes query parameter.

    Contract entry point

    The ContractEntryPoint entity offers a normalized representation of the Casper Network EntryPoint. Entry points are associated with the Contract entity and describe how to interact with it. In CSPR.Cloud, only the name of the entry point and its relations to the Contract and ContractPackage are stored.

    Properties

    The ContractEntryPoint entity has the following properties:

    Property
    Type
    Description

    Example

    Optional properties

    None

    Relations

    The ContractEntryPoint entity has the following relations with other entities:

    Entity
    Mapping property
    Description

    Endpoints

    The ContractEntryPoint entity has the following endpoints:

    Relation endpoints

    Get account

    Get account by its identifier (public key or account hash)

    Query params

    None

    Sorting

    None

    Optional properties

    Property
    Type
    Description

    Response

    Example

    Auction metrics

    The AuctionMetrics entity represents calculated metrics for the era retrieved from auction info

    Properties

    The AuctionMetrics entity has the following properties:

    Property

    Type

    Example

    Optional properties

    None

    Relations

    Entity
    Mapping property
    Description

    Endpoints

    The AuctionMetrics entity has the following endpoints:

    Relation endpoints

    None

    Get contract types

    Get all contract types with their id and name.

    GET /contract-types

    Query params

    None

    Sorting

    None

    Optional properties

    None

    Response

    List of value objects describing the available contract types

    Example

    Get contract entry points

    Get contract entry points by contract hash

    GET /contracts/{contract_hash}/entry-points

    Query params

    None

    Sorting

    None

    Optional properties

    None

    Response

    Example

    Get contract package fungible token ownership

    Get contract package fungible token ownership

    Query params

    None

    Sorting

    Property
    Description

    Optional properties

    Property
    Type
    Description

    Response

    Example

    Get historical currency rates

    Get a paginated list of historical currency rates for the given time range.

    Query params

    Query param
    Description

    from

    Start of the range in the format

    Sorting

    Property
    Description

    Default sorting is created ASC

    Optional properties

    None

    Response

    Example

    Accessing auction data

    CPSR.cloud provides granular access to the auction data, which is more convenient than parsing the results of the state_get_auction_info Casper RPC API method, through the following APIs:

    • Get bidder

    • Get bidders

    • Get validator

    For example, fetching account delegations can be done with the following API request:

    Reference

    This is a full list of the available CSPR.cloud REST API entities. Some of the entities are presented as root-level resources, and some represent related information of the root-level resources and are presented as their edges. The endpoints associated with each entity provide all the relevant data about that entity. Value objects that provide a mapping between identifiers and names aren't listed here and are documented with the corresponding endpoint documentation.

    Entities may have relations to other entities. Such relations are exposed by the presence of one entity identifier in the other entity properties. Typically, it means that this identifier can be used as a in the API requests and that the related entity could be included in the responses as an .

    Entity
    Description

    Get Awaiting Deploy

    Get awaiting deploy by its hash

    Query params

    None

    Sorting

    Delegation

    The Delegation entity represents a record of a delegation transaction in the context of Casper Network

    Properties

    The Delegation entity has the following properties:

    Property

    Get account fungible token ownership

    Get accounts fungible token ownership by identifier (public key or account hash)

    Query params

    None

    Get account delegations

    Get paginated list of delegations made by an account.

    Query params

    None

    GET /blocks/{block_identifier}
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/blocks/9fccaf372ec5f61ac851fcec593d159f928a26df8f2af5aa3522ed9e0b7cbb36' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": {
        "block_height": 500442,
        "block_hash": "9fccaf372ec5f61ac851fcec593d159f928a26df8f2af5aa3522ed9e0b7cbb36",
        "parent_block_hash": "898f0caafafdd67d7693b17c01b885941dd0f7bb000ffb4faf26d16f37681a38",
        "state_root_hash": "656b3f410c68bb2e5dd16089295376193130b9470e5158decc9c4d5c22674087",
        "era_id": 3561,
        "proposer_public_key": "0109b48a169e6163078a07b6248f330133236c6e390fe915813c187c3f268c213e",
        "native_transfers_number": 0,
        "contract_calls_number": 0,
        "is_switch_block": false,
        "timestamp": "2022-01-31T10:36:55Z"
      }
    }
    GET /contract-packages/{contract_package_hash}
    GET /accounts/{account_identifier}
    GET /contract-packages/{contract_package_hash}/ft-token-ownership
    GET /currencies/{currency_id}/rates
    AccountInfo
    Account info
    CentralizedAccountInfo

    Lazy Loading Technique: To reduce unnecessary API calls, implement lazy loading in your application. Trigger API calls based on user interactions, such as clicking a button or reaching a specific section of a page, to minimize the number of requests.

    CSPR.Node Proxy

    20,000

    1,200

    100

    CSPR.Node Proxy SSE

    5,000

    200

    10

    CSPR.Cloud API

    100,000

    6,000

    CSPR.Node Proxy

    20,000

    1,200

    100

    CSPR.Node Proxy SSE

    5,000

    200

    10

    CSPR.Cloud API

    100,000

    6,000

    CSPR.cloud

    100

    100

    Streaming API Get familiar with the Streaming API reference to know what Web Socket subscriptions are available
  • Casper Node API Learn how to connect to the private Casper Node powered by CSPR.cloud using the most popular SDKs

  • CSPR.click While CSPR.cloud handles your dApp integration with the Casper Network, CSPR.click takes care of how users of your dApp interact with the blockchain. It provides integration with all the wallets and on-ramp providers in the Casper ecosystem to solve authentication and token-acquiring problems. Please be sure to check it out!

  • CSPR.build console
    CSPR.studio
    NFT API
    CSPR.live
    Overview
    Highlights
    REST API

    page

    int

    1

    Page number

    page_size

    int

    10

    Number of items per page

    item_count

    int

    Total number of items

    page_count

    int

    Total number of pages

    rate limits

    account_info

    AccountInfo

    ContractPackage owner account info

    centralized_account_info

    CentralizedAccountInfo

    ContractPackage centralized account info

    cspr_name

    string

    Owner's primary CSPR.name

    ContractPackage
    curl -X 'GET' -G \
      'https://api.testnet.cspr.cloud/accounts/013ff7b986fd1ebd176692825035f1fefa20fb89796dc533219ad307e56ed97439/ft-token-ownership' \
      --data-urlencode 'includes=contract_package{name,metadata}' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    Get account token activity
    Get contract token activity
    including optional data

    contract_hash

    string(64)

    Contract hash represented as a hexadecimal string. Unique contract identifier

    contract_package_hash

    string(64)

    Hash of the contract package, this contract version is a part of, represented as a hexadecimal string

    name

    string

    Name of the entry point

    Contract

    contract_hash

    Entry point is associated with a contract

    ContractPackage

    contract_package_hash

    Entry point is associated with a contract, that is a version of the contract package.

    Get contract entry points
    Get contract entry point costs

    Description

    current_era_id

    uint32

    Current era identifier

    active_validator_number

    uint32

    Current number of active validators

    total_bids_number

    uint32

    Total number of bidders

    active_bids_number

    uint32

    Number of active bidders

    total_active_era_stake

    uint64

    Total sum of all validator stakes from current and next era

    Bidder

    total_bids_number,active_bids_number

    Validators with active bids are bidders in the auction era

    Validator

    total_active_era_stake

    Validators of the current and next era hold active era stake

    Get auction metrics
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/contract-types' \
      -H 'Accept: application/json' \
      -H 'Authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/contracts/93d923e336b20a4c4ca14d592b60e5bd3fe330775618290104f9beb326db7ae2/entry-points' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    PaginatedResponse
    <ContractEntryPoint>

    balance

    Sort ownerships by balance

    contract_package

    ContractPackage

    Fungible contract package

    account_info

    AccountInfo

    Owner account info

    centralized_account_info

    CentralizedAccountInfo

    Owner centralized account info

    cspr_name

    string

    PaginatedResponse
    <FTOwnership>

    Owner account CSPR.name

    to

    End of the range in the ISO 8601 format

    tracked_at

    Sort rates by timestamp

    PaginatedResponse
    <Rate>
    ISO 8601
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/accounts/018afa98ca4be12d613617f7339a2d576950a2f9a92102ca4d6508ee31b54d2c02/delegations?limit=2&offset=0' \
      -H 'Accept: application/json' \
      -H 'Authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    Get validators
    Get account delegations
    Get validator delegations
    Get auction metrics
    None

    Optional properties

    None

    Response

    AwaitingDeploy

    Example

    GET /awaiting-deploys/{deploy_hash}
    curl -X 'GET' \
      'https://api.cspr.cloud/contract-packages/c4e5a03066ce3c6006f562939e48f7076c77de5d46cf8fe625c41e02c5e74814/nft-tokens' \
      -H 'accept: application/json' \
      -H 'authorization: [Your access token]'
    {
      "data": [
        {
          "contract_package_hash": "c4e5a03066ce3c6006f562939e48f7076c77de5d46cf8fe625c41e02c5e74814",
          "is_burned": false,
          "offchain_metadata": null,
          "offchain_metadata_status": 0,
          "onchain_metadata": {
            "asset": "https://maritime.sealstorage.io/make/c4e5a03066ce3c60/0a14a18a7a214b64a9da1e5bdfe12ded",
            "description": "Friday morning in Рíвне.",
            "name": "Friday morning in Rivne"
          },
          "owner_hash": "8297d55f4530ac75f46d04319bf4c7d1de68de1b3fe31cd462f752fadf27b571",
          "owner_type": 0,
          "timestamp": "2022-10-31T07:20:42Z",
          "token_id": "1",
          "token_standard_id": 1,
          "tracking_id": 6053
        },
        {
          "contract_package_hash": "c4e5a03066ce3c6006f562939e48f7076c77de5d46cf8fe625c41e02c5e74814",
          "is_burned": false,
          "offchain_metadata": null,
          "offchain_metadata_status": 0,
          "onchain_metadata": {
            "asset": "https://maritime.sealstorage.io/make/c4e5a03066ce3c60/69a349373da14f6f9511e2a8d375657e",
            "description": "Dougal loving life on the edge",
            "name": "Flying Dougal"
          },
          "owner_hash": "2af66211f9fb970ead08bb80d3d05ad385f83e51caf4940c2f2eb309a0427828",
          "owner_type": 0,
          "timestamp": "2022-11-15T16:54:36Z",
          "token_id": "10",
          "token_standard_id": 1,
          "tracking_id": 11228
        },
        ...
        {
          "contract_package_hash": "c4e5a03066ce3c6006f562939e48f7076c77de5d46cf8fe625c41e02c5e74814",
          "is_burned": false,
          "offchain_metadata": null,
          "offchain_metadata_status": 0,
          "onchain_metadata": {
            "asset": "https://maritime.sealstorage.io/ipfs/bafybeif6wojygvwuav4wdt7dyqx2ekem4fqdpx47p3fu2e5yh7y6anqr2u",
            "description": "The “Ghost” collection is a unique serie of NFTs found on the Casper blockchain. These NFTs are digital representations of ghosts, spirits, and paranormal phenomenon that have been meticulously designed and created by digital artists. Each NFT in this collection is a unique and exclusive piece that captures the essence of the supernatural and the mysterious.\n",
            "name": "Ghosts"
          },
          "owner_hash": "a485e8c7fbe2bfd939930dd9d94025b403fe4bfcf0f8f46b31bd9f28298b8890",
          "owner_type": 0,
          "timestamp": "2023-10-07T08:31:23Z",
          "token_id": "1006",
          "token_standard_id": 1,
          "tracking_id": 317986
        }
      ],
      "item_count": 1277,
      "page_count": 128
    }
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/accounts?page=2&page_size=25' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "account_hash": "37f304a6632b214eacc45b85f6a45759194ea69f6684da0bca42d60e42ac8e12",
          "balance": 3050076259180,
          "main_purse_uref": "uref-692b5b8afcad47b0dee74962540a01ea1402fc0c9c84d9474e5766775373795c-007",
          "public_key": "019aa4adcd6f58f92eb4c98c0245e5d86b61de4919245c23ae9e906a6df5d41b0c"
        },
        {
          "account_hash": "7894d8458c82388f6d276c07c1c52033ac37b175fa722b9cc40e7a0157ce17fc",
          "balance": 252442325961483,
          "main_purse_uref": "uref-c4afe0fb020ebcdc940289d759499ff5fb87e999567e4d61d836d70bfad20a55-007",
          "public_key": "0145fb72c75e1b459839555d70356a5e6172e706efa204d86c86050e2f7878960f"
        },
        ...
        {
          "account_hash": "eb108759cf29b5d1ce6a311989890170d94bb98e06e4097e4ee20c18d6bf4f16",
          "balance": 80331298738010,
          "main_purse_uref": "uref-fd73e477cbbeb134ebb7fee8ccb423c8d45c88e23bd82d2d1104fc7f34f3a27b-007",
          "public_key": "0154d4c09bcae885fdd3dc0bf8ac7fa23ae281baf60a5b352b1ff0b505a65e1285"
        }
      ],
      "item_count": 63584,
      "page_count": 2544
    }
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/contract-packages/ae2feaa4e86841c1c6f40f1779e1e1cb1d9d4d52a0eb82a8962829646524e744' \
      -H 'Accept: application/json' \
      -H 'Authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": {
        "contract_package_hash": "ae2feaa4e86841c1c6f40f1779e1e1cb1d9d4d52a0eb82a8962829646524e744",
        "owner_public_key": "0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef01",
        "name": "MyContractPackage",
        "description": "A sample contract package",
        "metadata": {
          "name": "MyToken",
          "symbol": "MT",
          "decimals": 18,
          "balances_uref": "uref-0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef-007",
          "total_supply_uref": "uref-abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef-007",
          "ownership_mode": 1,
          "nft_kind": 2,
          "nft_metadata_kind": 1,
          "whitelist_mode": 0,
          "holder_mode": 1,
          "minting_mode": 2,
          "burn_mode": 1,
          "identifier_mode": 0,
          "metadata_mutability": 1,
          "owner_reverse_lookup_mode": 1,
          "events_mode": 2
        },
        "latest_version_contract_type_id": 3,
        "timestamp": "2023-01-01T12:00:00Z",
        "icon_url": "https://example.com/icon.png",
        "website_url": "https://example.com",
        "deploys_number": 42
      }
    }
    "data": [
        {
          "balance": "198689800",
          "contract_package": {
            "metadata": {
              "balances_uref": "uref-75c2ee03c1982fc514336a38271a9748cee0994a11f16f8b750c68f142c8a957-007",
              "decimals": 3,
              "name": "Nexfi App Token",
              "symbol": "NFI",
              "total_supply_uref": "uref-6e641bea3588986637bd7a5bd2b80f141bf79d21a5be54152a6dc9ac6f9b42a4-007"
            },
            "name": "Nexfi App Token"
          },
          "contract_package_hash": "04ff7ad6975508fffb5a2f364323503fb045b6d1eaeb9aeaa7283c046e0b6710",
          "owner_hash": "a3caf9628418b3a35bd4a92d62d35e8a244898cdea26c269bf75a2d82ad221f0"
        },
        {
          "balance": "50",
          "contract_package": {
            "metadata": {
              "balances_uref": "uref-897fd9713fa3f57c741a3488d7c1a8a24ac0a1cb273eb861e03491698b6e198d-007",
              "decimals": 1,
              "name": "MP1",
              "symbol": "MonoPoint",
              "total_supply_uref": "uref-7c05f307f0f1f7d3b47ea207cdad169d03e554007efc8646d40c5e87002d1ae1-007"
            },
            "name": "MP1"
          },
          "contract_package_hash": "0ed344ff11750d965f6188eb6bb62dcabc51b20f3900b3c7d2f19463cda23378",
          "owner_hash": "a3caf9628418b3a35bd4a92d62d35e8a244898cdea26c269bf75a2d82ad221f0"
        },
        {
          "balance": "9970000",
          "contract_package": {
            "metadata": {
              "balances_uref": "uref-1db06ca66b714a032b2da27476ae8574656105565cb4990633049e483bc2e52a-007",
              "decimals": 3,
              "name": "ENFLOW TOKEN",
              "symbol": "ENF",
              "total_supply_uref": "uref-874fd7504edc780853175536c76025697fa5f4223c63d1e47e075cad2eadf592-007"
            },
            "name": "ENFLOW TOKEN"
          },
          "contract_package_hash": "223e8b0e3101a7d7671279a08abd38a86cefd590536d0aaa5a068c2c616e11da",
          "owner_hash": "a3caf9628418b3a35bd4a92d62d35e8a244898cdea26c269bf75a2d82ad221f0"
        }
      ],
      "item_count": 3,
      "page_count": 1
    }
    {
        "contract_hash": "a0a1d2d3d4d5d6d7d8d9e0e1e2e3e4e5e6e7e8e9f0f1f2f3f4f5f6f7f8f9a0a1",
        "contract_package_hash": "b0b1b2b3b4b5b6b7b8b9c0c1c2c3c4c5c6c7c8c9d0d1d2d3d4d5d6d7d8d9e0e1",
        "name": "transfer"
    }
    {
      "data": {
        "current_era_id": 12137,
        "active_validator_number": 100,
        "total_bids_number": 256,
        "active_bids_number": 110,
        "total_active_era_stake": "17143148308665709822"
      }
    }
    {
      "data": [
        {
          "id": 2,
          "name": "CEP18"
        },
        {
          "id": 3,
          "name": "Modified CEP18"
        },
        {
          "id": 4,
          "name": "CEP47"
        },
        {
          "id": 5,
          "name": "Modified CEP47"
        },
        {
          "id": 6,
          "name": "DEFI"
        },
        {
          "id": 7,
          "name": "CEP78"
        },
        {
          "id": 8,
          "name": "Modified CEP78"
        },
        {
          "id": 9,
          "name": "NFT"
        }
      ]
    }
    {
      "data": [
        {
          "id": 11,
          "contract_hash": "93d923e336b20a4c4ca14d592b60e5bd3fe330775618290104f9beb326db7ae2",
          "contract_package_hash": "e375d42c29c0e4b2baefa63cf2d70af34439eda851e08129d8515515d63bd6a9",
          "name": "activate_bid",
          "action_type_id": null
        },
        {
          "id": 12,
          "contract_hash": "93d923e336b20a4c4ca14d592b60e5bd3fe330775618290104f9beb326db7ae2",
          "contract_package_hash": "e375d42c29c0e4b2baefa63cf2d70af34439eda851e08129d8515515d63bd6a9",
          "name": "add_bid",
          "action_type_id": null
        },
        ...
        {
          "id": 19,
          "contract_hash": "93d923e336b20a4c4ca14d592b60e5bd3fe330775618290104f9beb326db7ae2",
          "contract_package_hash": "e375d42c29c0e4b2baefa63cf2d70af34439eda851e08129d8515515d63bd6a9",
          "name": "undelegate",
          "action_type_id": null
        }
      ],
      "item_count": 11,
      "page_count": 2
    }
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/contract-packages/000f00b1c6b691b47c1006730bd39812c598f4660e2420a5f5e2f9106865fed1/ft-token-ownership' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "balance": "999992019999999999690000000",
          "contract_package_hash": "000f00b1c6b691b47c1006730bd39812c598f4660e2420a5f5e2f9106865fed1",
          "owner_hash": "d0bc9ca1353597c4004b8f881b397a89c1779004f5e547e04b57c2e7967c6269",
          "owner_type": 0
        }
      ],
      "item_count": 1,
      "page_count": 1
    }
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/currencies/1/rates' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "currency_id": 1,
          "amount": 1.32545,
          "created": "2021-05-12T00:00:00Z"
        },
        {
          "currency_id": 1,
          "amount": 1.16265,
          "created": "2021-05-12T01:00:00Z"
        },
        ...
        {
          "currency_id": 1,
          "amount": 1.25135,
          "created": "2021-05-12T09:00:00Z"
        }
      ],
      "item_count": 1258084,
      "page_count": 125809
    }
    {
      "item_count": 129,
      "page_count": 13,
      "data": [
        {
          "bonding_purse": "uref-0ac1ba0100574729337b63b11e1f933b91d1d0f220823bef502bd8957305976b-007",
          "public_key": "018afa98ca4be12d613617f7339a2d576950a2f9a92102ca4d6508ee31b54d2c02",
          "stake": "55342872342594023",
          "validator_public_key": "017d96b9a63abcb61c870a4f55187a0a7ac24096bdb5fc585c12a686a4d892009e"
        },
        {
          "bonding_purse": "uref-917e1aeba7e7d3a322e89069e88b6e0877a59d781840c0ce8223e990e0342d42-007",
          "public_key": "018afa98ca4be12d613617f7339a2d576950a2f9a92102ca4d6508ee31b54d2c02",
          "stake": "55334239891699578",
          "validator_public_key": "0106ca7c39cd272dbf21a86eeb3b36b7c26e2e9b94af64292419f7862936bca2ca"
        },
        ...
        {
          "bonding_purse": "uref-64b18eba7bea61163415e728cc8aec51208e14c7abf29d1ce4d50d317ca43053-007",
          "public_key": "018afa98ca4be12d613617f7339a2d576950a2f9a92102ca4d6508ee31b54d2c02",
          "stake": "10101529405231091",
          "validator_public_key": "01aea86e5fccdf72daa7c65cc8b3d2ca96a006a0dcd70d3617f85fef00b9d78464"
        }
      ]
    }
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/awaiting-deploys/aa46828cd1b756686c2ed1af7fcd8ab0b37305a208164dd55aaf19d23607dfa9' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "deploy": {
        "hash": "aa46828cd1b756686c2ed1af7fcd8ab0b37305a208164dd55aaf19d23607dfa9",
        "header": {
          "ttl": "30m",
          "account": "0176197d7191ce519ed043221956a2227921abf30364d4362970229027ec828f04",
          "body_hash": "3d5b08d531e9bd979d20f40b8ba74fc47ae5d209a42f64a345220661e5000254",
          "gas_price": 1,
          "timestamp": "2024-02-08T09:13:35.291Z",
          "chain_name": "casper-test",
          "dependencies": []
        },
        "payment": {
          "ModuleBytes": {
            "args": [
              [
                "amount",
                {
                  "bytes": "0400f90295",
                  "parsed": "2500000000",
                  "cl_type": "U512"
                }
              ]
            ],
            "module_bytes": ""
          }
        },
        "session": {
          "StoredContractByHash": {
            "args": [
              [
                "validator",
                {
                  "bytes": "010e5669b070545e2b32bc66363b9d3d4390fca56bf52a05f1411b7fa18ca311c7",
                  "parsed": "010e5669b070545e2b32bc66363b9d3d4390fca56bf52a05f1411b7fa18ca311c7",
                  "cl_type": "PublicKey"
                }
              ],
              [
                "amount",
                {
                  "bytes": "050006e78aa5",
                  "parsed": "711000000000",
                  "cl_type": "U512"
                }
              ],
              [
                "delegator",
                {
                  "bytes": "0176197d7191ce519ed043221956a2227921abf30364d4362970229027ec828f04",
                  "parsed": "0176197d7191ce519ed043221956a2227921abf30364d4362970229027ec828f04",
                  "cl_type": "PublicKey"
                }
              ]
            ],
            "hash": "93d923e336b20a4c4ca14d592b60e5bd3fe330775618290104f9beb326db7ae2",
            "entry_point": "undelegate"
          }
        },
        "approvals": [
          {
            "signer": "0176197d7191ce519ed043221956a2227921abf30364d4362970229027ec828f04",
            "signature": "013815f5f7ca37cb16ffd1277afdc11e3bc765a072d839e9ebf1bf3798f3671c1cf77cb1d6c8367b6ab11a014829e4d03c4950721705fc0eec3f9e91fb9a8d180d"
          }
        ]
      }
    }

    account_info

    provided by the account owner

    centralized_account_info

    Account information available for known accounts provided by CSPR.cloud team

    cspr_name

    string

    Primary CSPR.name of the account

    auction_status

    string

    Account auction status: inactive_bidder, active_bidder, active_validator, pending_validator

    delegated_balance

    uint64

    Total funds delegated across all validators

    staked_balance

    uint64

    Total funds staked as validator

    undelegating_balance

    uint64

    Account

    Total undelegated funds that will be returned to the account main purse after the 7 era lockdown period

    Aggregated auction metrics for an era

    Deploy that is awaiting for submission

    Normalized representation of the Casper Network block

    Bidder participating in the auction

    Account information about known accounts provided by CSPR.cloud team

    Normalized representation of the Casper Network contract

    Normalized representation of the Casper Network contract entry point

    Normalized representation of the Casper Network contract package

    Normalized representation of the Casper Network deploy

    Action performed on a fungible token

    Account fungible token ownership

    Non-fungible token (NFT)

    Action performed on a non-fungible token (NFT)

    Non-fungible token (NFT) ownership

    Historical CSPR rate to fiat and popular cryptocurrencies

    Network native token (CSPR) supply information

    Normalized representation of the Casper Network transfer transform

    Validator participating in an era

    Normalized representation of the Casper Network reward received by validator

    Historical validator performance based on the era rewards information

    Account

    Account observed in the network activity, which may not necessarily have the on-chain balance

    Account info

    query filter
    optional property

    Account info data provided through the

    Type
    Description

    public_key

    string(68)

    Public key of the delegator represented as a hexadecimal string

    validator_public_key

    string(68)

    Public key of the validator represented as a hexadecimal string

    stake

    string

    Delegation amount in motes. The type is string to avoid overflow in languages that don't support uint64, which is the correct type.

    bonding_purse

    string(72)

    URef of the purse from which the delegation was made in the uref-dead...beef-007 format

    Example

    Optional properties

    Depending on the endpoint some of the following optional properties may be included in the Delegation entity:

    Property
    Type
    Description

    account_info

    provided by the delegator

    validator_account_info

    provided by the validator

    cspr_name

    string

    Primary CSPR.name of the account

    Relations

    The Delegation entity has the following relations with other entities:

    Entity
    Mapping property
    Description

    public_key

    Delegations are made by accounts

    validator_public_key

    Validators can be delegated to

    Endpoints

    The Delegation entity has the following endpoints:

    • Get account delegations

    • Get validator delegations

    Relation endpoints

    None

    Staking vs. Delegating process
    Sorting
    Property
    Description

    balance

    Sort ownerships by balance

    Optional properties

    Property
    Type
    Description

    contract_package

    Fungible contract package

    account_info

    Owner account info

    centralized_account_info

    Owner centralized account info

    cspr_name

    string

    Response

    PaginatedResponse<FTOwnership>

    Example

    Sorting
    Property
    Description

    stake

    Sort by stake amount

    Default sorting is stake DESC

    Optional properties

    Property
    Type
    Description

    account_info

    provided by the delegator

    validator_account_info

    provided by the validator

    centralized_account_info

    Account information available for known accounts provided by CSPR.cloud team

    cspr_name

    string

    Response

    PaginatedResponse<Delegation>

    Example

    Contract

    The Contract entity offers a normalized representation of the Casper Network Contract without including entry point hashes, which can be queried separately using the Contract entry point API. Additionally, this entity omits the contract's named keys but utilizes them for identifying the contract's type.

    Properties

    The Contract entity has the following properties:

    Property
    Type
    Description

    Example

    Optional properties

    Depending on the endpoint, the following optional properties may be included in the Contract entity:

    Property
    Type
    Description

    Relations

    The Contract entity has the following relations with other entities:

    Entity
    Mapping property
    Description

    Endpoints

    The Contract entity has the following endpoints:

    Relation endpoints

    The Contract entity has the following relation endpoints:

    Receiving contract-level events

    Web3 comes with a new storage architecture dApps have to embrace. In traditional Web2 applications, users don't interact with the storage directly. It's typically hidden behind the API layer.

    Blockchain is data storage that provides data we can trust, and that trust requires no middleman between the users and the changes in the data. In this setup, dApps have to observe the on-chain activity to display the relevant state to the end users. While this can be done by polling the network state using the CSPR.cloud REST API or CSPR.cloud Casper Node, CSPR.cloud is also prepared to assist dApps developers with observing the on-chain activity with its Streaming API.

    To demonstrate it in action, let's create an NFT contract using the Testnet version of CSPR.studio and observe its activity on the network. Navigate to the My NFT collections page and create a new collection. To listen to the contract-level events emitted by our contract, we'll need to know its hash. Copy the hash of the deploy that created your NFT collection on the last step of the collection creation process and query the contract it deployed to the network using the Contract REST API:

    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/contracts?deploy_hash=149710648b6295b426fa31bb4b79b65374edd3e9ccd242b7d1bf6a7abb308f47' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'

    Knowing the contract hash, we can subscribe to the contract-level events emitted by our newly created contract using the . For this example, you'll need to install the utility.

    Now, let's go back to and mint an NFT. Once the mint deploy is executed on the network, our WebSocket connection will receive a message containing the Mint event data, as well as the token data encoded as a JSON string:

    Note the extra property that provides technical information, such as deploy_hash, event_id, and the deploy execution transform_id, which can be used to link the event data to the corresponding deploy properly.

    Get contracts

    Get a paginated list of contracts.

    Query params

    Query param
    Description

    deploy_hash

    Hash of the deploy that deployed the contract to the network

    Sorting

    Property
    Description

    Default sorting is timestamp DESC

    Optional properties

    Property
    Type
    Description

    Response

    Example

    Delegator reward

    The DelegatorReward entity offers a normalized representation of the Casper Network Reward related to the delegator account.

    Properties

    The DelegatorReward entity contains the following properties:

    Property
    Type
    Description

    Example

    Optional properties

    Depending on the endpoint, the following optional properties may be included in the DelegatorReward entity:

    Property
    Type
    Description

    Relations

    The DelegatorReward entity has the following relations with other entities:

    Entity
    Mapping property
    Description

    Endpoints

    The DelegatorReward entity has the following endpoints:

    Fungible token ownership

    The FTOwnership entity represents a fungible token ownership relation between accounts and contract packages, as well as provides the corresponding token balances

    Properties

    The FTOwnership entity has the following properties:

    Property
    Type
    Description

    Example

    Optional properties

    Depending on the endpoint some of the following optional properties may be included in the FTOwnership entity:

    Property
    Type
    Description

    Relations

    Entity
    Mapping property
    Description

    Endpoints

    The FTOwnership entity has the following endpoints:

    Relation endpoints

    None

    Awaiting deploy

    AwaitingDeploy is a Casper deploy that is awaiting submission, and temporarily stored on CSPR.cloud before submission, in order to perform some additional modifications, such as collecting additional signatures. A perfect use case for this functionality is Multisig Deploys

    This API is not available for the "Free" tier

    Properties

    The AwaitingDeploy entity has the following properties:

    Property
    Type
    Description

    Example

    Optional properties

    None

    Relations

    None

    Endpoints

    The AwaitingDeploy entity has the following endpoints:

    Relation endpoints

    None

    Get validator blocks

    Get paginated list of blocks proposed by the validator

    Query params

    None

    Sorting

    Property
    Description

    Default sorting is block_height DESC

    Optional properties

    Property
    Type
    Description

    Response

    Example

    Get validator delegations

    Get paginated list of delegations made to a validator.

    Query params

    None

    Sorting

    Property
    Description

    Default sorting is stake DESC

    Optional properties

    Property
    Type
    Description

    Response

    Example

    Get contract package NFTs

    Get NFT contract package tokens by its hash

    Query params

    Query param
    Description

    from_block_height

    From block height range

    Sorting

    Property
    Description

    Default sorting is timestamp DESC

    Optional properties

    Property
    Type
    Description

    Response

    Example

    CSPR rate

    CSPR.cloud maintains historical CSPR rates provided by CoinGecko for more than 40 different fiat and crypto currencies.

    Properties

    The Rate entity has the following properties:

    Property
    Type
    Description

    Example

    Optional properties

    None

    Relations

    The Rate entity has the following relations with other entities:

    Entity
    Mapping property
    Description

    Endpoints

    The Rate entity has the following endpoints:

    Get NFT action types

    Get NFT action types

    GET /nft-token-action-types

    Query params

    None

    Sorting

    None

    Optional properties

    None

    Response

    Example

    De-anonymizing account hashes

    While accounts are known to be recognized by their public keys, internally on-chain, they are uniquely identified by fixed-length accounts hashes derived from those public keys. Because of that, in certain contexts, we may know the account hash but not the public key. CSPR.cloud maintains the mapping between account hashes and the corresponding public keys to be able to "de-anonymize" the former when needed by requesting the public key as an optional property.

    Let's have a look at the Transfer API, for example. The Transfer object only provides the recipient account hash:

    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/deploys/6117d9f92a40d3785b53145c68a118cf36b974b2803acf41cffce8630acd769c/transfers' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "amount": "2000000000000",
          "deploy_hash": "6117d9f92a40d3785b53145c68a118cf36b974b2803acf41cffce8630acd769c",
          "from_purse": "uref-72653d09444d0b3bd27372247510e9346c39fa831a89008dd9ce849a7b2c15e2-007",
          "id": 1704899420700,
          "initiator_account_hash": "7dc2bcc676eba6196d16374e1a2dbfa1df336f779854d95a0b4e65de6d593158",
          "timestamp": "2024-01-10T15:10:36Z",
          "to_account_hash": "b85634e0695ac3b6a7792c2009377b4a405118571a9c64ab2c66048250fef36c",
          "to_purse": "uref-7bba21087353cf75a83234b07525efdf33f59a6d71da00021a4bb80b6ace4bd7-004",
          "transform_key": "a1845ce7b2d334c7fd39b6313ebcfe4e8e29889bcdc792f7c67c7ba5360fd220"
        }
      ],
      "item_count": 1,
      "page_count": 1
    }

    Let's "de-anonymize" the recipient of the transfer above by including the to_public_key optional property:

    Note the to_public_key property that was added in the second response. It contains the public key that corresponds to the account hash specified in to_account_hash. Please check Transfer Optional Properties to learn about all the optional data that can be included in the responses.

    Get fungible token action types

    Get a list of fungible token action types

    GET /ft-token-action-types

    Query params

    None

    Sorting

    None

    Optional properties

    None

    Response

    List of value objects describing the available fungible token action types

    Example

    Get accounts

    Get the paginated list of accounts

    Query params

    Query param
    Description

    Get account infos

    Get account infos

    Endpoint

    Query params

    Block

    The Block entity provides a normalized representation of the Casper Network block. It doesn't contain the executed deploy hashes as the network block object. However, they could be queried separately using the API.

    Properties

    The Block entity has the following properties:

    Property

    Get bidders

    Get a paginated list of bidders

    Query params

    Query param
    Description

    Changelog

    v1.4.6 (November 6, 2024)

    • Added ability to sort FTTokenOwnerships (token holders) by balance

    • Added new endpoint GET /daily-staking-rewards/{date}

    Get contract packages

    Get a paginated list of contract packages.

    This endpoint allows you to retrieve a paginated list of contract packages. You can filter the results by owner public key, specify the page number and size, and choose the sorting order and field. Additionally, you can include optional deploys number data in the response. The example shows a sample response with relevant details for each contract package, including contract package hash, owner public key, name, description, metadata, latest version contract type ID, timestamp, icon URL, and deploys number.

    Query params

    Query param
    Description

    Get deploy

    Get deploy by its hash.

    Query params

    None

    Sorting

    Get account NFTs

    Get account NFTs by its identifier (public key or account hash)

    Query params

    Query param
    Description

    Get account contract packages

    Get a paginated list of account contract packages.

    This endpoint allows you to retrieve a paginated list of account contract packages. You can filter the results by owner public key, specify the page number and size, and choose the sorting order and field. Additionally, you can include optional deploys number data in the response. The example shows a sample response with relevant details for each contract package, including contract package hash, owner public key, name, description, metadata, latest version contract type ID, timestamp, icon URL, and deploys number.

    Query params

    None

    Get contract package NFT actions for a token

    Get token NFT actions by contract package hash and token ID

    Query params

    None

    CSPR.name resolution

    The CSPRNameResolution entity holds information about mapping between account hashes and CSPR.name names.

    Properties

    The CSPRNameResolution entity has the following properties:

    Property
    Type
    Description

    Get NFT

    Get NFT by contract package hash and token ID

    Query params

    None

    Get contract package NFT ownership

    Get contract package NFT ownerships

    Query params

    Query param
    Description

    Get the current currency rate

    Get the current CSPR rate by currency identifier.

    Query params

    None

    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/accounts/0106ca7c39cd272dbf21a86eeb3b36b7c26e2e9b94af64292419f7862936bca2ca' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": {
        "account_hash": "fa12d2dd5547714f8c2754d418aa8c9d59dc88780350cb4254d622e2d4ef7e69",
        "balance": 1325092768520378,
        "main_purse_uref": "uref-bb9f47c30ddbe192438fad10b7db8200247529d6592af7159d92c5f3aa7716a1-007",
        "public_key": "0106ca7c39cd272dbf21a86eeb3b36b7c26e2e9b94af64292419f7862936bca2ca"
      }
    }
    {
      "public_key": "01a0e7b7b2b1b2b3b4b5b6b7b8b9b0b1b2b3b4b5b6b7b8b9b0b1b2b3b4b5",
      "validator_public_key": "01a0e7b7b2b1b2b3b4b5b6b7b8b9b0b1b2b3b4b5b6b7b8b9b0b1b2b3b4b5",
      "stake": "1000000",
      "bonding_purse": "uref-550c01b27069f943c354364c49a496b5013ee5bdf61d8644e4f0712cf22410f1-000"
    }
    GET /accounts/{account_identifier}/ft-token-ownership
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/accounts/d0bc9ca1353597c4004b8f881b397a89c1779004f5e547e04b57c2e7967c6269/ft-token-ownership' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "balance": "999992019999999999690000000",
          "contract_package_hash": "000f00b1c6b691b47c1006730bd39812c598f4660e2420a5f5e2f9106865fed1",
          "owner_hash": "d0bc9ca1353597c4004b8f881b397a89c1779004f5e547e04b57c2e7967c6269",
          "owner_type": 0
        },
        {
          "balance": "99999999999999999000",
          "contract_package_hash": "018c20d50c52518b6d9c0390b1d2298e3638507d8fe9694d44b89b6af23c703d",
          "owner_hash": "d0bc9ca1353597c4004b8f881b397a89c1779004f5e547e04b57c2e7967c6269",
          "owner_type": 0
        },
        ...
        {
          "balance": "1000000000000000000000000000018415616000000000000000000",
          "contract_package_hash": "155e3d29b6eea4df9e2159c5e91cf325b94c3460224ea3c789dd70772a9048d6",
          "owner_hash": "d0bc9ca1353597c4004b8f881b397a89c1779004f5e547e04b57c2e7967c6269",
          "owner_type": 0
        }
      ],
      "item_count": 176,
      "page_count": 18
    }
    GET /accounts/{public_key}/delegations
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/accounts/018afa98ca4be12d613617f7339a2d576950a2f9a92102ca4d6508ee31b54d2c02/delegations?limit=2&offset=0' \
      -H 'Accept: application/json' \
      -H 'Authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "item_count": 129,
      "page_count": 13,
      "data": [
        {
          "bonding_purse": "uref-0ac1ba0100574729337b63b11e1f933b91d1d0f220823bef502bd8957305976b-007",
          "public_key": "018afa98ca4be12d613617f7339a2d576950a2f9a92102ca4d6508ee31b54d2c02",
          "stake": "55342872342594023",
          "validator_public_key": "017d96b9a63abcb61c870a4f55187a0a7ac24096bdb5fc585c12a686a4d892009e"
        },
        {
          "bonding_purse": "uref-917e1aeba7e7d3a322e89069e88b6e0877a59d781840c0ce8223e990e0342d42-007",
          "public_key": "018afa98ca4be12d613617f7339a2d576950a2f9a92102ca4d6508ee31b54d2c02",
          "stake": "55334239891699578",
          "validator_public_key": "0106ca7c39cd272dbf21a86eeb3b36b7c26e2e9b94af64292419f7862936bca2ca"
        },
        ...
        {
          "bonding_purse": "uref-64b18eba7bea61163415e728cc8aec51208e14c7abf29d1ce4d50d317ca43053-007",
          "public_key": "018afa98ca4be12d613617f7339a2d576950a2f9a92102ca4d6508ee31b54d2c02",
          "stake": "10101529405231091",
          "validator_public_key": "01aea86e5fccdf72daa7c65cc8b3d2ca96a006a0dcd70d3617f85fef00b9d78464"
        }
      ]
    }
    {
      "data": [
        {
          "contract_hash": "98f4b9ad7891d982e1b5f39e51dd332cae6f83f9615f3025af32796587bea527",
          "contract_package_hash": "19e6954b07d1b4d0341a6f73689c7fbc96959c33f4465c0e11c49b6bc850884a",
          "contract_type_id": 7,
          "contract_version": 1,
          "deploy_hash": "149710648b6295b426fa31bb4b79b65374edd3e9ccd242b7d1bf6a7abb308f47",
          "is_disabled": false,
          "timestamp": "2024-01-09T14:29:30Z"
        }
      ],
      "item_count": 1,
      "page_count": 1
    }
    GET /contracts
    GET /validators/{public_key}/blocks
    GET /validators/{public_key}/delegations
    GET /contract-packages/{contract_package_hash}/nft-tokens
    curl -X 'GET' -G \
      'https://api.testnet.cspr.cloud/deploys/6117d9f92a40d3785b53145c68a118cf36b974b2803acf41cffce8630acd769c/transfers' \
      --data-urlencode 'includes=to_public_key' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "amount": "2000000000000",
          "deploy_hash": "6117d9f92a40d3785b53145c68a118cf36b974b2803acf41cffce8630acd769c",
          "from_purse": "uref-72653d09444d0b3bd27372247510e9346c39fa831a89008dd9ce849a7b2c15e2-007",
          "id": 1704899420700,
          "initiator_account_hash": "7dc2bcc676eba6196d16374e1a2dbfa1df336f779854d95a0b4e65de6d593158",
          "timestamp": "2024-01-10T15:10:36Z",
          "to_account_hash": "b85634e0695ac3b6a7792c2009377b4a405118571a9c64ab2c66048250fef36c",
          "to_public_key": "02027fec2d969dd0779358c40abe2a772f309408348c2a1f413fddfe684a4287ba1a",
          "to_purse": "uref-7bba21087353cf75a83234b07525efdf33f59a6d71da00021a4bb80b6ace4bd7-004",
          "transform_key": "a1845ce7b2d334c7fd39b6313ebcfe4e8e29889bcdc792f7c67c7ba5360fd220"
        }
      ],
      "item_count": 1,
      "page_count": 1
    }

    v1.4.5 (October 22, 2024)

    • Added tracking of primary CSPR.name names for the reverse resolution

    • Bugfixes

    v1.4.2 (August 27, 2024)

    • Added rates optional field for FTTokenAction resource

    • Bugfixes

    v1.4.1 (August 20, 2024)

    • Added new endpoint GET /network-stats

    • Bugfixes

    v1.4.0 (August 19, 2024)

    • Added CSPR.name API

    • Bugfixes

    v1.3.10 (August 8, 2024)

    • Bugfixes

    v1.3.9 (August 6, 2024)

    • Add ability to sort validators by is_identified_account_info and total_stake by default

    • Fix sorting and pagination for Accounts API

    • Fix total delegation rewards data tracking

    v1.3.8 (July 12, 2024)

    • Data tracking performance optimizations

    v1.3.7 (July 2d, 2024)

    • Add deploy optional field for Transfers API

    • Add the ability to filter nft-actions and ft-actions streams by deploy_hash for Streaming API

    • Fix account_info optional field including logic

    v1.3.6 (June 26, 2024)

    • Bug fixes

    v1.3.5 (June 17, 2024)

    • Fix GET /daily-deploy-numbers endpoint

    v1.3.4 (June 13, 2024)

    • Fix GET /accounts/{account_identifier}/associated-to-accounts returning empty associations

    v1.3.3 (June 12, 2024)

    • Fix ordering for Contracts API

    • Fix Bidders API

    • Fix filtering byt caller_public_key for Deploys API

    v1.3.2 (June 6, 2024)

    • Fix validator_performance optional field including logic

    • Fix GET /validators/{public_key}/rewards endpoint

    v1.3.1 (June 1, 2024)

    • Bug fixes

    v1.3.0 (May 30, 2024)

    • Add POST /accounts endpoint to request multiple accounts by account_hashes

    • Fix Accounts API

    • Fix GET /accounts/{account_identifier}/total-delegation-rewards endpoint

    v1.2.2 (May 28, 2024)

    • Fix tracking balances for Accounts without tracked purse_uref

    v1.2.1 (May 23, 2024)

    • Add Centralized Account Info API

    v1.2.0 (May 20, 2024)

    • Add new endpoint GET /account/:public_key/total-delegation-rewards to return total rewards from delegations for a specific account

    • Add contract_package optional field to all resources that have contract_package_hash field

    • Add from_purse_public_key and to_purse_public_key optional fields for Transfers API endpoints

    • Add the ability to filter deploys stream by deploy_hash for Streaming API

    • Fix Streaming API intermittent connection terminations

    • Fix Accounts API to return account balances properly

    v1.1.3 (May 13, 2024)

    • Add is_burned filter for NFT tokens API

    v1.1.2 (May 9, 2024)

    • Fixes for NFT API

    • Fixes for FT API

    v1.1.1 (April 10, 2024)

    • Fixes for NFT API

    • Optimise Deploys and Blocks APIs

    v1.1.0 (April 29, 2024)

    • Added ability to sort data by block ranges

    • Bug fixes

    v1.0.1 (March 26, 2024)

    • Improved stability of Streaming API connections

    v1.0.0 (March 12, 2024)

    • First release. Welcome, CSPR.cloud! 🎉

    Transfer API
    AccountInfo
    Account info
    CentralizedAccountInfo
    account information contract
    Auction metrics
    Awaiting Deploy
    Block
    Bidder
    Centralized account info
    Contract
    Contract entry point
    Contract package
    Deploy
    Fungible token action
    Fungible token ownership
    Non-fungible token (NFT)
    Non-fungible token (NFT) action
    Non-fungible token (NFT) ownership
    CSPR rate
    CSPR supply
    Transfer
    Validator
    Validator reward
    Validator performance
    AccountInfo
    Account info
    AccountInfo
    Account info
    Account
    Validator

    Owner account CSPR.name

    ContractPackage
    AccountInfo
    CentralizedAccountInfo

    Primary CSPR.name of the account

    AccountInfo
    Account info
    AccountInfo
    Account info
    CentralizedAccountInfo

    Timestamp indicating when the contract was created

    contract_version

    uint16

    Version number associated with the contract

    is_disabled

    bool

    Indicates whether the contract is currently disabled

    timestamp

    datetime

    Timestamp indicating when the contract was created

    contract_version

    uint16

    Version number associated with the contract

    is_disabled

    bool

    Indicates whether the contract is currently disabled

    contract_hash

    string(64)

    Contract hash represented as a hexadecimal string. Unique contract identifier

    contract_package_hash

    string(64)

    Hash of the contract package, this contract version is a part of, represented as a hexadecimal string

    block_height

    uint64

    Height of the block in which the contract was deployed to the network

    deploy_hash

    string(64)

    Hash of the deploy that deployed the contract to the network represented as a hexadecimal string

    contract_type_id

    uint8

    Identifier representing the type of the contract, check the types list here

    timestamp

    contract_package

    ContractPackage

    Contract package, this contract version is a part of

    Deploy

    contract_hash, deploy_hash

    Contracts are deployed to the network with a deploy call. Deploys can be the contract call

    ContractEntrypoint

    contract_hash

    Contracts can have endpoints

    ContractPackage

    contract_package_hash

    Contracts are different versions of the same smart contract under the contract package

    Get contract
    Get contracts
    Get contract package contracts
    Get contract entry points
    Get contract types

    uint16

    Contract-level events Streaming API
    wscat
    NPM
    CSPR.studio

    contract_package_hash

    Contract Package hash.

    from_block_height

    From block height range

    to_block_height

    To block height range

    timestamp

    Sort contracts by timestamp

    contract_package

    ContractPackage

    Contract package, this contract version is a part of

    PaginatedResponse
    <Contract>

    public_key

    string(64)

    The public key of the delegator account represented as a hexadecimal string. Primary account identifier

    validator_public_key

    string(64)

    Public key of the validator represented as a hexadecimal string. Unique validator identifier

    era_id

    uint32

    Era identifier

    amount

    uint64

    Amount of the reward received by the delegator.

    timestamp

    datetime

    Timestamp indicating when the last block was proposed.

    rate

    float32

    The rate that was relevant at the moment when the last block was proposed. To get more details see Including CSPR rates .

    account_info

    AccountInfo

    Account info provided by the account owner

    centralized_account_info

    CentralizedAccountInfo

    Account information available for known accounts provided by CSPR.cloud team

    cspr_name

    string

    Account

    public_key

    Accounts receive rewards for delegating to validators.

    Validator

    validator_public_key

    Delegation rewards are associated with the validator, that distributed the rewards

    Get account delegator rewards
    Get total account delegation rewards
    Get total validator delegators' rewards

    Primary CSPR.name of the account

    cspr_name

    string

    Owner account CSPR.name

    owner_hash

    string(64)

    Owner hash represented as a hexadecimal string. First part of token ownership identifier

    contract_package_hash

    string(64)

    Fungible contract package hash represented as a hexadecimal string. Second part of token ownership identifier

    owner_type

    uint8

    Owber hash type: 0 for account, 1 for contract

    balance

    string

    Fungible tokens balance in the network

    contract_package

    ContractPackage

    Fungible contract package

    owner_public_key

    string(68)

    Owner public key if it's an account

    account_info

    AccountInfo

    Owner account info

    centralized_account_info

    CentralizedAccountInfo

    Contract package

    contract_package_hash

    Fungible token ownership represents fungible contract package token owners

    Account

    owner_hash

    Account can be a token owner

    Get contract package fungible token ownerships
    Get account fungible token ownerships

    Owner centralized account info

    deploy

    casper.Deploy

    Casper raw deploy

    Create Awaiting Deploy
    Add Awaiting Deploy signatures
    Get Awaiting Deploy

    block_height

    Sort blocks by block height

    timestamp

    Sort blocks by timestamp

    proposer_account_info

    AccountInfo

    Account info provided by the block proposer

    proposer_centralized_account_info

    CentralizedAccountInfo

    Account information available for known accounts provided by CSPR.cloud team

    proposer_cspr_name

    string

    Primary CSPR.name of the block proposer account

    PaginatedResponse
    <Block>

    stake

    Sort by stake amount

    account_info

    AccountInfo

    Account info provided by the delegator

    validator_account_info

    AccountInfo

    Account info provided by the validator

    centralized_account_info

    CentralizedAccountInfo

    Account information available for known accounts provided by CSPR.cloud team

    cspr_name

    string

    PaginatedResponse
    <Delegation>

    Primary CSPR.name of the account

    to_block_height

    To block height range

    is_burned

    Filters tokens by their is_burned status: false to get active NFTs, true to get the burned ones. By default all tokens are returned.

    token_id

    Sort tokens by token_id

    timestamp

    Sort tokens by timestamp

    owner_public_key

    string(68)

    Owner public key if it's an account

    owner_cspr_name

    string

    Primary CSPR.name of the owner account

    PaginatedResponse
    <NFTToken>
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/nft-token-action-types' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    List of value objects describing the available NFT action types
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/ft-token-action-types' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    Name
    Type
    Description

    account_hash

    []string

    Comma-separated list of account hashes

    To overcome the URL length limitations of the GET request, it's possible to use the POST endpoint:

    Sorting

    None

    Optional properties

    None

    Response

    PaginatedResponse<AccountInfo>

    Example

    Sorting

    None

    Optional properties

    None

    Response

    Rate

    Example

    GET /rates/{currency_id}/latest
    {
      "contract_hash": "8a2feaa4e86841c1c6f40f1779e1e1cb1d9d4d52a0eb82a8962829646524e732",
      "contract_package_hash": "ae2feaa4e86841c1c6f40f1779e1e1cb1d9d4d52a0eb82a8962829646524e744",
      "deploy_hash": "1a2feaa4e86841c1c6f40f1779e1e1cb1d9d4d52a0eb82a8962829646524e755",
      "block_height": 2764649,
      "contract_type_id": 2,
      "timestamp": "2023-01-01T12:00:00Z",
      "contract_version": 1,
      "is_disabled": false
    }
    wscat -c 'wss://streaming.testnet.cspr.cloud/contract-events?contract_hash=98f4b9ad7891d982e1b5f39e51dd332cae6f83f9615f3025af32796587bea527' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": {
        "contract_package_hash": "19e6954b07d1b4d0341a6f73689c7fbc96959c33f4465c0e11c49b6bc850884a",
        "contract_hash": "98f4b9ad7891d982e1b5f39e51dd332cae6f83f9615f3025af32796587bea527",
        "data": {
          "data": "{\"name\":\"User storage interaction in Web2\",\"description\":\"Users typically don\\u0027t interact directly with the data storage in Web2\",\"asset\":\"https://maritime.sealstorage.io/ipfs/bafybeicfojnysuueowj4mcparaxzkl5ckytq7ma5mqhhzju35r734ercra\"}",
          "recipient": "account-hash-1856e4a0b23c70b64e4509987680de0d99145fa0cdc71ad9b78760e18ff0deec",
          "token_id": "0"
        },
        "name": "Mint"
      },
      "action": "emitted",
      "extra": {
        "deploy_hash": "7d23a8b0cd927a7e54b6e55b267c8000016c3d0b3a9e97a2c281239c8a8f9120",
        "event_id": 0,
        "transform_id": 31
      },
      "timestamp": "2024-01-09T17:06:51.43910404Z"
    }
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/contracts' \
      -H 'Accept: application/json' \
      -H 'Authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "contract_hash": "8a2feaa4e86841c1c6f40f1779e1e1cb1d9d4d52a0eb82a8962829646524e732",
          "contract_package_hash": "ae2feaa4e86841c1c6f40f1779e1e1cb1d9d4d52a0eb82a8962829646524e744",
          "deploy_hash": "1a2feaa4e86841c1c6f40f1779e1e1cb1d9d4d52a0eb82a8962829646524e755",
          "block_height": 2404577,
          "contract_type_id": 2,
          "timestamp": "2023-01-01T12:00:00Z",
          "contract_version": 1,
          "is_disabled": false
        },
        {
          "contract_hash": "5e718fa0918ae95e58b9a320f412b935af6544b04b6b89fb2ca9982cab0dd261",
          "contract_package_hash": "8e718fa0918ae95e58b9a320f412b935af6544b04b6b89fb2ca9982cab0dd262",
          "deploy_hash": "2e718fa0918ae95e58b9a320f412b935af6544b04b6b89fb2ca9982cab0dd263",
          "block_height": 2404576,
          "contract_type_id": 4,
          "timestamp": "2023-01-02T12:00:00Z",
          "contract_version": 2,
          "is_disabled": false
        },
        ...
        {
          "contract_hash": "7894d8458c82388f6d276c07c1c52033ac37b175fa722b9cc40e7a0157ce17fc",
          "contract_package_hash": "8894d8458c82388f6d276c07c1c52033ac37b175fa722b9cc40e7a0157ce17fd",
          "deploy_hash": "9894d8458c82388f6d276c07c1c52033ac37b175fa722b9cc40e7a0157ce17fe",
          "block_height": 2404571,
          "contract_type_id": 7,
          "timestamp": "2023-01-03T12:00:00Z",
          "contract_version": 3,
          "is_disabled": false
        }
      ],
      "item_count": 100,
      "page_count": 10
    }
    {
      "public_key": "0106ca7c39cd272dbf21a86eeb3b36b7c26e2e9b94af64292419f7862936bca2ca",
      "validator_public_key": "0106ca7c39cd272dbf21a86eeb3b36b7c26e2e9b94af64292419f7862936bca2ca",
      "era_id": 1,
      "amount": "1000000000000",
      "timestamp": "2021-03-24T10:00:00.000Z"
    }
    {
      "balance": "99999999999999999000",
      "contract_package_hash": "0e6a10012d734417ef6ff74e4a7881ad75bcbb3c455ccd63a677f7dd55f1f203",
      "owner_hash": "d0bc9ca1353597c4004b8f881b397a89c1779004f5e547e04b57c2e7967c6269",
      "owner_type": 0
    }
    {
      "deploy": {
        "hash": "aa46828cd1b756686c2ed1af7fcd8ab0b37305a208164dd55aaf19d23607dfa9",
        "header": {
          "ttl": "30m",
          "account": "0176197d7191ce519ed043221956a2227921abf30364d4362970229027ec828f04",
          "body_hash": "3d5b08d531e9bd979d20f40b8ba74fc47ae5d209a42f64a345220661e5000254",
          "gas_price": 1,
          "timestamp": "2024-02-08T09:13:35.291Z",
          "chain_name": "casper-test",
          "dependencies": []
        },
        "payment": {
          "ModuleBytes": {
            "args": [
              [
                "amount",
                {
                  "bytes": "0400f90295",
                  "parsed": "2500000000",
                  "cl_type": "U512"
                }
              ]
            ],
            "module_bytes": ""
          }
        },
        "session": {
          "StoredContractByHash": {
            "args": [
              [
                "validator",
                {
                  "bytes": "010e5669b070545e2b32bc66363b9d3d4390fca56bf52a05f1411b7fa18ca311c7",
                  "parsed": "010e5669b070545e2b32bc66363b9d3d4390fca56bf52a05f1411b7fa18ca311c7",
                  "cl_type": "PublicKey"
                }
              ],
              [
                "amount",
                {
                  "bytes": "050006e78aa5",
                  "parsed": "711000000000",
                  "cl_type": "U512"
                }
              ],
              [
                "delegator",
                {
                  "bytes": "0176197d7191ce519ed043221956a2227921abf30364d4362970229027ec828f04",
                  "parsed": "0176197d7191ce519ed043221956a2227921abf30364d4362970229027ec828f04",
                  "cl_type": "PublicKey"
                }
              ]
            ],
            "hash": "93d923e336b20a4c4ca14d592b60e5bd3fe330775618290104f9beb326db7ae2",
            "entry_point": "undelegate"
          }
        },
        "approvals": [
          {
            "signer": "0176197d7191ce519ed043221956a2227921abf30364d4362970229027ec828f04",
            "signature": "013815f5f7ca37cb16ffd1277afdc11e3bc765a072d839e9ebf1bf3798f3671c1cf77cb1d6c8367b6ab11a014829e4d03c4950721705fc0eec3f9e91fb9a8d180d"
          },
          {
            "signer": "01b687decf949c368be61262a622bb302d0ce2b12cad9b2f01d7ba08aa9e3e3f03",
            "signature": "0106689cf2941047a36cc4b1dc096fdafb54534f5b102192529213361087a319d6c478d5dba27263e45b4b6aa2e379b18a61bf3740af48ea9b7b5f74328e13f901"
          },
          {
            "signer": "0176197d7191ce519ed043221956a2227921abf30364d4362970229027ec828f04",
            "signature": "0140ead54fe89528216ed9cbb3ee45648ed2a965f9d2f8dfeb3f1446f4e42ae832857384fc6129545b0655f5a71c2213199e19eb4616e36b71c733d3131a043608"
          }
        ]
      }
    }
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/validators/0109b48a169e6163078a07b6248f330133236c6e390fe915813c187c3f268c213e/blocks' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "block_height": 2293945,
          "block_hash": "fc96e8c2735ee8c1fe0e8df74b7de005298e259bb0e84953c584a30b417e51c1",
          "parent_block_hash": "18a93ef00cbd298e6633d4e6adc726dfdbd1a3af31107bd93268745b096b7f30",
          "state_root_hash": "89e786fd598f9f2f84955daaacc1573a1414fdf8dfa8c93e116ff70402c0bbfb",
          "era_id": 11750,
          "proposer_public_key": "0109b48a169e6163078a07b6248f330133236c6e390fe915813c187c3f268c213e",
          "native_transfers_number": 0,
          "contract_calls_number": 0,
          "is_switch_block": false,
          "timestamp": "2023-12-18T13:38:12Z"
        },
        {
          "block_height": 2293908,
          "block_hash": "1e6b1f9c1c315742791693f238809782e58424c0fd41b146e5c8922068aa617b",
          "parent_block_hash": "e09513444638ab4b5da58d1d7c7e2ed29675107af42d5f3c0f55335bff69a2b8",
          "state_root_hash": "f842549d60720f646b5b6b3f27d74745f2a35da8d5444e32eb35ef585322cd25",
          "era_id": 11750,
          "proposer_public_key": "0109b48a169e6163078a07b6248f330133236c6e390fe915813c187c3f268c213e",
          "native_transfers_number": 0,
          "contract_calls_number": 0,
          "is_switch_block": false,
          "timestamp": "2023-12-18T13:17:59Z"
        },
        ...
        {
          "block_height": 2293599,
          "block_hash": "21b4c4739049fa4cb4ed0a5e45ccf56869e08f686d2d0c4eafb0f34f0e352d93",
          "parent_block_hash": "99974aceccd64c5d0c6ebedd5ea8022e45519754615a3f9d2d6db547143a57ca",
          "state_root_hash": "4d0650fe03069a42c834323ca9a33c94b50b7ffd554db25c1dcd32347e1be6cf",
          "era_id": 11748,
          "proposer_public_key": "0109b48a169e6163078a07b6248f330133236c6e390fe915813c187c3f268c213e",
          "native_transfers_number": 0,
          "contract_calls_number": 0,
          "is_switch_block": false,
          "timestamp": "2023-12-18T10:29:14Z"
        }
      ],
      "item_count": 76609,
      "page_count": 7661
    }
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/validators/0106ca7c39cd272dbf21a86eeb3b36b7c26e2e9b94af64292419f7862936bca2ca/delegations?limit=2&offset=0' \
      -H 'Accept: application/json' \
      -H 'Authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "item_count": 1200,
      "page_count": 120,
      "data": [
        {
          "bonding_purse": "uref-917e1aeba7e7d3a322e89069e88b6e0877a59d781840c0ce8223e990e0342d42-007",
          "public_key": "018afa98ca4be12d613617f7339a2d576950a2f9a92102ca4d6508ee31b54d2c02",
          "stake": "55334239891699578",
          "validator_public_key": "0106ca7c39cd272dbf21a86eeb3b36b7c26e2e9b94af64292419f7862936bca2ca"
        },
        {
          "bonding_purse": "uref-ee8e4e63ee02f7cd38838b07bdd591cc8986bf6e8e5724dd0d54328e76b8dda0-007",
          "public_key": "011b5b2e370411b6df3a3d8ac0063b35e2003994a634dba48dd5422247fc1e7c41",
          "stake": "148999666957527",
          "validator_public_key": "0106ca7c39cd272dbf21a86eeb3b36b7c26e2e9b94af64292419f7862936bca2ca"
        },
        ...
        {
          "bonding_purse": "uref-0979efcbf321998cd0c65a755a668f555be56ad1c0a063fe289fbdc4467f7519-007",
          "public_key": "0111dad2c2c4769e5fb723fa4fdb432a7d39c48a575a361dca1ff8693e715642df",
          "stake": "3545802984166",
          "validator_public_key": "0106ca7c39cd272dbf21a86eeb3b36b7c26e2e9b94af64292419f7862936bca2ca"
        }
      ]
    }
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/contract-packages/006c68af5f767e406cccd326f8d8bba81dec20d2578f308d33e3bbf08ee5d383/nft-tokens' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "contract_package_hash": "006c68af5f767e406cccd326f8d8bba81dec20d2578f308d33e3bbf08ee5d383",
          "block_height": 1461592,
          "is_burned": false,
          "offchain_metadata": null,
          "offchain_metadata_status": 3,
          "onchain_metadata": {
            "token_uri": "{\"token_uri\":\"ipfs://QmZa1hrX5FJRxyNyEbYjTVPJ6mbQtA3wJu1RjQpv9am6n2\"}"
          },
          "owner_hash": "8e09f028baff4e3a851e70bb8a5dc02eae7f8cb7faf1b52d9c8dafa7f41fa55c",
          "owner_type": 1,
          "timestamp": "2022-10-18T15:22:06Z",
          "token_id": "0",
          "token_standard_id": 1,
          "tracking_id": 20458
        }
      ],
      "item_count": 1,
      "page_count": 1
    }
    {
      "data": [
        {
          "id": 1,
          "name": "MintOne"
        },
        {
          "id": 2,
          "name": "BurnOne"
        },
        {
          "id": 3,
          "name": "ApproveToken"
        },
        {
          "id": 4,
          "name": "TransferToken"
        },
        {
          "id": 5,
          "name": "MetadataUpdate"
        }
      ]
    }
    {
      "data": [
        {
          "id": 1,
          "name": "Mint"
        },
        {
          "id": 2,
          "name": "Transfer"
        },
        {
          "id": 3,
          "name": "Approve"
        },
        {
          "id": 4,
          "name": "Burn"
        }
      ]
    }
    GET /account-info
    POST /account-info
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/account-info?account_hash=fa12d2dd5547714f8c2754d418aa8c9d59dc88780350cb4254d622e2d4ef7e69,21eaea584903e79365bcb1f7607179cc118807033c8919cff7489a91c3a822d1,d3ccfd0daf03e656cb4e86158e5f54be686d9faa91cae3ed9310e167e65592e5' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "account_hash": "21eaea584903e79365bcb1f7607179cc118807033c8919cff7489a91c3a822d1",
          "url": "http://makestake.io",
          "is_active": true,
          "info": {
            "nodes": [
              {
                "location": {
                  "name": "Ashburn, VA",
                  "country": "US",
                  "latitude": 39.04372,
                  "longitude": -77.48749
                },
                "public_key": "0106ca7c39cd272dbf21a86eeb3b36b7c26e2e9b94af64292419f7862936bca2ca",
                "description": "MAKE's first Casper Testnet validator",
                "functionality": [
                  "validator"
                ]
              },
              {
                "location": {
                  "name": "Ashburn, VA",
                  "country": "US",
                  "latitude": 39.04372,
                  "longitude": -77.48749
                },
                "public_key": "017d96b9a63abcb61c870a4f55187a0a7ac24096bdb5fc585c12a686a4d892009e",
                "description": "MAKE's second Casper Testnet validator",
                "functionality": [
                  "validator"
                ]
              }
            ],
            "owner": {
              "name": "MAKE",
              "type": [
                "validator",
                "corporation"
              ],
              "email": "[email protected]",
              "social": {
                "github": "make-software",
                "medium": "",
                "reddit": "",
                "wechat": "",
                "keybase": "",
                "twitter": "@WeAreTeamMAKE",
                "youtube": "",
                "facebook": "",
                "telegram": ""
              },
              "website": "https://makestake.io",
              "branding": {
                "logo": {
                  "svg": "https://make.services/logo.svg",
                  "png_256": "https://make.services/logo256.png",
                  "png_1024": "https://make.services/logo1024.png"
                }
              },
              "identity": {
                "other": null,
                "ownership_disclosure_url": "https://makestake.io/ownership-disclosure",
                "casper_association_kyc_url": "",
                "casper_association_kyc_onchain": ""
              },
              "location": {
                "name": "Cheyenne, WY",
                "country": "US",
                "latitude": 41.14,
                "longitude": -104.820274
              },
              "resources": {
                "other": [],
                "privacy_policy_url": "https://makestake.io/privacy",
                "code_of_conduct_url": "",
                "terms_of_service_url": "https://makestake.io/tos"
              },
              "description": "MAKE is the leading technology provider for the Casper Network and creator of the CSPR Product Suite",
              "affiliated_accounts": [
                {
                  "public_key": "017d96b9a63abcb61c870a4f55187a0a7ac24096bdb5fc585c12a686a4d892009e"
                },
                {
                  "public_key": "0106ca7c39cd272dbf21a86eeb3b36b7c26e2e9b94af64292419f7862936bca2ca"
                },
                {
                  "public_key": "0202859e04bab609744b291b54ef97b55cb3120c940cd620977f8d2687ca5bd0168c"
                },
                {
                  "public_key": "01fc3b35c25fdce6fc6127fc5da32a828d51eaacab816e80611f23f4cf063bc319"
                }
              ]
            }
          },
          "deploy_hash": "722e4c7e25c1a3c50b6c4cdeea7b3f205f14977f5c915761ab34fc702561dd3b",
          "verified_account_hashes": [
            "21EAEA584903E79365BCB1F7607179CC118807033C8919CFF7489A91C3A822D1",
            "D3CCFD0DAF03E656CB4E86158E5F54BE686D9FAA91CAE3ED9310E167E65592E5",
            "FA12D2DD5547714F8C2754D418AA8C9D59DC88780350CB4254D622E2D4EF7E69"
          ],
          "created": "2021-09-17T20:24:35Z",
          "updated": "2023-09-12T00:00:01Z"
        },
        ...
      ],
      "item_count": 3,
      "page_count": 1
    }
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/rates/1/latest' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": {
        "currency_id": 1,
        "amount": 0.051704,
        "created": "2024-01-05T14:23:00Z"
      }
    }

    timestamp

    Rates can be included into the DelegatorReward entity

    currency_id

    uint8

    Currency identifier

    amount

    float32

    Rate amount

    created

    string

    Rate timestamp in the ISO 8601 format

    Currency

    currency_id

    Rates are related to the specific currency

    Deploy

    timestamp

    Rates can be included into the Deploy entity

    Transfer

    timestamp

    Rates can be included into the Transfer entity

    ValidatorReward

    timestamp

    Get the current currency rate
    Get historical currency rates
    Get currencies

    Rates can be included into the ValidatorReward entity

    Sorting
    Property
    Description

    balance

    Sort accounts by the main purse balance

    total_balance

    Sort accounts by the total account balance, including the delegated funds

    Default sorting is total_balance DESC

    Optional properties

    Property
    Type
    Description

    auction_status

    string

    Account auction status: inactive_bidder, active_bidder, active_validator, pending_validator

    delegated_balance

    uint64

    Total funds delegated across all validators

    staked_balance

    uint64

    Total funds staked as validator

    undelegating_balance

    uint64

    Response

    PaginatedResponse<Account>

    Example

    account_hash

    Comma-separated list of account hashes

    Type
    Description

    block_height

    uint64

    Block height. Primary block identifier

    block_hash

    string(64)

    Block hash represented as a hexadecimal string. Secondary block identifier

    parent_block_hash

    string(64)

    Parent block hash represented as a hexadecimal string

    state_root_hash

    string(64)

    Identifier of the network's state after executing the block's deploys represented as a hexadecimal string

    era_id

    uint32

    Era ID in which the block was created

    proposer_public_key

    Example

    Optional properties

    Depending on the endpoint some of the following optional properties may be included in the Block entity:

    Property
    Type
    Description

    proposer_account_info

    provided by the proposer account

    proposer_centralized_account_info

    Account information available for known accounts provided by CSPR.cloud team

    proposer_cspr_name

    string

    Primary CSPR.name of the block proposer account

    Relations

    Entity
    Mapping property
    Description

    block_hash

    Blocks can have deploys

    proposer_public_key

    Blocks are proposed by validators

    Endpoints

    The Block entity has the following endpoints:

    • Get block

    • Get blocks

    • Get validator blocks

    Relation endpoints

    The Block entity has the following relation endpoints:

    • Get block deploys

    Deploy

    Bidder active filter param

    public_key

    Comma-separated list of public key

    Sorting

    Property
    Description

    rank

    Sort bidders by rank

    fee

    Sort bidders by fee

    delegators_number

    Sort bidders by delegators number

    total_stake

    Sort bidders by total stake

    self_stake

    Sort bidders by self stake

    network_share

    Sort bidders by network share

    Default sorting is total_stake DESC

    Optional properties

    Property
    Type
    Description

    account_info

    provided by the bidder

    average_performance

    Moving average of validator performance based on the received rewards over the past 360 eras (approximately one month)

    centralized_account_info

    Account information available for known accounts provided by CSPR.cloud team

    cspr_name

    string

    Response

    PaginatedResponse<Bidder>

    Example

    Since this API works only with recent eras, you'll need to replace the era ID with the latest one, which you can fetch using the Get auction metrics API.

    era_id

    Active auction era identifier. Data for older eras aren't persistent for long, and will eventually become unavailable. This is a required parameter

    is_active

    owner_public_key

    Owner public key filter.

    Sorting

    Property
    Description

    timestamp

    Sort contract packages by timestamp.

    Default sorting is timestamp DESC

    Optional properties

    Property
    Type
    Description

    deploys_number

    int

    Number of deploys in the specified number of the past days. It's a that accepts the number of days as an argument.

    account_info

    ContractPackage owner account info

    centralized_account_info

    ContractPackage centralized account info

    cspr_name

    string

    Response

    PaginatedResponse<ContractPackage>

    Example

    None

    Optional properties

    Property
    Type
    Description

    account_info

    provided by the deploy caller

    centralized_account_info

    Account information available for known accounts provided by CSPR.cloud team

    caller_cspr_name

    string

    Primary CSPR.name of the deploy caller account

    contract_package

    ContractPackage

    Response

    Deploy

    Example

    To block height range

    is_burned

    Filters tokens by their is_burned status: false to get active NFTs, true to get the burned ones. By default all tokens are returned.

    Sorting

    Property
    Description

    token_id

    Sort tokens by token_id

    timestamp

    Sort tokens by timestamp

    Default sorting is timestamp DESC

    Optional properties

    Property
    Type
    Description

    contract_package

    NFT contract package

    owner_public_key

    string(68)

    Owner public key if it's an account

    owner_cspr_name

    string

    Primary CSPR.name of the owner account

    Response

    PaginatedResponse<NFTToken>

    Example

    from_block_height

    From block height range

    to_block_height

    Sorting
    Property
    Description

    timestamp

    Sort contract packages by timestamp.

    Default sorting is timestamp DESC

    Optional properties

    Property
    Type
    Description

    deploys_number

    int

    Number of deploys in the specified number of the past days. It's a that accepts the number of days as an argument.

    account_info

    ContractPackage owner account info

    centralized_account_info

    ContractPackage centralized account info

    cspr_name

    string

    Owner's primary CSPR.name

    Response

    PaginatedResponse<ContractPackage>

    Example

    Sorting
    Property
    Description

    timestamp

    Sort NFT actions by timestamp

    Optional properties

    Property
    Type
    Description

    contract_package

    NFT contract package

    deploy

    Deploy in which the token action occurred

    from_public_key

    string(68)

    Action source public key if it's an account

    to_public_key

    string(68)

    Response

    PaginatedResponse<NFTTokenAction>

    Example

    name_token_id

    string

    ID of the name token (NFT)

    name

    string

    Name (e.g. cloud.cspr)

    resolved_hash

    string(64)

    Account hash represented as a hexadecimal string

    is_primary

    boolean

    Flag that indicates if CSPR.name is primary for a specific account (only single primary name of an account).

    expires_at

    string

    Resolution expiration timestamp in the format

    Example

    Optional properties

    Depending on the endpoint, the following optional properties may be included in the CSPRNameResolution entity:

    Property
    Type
    Description

    resolved_public_key

    string(68)

    Public key of the resolved account

    account

    Account of the resolved account hash

    account_info

    Account info of the resolved account

    centralized_account_info

    Centralized Account info of the resolved account

    Relations

    The CSPRNameResolution entity has the following relations with other entities:

    Entity
    Mapping property
    Description

    resolved_hash

    Names are resolved to accounts

    name_token_id

    Name ownership is granted by the corresponding CSPR.name NFT

    Endpoints

    The CSPRNameResolution entity has the following endpoints:

    • Get CSPR.name resolution

    Sorting

    None

    Default sorting is timestamp DESC

    Optional properties

    Property
    Type
    Description

    contract_package

    NFT contract package

    owner_public_key

    string(68)

    Owner public key if it's an account

    owner_cspr_name

    string

    Primary CSPR.name of the owner account

    Response

    <NFTToken>

    Example

    Sorting
    Property
    Description

    tokens_number

    Sort NFT token ownership by tokens number

    Default sorting is tokens_number DESC

    Optional properties

    Property
    Type
    Description

    contract_package

    Fungible contract package

    owner_public_key

    string(68)

    Owner public key if it's an account

    account_info

    Owner account info

    centralized_account_info

    Response

    PaginatedResponse<NFTTokenOwnership>

    Example

    owner_hash

    Owner hash

    Account Info

    The AccountInfo entity represents a record of an account along with related metadata in the context of the Casper Account Info Standard. This entity is parsed from the Casper Account Info Contract and stores a denormalized representation of the data from this contract.

    Properties

    The AccountInfo entity has the following properties:

    Property
    Type
    Description

    Example

    Optional properties

    None

    Relations

    The AccountInfo entity has the following relations with other entities:

    Entity
    Mapping property
    Description

    Endpoints

    The AccountInfo entity has the following endpoints:

    Relation endpoints

    None

    Get block deploys

    Get deploys by block identifier (hash or height).

    Query params

    Query param
    Description

    caller_public_key

    Deploy caller public key

    Sorting

    Property
    Description

    Default sorting is timestamp DESC

    Optional properties

    Property
    Type
    Description

    Response

    Example

    Non-fungible token (NFT) ownership

    The NFTTokenOwnership entity represents a NFT ownership relation between accounts and contract packages, as well as provides the total tokens number.

    Properties

    The NFTTokenOwnership entity has the following properties:

    Property
    Type
    Description

    Example

    Optional properties

    Depending on the endpoint some of the following optional properties may be included in the NFTTokenOwnership entity:

    Property
    Type
    Description

    Relations

    Entity
    Mapping property
    Description

    Endpoints

    The NFTTokenOwnership entity has the following endpoints:

    Relation endpoints

    None

    Get total account delegation rewards

    Get total amount of delegation rewards for an account.

    GET /accounts/{public_key}/total-delegation-rewards

    Query params

    None

    Sorting

    None

    Optional properties

    None

    Response

    uint64

    Example

    Get account NFT actions

    Get account NFT actions by its identifier (public key or account hash)

    Query params

    Query param
    Description

    Bidder

    The Bidder entity represents an account participating in the to become a for the era after the next one. It has the same properties as the Validator entity, with the network share value being projected instead of actual.

    The Bidder entity has the following properties:

    Property
    Type
    Description

    Get contract package fungible token actions

    Get contract package fungible token actions by contract package hash

    Query params

    Property
    Description

    Get contract package NFT actions

    Get contract package NFT actions by its hash

    Query params

    Query param
    Description

    Get currencies

    Get a paginated list of currencies.

    Query params

    None

    Get contract

    Get contract by its hash.

    Query params

    None

    Sorting

    Get contract entry point costs

    Get deploys costs and payment amounts, aggregated by contract hash and entry point name

    Query params

    None

    {
      "currency_id": 1,
      "amount": 0.052947,
      "timestamp": "2024-01-05T12:51:00Z"
    }
    GET /accounts
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/accounts' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "account_hash": "b383c7cc23d18bc1b42406a1b2d29fc8dba86425197b6f553d7fd61375b5e446",
          "balance": 9521556398257160000,
          "main_purse_uref": "uref-b06a1ab0cfb52b5d4f9a08b68a5dbe78e999de0b0484c03e64f5c03897cf637b-007",
          "public_key": "018afa98ca4be12d613617f7339a2d576950a2f9a92102ca4d6508ee31b54d2c02"
        },
        {
          "account_hash": "5e718fa0918ae95e58b9a320f412b935af6544b04b6b89fb2ca9982cab0dd261",
          "balance": 2390125170301261,
          "main_purse_uref": "uref-f99169b612ce584e69dd69e3437fea137b61aff8dcadf71fc83c3b85ab30aa64-007",
          "public_key": "02022732f61c794d7974d9473554b46b32e8d47903ada3ca3604ce313d66343e0d2f"
        },
        ...
        {
          "account_hash": "7894d8458c82388f6d276c07c1c52033ac37b175fa722b9cc40e7a0157ce17fc",
          "balance": 252400825961483,
          "main_purse_uref": "uref-c4afe0fb020ebcdc940289d759499ff5fb87e999567e4d61d836d70bfad20a55-007",
          "public_key": "0145fb72c75e1b459839555d70356a5e6172e706efa204d86c86050e2f7878960f"
        }
      ],
      "item_count": 63177,
      "page_count": 6318
    }
    {
      "block_height": 500442,
      "block_hash": "9fccaf372ec5f61ac851fcec593d159f928a26df8f2af5aa3522ed9e0b7cbb36",
      "parent_block_hash": "898f0caafafdd67d7693b17c01b885941dd0f7bb000ffb4faf26d16f37681a38",
      "state_root_hash": "656b3f410c68bb2e5dd16089295376193130b9470e5158decc9c4d5c22674087",
      "era_id": 3561,
      "proposer_public_key": "0109b48a169e6163078a07b6248f330133236c6e390fe915813c187c3f268c213e",
      "native_transfers_number": 0,
      "contract_calls_number": 0,
      "is_switch_block": false,
      "timestamp": "2022-01-31T10:36:55Z"
    }
    GET /bidders
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/bidders?era_id=12100' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "item_count": 256,
      "page_count": 26,
      "data": [
        {
          "delegators_number": 326,
          "delegators_stake": 515236483487045440,
          "era_id": 12136,
          "fee": 15,
          "is_active": true,
          "network_share": "6.03",
          "public_key": "018f84c6fc037284f189cc8cb49f89212ff434a5eb050e48cdd164ff3890fbff69",
          "rank": 1,
          "self_share": "0.31",
          "self_stake": 1588933419545728,
          "total_stake": 516825416906591170
        },
        {
          "delegators_number": 1199,
          "delegators_stake": 327973756566146050,
          "era_id": 12136,
          "fee": 3,
          "is_active": true,
          "network_share": "3.83",
          "public_key": "01c377281132044bd3278b039925eeb3efdb9d99dd5f46d9ec6a764add34581af7",
          "rank": 2,
          "self_share": "0.03",
          "self_stake": 85793744014762,
          "total_stake": 328059550310160830
        },
        ...
        {
          "delegators_number": 121,
          "delegators_stake": 206718215474570850,
          "era_id": 12136,
          "fee": 10,
          "is_active": true,
          "network_share": "2.42",
          "public_key": "015fd964620f98e551065079e142840dac3fb25bd97a0d4722411cb439f9247d72",
          "rank": 10,
          "self_share": "0.2",
          "self_stake": 422749459877974,
          "total_stake": 207140964934448800
        }
      ]
    }
    GET /contract-packages
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/contract-packages' \
      -H 'Accept: application/json' \
      -H 'Authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "contract_package_hash": "ae2feaa4e86841c1c6f40f1779e1e1cb1d9d4d52a0eb82a8962829646524e744",
          "owner_public_key": "0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef01",
          "name": "MyContractPackage1",
          "description": "A sample contract package",
          "metadata": {
            "name": "MyToken1",
            "symbol": "MT1",
            "decimals": 18,
            "balances_uref": "uref-0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef-007",
            "total_supply_uref": "uref-abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef-007",
            "ownership_mode": 1,
            "nft_kind": 2,
            "nft_metadata_kind": 1,
            "whitelist_mode": 0,
            "holder_mode": 1,
            "minting_mode": 2,
            "burn_mode": 1,
            "identifier_mode": 0,
            "metadata_mutability": 1,
            "owner_reverse_lookup_mode": 1,
            "events_mode": 2
          },
          "latest_version_contract_type_id": 3,
          "timestamp": "2023-01-01T12:00:00Z",
          "icon_url": "https://example.com/icon1.png",
          "website_url": "https://example.com",
          "deploys_number": 42
        },
        {
          "contract_package_hash": "be2feaa4e86841c1c6f40f1779e1e1cb1d9d4d52a0eb82a8962829646524e745",
          "owner_public_key": "abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef",
          "name": "MyContractPackage2",
          "description": "Another sample contract package",
          "metadata": {
            "name": "MyToken2",
            "symbol": "MT2",
            "decimals": 18,
            "balances_uref": "uref-abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef-007",
            "total_supply_uref": "uref-0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef-007",
            "ownership_mode": 1,
            "nft_kind": 2,
            "nft_metadata_kind": 1,
            "whitelist_mode": 0,
            "holder_mode": 1,
            "minting_mode": 2,
            "burn_mode": 1,
            "identifier_mode": 0,
            "metadata_mutability": 1,
            "owner_reverse_lookup_mode": 1,
            "events_mode": 2
          },
          "latest_version_contract_type_id": 4,
          "timestamp": "2023-01-02T12:00:00Z",
          "icon_url": "https://example.com/icon2.png",
          "website_url": "https://example.com",
          "deploys_number": 56
        },
        ...
      ],
      "item_count": 100,
      "page_count": 10
    }
    GET /deploys/{deploy_hash}
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/deploys/88461218a5e972fcda1d764d7cc4edb2e0c3a538123b97890d484f43c55935f5' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": {
        "deploy_hash": "88461218a5e972fcda1d764d7cc4edb2e0c3a538123b97890d484f43c55935f5",
        "block_hash": "d76b4ce5281f2306911a0e5e9ac0b29f1f4daf36f4636e78599ce64a7f7528a1",
        "block_height": 2404577,
        "caller_public_key": "020304811a7b142c32860cb1c114f23b0754215918d819f485b0a201af6cde70fa6c",
        "execution_type_id": 6,
        "contract_package_hash": null,
        "contract_hash": null,
        "entry_point_id": null,
        "args": {
          "amount": {
            "cl_type": "U512",
            "parsed": "2500000000"
          },
          "id": {
            "cl_type": {
              "Option": "U64"
            },
            "parsed": null
          },
          "target": {
            "cl_type": {
              "ByteArray": 32
            },
            "parsed": "536345751b7c6c6299d5ef10862d76736ed062bc32c1dabcd1179c06469d93ca"
          }
        },
        "payment_amount": "100000000",
        "cost": "100000000",
        "error_message": null,
        "status": "processed",
        "timestamp": "2024-01-08T15:24:47Z"
      }
    }
    GET /accounts/{account_identifier}/nft-tokens
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/accounts/8E09F028BAFF4E3A851E70BB8A5DC02EAE7F8CB7FAF1B52D9C8DAFA7F41FA55C/nft-tokens' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "contract_package_hash": "006c68af5f767e406cccd326f8d8bba81dec20d2578f308d33e3bbf08ee5d383",
          "block_height": 1461592,
          "is_burned": false,
          "offchain_metadata": null,
          "offchain_metadata_status": 3,
          "onchain_metadata": {
            "token_uri": "{\"token_uri\":\"ipfs://QmZa1hrX5FJRxyNyEbYjTVPJ6mbQtA3wJu1RjQpv9am6n2\"}"
          },
          "owner_hash": "8e09f028baff4e3a851e70bb8a5dc02eae7f8cb7faf1b52d9c8dafa7f41fa55c",
          "owner_type": 1,
          "timestamp": "2022-10-18T15:22:06Z",
          "token_id": "0",
          "token_standard_id": 1,
          "tracking_id": 20458
        }
      ],
      "item_count": 1,
      "page_count": 1
    }
    GET /accounts/{public_key}/contract-packages
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/account/017E80955A6D493A4A4B9F1B5DD23D2EDCDC2C8B00FCD9689F2F735F501BD088C5/contract-packages' \
      -H 'Accept: application/json' \
      -H 'Authorization: your_access_token_here'
    {
      "data": [
        {
          "contract_package_hash": "0038a63a09e0b600158d4648745930239aba43eb7a5e725ab1af12b49077100c",
          "owner_public_key": "017e80955a6d493a4a4b9f1b5dd23d2edcdc2c8b00fcd9689f2f735f501bd088c5",
          "name": null,
          "description": null,
          "metadata": {},
          "latest_version_contract_type_id": null,
          "timestamp": "2023-04-12T05:38:48Z",
          "icon_url": null,
          "website_url": null
        },
        {
          "contract_package_hash": "004f02d03d1011ea71397363a34fbf038496be30ee2b1d88820c37cc9b9daeee",
          "owner_public_key": "017e80955a6d493a4a4b9f1b5dd23d2edcdc2c8b00fcd9689f2f735f501bd088c5",
          "name": "Wrap BTC",
          "description": null,
          "metadata": {
            "name": "Wrap BTC",
            "symbol": "WBTC",
            "decimals": 8,
            "balances_uref": "uref-4744c56c1ca94c6c1f3d2076d8b3fe474b03a86736143ad1921505b71b693b1f-007",
            "total_supply_uref": "uref-f3771de0504c0dd74feb56f6e327add0ba89562022ff2816e98a8700673124e3-003"
          },
          "latest_version_contract_type_id": 2,
          "timestamp": "2023-03-31T08:22:32Z",
          "icon_url": null,
          "website_url": null
        },
        ...
        {
          "contract_package_hash": "0342537e19667f5c9b5ab976e302bcdfce04b5e681a6c535d330ae0c534203ab",
          "owner_public_key": "017e80955a6d493a4a4b9f1b5dd23d2edcdc2c8b00fcd9689f2f735f501bd088c5",
          "name": null,
          "description": null,
          "metadata": {},
          "latest_version_contract_type_id": null,
          "timestamp": "2022-11-11T05:14:46Z",
          "icon_url": null,
          "website_url": null
        }
      ],
      "item_count": 459,
      "page_count": 46
    }
    GET /contract-packages/{contract_package_hash}/nft-tokens/{token_id}/nft-token-actions
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/contract-packages/006c68af5f767e406cccd326f8d8bba81dec20d2578f308d33e3bbf08ee5d383/nft-tokens/0/nft-token-actions' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "contract_package_hash": "006c68af5f767e406cccd326f8d8bba81dec20d2578f308d33e3bbf08ee5d383",
          "deploy_hash": "50b96b517040247a080a2a59150a53bd60cbc4733ebb7ccfe800686496ea6ac6",
          "from_hash": "d0bc9ca1353597c4004b8f881b397a89c1779004f5e547e04b57c2e7967c6269",
          "from_type": 0,
          "nft_action_id": 3,
          "timestamp": "2022-10-18T15:51:01Z",
          "to_hash": "a2f88f07fa73ed826deaf761d37ece021e1990603afc68ba2fda09332dce1534",
          "to_type": 1,
          "token_id": "0",
          "token_tracking_id": 20458
        },
        {
          "contract_package_hash": "006c68af5f767e406cccd326f8d8bba81dec20d2578f308d33e3bbf08ee5d383",
          "deploy_hash": "512006c596e47ec764c5a05969b263728e2dbd479e1ad0b9e8b9913ec4483c38",
          "block_height": 150042,
          "from_hash": null,
          "from_type": null,
          "nft_action_id": 1,
          "timestamp": "2023-01-01T09:33:05Z",
          "to_hash": "d0bc9ca1353597c4004b8f881b397a89c1779004f5e547e04b57c2e7967c6269",
          "to_type": 0,
          "token_id": "0",
          "token_tracking_id": 20458
        }
      ],
      "item_count": 2,
      "page_count": 1
    }
    {
      "name_token_id": "0000000000000000000000000000000000000000000000000000000000000000",
      "name": "faucet.cspr",
      "resolved_hash": "b383c7cc23d18bc1b42406a1b2d29fc8dba86425197b6f553d7fd61375b5e446",
      "is_primary": true,
      "expires_at": "2124-08-27 12:00:00.00"
    }
    GET /contract-packages/{contract_package_hash}/nft-tokens/{token_id}
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/contract-packages/006c68af5f767e406cccd326f8d8bba81dec20d2578f308d33e3bbf08ee5d383/nft-tokens/0' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": {
        "contract_package_hash": "006c68af5f767e406cccd326f8d8bba81dec20d2578f308d33e3bbf08ee5d383",
        "block_height": 1461592,
        "is_burned": false,
        "offchain_metadata": null,
        "offchain_metadata_status": 3,
        "onchain_metadata": {
          "token_uri": "{\"token_uri\":\"ipfs://QmZa1hrX5FJRxyNyEbYjTVPJ6mbQtA3wJu1RjQpv9am6n2\"}"
        },
        "owner_hash": "8e09f028baff4e3a851e70bb8a5dc02eae7f8cb7faf1b52d9c8dafa7f41fa55c",
        "owner_type": 1,
        "timestamp": "2022-10-18T15:22:06Z",
        "token_id": "0",
        "token_standard_id": 1,
        "tracking_id": 20458
      }
    }
    GET /contract-packages/{contract_package_hash}/nft-token-ownership
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/contract-packages/000f00b1c6b691b47c1006730bd39812c598f4660e2420a5f5e2f9106865fed1/nft-token-ownership' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "contract_package_hash": "0074557b46c7a7c13e0b178e4463f451325129d845e9e494425d39cfd40e619d",
          "owner_hash": "532402a902ee117a772b2471df237346c906eddeb1580e18fa8b71ea559b9d2f",
          "owner_type": 0,
          "tokens_number": 1
        },
        {
          "contract_package_hash": "0074557b46c7a7c13e0b178e4463f451325129d845e9e494425d39cfd40e619d",
          "owner_hash": "d619411005c1255ca0cfdc9121d0e0a60d2b4e8da354e4d8768e8ea9378635d6",
          "owner_type": 0,
          "tokens_number": 2
        },
        {
          "contract_package_hash": "0074557b46c7a7c13e0b178e4463f451325129d845e9e494425d39cfd40e619d",
          "owner_hash": "e92b24043adab658450b1a00a82f4ae6dcba196972081175317dff1702e3772b",
          "owner_type": 0,
          "tokens_number": 2
        }
      ]
    }
    GET /blocks/{block_identifier}/deploys

    Total undelegated funds that will be returned to the account main purse after the 7 era lockdown period

    account_info

    AccountInfo

    Account info provided by the account owner

    centralized_account_info

    CentralizedAccountInfo

    Account information available for known accounts provided by CSPR.cloud team

    cspr_name

    string

    Primary CSPR.name of the account

    DelegatorReward

    string(68)

    Public key of the validator who proposed the block represented as a hexadecimal string

    native_transfers_number

    uint16

    Number of native transfer deploys included in the block

    contract_calls_number

    uint16

    Number of contract calls included in the block

    is_switch_block

    bool

    true if the block is the last one in the era

    timestamp

    datetime

    The timestamp from when the block was proposed

    AccountInfo
    Account info
    CentralizedAccountInfo
    Deploy
    Validator

    Primary CSPR.name of the account

    AccountInfo
    Account info
    ValidatorPerformance
    CentralizedAccountInfo

    Owner's primary CSPR.name

    function includer
    AccountInfo
    CentralizedAccountInfo

    ContractPackage entity.

    contract

    Contract

    Contract entity.

    contract_entrypoint

    ContractEntrypoint

    ContractEntrypoint entity.

    rate

    float32

    CSPR rate for specified currency that was relevant at the moment of deploy creation.

    transfers

    []Transfer

    List of Transfer entities.

    nft_token_actions

    [] NFTTokenAction

    List of NFTTokenAction entities.

    ft_token_actions

    [] FTTokenAction

    List of Fungible token action entities.

    AccountInfo
    Account info
    CentralizedAccountInfo
    ContractPackage
    function includer
    AccountInfo
    CentralizedAccountInfo

    Action target public key if it's an account

    to_account_info

    AccountInfo

    Action source account info if it's an account

    to_centralized_account_info

    CentralizedAccountInfo

    Action target centralized account info if it's an account

    from_account_info

    AccountInfo

    Action target account info if it's an account

    from_centralized_account_info

    CentralizedAccountInfo

    Action target centralized account info if it's an account

    from_cspr_name

    string

    Primary CSPR.name of the source account, if it is an account

    to_cspr_name

    string

    Primary CSPR.name of the destination account, if it is an account

    ContractPackage
    Deploy

    name_token

    NFTToken

    NFT token that represents the ownership of the CSPR.name

    ISO 8601
    Account
    AccountInfo
    CentralizedAccountInfo
    Account
    NFT
    ContractPackage

    Owner centralized account info

    cspr_name

    string

    Owner account CSPR.name

    ContractPackage
    AccountInfo
    CentralizedAccountInfo

    List of verified account hashes represented as a hexadecimal string

    created

    datetime

    Account info creation timestamp

    updated

    datetime

    Account info last update timestamp

    account_hash

    string(64)

    Account hash represented as a hexadecimal string

    url

    string

    The top level domain URL for an account information

    is_active

    boolean

    Status describes whether account info active or not

    info

    JSON

    JSON representation of account info data, related to Casper Account Info Standard

    deploy_hash

    string(64)

    Hash of the deploy that deployed the Casper Account Info Contract to the network represented as a hexadecimal string

    verified_account_hashes

    Account

    account_hash

    Account info is related to an account

    Deploy

    deploy_hash

    Contracts are deployed to the network with a deploy call.

    Get account info
    Get account infos

    []string

    cspr_name

    string

    Owner account CSPR.name

    owner_hash

    string(64)

    Owner hash represented as a hexadecimal string

    contract_package_hash

    string(64)

    NFT contract package hash represented as a hexadecimal string

    owner_type

    uint8

    NFT token owner type: 0 for account, 1 for contract

    tokens_number

    uint32

    Number of NFTs owned by the owner account

    contract_package

    ContractPackage

    NFT contract package

    owner_public_key

    string(68)

    Owner public key if it's an account

    account_info

    AccountInfo

    Owner account info

    centralized_account_info

    CentralizedAccountInfo

    Contract package

    contract_package_hash

    NFT token ownership represents NFT contract package token owners

    Account

    owner_hash

    Account can be a token owner

    Get contract package NFT ownerships
    Get account NFT ownerships

    Owner centralized account info

    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/accounts/01D4C0E543A1DBE84EC437C34E9E788A82F00580E5E12D8A2B187C6C4883479B1A/total-delegation-rewards' \
      -H 'Accept: application/json' \
      -H 'Authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    Sorting

    None

    Optional properties

    None

    Response

    Currency

    Example

    GET /currencies
    Sorting

    None

    Optional properties

    None

    Response

    Example

    GET /contracts/{contract_hash}/entry-points/{entry_point_name}/costs
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/contracts/93d923e336b20a4c4ca14d592b60e5bd3fe330775618290104f9beb326db7ae2/entry-points/activate_bid/costs' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "account_hash": "fa12d2dd5547714f8c2754d418aa8c9d59dc88780350cb4254d622e2d4ef7e69",
      "url": "http://makestake.io",
      "is_active": true,
      "info": {
        "nodes": [
          {
            "location": {
              "name": "Ashburn, VA",
              "country": "US",
              "latitude": 39.04372,
              "longitude": -77.48749
            },
            "public_key": "0106ca7c39cd272dbf21a86eeb3b36b7c26e2e9b94af64292419f7862936bca2ca",
            "description": "MAKE's first Casper Testnet validator",
            "functionality": [
              "validator"
            ]
          },
          {
            "location": {
              "name": "Ashburn, VA",
              "country": "US",
              "latitude": 39.04372,
              "longitude": -77.48749
            },
            "public_key": "017d96b9a63abcb61c870a4f55187a0a7ac24096bdb5fc585c12a686a4d892009e",
            "description": "MAKE's second Casper Testnet validator",
            "functionality": [
              "validator"
            ]
          }
        ],
        "owner": {
          "name": "MAKE",
          "type": [
            "validator",
            "corporation"
          ],
          "email": "[email protected]",
          "social": {
            "github": "make-software",
            "medium": "",
            "reddit": "",
            "wechat": "",
            "keybase": "",
            "twitter": "@WeAreTeamMAKE",
            "youtube": "",
            "facebook": "",
            "telegram": ""
          },
          "website": "https://makestake.io",
          "branding": {
            "logo": {
              "svg": "https://make.services/logo.svg",
              "png_256": "https://make.services/logo256.png",
              "png_1024": "https://make.services/logo1024.png"
            }
          },
          "identity": {
            "other": null,
            "ownership_disclosure_url": "https://makestake.io/ownership-disclosure",
            "casper_association_kyc_url": "",
            "casper_association_kyc_onchain": ""
          },
          "location": {
            "name": "Cheyenne, WY",
            "country": "US",
            "latitude": 41.14,
            "longitude": -104.820274
          },
          "resources": {
            "other": [],
            "privacy_policy_url": "https://makestake.io/privacy",
            "code_of_conduct_url": "",
            "terms_of_service_url": "https://makestake.io/tos"
          },
          "description": "MAKE is the leading technology provider for the Casper Network and creator of the CSPR Product Suite",
          "affiliated_accounts": [
            {
              "public_key": "017d96b9a63abcb61c870a4f55187a0a7ac24096bdb5fc585c12a686a4d892009e"
            },
            {
              "public_key": "0106ca7c39cd272dbf21a86eeb3b36b7c26e2e9b94af64292419f7862936bca2ca"
            },
            {
              "public_key": "0202859e04bab609744b291b54ef97b55cb3120c940cd620977f8d2687ca5bd0168c"
            },
            {
              "public_key": "01fc3b35c25fdce6fc6127fc5da32a828d51eaacab816e80611f23f4cf063bc319"
            }
          ]
        }
      },
      "deploy_hash": "5a9b3853d596243fd1b8f0a107ec7c7042ab226e628c7e742c455deab15e9719",
      "verified_account_hashes": [
        "21EAEA584903E79365BCB1F7607179CC118807033C8919CFF7489A91C3A822D1",
        "D3CCFD0DAF03E656CB4E86158E5F54BE686D9FAA91CAE3ED9310E167E65592E5",
        "FA12D2DD5547714F8C2754D418AA8C9D59DC88780350CB4254D622E2D4EF7E69"
      ],
      "created": "2021-09-17T20:24:35Z",
      "updated": "2023-09-12T00:00:01Z"
    }
    {
      "contract_package_hash": "0074557b46c7a7c13e0b178e4463f451325129d845e9e494425d39cfd40e619d",
      "owner_hash": "532402a902ee117a772b2471df237346c906eddeb1580e18fa8b71ea559b9d2f",
      "owner_type": 0,
      "tokens_number": 1
    }
    {
      "data": 184403853254
    }
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/currencies' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "id": 1,
          "code": "USD",
          "type_id": 1
        },
        {
          "id": 2,
          "code": "EUR",
          "type_id": 1
        },
        ...
        {
          "id": 10,
          "code": "ETH",
          "type_id": 2
        }
      ]
    }
    {
      "data": {
        "deploys_num": number,
        "since": datetime,
        "avg_cost": number,
        "min_cost": number,
        "max_cost": number,
        "avg_payment_amount": number,
        "min_payment_amount": number,
        "max_payment_amount": number
      }
    }
    
    {
      "data": {
        "deploys_num": 100,
        "since": "2023-10-12T07:21:07Z",
        "avg_cost": 25009900,
        "min_cost": 10000,
        "max_cost": 2500000000,
        "avg_payment_amount": 19550007300,
        "min_payment_amount": 10000,
        "max_payment_amount": 950000000000
      }
    }

    contract

    called by deploy.

    contract_entrypoint

    called by deploy.

    rate

    float32

    CSPR rate for specified currency that was relevant at the moment of deploy creation.

    transfers

    []

    List of Transfer entities.

    nft_token_actions

    []

    List of NFTTokenAction entities.

    ft_token_actions

    []

    List of Fungible token action entities.

    contract_package_hash

    Contract package hash of the called contract

    contract_hash

    Called contract hash

    contract_entrypoint_id

    Called entry point ID

    timestamp

    Sort deploys by timestamp

    account_info

    AccountInfo

    Account info provided by the deploy caller

    centralized_account_info

    CentralizedAccountInfo

    Account information available for known accounts provided by CSPR.cloud team

    caller_cspr_name

    string

    Primary CSPR.name of the deploy caller account

    contract_package

    ContractPackage

    PaginatedResponse
    <Deploy>

    called by deploy.

    To block height range

    deploy_hash

    Comma-separated list of deploy hashes

    Sorting

    Property
    Description

    timestamp

    Sort NFT actions by timestamp

    Default sorting is timestamp DESC

    Optional properties

    Property
    Type
    Description

    contract_package

    NFT contract package

    deploy

    Deploy in which the token action occurred

    from_public_key

    string(68)

    Action source public key if it's an account

    to_public_key

    string(68)

    Response

    PaginatedResponse<NFTTokenAction>

    Example

    from_block_height

    From block height range

    to_block_height

    era_id

    uint32

    Auction era identifier

    public_key

    string(68)

    Bidder account public key represented as a hexadecimal string

    is_active

    bool

    Describes whether the bidder is active or not

    fee

    float32

    Percentage of the rewards the bidder will retain for its services once becomes a validator

    delegators_number

    uint64

    Number of delegators staked to the bidder

    bid_amount

    uint64

    Amount of bidder bid stake

    delegators_stake

    uint64

    Cumulative stake of all delegators

    total_stake

    uint64

    Total bidder stake. The sum of the self-stake and the delegator stakes.

    self_stake

    uint64

    Bidder self-stake calculated as a sum of the bidder stake and the stakes of the affiliated accounts provided via the

    self_share

    float32

    Percentage of the bidder's self-stake to its total stake

    network_share

    float32

    Projected network stake share if the bidder becomes a validator

    Example

    Optional properties

    Depending on the endpoint some of the following optional properties may be included in the Bidder entity:

    Property
    Type
    Description

    account_info

    Bidder provided by the account owner

    centralized_account_info

    cspr_name

    string

    Primary CSPR.name of the account

    average_performance

    Relations

    Entity
    Mapping property
    Description

    public_key

    Auction bids are made by accounts

    public_key

    Bidders that were validators in the past have associated validator performance

    Endpoints

    The Bidder entity has the following endpoints:

    • Get bidder

    • Get bidders

    Relation endpoints

    None

    rank

    uint8

    Projected validator rank based on total bid amount

    auction
    Validator

    To block height range

    deploy_hash

    Comma-separated list of deploy hashes

    Sorting

    Property
    Description

    timestamp

    Sort fungible token actions by timestamp

    Default sorting is timestamp DESC

    Optional properties

    Property
    Type
    Description

    contract_package

    Fungible contract package

    deploy

    Deploy in which the token action occurred

    from_public_key

    string(68)

    Action source public key if it's an account

    to_public_key

    string(68)

    Response

    PaginatedResponse<FTTokenAction>

    Example

    from_block_height

    From block height range

    to_block_height

    To block height range

    deploy_hash

    Comma-separated list of deploy hashes

    Sorting

    Property
    Description

    timestamp

    Sort NFT actions by timestamp

    Default sorting is timestamp DESC

    Optional properties

    Property
    Type
    Description

    contract_package

    NFT contract package

    deploy

    Deploy in which the token action occurred

    from_public_key

    string(68)

    Action source public key if it's an account

    to_public_key

    string(68)

    Response

    PaginatedResponse<NFTTokenAction>

    Example

    from_block_height

    From block height range

    to_block_height

    None

    Optional properties

    Property
    Type
    Description

    contract_package

    Contract package, this contract version is a part of

    Response

    Contract

    Example

    Account

    The Account entity represents the account observed in the network activity. For example, when the corresponding public key was passed as a deploy argument. Because of that, an Account may not necessarily have a purse and on-chain balance.

    Properties

    The Account entity has the following properties:

    Property
    Type
    Description

    Example

    Optional properties

    Depending on the endpoint some of the following optional properties may be included in the Account entity:

    Property
    Type
    Description

    Relations

    The Account entity has the following relations with other entities:

    Entity
    Mapping property
    Description

    Endpoints

    The Account entity has the following endpoints:

    Relation endpoints

    The Account entity has the following relation endpoints:

    Accessing NFT data

    Non-fungible tokens, or NFTs, became one of the most popular use cases in the current blockchain world. CSPR.cloud keeps track of all NFT contracts compatible with the CEP-47 and CEP-78 NFT standards on the Casper Network. CSPR.cloud provides a possibility to:

    • Get list of NFTs owned by an account

    • Get list of NFTs minted within a contract

    • and more

    Moreover, CSPR.cloud not only tracks on-chain NFT data but also fetches the off-chain metadata for you, which can be particularly slow when the metadata is stored on . Below is an example that demonstrated fetching NFT tokens for the contracts, which is a smart NFT contract that stores the token metadata on IPFS:

    Note the offchain_metadata property, which contains the off-chain token metadata.

    Get centralized account info

    Get centralized account info by account identifier.

    Endpoint

    GET /centralized-account-info/{account_identifier}

    Query params

    None

    Sorting

    None

    Optional properties

    None

    Response

    Example

    Get deploys

    Get a paginated list of deploys.

    Query params

    Query param
    Description

    Non-fungible token (NFT) action

    The NFTTokenAction entity describes standard actions that can be performed on NFTs, such as mint, transfer, burn etc. CSPR.cloud supports NFTs compatible with the and Casper Network standards.

    Properties

    The NFTTokenAction entity has the following properties:

    Errors

    Requests made to our APIs can result in several different error responses. The following document describes error values.

    Properties

    The Error has the following properties:

    Property
    Type
    Description
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/blocks/a6c2974d211fdf0ddadb15f4e81b2fb65a0274787c46f362301ef583764f26f4/deploys' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "item_count": 1,
      "page_count": 1,
      "data": [
        {
          "args": {
            "amount": {
              "cl_type": "U512",
              "parsed": "2500000000"
            },
            "id": {
              "cl_type": {
                "Option": "U64"
              },
              "parsed": null
            },
            "target": {
              "cl_type": {
                "ByteArray": 32
              },
              "parsed": "536345751b7c6c6299d5ef10862d76736ed062bc32c1dabcd1179c06469d93ca"
            }
          },
          "block_hash": "d76b4ce5281f2306911a0e5e9ac0b29f1f4daf36f4636e78599ce64a7f7528a1",
          "block_height": 2404577,
          "caller_public_key": "020304811a7b142c32860cb1c114f23b0754215918d819f485b0a201af6cde70fa6c",
          "contract_hash": null,
          "contract_package_hash": null,
          "cost": "100000000",
          "deploy_hash": "88461218a5e972fcda1d764d7cc4edb2e0c3a538123b97890d484f43c55935f5",
          "entry_point_id": null,
          "error_message": null,
          "execution_type_id": 6,
          "payment_amount": "100000000",
          "status": "processed",
          "timestamp": "2024-01-08T15:24:47Z"
        }
      ]
    }
    GET /accounts/{account_identifier}/nft-token-actions
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/accounts/3411D3B4D457AF0309F3EE967D18CA53FDFF749CAA60314AEB47F2FF9F99C1C1/nft-token-actions' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "contract_package_hash": "542359cb825bbf2a10017db5cb31b8862df7a64784e39b947678164156050d89",
          "deploy_hash": "1a9d50b16af889d2c3bd32e54216150d3bb2e0718d2a6572bb33167d1297460c",
          "block_height": 150039,
          "from_hash": "3411d3b4d457af0309f3ee967d18ca53fdff749caa60314aeb47f2ff9f99c1c1",
          "from_type": 0,
          "nft_action_id": 5,
          "timestamp": "2021-08-11T07:20:18Z",
          "to_hash": "3411d3b4d457af0309f3ee967d18ca53fdff749caa60314aeb47f2ff9f99c1c1",
          "to_type": 0,
          "token_id": "US-7000001-XTest6",
          "token_tracking_id": 5
        },
        {
          "contract_package_hash": "542359cb825bbf2a10017db5cb31b8862df7a64784e39b947678164156050d89",
          "deploy_hash": "1bb29c2c92270b8ae17062a798395793f1eebb0af2f228d5504775b28c679616",
          "block_height": 150024,
          "from_hash": null,
          "from_type": null,
          "nft_action_id": 1,
          "timestamp": "2021-08-11T07:04:29Z",
          "to_hash": "3411d3b4d457af0309f3ee967d18ca53fdff749caa60314aeb47f2ff9f99c1c1",
          "to_type": 0,
          "token_id": "US-7000001-XTest6",
          "token_tracking_id": 5
        },
        ...
        {
          "contract_package_hash": "542359cb825bbf2a10017db5cb31b8862df7a64784e39b947678164156050d89",
          "deploy_hash": "b761d7a8651cda6fae958ff37f86cd82e15f3f136ff710b0ce7607743c147772",
          "block_height": 150043,
          "from_hash": null,
          "from_type": null,
          "nft_action_id": 1,
          "timestamp": "2021-08-11T07:25:09Z",
          "to_hash": "3411d3b4d457af0309f3ee967d18ca53fdff749caa60314aeb47f2ff9f99c1c1",
          "to_type": 0,
          "token_id": "XTest11",
          "token_tracking_id": 10
        }
      ],
      "item_count": 11,
      "page_count": 2
    }
    {
      "delegators_number": 1200,
      "delegators_stake": 328805467747474750,
      "era_id": 12104,
      "fee": 3,
      "is_active": true,
      "network_share": "3.86",
      "public_key": "01c377281132044bd3278b039925eeb3efdb9d99dd5f46d9ec6a764add34581af7",
      "rank": 2,
      "self_share": "0.02",
      "self_stake": 78323555658770,
      "bid_amount": 78323555658770,
      "total_stake": 328883791303133500
    }
    GET /contract-packages/{contract_package_hash}/ft-token-actions
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/contract-packages/0885c63f5f25ec5b6f3b57338fae5849aea5f1a2c96fc61411f2bfc5e432de5a/ft-token-actions' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "amount": "10000000000",
          "contract_package_hash": "0885c63f5f25ec5b6f3b57338fae5849aea5f1a2c96fc61411f2bfc5e432de5a",
          "deploy_hash": "22930a6a3b568ab2c7ed296072181c21a2a3b990998f5898fbc24acf7eec3d66",
          "block_height": 1382964,
          "from_hash": "24a56544c522eca7fba93fb7a6cef83e086706fd87b2f344f5c3dad3603d11f1",
          "from_type": 1,
          "ft_action_type_id": 3,
          "timestamp": "2023-01-05T13:39:09Z",
          "to_hash": "70417ab18bc39062176682e691afdaaf3691fde83e0e6afe77e4982c037b6796",
          "to_type": 1,
          "transform_idx": 13
        },
        {
          "amount": "10000000000",
          "contract_package_hash": "0885c63f5f25ec5b6f3b57338fae5849aea5f1a2c96fc61411f2bfc5e432de5a",
          "deploy_hash": "76518989d5ff8301ab53f1cc917dec29d6485ea8c7dedd99081956a5cb5b8717",
          "block_height": 1385600,
          "from_hash": "24a56544c522eca7fba93fb7a6cef83e086706fd87b2f344f5c3dad3603d11f1",
          "from_type": 0,
          "ft_action_type_id": 3,
          "timestamp": "2023-01-06T13:41:20Z",
          "to_hash": "b6c26649540c59decbc53274a67336d0588f6ad2ae0863a8a636dddcc75689f0",
          "to_type": 1,
          "transform_idx": 13
        },
        ...
        {
          "amount": "1999999999",
          "contract_package_hash": "0885c63f5f25ec5b6f3b57338fae5849aea5f1a2c96fc61411f2bfc5e432de5a",
          "deploy_hash": "01531f387d5d711c332adc15be7ff23ba55033a93c591204af9a6e36ec1c3e0f",
          "block_height": 1401132,
          "from_hash": null,
          "from_type": 1,
          "ft_action_type_id": 1,
          "timestamp": "2023-01-12T11:21:58Z",
          "to_hash": "b6c26649540c59decbc53274a67336d0588f6ad2ae0863a8a636dddcc75689f0",
          "to_type": 1,
          "transform_idx": 92
        }
      ],
      "item_count": 97704,
      "page_count": 9771
    }
    GET /contract-packages/{contract_package_hash}/nft-token-actions
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/contract-packages/542359cb825bbf2a10017db5cb31b8862df7a64784e39b947678164156050d89/nft-token-actions' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "contract_package_hash": "542359cb825bbf2a10017db5cb31b8862df7a64784e39b947678164156050d89",
          "deploy_hash": "d7595a1d455676cdfa98b9f260895e6d40e89825117c641b77ab8a529686c0ab",
          "block_height": 149855,
          "from_hash": null,
          "from_type": null,
          "nft_action_id": 1,
          "timestamp": "2021-08-11T03:59:11Z",
          "to_hash": "3aec6cf365abef154d7517c6cf9f4017866095969fe17dba4ffff7eb07e03c0f",
          "to_type": 0,
          "token_id": "US-7000001-B2",
          "token_tracking_id": 1
        },
        {
          "contract_package_hash": "542359cb825bbf2a10017db5cb31b8862df7a64784e39b947678164156050d89",
          "deploy_hash": "8730b8c24d4b84ba2600f9405269142d5e3f3ef804a0d6dfa9ded95b43c2c5a3",
          "block_height": 149894,
          "from_hash": null,
          "from_type": null,
          "nft_action_id": 1,
          "timestamp": "2021-08-11T04:41:51Z",
          "to_hash": "855416b21473b4a36135a9c16acd2f26f23371bd67c3dd0c29371843ce85bbf9",
          "to_type": 0,
          "token_id": "US-7000001-X1",
          "token_tracking_id": 2
        },
        ...
        {
          "contract_package_hash": "542359cb825bbf2a10017db5cb31b8862df7a64784e39b947678164156050d89",
          "deploy_hash": "5980abe41db4ee28191ebe78ea16824e31ffb58e818d63bb4c94f745404a315a",
          "block_height": 150042,
          "from_hash": null,
          "from_type": null,
          "nft_action_id": 1,
          "timestamp": "2021-08-11T07:23:48Z",
          "to_hash": "3411d3b4d457af0309f3ee967d18ca53fdff749caa60314aeb47f2ff9f99c1c1",
          "to_type": 0,
          "token_id": "XTest9",
          "token_tracking_id": 8
        }
      ],
      "item_count": 35,
      "page_count": 4
    }
    GET /contracts/{contract_hash}
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/contracts/8a2feaa4e86841c1c6f40f1779e1e1cb1d9d4d52a0eb82a8962829646524e732' \
      -H 'Accept: application/json' \
      -H 'Authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": {
        "contract_hash": "8a2feaa4e86841c1c6f40f1779e1e1cb1d9d4d52a0eb82a8962829646524e732",
        "contract_package_hash": "ae2feaa4e86841c1c6f40f1779e1e1cb1d9d4d52a0eb82a8962829646524e744",
        "deploy_hash": "1a2feaa4e86841c1c6f40f1779e1e1cb1d9d4d52a0eb82a8962829646524e755",
        "block_height": 2404577,
        "contract_type_id": 2,
        "timestamp": "2023-01-01T12:00:00Z",
        "contract_version": 1,
        "is_disabled": false
      }
    }
    ContractPackage
    Contract
    Contract
    ContractEntrypoint
    ContractEntrypoint
    Transfer
    NFTTokenAction
    FTTokenAction

    Action target public key if it's an account

    to_account_info

    AccountInfo

    Action source account info if it's an account

    to_centralized_account_info

    CentralizedAccountInfo

    Action target centralized account info if it's an account

    from_account_info

    AccountInfo

    Action target account info if it's an account

    from_centralized_account_info

    CentralizedAccountInfo

    Action target centralized account info if it's an account

    from_cspr_name

    string

    Primary CSPR.name of the source account, if it is an account

    to_cspr_name

    string

    Primary CSPR.name of the destination account, if it is an account

    ContractPackage
    Deploy

    Moving average of validator performance based on the received rewards over the past 360 eras (approximately one month)

    Casper Account Info Standard
    AccountInfo
    account info
    CentralizedAccountInfo
    ValidatorPerformance
    Account
    Validator performance

    Action target public key if it's an account

    to_account_info

    AccountInfo

    Action source account info if it's an account

    from_account_info

    AccountInfo

    Action target account info if it's an account

    to_centralized_account_info

    CentralizedAccountInfo

    Action target centralized account info if it's an account

    from_centralized_account_info

    CentralizedAccountInfo

    Action target centralized account info if it's an account

    rate

    float32

    CSPR rate for specified currency that was relevant at the moment of deploy creation.

    from_cspr_name

    string

    Primary CSPR.name of the source account, if it is an account

    to_cspr_name

    string

    Primary CSPR.name of the destination account, if it is an account

    ContractPackage
    Deploy

    Action target public key if it's an account

    to_account_info

    AccountInfo

    Action source account info if it's an account

    to_centralized_account_info

    CentralizedAccountInfo

    Action target centralized account info if it's an account

    from_account_info

    AccountInfo

    Action target account info if it's an account

    from_centralized_account_info

    CentralizedAccountInfo

    Action target centralized account info if it's an account

    from_cspr_name

    string

    Primary CSPR.name of the source account, if it is an account

    to_cspr_name

    string

    Primary CSPR.name of the destination account, if it is an account

    ContractPackage
    Deploy
    ContractPackage
    Get list of NFTs owners for a contract
    Get account NFT activity
    Get contract NFT activity
    IPFS
    CasperPunks
    CEP-78
    CentralizedAccountInfo
    curl -X 'GET' \
      'https://api.cspr.cloud/contract-packages/ad0cd4ef3cfd9e7222706786e51773af771f063ecce4606282999a7a6d6ac495/nft-tokens' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "contract_package_hash": "ad0cd4ef3cfd9e7222706786e51773af771f063ecce4606282999a7a6d6ac495",
          "is_burned": false,
          "offchain_metadata": {
            "attributes": [
              {
                "trait_type": "background",
                "value": "Red"
              },
              {
                "trait_type": "body",
                "value": "Grey"
              },
              {
                "trait_type": "eyes",
                "value": "Narrow"
              },
              {
                "trait_type": "hat",
                "value": "tophat"
              },
              {
                "trait_type": "mouth",
                "value": "StacheBrown"
              }
            ],
            "compiler": "HashLips Art Engine",
            "date": 1682468152509,
            "description": "The first generation of generative CasperPunks",
            "dna": "5dd6a50e43d44cda7af7d50c7d314af724c2851d",
            "edition": 1,
            "image": "https://api-box.casperpunks.io/metadata/images/1.png",
            "name": "Casper Punks Gen 1 #1"
          },
          "offchain_metadata_status": 2,
          "onchain_metadata": {
            "checksum": "",
            "name": "CasperPunks Gen1",
            "symbol": "CP-GEN1",
            "token_uri": "https://api-box.casperpunks.io/metadata/1"
          },
          "owner_hash": "909ce489ea31a76c8f3ca97364b209b942d023a1a0447dc63263444c1566338a",
          "owner_type": 0,
          "timestamp": "2023-05-23T06:38:53Z",
          "token_id": "1",
          "token_standard_id": 2,
          "tracking_id": 19236
        },
        {
          "contract_package_hash": "ad0cd4ef3cfd9e7222706786e51773af771f063ecce4606282999a7a6d6ac495",
          "is_burned": false,
          "offchain_metadata": {
            "attributes": [
              {
                "trait_type": "background",
                "value": "Purple"
              },
              {
                "trait_type": "body",
                "value": "Grey"
              },
              {
                "trait_type": "eyes",
                "value": "Bulging"
              },
              {
                "trait_type": "hat",
                "value": "PinkMohawk"
              },
              {
                "trait_type": "mouth",
                "value": "Patch"
              }
            ],
            "compiler": "HashLips Art Engine",
            "date": 1682468131158,
            "description": "The first generation of generative CasperPunks",
            "dna": "0de5f3c56c496630c56d0b78739c69a68cbe2824",
            "edition": 10,
            "image": "https://api-box.casperpunks.io/metadata/images/10.png",
            "name": "Casper Punks Gen 1 #10"
          },
          "offchain_metadata_status": 2,
          "onchain_metadata": {
            "checksum": "",
            "name": "CasperPunks Gen1",
            "symbol": "CP-GEN1",
            "token_uri": "https://api-box.casperpunks.io/metadata/10"
          },
          "owner_hash": "6d230cf0b8f2a1aae9b88108f483e66c83a301f59b2c8118e0c7765081e36fe9",
          "owner_type": 0,
          "timestamp": "2023-05-24T14:52:46Z",
          "token_id": "10",
          "token_standard_id": 2,
          "tracking_id": 19247
        },
        ...
        {
          "contract_package_hash": "ad0cd4ef3cfd9e7222706786e51773af771f063ecce4606282999a7a6d6ac495",
          "is_burned": false,
          "offchain_metadata": {
            "attributes": [
              {
                "trait_type": "background",
                "value": "Mint"
              },
              {
                "trait_type": "body",
                "value": "Grey"
              },
              {
                "trait_type": "eyes",
                "value": "Frown"
              },
              {
                "trait_type": "hat",
                "value": "beanie"
              },
              {
                "trait_type": "mouth",
                "value": "Laugh"
              }
            ],
            "compiler": "HashLips Art Engine",
            "date": 1682468103314,
            "description": "The first generation of generative CasperPunks",
            "dna": "1df66a2d43f0de7784136685eb8f85531e53d7d1",
            "edition": 1006,
            "image": "https://api-box.casperpunks.io/metadata/images/1006.png",
            "name": "Casper Punks Gen 1 #1006"
          },
          "offchain_metadata_status": 2,
          "onchain_metadata": {
            "checksum": "",
            "name": "CasperPunks Gen1",
            "symbol": "CP-GEN1",
            "token_uri": "https://api-box.casperpunks.io/metadata/1006"
          },
          "owner_hash": "96609d29c02388c81b6b1bd08feef31d3f3f1331ae39c0ad4f921e43c14d5393",
          "owner_type": 1,
          "timestamp": "2023-05-25T02:24:28Z",
          "token_id": "1006",
          "token_standard_id": 2,
          "tracking_id": 20245
        }
      ],
      "item_count": 2166,
      "page_count": 217
    }
    curl -X 'GET' \
      'https://api.cspr.cloud/centralized-account-info/02FAAA3D8155039A88589D531F8107335476589C2E920980A6981F905671E20D' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": {
        "account_hash": "02faaa3d8155039a88589d531f8107335476589c2e920980a6981f905671e20d",
        "avatar_url": "https://casper-assets.s3.amazonaws.com/accounts/casper-association.png",
        "name": "Casper Association - Developer grants",
        "url": null
      }
    }

    account_info

    provided by the account owner

    centralized_account_info

    Account information available for known accounts provided by CSPR.cloud team

    cspr_name

    string

    Primary CSPR.name of the account

    proposer_public_key

    Account can have delegations to validators

    public_key

    Account can receive delegator rewards

    owner_hash

    Account can own fungible tokens

    from_hash, to_hash

    Account can be on the sending or receiving end of a fungible token action

    owner_hash

    Account can own NFTs

    from_hash, to_hash

    Account can be on the sending or receiving end of a fungible token action

    owner_hash

    Account can own multiple NFTs in one NFT contract

    initiator_account_hash, to_account_hash

    Account can initiate transfers and be a transfer recipient

    public_key

    Account can be a validator

    Get account deploys

  • Get account fungible token ownership

  • Get account fungible token actions

  • Get account NFTs

  • Get account NFT actions

  • Get account transfers

  • public_key

    string(68)

    Account public key represented as a hexadecimal string. Primary account identifier

    account_hash

    string(64)

    32-byte hash of the public_key represented as a hexadecimal string. Secondary account identifier

    main_purse_uref

    string(73)

    Account main purse URef in the uref-dead...beef-007 format

    balance

    uint64

    Account main purse balance in motes

    auction_status

    string

    Account auction status: inactive_bidder, active_bidder, active_validator, pending_validator

    delegated_balance

    uint64

    Total funds delegated across all validators

    staked_balance

    uint64

    Total funds staked as validator

    undelegating_balance

    uint64

    AccountInfo

    account_hash

    Account can have account info data if provided by the owner to the Account Info contract

    Bidder

    public_key

    Account can be a bidder in the auction

    Contract package

    owner_public_key

    Account can deploy contracts to the network

    Deploy

    caller_public_key

    Get account
    Get accounts
    Get account contract packages
    Get account delegations
    Get account delegation rewards
    Get total account delegation rewards

    Total undelegated funds that will be returned to the account main purse after the 7 era lockdown period

    Account can call deploys on the network

    Hash of the deploy block

    contract_package_hash

    Contract package hash of the called contract

    contract_hash

    Called contract hash

    contract_entrypoint_id

    Called entry point ID

    from_block_height

    From block height range

    to_block_height

    To block height range

    Sorting

    Property
    Description

    timestamp

    Sort deploys by timestamp

    Default sorting is timestamp DESC

    Optional properties

    Property
    Type
    Description

    account_info

    provided by the deploy caller

    centralized_account_info

    Account information available for known accounts provided by CSPR.cloud team

    caller_cspr_name

    string

    Primary CSPR.name of the deploy caller account

    contract_package

    Response

    PaginatedResponse<Deploy>

    Example

    caller_public_key

    Deploy caller public key

    block_hash

    Property
    Type
    Description

    deploy_hash

    string(64)

    Deploy hash in which the token action occurred. First part of token action identifier, represented as a hexadecimal string

    block_height

    uint64

    Height of the block in which the token action occurred.

    token_tracking_id

    string

    ID describes relation with corresponded . Second part of token action identifier

    contract_package_hash

    string(64)

    Contract package hash of the NFT contract, represented as a hexadecimal string

    from_hash

    string(64)

    Action source account or contract hash, represented as a hexadecimal string

    from_type

    Example

    Optional properties

    Depending on the endpoint some of the following optional properties may be included in the NFTTokenAction entity:

    Property
    Type
    Description

    contract_package

    NFT contract package

    deploy

    Deploy in which the token action occurred

    from_public_key

    string(68)

    Action source public key if it's an account

    to_public_key

    string(68)

    Relations

    Entity
    Mapping property
    Description

    contract_package_hash

    NFT actions belong to a contract package

    from_hash, to_hash

    NFT actions could have accounts as the action source and target

    tracking_id

    NFT actions are performed under non-fungible tokens

    Endpoints

    The NFTTokenAction entity has the following endpoints:

    • Get contract package NFT actions for a token

    • Get account NFT actions

    • Get contract package NFT actions

    Relation endpoints

    The NFTTokenAction entity has the following relation endpoints:

    • Get NFT action types

    CEP-47
    CEP-78

    code

    string

    Error code constant represented as a string

    message

    string

    Error message depending on the type of error and an API resource

    Error Types

    Code
    Name
    HTTP Status Code
    Description

    invalid_input

    InvalidParamError

    400

    Invalid client input parameters

    unauthorized

    UnauthorizedError

    401

    Client is not authorized

    access_denied

    AccessDeniedError

    403

    Example

    Rate limiting errors

    Visit the Rate limits and quotas for more information regarding Rate limiting errors.

    Get account deploys

    Get deploys by the caller account public key.

    Query params

    Query param
    Description

    contract_package_hash

    Contract package hash of the called contract

    Sorting

    Property
    Description

    Default sorting is timestamp DESC

    Optional properties

    Property
    Type
    Description

    Response

    Example

    Fungible token action

    The FTTokenAction entity describes standard actions that can be performed on fungible tokens, such as mint, transfer, or burn. CSPR.cloud supports fungible tokens compatible with the CEP-18 Casper Network standard.

    Properties

    The FTTokenAction entity has the following properties:

    Property
    Type
    Description

    Example

    Optional properties

    Depending on the endpoint some of the following optional properties may be included in the FTTokenAction entity:

    Property
    Type
    Description

    Relations

    Entity
    Mapping property
    Description

    Endpoints

    The FTTokenAction entity has the following endpoints:

    Relation endpoints

    The FTTokenAction entity has the following relation endpoints:

    Centralized account info

    The CentralizedAccountInfo entity provides account information collected by CSPR.cloud team for the well-known accounts in the Casper ecosystem.

    Properties

    The CentralizedAccountInfo entity has the following properties:

    Property
    Type
    Description

    Example

    Optional properties

    None

    Relations

    The CentralizedAccountInfo entity has the following relations with other entities:

    Entity
    Mapping property
    Description

    Endpoints

    The CentralizedAccountInfo entity has the following endpoints:

    Relation endpoints

    None

    Get account NFT ownership

    Get account NFT ownerships

    Query params

    Query param
    Description

    contract_package_hash

    Contract package hash

    Sorting

    Property
    Description

    Default sorting is tokens_number DESC

    Optional properties

    Property
    Type
    Description

    Response

    Example

    Create Awaiting Deploy

    Creates awaiting deploy

    POST /awaiting-deploys

    Query params

    None

    Sorting

    None

    Optional properties

    None

    Response

    Status [boolean]

    Example

    HTTP Status Created (201)

    Get account delegator rewards

    Get a paginated list of delegator rewards.

    Query params

    Query param
    Description

    validator_public_key

    The public key of the validator to whom the stakes were delegated.

    Sorting

    Property
    Description

    Default sorting is era_id DESC

    Optional properties

    Property
    Type
    Description

    Response

    Example

    Contract package

    The ContractPackage entity provides a normalized representation of the Casper Network . It includes the contract package's metadata based on Contract's type and named keys values and the latest version of the contract type within the package.

    Properties

    The ContractPackage entity has the following properties:

    Property

    Sorting

    REST API endpoints that return may provide a possibility to sort the results by one of the result properties. Not all properties can be used for sorting. Please check the endpoint documentation to find out the sorting properties.

    Requests

    In addition to the endpoint-specific parameters, endpoints that return sorted results accept the following parameters to control the sorting property and the order:

    Parameter
    Type
    Description

    Get contracts by contract package

    Retrieve contracts associated with a specific contract package.

    This endpoint allows you to retrieve contracts associated with a specific contract package. You can filter the results by deploy hash and choose to include optional fields such as contract package data. The example demonstrates a sample response with details for each contract, including contract hash, contract package hash, deploy hash, contract type ID, timestamp, contract version, and disabled status.

    Query params

    Query param
    Description
    {
      "account_hash": "fa12d2dd5547714f8c2754d418aa8c9d59dc88780350cb4254d622e2d4ef7e69",
      "balance": 1325092768520378,
      "main_purse_uref": "uref-bb9f47c30ddbe192438fad10b7db8200247529d6592af7159d92c5f3aa7716a1-007",
      "public_key": "0106ca7c39cd272dbf21a86eeb3b36b7c26e2e9b94af64292419f7862936bca2ca"
    }
    GET /deploys
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/deploys' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "item_count": 20,
      "page_count": 2,
      "data": [
        {
          "args": {
            "amount": {
              "cl_type": "U512",
              "parsed": "2500000000"
            },
            "id": {
              "cl_type": {
                "Option": "U64"
              },
              "parsed": null
            },
            "target": {
              "cl_type": {
                "ByteArray": 32
              },
              "parsed": "bb9b87e33a64af8fda37ceab67609b79500e8d88a2f5364f321fdc2d6ec1f74d"
            }
          },
          "block_hash": "a87896eeafadc85a9adb4ee4dd6bb8bc5d4edf8b1695f2999916324041443b03",
          "block_height": 2175890,
          "caller_public_key": "020304811a7b142c32860cb1c114f23b0754215918d819f485b0a201af6cde70fa6c",
          "contract_hash": null,
          "contract_package_hash": null,
          "cost": "100000000",
          "deploy_hash": "18be0ac6c551e3a80a27847004db4cf9614ac7104b6448c7be6418116c32569b",
          "entry_point_id": null,
          "error_message": null,
          "execution_type_id": 6,
          "payment_amount": "100000000",
          "status": "processed",
          "timestamp": "2023-11-03T14:33:27Z"
        },
        {
          "args": {
            "amount": {
              "cl_type": "U512",
              "parsed": "5000000000"
            },
            "id": {
              "cl_type": {
                "Option": "U64"
              },
              "parsed": 1684147006568
            },
            "target": {
              "cl_type": "PublicKey",
              "parsed": "020304811a7b142c32860cb1c114f23b0754215918d819f485b0a201af6cde70fa6c"
            }
          },
          "block_hash": "43ca28afa8ed3ee7ffbe97d3f47556663942e4fa7d8420f49b9f3a5e1eec6a6e",
          "block_height": 1724562,
          "caller_public_key": "020304811a7b142c32860cb1c114f23b0754215918d819f485b0a201af6cde70fa6c",
          "contract_hash": null,
          "contract_package_hash": null,
          "cost": "100000000",
          "deploy_hash": "21945b6f126abc7de1e2d84a7161f101a7c19b22eb256dfa8e8b1d8886652ee6",
          "entry_point_id": null,
          "error_message": "ApiError::InvalidPurse [12]",
          "execution_type_id": 6,
          "payment_amount": "100000000",
          "status": "processed",
          "timestamp": "2023-05-15T10:36:59Z"
        },
        ...
        {
          "args": {
            "amount": {
              "cl_type": "U512",
              "parsed": "5000000000"
            },
            "id": {
              "cl_type": {
                "Option": "U64"
              },
              "parsed": 1684318398541
            },
            "target": {
              "cl_type": "PublicKey",
              "parsed": "0203286173807276184a856010020a78df0ddf617364936b6e15efb6c1bae2f228bb"
            }
          },
          "block_hash": "f073ab064a7545593d71a8af82021b004be3a23c7ad47c5b27a4287ab894c396",
          "block_height": 1729784,
          "caller_public_key": "020304811a7b142c32860cb1c114f23b0754215918d819f485b0a201af6cde70fa6c",
          "contract_hash": null,
          "contract_package_hash": null,
          "cost": "100000000",
          "deploy_hash": "6799726d44a7fd492fb284333dac7133902e405b760bf9dfe38998f995eb7117",
          "entry_point_id": null,
          "error_message": null,
          "execution_type_id": 6,
          "payment_amount": "100000000",
          "status": "processed",
          "timestamp": "2023-05-17T10:13:46Z"
        }
      ]
    }
    {
      "contract_package_hash": "542359cb825bbf2a10017db5cb31b8862df7a64784e39b947678164156050d89",
      "deploy_hash": "1a9d50b16af889d2c3bd32e54216150d3bb2e0718d2a6572bb33167d1297460c",
      "block_height": 2404577,
      "from_hash": "3411d3b4d457af0309f3ee967d18ca53fdff749caa60314aeb47f2ff9f99c1c1",
      "from_type": 0,
      "nft_action_id": 5,
      "timestamp": "2021-08-11T07:20:18Z",
      "to_hash": "3411d3b4d457af0309f3ee967d18ca53fdff749caa60314aeb47f2ff9f99c1c1",
      "to_type": 0,
      "token_id": "US-7000001-XTest6",
      "token_tracking_id": 5
    }
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/accounts/invalid_identifier' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "error": {
        "code": "invalid_input",
        "message": "AccountHash identifier is not a valid account hash or public key"
      }
    }
    GET /accounts/{public_key}/deploys
    GET /accounts/{account_identifier}/nft-token-ownership
    GET /accounts/{public_key}/delegation-rewards

    Entity or resource access is forbidden

    not_found

    NotFoundError

    404

    Entity not found

    duplicate_entity

    DuplicateEntityError

    409

    Entity already exist

    AccountInfo
    Account info
    CentralizedAccountInfo
    Delegation
    Delegator reward
    Fungible token ownership
    Fungible token action
    NFT
    NFT action
    NFT ownership
    Transfer
    Validator

    ContractPackage entity.

    contract

    Contract

    Contract entity.

    contract_entrypoint

    ContractEntrypoint

    ContractEntrypoint entity.

    rate

    float32

    CSPR rate for specified currency that was relevant at the moment of deploy creation.

    transfers

    []Transfer

    List of Transfer entities.

    nft_token_actions

    [] NFTTokenAction

    List of NFTTokenAction entities.

    ft_token_actions

    [] FTTokenAction

    List of Fungible token action entities.

    AccountInfo
    Account info
    CentralizedAccountInfo
    ContractPackage

    uint8

    Action source hash type: 0 for account, 1 for contract

    to_hash

    string(64)

    Action target account or contract hash, represented as a hexadecimal string

    to_type

    uint8

    Action target hash type: 0 for account, 1 for contract

    nft_action_id

    uint8

    NFT action type type identifier

    token_id

    string

    Token ID presented on the network

    timestamp

    uint16

    The timestamp of performed token action

    Action target public key if it's an account

    to_account_info

    AccountInfo

    Action source account info if it's an account

    to_centralized_account_info

    CentralizedAccountInfo

    Action target centralized account info if it's an account

    from_account_info

    AccountInfo

    Action target account info if it's an account

    from_centralized_account_info

    CentralizedAccountInfo

    Action target centralized account info if it's an account

    from_cspr_name

    string

    Primary CSPR.name of the source account, if it is an account

    to_cspr_name

    string

    Primary CSPR.name of the destination account, if it is an account

    NFTToken
    ContractPackage
    Deploy
    Contract package
    Account
    NFTToken

    account_hash

    string(64)

    Account hash represented as a hexadecimal string

    name

    string

    Account name

    url

    string

    Website URL associated with the account

    avatar_url

    string

    Account avatar URL

    Account

    account_hash

    Account info is related to an account

    Get centralized account info
    Get centralized account infos

    cspr_name

    string

    Owner account CSPR.name

    tokens_number

    Sort NFT token ownership by tokens number

    contract_package

    ContractPackage

    Fungible contract package

    owner_public_key

    string(68)

    Owner public key if it's an account

    account_info

    AccountInfo

    Owner account info

    centralized_account_info

    CentralizedAccountInfo

    PaginatedResponse
    <NFTTokenOwnership>

    Owner centralized account info

    {
      "data": true
    }

    era_id

    Sort validator rewards by era identifier

    rate

    float32

    The rate that was relevant at the moment when the last block was proposed. To get more details see Including CSPR rates .

    account_info

    AccountInfo

    Account info provided by the account owner

    centralized_account_info

    CentralizedAccountInfo

    Account information available for known accounts provided by CSPR.cloud team

    cspr_name

    string

    Primary CSPR.name of the account

    PaginatedResponse
    <DelegatorReward>

    order_by

    string

    Sorting property the results should be sorted by

    order_direction

    string

    Order direction: ASC or DESC

    The defaults are different for different endpoints and are provided in the corresponding endpoint documentation.

    Example

    Get blocks sorted by height from lowest to highest:

    paginated responses
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/blocks?order_by=block_height&order_direction=ASC' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": {
        "account_hash": "02faaa3d8155039a88589d531f8107335476589c2e920980a6981f905671e20d",
        "avatar_url": "https://casper-assets.s3.amazonaws.com/accounts/casper-association.png",
        "name": "Casper Association - Developer grants",
        "url": null
      }
    }
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/accounts/1de39471ba0a9e8fa627a27fb01f261dc73ca8f8942c01982c03c4c73a193893/nft-token-ownership' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "contract_package_hash": "00530561446e9ca68b04b2bfbb3fc9cfad9e444340c954b970fbd524ff3c25ee",
          "owner_hash": "1de39471ba0a9e8fa627a27fb01f261dc73ca8f8942c01982c03c4c73a193893",
          "owner_type": 0,
          "tokens_number": 1
        },
        {
          "contract_package_hash": "998af6825d77da15485baf4bb89aeef3f1dfb4a78841d149574b0be694ce4821",
          "owner_hash": "1de39471ba0a9e8fa627a27fb01f261dc73ca8f8942c01982c03c4c73a193893",
          "owner_type": 0,
          "tokens_number": 1
        }
      ]
    }
    curl -X 'POST' \
      'https://api.testnet.cspr.cloud/awaiting-deploys' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
      -d '{
        "hash": "aa46828cd1b756686c2ed1af7fcd8ab0b37305a208164dd55aaf19d23607dfa9",
        "header": {
          "ttl": "30m",
          "account": "0176197d7191ce519ed043221956a2227921abf30364d4362970229027ec828f04",
          "body_hash": "3d5b08d531e9bd979d20f40b8ba74fc47ae5d209a42f64a345220661e5000254",
          "gas_price": 1,
          "timestamp": "2024-02-08T09:13:35.291Z",
          "chain_name": "casper-test",
          "dependencies": []
        },
        "payment": {
          "ModuleBytes": {
            "args": [
              [
                "amount",
                {
                  "bytes": "0400f90295",
                  "parsed": "2500000000",
                  "cl_type": "U512"
                }
              ]
            ],
            "module_bytes": ""
          }
        },
        "session": {
          "StoredContractByHash": {
            "args": [
              [
                "validator",
                {
                  "bytes": "010e5669b070545e2b32bc66363b9d3d4390fca56bf52a05f1411b7fa18ca311c7",
                  "parsed": "010e5669b070545e2b32bc66363b9d3d4390fca56bf52a05f1411b7fa18ca311c7",
                  "cl_type": "PublicKey"
                }
              ],
              [
                "amount",
                {
                  "bytes": "050006e78aa5",
                  "parsed": "711000000000",
                  "cl_type": "U512"
                }
              ],
              [
                "delegator",
                {
                  "bytes": "0176197d7191ce519ed043221956a2227921abf30364d4362970229027ec828f04",
                  "parsed": "0176197d7191ce519ed043221956a2227921abf30364d4362970229027ec828f04",
                  "cl_type": "PublicKey"
                }
              ]
            ],
            "hash": "93d923e336b20a4c4ca14d592b60e5bd3fe330775618290104f9beb326db7ae2",
            "entry_point": "undelegate"
          }
        },
        "approvals": [
          {
            "signer": "0176197d7191ce519ed043221956a2227921abf30364d4362970229027ec828f04",
            "signature": "013815f5f7ca37cb16ffd1277afdc11e3bc765a072d839e9ebf1bf3798f3671c1cf77cb1d6c8367b6ab11a014829e4d03c4950721705fc0eec3f9e91fb9a8d180d"
          }
        ]
      }'
    curl -X 'GET' \
       'https://api.testnet.cspr.cloud/accounts/018afa98ca4be12d613617f7339a2d576950a2f9a92102ca4d6508ee31b54d2c02/delegation-rewards' \
       -H 'Accept: application/json' \
       -H 'Authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "item_count": 236971,
      "page_count": 23698,
      "data": [
        {
          "amount": "159823316933",
          "era_id": 11955,
          "public_key": "018afa98ca4be12d613617f7339a2d576950a2f9a92102ca4d6508ee31b54d2c02",
          "timestamp": "2024-01-04T15:22:55Z",
          "validator_public_key": "01075ec8809c691a1d1b0250ba9ea75da5460e3df43c3172771c6975c989457159"
        },
        {
          "amount": "79953616939",
          "era_id": 11955,
          "public_key": "018afa98ca4be12d613617f7339a2d576950a2f9a92102ca4d6508ee31b54d2c02",
          "timestamp": "2024-01-04T15:22:55Z",
          "validator_public_key": "0106618e1493f73ee0bc67ffbad4ba4e3863b995d61786d9b9a68ec7676f697981"
        },
        ...
        {
          "amount": "8575383",
          "era_id": 11955,
          "public_key": "018afa98ca4be12d613617f7339a2d576950a2f9a92102ca4d6508ee31b54d2c02",
          "timestamp": "2024-01-04T15:22:55Z",
          "validator_public_key": "01014adf59e29558cfee1a6bcf0dd64701b0ea2c778bd4c00e3383085b88d6342c"
        }
      ]
    }
    {
      "data": [
        {
          "block_height": 0,
          "block_hash": "975ea4de188c2a67946188cea0ec8a93d2d38286d7642526d50c45839a291210",
          "parent_block_hash": "0000000000000000000000000000000000000000000000000000000000000000",
          "state_root_hash": "e88b7c061760134ba37ad312c1e2d6373121748e9c61bcea19cc57510829addf",
          "era_id": 0,
          "proposer_public_key": "0106ca7c39cd272dbf21a86eeb3b36b7c26e2e9b94af64292419f7862936bca2ca",
          "native_transfers_number": 0,
          "contract_calls_number": 0,
          "is_switch_block": false,
          "timestamp": "2021-04-08T17:00:57Z"
        },
        {
          "block_height": 1,
          "block_hash": "f8ebb3a81c9c70faeaec896c94e7e56c75a5e1548e1b8dfe639c1b31610e5d22",
          "parent_block_hash": "975ea4de188c2a67946188cea0ec8a93d2d38286d7642526d50c45839a291210",
          "state_root_hash": "e88b7c061760134ba37ad312c1e2d6373121748e9c61bcea19cc57510829addf",
          "era_id": 0,
          "proposer_public_key": "017d96b9a63abcb61c870a4f55187a0a7ac24096bdb5fc585c12a686a4d892009e",
          "native_transfers_number": 0,
          "contract_calls_number": 0,
          "is_switch_block": false,
          "timestamp": "2021-04-08T17:02:02Z"
        },
        ...
        {
          "block_height": 9,
          "block_hash": "590f7b20a276ef7a2a2fba6871ad781a56fad16daa0ee80b4f214f7870652255",
          "parent_block_hash": "2e601c65dbfde43948eef998b8ab5c68d9f95b35612eb0245444903ea419c185",
          "state_root_hash": "f6985aa0d6dc760fd651f5d86bb3ecb7b9d3b56860b437aa83a0fa489dab9d3b",
          "era_id": 0,
          "proposer_public_key": "017d96b9a63abcb61c870a4f55187a0a7ac24096bdb5fc585c12a686a4d892009e",
          "native_transfers_number": 0,
          "contract_calls_number": 3,
          "is_switch_block": false,
          "timestamp": "2021-04-08T17:10:47Z"
        }
      ],
      "item_count": 2291305,
      "page_count": 229131
    }

    contract

    called by deploy.

    contract_entrypoint

    called by deploy.

    rate

    float32

    CSPR rate for specified currency that was relevant at the moment of deploy creation.

    transfers

    []

    List of Transfer entities.

    nft_token_actions

    []

    List of NFTTokenAction entities.

    ft_token_actions

    []

    List of Fungible token action entities.

    contract_hash

    Called contract hash

    contract_entrypoint_id

    Called entry point ID

    from_block_height

    From block height range

    to_block_height

    To block height range

    timestamp

    Sort deploys by timestamp

    account_info

    AccountInfo

    Account info provided by the deploy caller

    centralized_account_info

    CentralizedAccountInfo

    Account information available for known accounts provided by CSPR.cloud team

    caller_cspr_name

    string

    Primary CSPR.name of the deploy caller account

    contract_package

    ContractPackage

    PaginatedResponse
    <Deploy>

    called by deploy.

    Action source hash type: 0 for account, 1 for contract

    to_hash

    string(64)

    Action target account or contract hash, represented as a hexadecimal string

    to_type

    uint8

    Action target hash type: 0 for account, 1 for contract

    ft_action_type_id

    uint8

    type identifier

    amount

    string

    Tokens amount value used during the token action

    timestamp

    uint16

    The timestamp of performed token action

    to_account_info

    Action source account info if it's an account

    from_account_info

    Action target account info if it's an account

    to_centralized_account_info

    Action target centralized account info if it's an account

    from_centralized_account_info

    Action target centralized account info if it's an account

    from_cspr_name

    string

    Primary CSPR.name of the source account, if it is an account

    to_cspr_name

    string

    Primary CSPR.name of the destination account, if it is an account

    deploy_hash

    string(64)

    Deploy hash in which the token action occurred. First part of token action identifier, represented as a hexadecimal string

    block_height

    uint64

    Height of the block in which the token action occurred.

    transform_idx

    int

    ID of the transform in the deploy execution result containing performed token action in deploy execution. Second part of token action identifier

    contract_package_hash

    string(64)

    Contract package hash of fungible token contract, represented as a hexadecimal string

    from_hash

    string(64)

    Action source account or contract hash, represented as a hexadecimal string

    from_type

    contract_package

    ContractPackage

    Fungible contract package

    deploy

    Deploy

    Deploy in which the token action occurred

    from_public_key

    string(68)

    Action source public key if it's an account

    to_public_key

    string(68)

    Contract package

    contract_package_hash

    Fungible tokens actions belong to a contract package

    Account

    from_hash, to_hash

    Fungible token actions could have accounts as the action source and target

    Get fungible token actions
    Get contract package fungible token actions
    Get account fungible token actions
    Get fungible token action types

    uint8

    Action target public key if it's an account

    Type
    Description

    contract_package_hash

    string(64)

    Contract package hash represented as a hexadecimal string. Unique contract package identifier

    owner_public_key

    string(68)

    Public key of the owner of the contract package. Represented as a hexadecimal string

    name

    string

    Name of the contract package.

    description

    string

    Description of the contract package.

    metadata

    ContractPackageMetadata

    Metadata associated with the contract package. Details described in the next table.

    latest_version_contract_type_id

    Metadata Property:

    Metadata Property
    Type
    Description

    name

    string

    Name associated with the contract package.

    symbol

    string

    Contract package name pulled from the last version named keys. Contract package symbol pulled from the last version named keys. Applicable only for token contracts.

    decimals

    uint8

    Contract package token decimals pulled from the last version named keys. Applicable only for token contracts.

    balances_uref

    string(72)

    Optional properties

    Depending on the endpoint, the following optional property may be included in the ContractPackage entity:

    Property
    Type
    Description

    deploys_number

    int

    Number of deploys in the specified number of the past days. It's a that accepts the number of days as an argument.

    Relations

    The ContractPackage entity has the following relations with other entities:

    Entity
    Mapping property
    Description

    contract_package_hash

    Contracts packages are deployed to the network with a deploy call.

    contract_package_hash

    Contracts are different versions of the same smart contract included in the contract package

    Endpoints

    The ContractPackage entity has the following endpoints:

    • Get contract package

    • Get contract packages

    Relation endpoints

    The ContractPackage entity has the following relation endpoints:

    • Get contract package contracts

    • Get contract package NFT tokens (applicable only to NFT contract packages)

    • Get contract package NFT token actions (applicable only to NFT contract package)

    • Get contract package NFT token ownership (applicable only to NFT contract package)

    • (applicable only to fungible token contract package)

    • (applicable only to fungible token contract package)

    Contract Package

    deploy_hash

    Hash of the deploy that deployed the contract to the network

    Sorting

    None

    Optional properties

    Property
    Type
    Description

    contract_package

    Contract package, this contract version is a part of

    Sorting

    Property
    Description

    timestamp

    Sort contracts by timestamp

    Default sorting is timestamp DESC

    Response

    PaginatedResponse<Contract>

    Example

    Optional properties

    Most of the REST API endpoints allow optional data to be included in their responses. It could be related entities, derived properties, account info standard data, or CSPR rates at the moment of the entity creation. Please check the endpoint documentation to find out what optional properties could be included in the responses.

    Requests

    Optional data can be included using the includes query param that specifies a comma-separated list of all optional data that should be included. The includes query param options can be one of three forms:

    Scalar values

    To include a scalar value its name should be specified the includes list.

    Objects

    Similar to scalar values to include an object its name should be specified in the includes list. However, for objects it's possible to specify a subset of fields that should be returned using the object querying syntax, which looks like this:

    The request above will return only the name and the branding.logo properties of the account info object

    Functions

    When the included data requires extra parameters, it is included as a function. The function form provides a possibility to specify the needed input. For example, to include the USD to CSPR rate, the USD currency ID 1 should be passed as a parameter to the rate function, like this:

    Examples

    Scalar values

    The WriteTransfer transforms that are used to track the native token transfers, contain the recipient account hash. It's possible, however, to include the corresponding public key if it is known to us. To learn more, visit the page.

    Objects

    An entity is called related if its identifier is present among the requested entity's properties. To include a related entity you need to specify its name in the includes query param. In the example below, we include contract package and contract entry point objects in the deploy list data. To learn more, visit the page.

    Functions

    Entities that have the timestamp property can optionally include the CSPR rate at that time in the requested currency, which is passed as an argument to the rate function. In the example below, we include the USD to CSPR rate in the account transfers response. To learn more, visit the page.

    The rate property of the first result in the response above holds the CSPR rate from May 16th, 2023, and the second result has the rate from November 11th, 2022.

    Get blocks

    Get paginated list of blocks

    Query params

    Query param
    Description

    proposer_public_key

    Proposer public key

    Sorting

    Property
    Description

    Default sorting is block_height DESC

    Optional properties

    Property
    Type
    Description

    Response

    Example

    Get account info

    Get account info by account hash.

    Endpoint

    GET /account-info/{account_hash}

    Query params

    None

    Sorting

    None

    Optional properties

    None

    Response

    Example

    Non-fungible token (NFT)

    The NFTToken entity provides representation of an NFT on Casper Network. CSPR.cloud supports NFTs compatible with the and Casper Network standards.

    Properties

    The NFTToken entity has the following properties:

    Property

    Get bidder

    Get bidder by public key

    Query params

    Query param
    Description

    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/accounts/020304811a7b142c32860cb1c114f23b0754215918d819f485b0a201af6cde70fa6c/deploys' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "item_count": 20,
      "page_count": 2,
      "data": [
        {
          "args": {
            "amount": {
              "cl_type": "U512",
              "parsed": "2500000000"
            },
            "id": {
              "cl_type": {
                "Option": "U64"
              },
              "parsed": null
            },
            "target": {
              "cl_type": {
                "ByteArray": 32
              },
              "parsed": "bb9b87e33a64af8fda37ceab67609b79500e8d88a2f5364f321fdc2d6ec1f74d"
            }
          },
          "block_hash": "a87896eeafadc85a9adb4ee4dd6bb8bc5d4edf8b1695f2999916324041443b03",
          "block_height": 2175890,
          "caller_public_key": "020304811a7b142c32860cb1c114f23b0754215918d819f485b0a201af6cde70fa6c",
          "contract_hash": null,
          "contract_package_hash": null,
          "cost": "100000000",
          "deploy_hash": "18be0ac6c551e3a80a27847004db4cf9614ac7104b6448c7be6418116c32569b",
          "entry_point_id": null,
          "error_message": null,
          "execution_type_id": 6,
          "payment_amount": "100000000",
          "status": "processed",
          "timestamp": "2023-11-03T14:33:27Z"
        },
        {
          "args": {
            "amount": {
              "cl_type": "U512",
              "parsed": "5000000000"
            },
            "id": {
              "cl_type": {
                "Option": "U64"
              },
              "parsed": 1684147006568
            },
            "target": {
              "cl_type": "PublicKey",
              "parsed": "020304811a7b142c32860cb1c114f23b0754215918d819f485b0a201af6cde70fa6c"
            }
          },
          "block_hash": "43ca28afa8ed3ee7ffbe97d3f47556663942e4fa7d8420f49b9f3a5e1eec6a6e",
          "block_height": 1724562,
          "caller_public_key": "020304811a7b142c32860cb1c114f23b0754215918d819f485b0a201af6cde70fa6c",
          "contract_hash": null,
          "contract_package_hash": null,
          "cost": "100000000",
          "deploy_hash": "21945b6f126abc7de1e2d84a7161f101a7c19b22eb256dfa8e8b1d8886652ee6",
          "entry_point_id": null,
          "error_message": "ApiError::InvalidPurse [12]",
          "execution_type_id": 6,
          "payment_amount": "100000000",
          "status": "processed",
          "timestamp": "2023-05-15T10:36:59Z"
        },
        ...
        {
          "args": {
            "amount": {
              "cl_type": "U512",
              "parsed": "5000000000"
            },
            "id": {
              "cl_type": {
                "Option": "U64"
              },
              "parsed": 1684318398541
            },
            "target": {
              "cl_type": "PublicKey",
              "parsed": "0203286173807276184a856010020a78df0ddf617364936b6e15efb6c1bae2f228bb"
            }
          },
          "block_hash": "f073ab064a7545593d71a8af82021b004be3a23c7ad47c5b27a4287ab894c396",
          "block_height": 1729784,
          "caller_public_key": "020304811a7b142c32860cb1c114f23b0754215918d819f485b0a201af6cde70fa6c",
          "contract_hash": null,
          "contract_package_hash": null,
          "cost": "100000000",
          "deploy_hash": "6799726d44a7fd492fb284333dac7133902e405b760bf9dfe38998f995eb7117",
          "entry_point_id": null,
          "error_message": null,
          "execution_type_id": 6,
          "payment_amount": "100000000",
          "status": "processed",
          "timestamp": "2023-05-17T10:13:46Z"
        }
      ]
    }
    {
      "amount": "37357",
      "contract_package_hash": "883238e99639bc7f5f7858398d0df94138c8ad89f76bdef7fac5fdd3df7f033a",
      "deploy_hash": "0005f1e53afa9799a66a389a90caab84ab3cbd000ab7741e55e09f80c75002b6",
      "block_height": 2404571,
      "from_hash": "f41cc7553d271e7ac70899ead4d3584c72ca2e119f2a86fbb4641ca95f3ba9e7",
      "from_type": 0,
      "ft_action_type_id": 2,
      "timestamp": "2023-02-09T19:16:21Z",
      "to_hash": "a5a9a804a383f3b0e131c85d471542af2c6d4ec57bab39182ba93dd7bd86f46c",
      "to_type": 1,
      "transform_idx": 67
    }
    GET /contract-packages/{contract_package_hash}/contracts
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/contract-packages/ae2feaa4e86841c1c6f40f1779e1e1cb1d9d4d52a0eb82a8962829646524e744/contracts' \
      -H 'Accept: application/json' \
      -H 'Authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "contract_hash": "8a2feaa4e86841c1c6f40f1779e1e1cb1d9d4d52a0eb82a8962829646524e732",
          "contract_package_hash": "ae2feaa4e86841c1c6f40f1779e1e1cb1d9d4d52a0eb82a8962829646524e744",
          "deploy_hash": "1a2feaa4e86841c1c6f40f1779e1e1cb1d9d4d52a0eb82a8962829646524e755",
          "contract_type_id": 2,
          "timestamp": "2023-01-01T12:00:00Z",
          "contract_version": 1,
          "is_disabled": false
        },
        {
          "contract_hash": "5e718fa0918ae95e58b9a320f412b935af6544b04b6b89fb2ca9982cab0dd261",
          "contract_package_hash": "8e718fa0918ae95e58b9a320f412b935af6544b04b6b89fb2ca9982cab0dd262",
          "deploy_hash": "2e718fa0918ae95e58b9a320f412b935af6544b04b6b89fb2ca9982cab0dd263",
          "contract_type_id": 4,
          "timestamp": "2023-01-02T12:00:00Z",
          "contract_version": 2,
          "is_disabled": false
        },
        ...
      ],
      "item_count": 100,
      "page_count": 10
    }
    GET /blocks
    ContractPackage
    Contract
    Contract
    ContractEntrypoint
    ContractEntrypoint
    Transfer
    NFTTokenAction
    FTTokenAction
    Fungible token action type
    AccountInfo
    AccountInfo
    CentralizedAccountInfo
    CentralizedAccountInfo

    uint8

    Contract type identifier of the latest contract version

    timestamp

    datetime

    Timestamp indicating when the contract package was created.

    icon_url

    string

    URL pointing to an icon representing the contract package.

    website_url

    string

    URL pointing to the website representing the contract.

    Contract package balances dictionary URef pulled from the last version named keys. Applicable only for token contracts.

    total_supply_uref

    string(72)

    Contract package total supply URef pulled from the last version named keys. Applicable only for token contracts.

    ownership_mode

    uint8

    CEP-78 contract ownership mode. Applicable only for CEP-78 contracts.

    nft_kind

    uint8

    CEP-78 contract NFT kind. Applicable only for CEP-78 contracts.

    nft_metadata_kind

    uint8

    CEP-78 contract NFT metadata kind. Applicable only for CEP-78 contracts.

    whitelist_mode

    uint8

    CEP-78 contract whitelist mode. Applicable only for CEP-78 contracts.

    holder_mode

    uint8

    CEP-78 contract holder mode. Applicable only for CEP-78 contracts.

    minting_mode

    uint8

    CEP-78 contract minting mode. Applicable only for CEP-78 contracts.

    burn_mode

    uint8

    CEP-78 contract burn mode. Applicable only for CEP-78 contracts.

    identifier_mode

    uint8

    CEP-78 contract identifier mode. Applicable only for CEP-78 contracts.

    metadata_mutability

    uint8

    CEP-78 contract metadata mutability mode. Applicable only for CEP-78 contracts.

    owner_reverse_lookup_mode

    uint8

    CEP-78 contract owner reverse lookup mode. Applicable only for CEP-78 contracts.

    events_mode

    uint8

    CEP-78 contract events mode. Applicable only for CEP-78 contracts.

    Get contract package fungible token ownership
    Get contract package fungible tokens
    function includer
    Deploy
    Contract
    ContractPackage
    Transfer REST API
    Including related entities
    Including CSPR rates

    block_height

    Sort blocks by block height

    timestamp

    Sort blocks by timestamp

    proposer_account_info

    AccountInfo

    Account info provided by the block proposer

    proposer_centralized_account_info

    CentralizedAccountInfo

    Account information available for known accounts provided by CSPR.cloud team

    proposer_cspr_name

    string

    Primary CSPR.name of the block proposer account

    PaginatedResponse
    <Block>
    AccountInfo
    includes=account_info{info{owner{name,branding{logo}}}}
    includes=rate(1)
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/transfers?includes=to_public_key' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "amount": "2500000000",
          "deploy_hash": "0000015dd8b8065e31af7785cd174fa10bebf380f39515ffc3a8a536aee819a0",
          "from_purse": "uref-b8b87efb3d0f6d6f5f4b3bed8a9b017acfcb7ecaf555ec42d852864622e71c9b-007",
          "id": 0,
          "initiator_account_hash": "42204997767147bb78f0045b50272cdfbf90bd10544f9e51d66e0560166de456",
          "timestamp": "2021-10-12T06:20:59Z",
          "to_account_hash": "a8ae349a49ede9df992637e4c9141b5075352b4d607711bd1cf30a76403406c6",
          "to_public_key": "01da93a224201b9936f535502643fe07a922b2010993cdad093acb0112d810c1a8",
          "to_purse": "uref-6626e023ab7ab4837be36a9e61dffcfe239d987039727c9f56408527e48d3968-004",
          "transform_key": "c3fca49f9193ec730e9170a02360d0a96d9f3c07c9b898b6c6494d67b417d886"
        },
        {
          "amount": "2500000000",
          "deploy_hash": "00000498bf7c3994f804a4f8a99378350e02ebf5633774ced4faa2ae6dad88a3",
          "from_purse": "uref-6626e023ab7ab4837be36a9e61dffcfe239d987039727c9f56408527e48d3968-007",
          "id": 0,
          "initiator_account_hash": "a8ae349a49ede9df992637e4c9141b5075352b4d607711bd1cf30a76403406c6",
          "timestamp": "2021-10-13T12:26:47Z",
          "to_account_hash": "42204997767147bb78f0045b50272cdfbf90bd10544f9e51d66e0560166de456",
          "to_public_key": "01c978cd9eb96143ed89f0523c07787207ff4eb84756197a6a1d9093bcd51da4ed",
          "to_purse": "uref-b8b87efb3d0f6d6f5f4b3bed8a9b017acfcb7ecaf555ec42d852864622e71c9b-004",
          "transform_key": "7fd3d2892dc61f43269a55aaeec21158c283717549caf7a820e9cfa966e6df1d"
        },
        ...
        {
          "amount": "1000000000000",
          "deploy_hash": "000026eeab921c16335f65f54ea050efca9cf352840a1025f87b4deaa3bbdd95",
          "from_purse": "uref-b06a1ab0cfb52b5d4f9a08b68a5dbe78e999de0b0484c03e64f5c03897cf637b-007",
          "id": null,
          "initiator_account_hash": "b383c7cc23d18bc1b42406a1b2d29fc8dba86425197b6f553d7fd61375b5e446",
          "timestamp": "2021-10-20T23:59:25Z",
          "to_account_hash": "1b43092d00330439d874c1e4b38bf68b6c9a043aacf72da350e65e46d13e0c51",
          "to_public_key": "01ec83a2a60742294ab33aa86b6cd6c71662d1f37e9a270edc1e768e1a7deaa5c7",
          "to_purse": "uref-f4d64726bf61c2b1f53ce9b137a64a063e8225a98f1cb6ed1a9966ccf983b480-004",
          "transform_key": "f4d64726bf61c2b1f53ce9b137a64a063e8225a98f1cb6ed1a9966ccf983b480"
        }
      ],
      "item_count": 5297116,
      "page_count": 529712
    }
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/deploys?includes=contract_package,contract_entrypoint \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "item_count": 6664918,
      "page_count": 666492,
      "data": [
        {
          "args": {
            "amount": {
              "cl_type": "U512",
              "parsed": "100000000000"
            },
            "post_id": {
              "cl_type": "U64",
              "parsed": 1
            },
            "source_purse": {
              "cl_type": "URef",
              "parsed": "uref-dbee6bd5057140ef79760ff97ee225f219c095a6b520e9fdb1083005b3e91adf-007"
            }
          },
          "block_hash": "2f535ee1f7a841bf33fb3af6c841ee5ac81b331e4f033e2700829800d406cd6a",
          "caller_public_key": "019d71f9869046408292ec32e78e613ac5f7b320fd268cd8c0ae3c95dc5d6dca62",
          "contract_entrypoint": {
            "action_type_id": null,
            "contract_hash": "8069372ccd59c538d93404313182f8c47579b5aa4fe23060ae2f6ef83a4aa7c0",
            "contract_package_hash": "b67106c2381b719a2e310e0598847d75ac37381471e318ae112a85e79b96e9ad",
            "id": 1685659,
            "name": "bid"
          },
          "contract_hash": "8069372ccd59c538d93404313182f8c47579b5aa4fe23060ae2f6ef83a4aa7c0",
          "contract_package": {
            "contract_package_hash": "b67106c2381b719a2e310e0598847d75ac37381471e318ae112a85e79b96e9ad",
            "description": null,
            "icon_url": null,
            "website_url": null,
            "latest_version_contract_type_id": null,
            "metadata": {},
            "name": null,
            "owner_public_key": "01a0c97ba1ba5a973eeee369e9480ea15665278699873876a18eaf09c361f8e9c1",
            "timestamp": "2023-12-17T16:32:42Z"
          },
          "contract_package_hash": "b67106c2381b719a2e310e0598847d75ac37381471e318ae112a85e79b96e9ad",
          "cost": "20894638930",
          "deploy_hash": "c2a83a2409f65447d8495768a6f99fee7247135680461ed4b3d6d936995c7630",
          "entry_point_id": 1685659,
          "error_message": null,
          "execution_type_id": 2,
          "payment_amount": "150000000000",
          "status": "processed",
          "timestamp": "2023-12-17T17:52:39Z"
        },
        ...
        {
          "args": {
            "token_owner": {
              "cl_type": "Key",
              "parsed": {
                "Account": "account-hash-2142a81faac0670b76ef0e1be2925ddb9cd7493cc99b2fa591161b82c808a7e3"
              }
            }
          },
          "block_hash": "0daaee30d1a87b4323221e43d08ce4365ab88681f47b18cc247336fa6773d731",
          "caller_public_key": "014d657f276686b711251f32fb9fa36c0852aaab43f4f6bb6cbc7794d4d54cf67e",
          "contract_entrypoint": {
            "action_type_id": null,
            "contract_hash": "f07497ba5e71e52643e620d4722419c22870638ee3f5412c9cbc204c00b3b0b0",
            "contract_package_hash": "7c7a462c55ed3f3631a933e46315a072adaa38105a4160df3a00823495f53e41",
            "id": 1685652,
            "name": "register_owner"
          },
          "contract_hash": "f07497ba5e71e52643e620d4722419c22870638ee3f5412c9cbc204c00b3b0b0",
          "contract_package": {
            "contract_package_hash": "7c7a462c55ed3f3631a933e46315a072adaa38105a4160df3a00823495f53e41",
            "description": null,
            "icon_url": null,
            "website_url": null,
            "latest_version_contract_type_id": 7,
            "metadata": {
              "burn_mode": 0,
              "events_mode": 0,
              "holder_mode": 2,
              "identifier_mode": 0,
              "metadata_mutability": 1,
              "minting_mode": 1,
              "name": "enhanced-nft-1",
              "nft_kind": 1,
              "nft_metadata_kind": 0,
              "ownership_mode": 2,
              "symbol": "ENFT-1",
              "total_supply_uref": "uref-bc550f42fe8898a51bc0daae90ce910f4b5a042a306efa8f95032813089ad195-007",
              "whitelist_mode": 0
            },
            "name": "enhanced-nft-1",
            "owner_public_key": "01a0c97ba1ba5a973eeee369e9480ea15665278699873876a18eaf09c361f8e9c1",
            "timestamp": "2023-12-17T16:29:40Z"
          },
          "contract_package_hash": "7c7a462c55ed3f3631a933e46315a072adaa38105a4160df3a00823495f53e41",
          "cost": "681461970",
          "deploy_hash": "be2db151ba267cff9630b54c45b0aeb704d7d512f12670f7995af7cedad27d27",
          "entry_point_id": 1685652,
          "error_message": null,
          "execution_type_id": 2,
          "payment_amount": "5000000000",
          "status": "processed",
          "timestamp": "2023-12-17T17:26:36Z"
        }
      ]
    }
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/accounts/8acedb18a06c3b1b0823334f5b6fea53b2f6bc50f792de401b1f561bc214ba1f/transfers?includes=rate(1)' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "amount": "10000000000000",
          "deploy_hash": "4237b9518b7f0dda69235fedc92badd4e5206cd9b3ad2e9f599fe34416d9e3ab",
          "from_purse": "uref-b06a1ab0cfb52b5d4f9a08b68a5dbe78e999de0b0484c03e64f5c03897cf637b-007",
          "id": 20230516,
          "initiator_account_hash": "b383c7cc23d18bc1b42406a1b2d29fc8dba86425197b6f553d7fd61375b5e446",
          "rate": 0.0488488,
          "timestamp": "2023-05-16T22:01:16Z",
          "to_account_hash": "8acedb18a06c3b1b0823334f5b6fea53b2f6bc50f792de401b1f561bc214ba1f",
          "to_purse": "uref-fb2c1f47c593e5f27735c92217d7c99f85516467a1cb446214ae22fc46d8559e-004",
          "transform_key": "abf1343e47952a57ab001ec423398a773dfd96f3f32a905daeb6bc47db0db2dc"
        },
        {
          "amount": "1000000000000",
          "deploy_hash": "4d14f8f9cd95aabdfdea930aa9472bf966264d25f57986b005810e11d1c05017",
          "from_purse": "uref-b06a1ab0cfb52b5d4f9a08b68a5dbe78e999de0b0484c03e64f5c03897cf637b-007",
          "id": null,
          "initiator_account_hash": "b383c7cc23d18bc1b42406a1b2d29fc8dba86425197b6f553d7fd61375b5e446",
          "rate": 0.0295418,
          "timestamp": "2022-11-14T13:14:02Z",
          "to_account_hash": "8acedb18a06c3b1b0823334f5b6fea53b2f6bc50f792de401b1f561bc214ba1f",
          "to_purse": "uref-fb2c1f47c593e5f27735c92217d7c99f85516467a1cb446214ae22fc46d8559e-004",
          "transform_key": "b0a27297a03107cd66c270d9bc7b33086f3ceb9c2e8c4058e72a4285c73273bd"
        }
      ],
      "item_count": 2,
      "page_count": 1
    }
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/blocks' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    
    {
      "data": [
        {
          "block_height": 2293939,
          "block_hash": "bd1601111651cd2668b92235f6f1f1c55cf7becd0e89712fd4d78b5f4b47e203",
          "parent_block_hash": "decfdc241b04e38b9aa37aaad40f46d67c34e311fd4aa84c7af4544ca6674130",
          "state_root_hash": "89e786fd598f9f2f84955daaacc1573a1414fdf8dfa8c93e116ff70402c0bbfb",
          "era_id": 11750,
          "proposer_public_key": "020377bc3ad54b5505971e001044ea822a3f6f307f8dc93fa45a05b7463c0a053bed",
          "native_transfers_number": 0,
          "contract_calls_number": 0,
          "is_switch_block": false,
          "timestamp": "2023-12-18T13:34:55Z"
        },
        {
          "block_height": 2293938,
          "block_hash": "decfdc241b04e38b9aa37aaad40f46d67c34e311fd4aa84c7af4544ca6674130",
          "parent_block_hash": "64d65dc99dc327105db9137c76c49c840efc950a6bb58e88779177b08481e8c1",
          "state_root_hash": "89e786fd598f9f2f84955daaacc1573a1414fdf8dfa8c93e116ff70402c0bbfb",
          "era_id": 11750,
          "proposer_public_key": "01f340df2c32f25391e8f7924a99e93cab3a6f230ff7af1cacbfc070772cbebd94",
          "native_transfers_number": 0,
          "contract_calls_number": 0,
          "is_switch_block": false,
          "timestamp": "2023-12-18T13:34:22Z"
        },
        ...
        {
          "block_height": 2293930,
          "block_hash": "865b9b0a2bd58eee789a4dfbd48d0139b6b6b62d1e61862d8669acab7508b883",
          "parent_block_hash": "1b50cacc006c50b79c2b097c41ae9bb8c919ebbf709433c05d7cac78fb0196a5",
          "state_root_hash": "f842549d60720f646b5b6b3f27d74745f2a35da8d5444e32eb35ef585322cd25",
          "era_id": 11750,
          "proposer_public_key": "01c9d4ecac1606970fa3c8fa8079aa1c04fd5371d55adf96fc6d3952fc27e8bc04",
          "native_transfers_number": 0,
          "contract_calls_number": 0,
          "is_switch_block": false,
          "timestamp": "2023-12-18T13:30:00Z"
        }
      ],
      "item_count": 2293940,
      "page_count": 229394
    }
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/account-info/fa12d2dd5547714f8c2754d418aa8c9d59dc88780350cb4254d622e2d4ef7e69' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": {
        "account_hash": "fa12d2dd5547714f8c2754d418aa8c9d59dc88780350cb4254d622e2d4ef7e69",
        "url": "http://makestake.io",
        "is_active": true,
        "info": {
          "nodes": [
            {
              "location": {
                "name": "Ashburn, VA",
                "country": "US",
                "latitude": 39.04372,
                "longitude": -77.48749
              },
              "public_key": "0106ca7c39cd272dbf21a86eeb3b36b7c26e2e9b94af64292419f7862936bca2ca",
              "description": "MAKE's first Casper Testnet validator",
              "functionality": [
                "validator"
              ]
            },
            {
              "location": {
                "name": "Ashburn, VA",
                "country": "US",
                "latitude": 39.04372,
                "longitude": -77.48749
              },
              "public_key": "017d96b9a63abcb61c870a4f55187a0a7ac24096bdb5fc585c12a686a4d892009e",
              "description": "MAKE's second Casper Testnet validator",
              "functionality": [
                "validator"
              ]
            }
          ],
          "owner": {
            "name": "MAKE",
            "type": [
              "validator",
              "corporation"
            ],
            "email": "[email protected]",
            "social": {
              "github": "make-software",
              "medium": "",
              "reddit": "",
              "wechat": "",
              "keybase": "",
              "twitter": "@WeAreTeamMAKE",
              "youtube": "",
              "facebook": "",
              "telegram": ""
            },
            "website": "https://makestake.io",
            "branding": {
              "logo": {
                "svg": "https://make.services/logo.svg",
                "png_256": "https://make.services/logo256.png",
                "png_1024": "https://make.services/logo1024.png"
              }
            },
            "identity": {
              "other": null,
              "ownership_disclosure_url": "https://makestake.io/ownership-disclosure",
              "casper_association_kyc_url": "",
              "casper_association_kyc_onchain": ""
            },
            "location": {
              "name": "Cheyenne, WY",
              "country": "US",
              "latitude": 41.14,
              "longitude": -104.820274
            },
            "resources": {
              "other": [],
              "privacy_policy_url": "https://makestake.io/privacy",
              "code_of_conduct_url": "",
              "terms_of_service_url": "https://makestake.io/tos"
            },
            "description": "MAKE is the leading technology provider for the Casper Network and creator of the CSPR Product Suite",
            "affiliated_accounts": [
              {
                "public_key": "017d96b9a63abcb61c870a4f55187a0a7ac24096bdb5fc585c12a686a4d892009e"
              },
              {
                "public_key": "0106ca7c39cd272dbf21a86eeb3b36b7c26e2e9b94af64292419f7862936bca2ca"
              },
              {
                "public_key": "0202859e04bab609744b291b54ef97b55cb3120c940cd620977f8d2687ca5bd0168c"
              },
              {
                "public_key": "01fc3b35c25fdce6fc6127fc5da32a828d51eaacab816e80611f23f4cf063bc319"
              }
            ]
          }
        },
        "deploy_hash": "5a9b3853d596243fd1b8f0a107ec7c7042ab226e628c7e742c455deab15e9719",
        "verified_account_hashes": [
          "21EAEA584903E79365BCB1F7607179CC118807033C8919CFF7489A91C3A822D1",
          "D3CCFD0DAF03E656CB4E86158E5F54BE686D9FAA91CAE3ED9310E167E65592E5",
          "FA12D2DD5547714F8C2754D418AA8C9D59DC88780350CB4254D622E2D4EF7E69"
        ],
        "created": "2021-09-17T20:24:35Z",
        "updated": "2023-09-12T00:00:01Z"
      }
    }
    Type
    Description

    contract_package_hash

    string(64)

    NFT contract package hash represented as a hexadecimal string. First of of token identifier

    block_height

    uint64

    Height of the block in which the token was minted.

    token_id

    string

    Token ID under the contract. Second part of token identifier

    token_standard_id

    uint8

    identifier

    owner_hash

    string(64)

    NFT token owner account or contract hash, represented as a hexadecimal string

    owner_type

    Example

    Optional properties

    Depending on the endpoint some of the following optional properties may be included in the NFTToken entity:

    Property
    Type
    Description

    contract_package

    NFT contract package

    owner_public_key

    string(68)

    Owner public key if it's an account

    owner_cspr_name

    string

    Primary CSPR.name of the owner account

    Relations

    Entity
    Mapping property
    Description

    contract_package_hash

    NFT tokens belong to a contract package

    from_hash, to_hash

    NFT token could have accounts as the token owner

    tracking_id

    NFT token actions are mapped by contract package hash and token id

    Endpoints

    The NFTToken entity has the following endpoints:

    • Get NFT

    • Get account NFTs

    • Get contract package NFTs

    Relation endpoints

    The NFTToken entity has the following relation endpoints:

    • Get NFT standards

    • Get off-chain NFT metadata statuses

    CEP-47
    CEP-78
    Sorting

    None

    Optional properties

    Property
    Type
    Description

    account_info

    provided by the bidder

    average_performance

    Moving average of validator performance based on the received rewards over the past 360 eras (approximately one month)

    centralized_account_info

    Account information available for known accounts provided by CSPR.cloud team

    cspr_name

    string

    Response

    Bidder

    Example

    Since this API works only with recent eras, you'll need to replace the era ID with the latest one, which you can fetch using the Get auction metrics API.

    era_id

    Active auction era identifier. Data for older eras aren't persistent for long, and will eventually become unavailable. This is a required parameter

    Get account fungible token actions

    Get account fungible token actions by identifier (public key or account hash)

    Query params

    Property
    Description

    from_block_height

    From block height range

    Sorting

    Property
    Description

    Default sorting is timestamp DESC

    Optional properties

    Property
    Type
    Description

    Response

    Example

    Deploy

    The Deploy entity provides a normalized representation of the Casper Network deploy. It is enriched with normalized contract data to make it possible to filter deploys by the contract regardless of the execution type.

    Properties

    The Deploy entity has the following properties:

    Property
    {
      "contract_package_hash": "04682e17e5a86d594d9fd2bf37c766834bbaa412499bd6b5ac4ce76449708797",
      "block_height": 2404577,
      "is_burned": false,
      "offchain_metadata": {
        "attributes": [
          {
            "trait_type": "BG",
            "value": "Bg-1"
          },
          {
            "trait_type": "BG lines",
            "value": "Bg-Line-21"
          },
          {
            "trait_type": "Strpse",
            "value": "Card-stripse-01"
          }
        ],
        "description": "The first Tornado Master NFT minted by GuardianLink using Casper to announce the partnership with Casper.",
        "image": "https://arweave.net/H5RHizXPJez8zNMC07RVZxCApW42nSfF7FQk4jwyLHs",
        "name": "Tornado Master #0"
      },
      "offchain_metadata_status": 2,
      "onchain_metadata": {
        "name": "Tornado-Demo",
        "symbol": "TD",
        "token_uri": "https://yslkpbmdp345dabuwtvg65sqgd62lnpk2bp6mwha5hsrqxocw24q.arweave.net/xJanhYN--dGANLTqb3ZQMP2lterQX-ZY4OnlGF3Ctrk"
      },
      "owner_hash": "f41b57283a23958405373e8fbd9195ddbe71e8ea98fb2f4397ab09b2f63198af",
      "owner_type": 0,
      "timestamp": "2023-11-22T12:22:21Z",
      "token_id": "0",
      "token_standard_id": 2,
      "tracking_id": 258547
    }
    GET /bidders/{public_key}?era_id={era_id}
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/bidders/0106ca7c39cd272dbf21a86eeb3b36b7c26e2e9b94af64292419f7862936bca2ca?era_id=12100' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    
    {
      "data": {
        "delegators_number": 326,
        "delegators_stake": 515236483487045440,
        "era_id": 12136,
        "fee": 15,
        "is_active": true,
        "network_share": "6.03",
        "public_key": "018f84c6fc037284f189cc8cb49f89212ff434a5eb050e48cdd164ff3890fbff69",
        "rank": 1,
        "self_share": "0.31",
        "self_stake": 1588933419545728,
        "total_stake": 516825416906591170
      }
    }
    GET /accounts/{account_identifier}/ft-token-actions

    uint8

    NFT owner type. 0 for account, 1 for contract

    onchain_metadata

    JSON

    On-chain NFT metadata

    offchain_metadata

    JSON

    Off-chain NFT metadata

    offchain_metadata_status

    uint8

    NFT token offchain metadata status identifier

    is_burned

    bool

    true if the token was burn

    tracking_id

    uint32

    Unique ID describes relation with corresponded NFTTokenAction.

    timestamp

    uint16

    The timestamp of token creation

    NFT standard
    ContractPackage
    Contract package
    Account
    NFTTokenAction

    Primary CSPR.name of the account

    AccountInfo
    Account info
    ValidatorPerformance
    CentralizedAccountInfo

    to_account_info

    Action source account info if it's an account

    to_centralized_account_info

    Action target centralized account info if it's an account

    from_account_info

    Action target account info if it's an account

    from_centralized_account_info

    Action target centralized account info if it's an account

    rate

    float32

    CSPR rate for specified currency that was relevant at the moment of deploy creation.

    from_cspr_name

    string

    Primary CSPR.name of the action source account, if it is an account

    to_cspr_name

    string

    Primary CSPR.name of the destination account, if it is an account

    to_block_height

    To block height range

    deploy_hash

    Comma-separated list of deploy hashes

    timestamp

    Sort fungible token actions by timestamp

    contract_package

    ContractPackage

    Fungible contract package

    deploy

    Deploy

    Deploy in which the token action occurred

    from_public_key

    string(68)

    Action source public key if it's an account

    to_public_key

    string(68)

    PaginatedResponse
    <FTTokenAction>

    Action target public key if it's an account

    Type
    Description

    deploy_hash

    string(64)

    Deploy hash represented as a hexadecimal string. Primary deploy identifier.

    block_hash

    string(64)

    Hash of the block containing the deploy represented as a hexadecimal string.

    block_height

    uint64

    Height of the block containing the deploy.

    caller_public_key

    string(68)

    Public key of the deploy caller account represented as a hexademical string.

    execution_type_id

    uint8

    unique identifier.

    contract_package_hash

    Example

    Optional properties

    Depending on the endpoint some of the following optional properties may be included in the Deploy entity:

    Property
    Type
    Description

    account_info

    provided by the deploy caller account

    centralized_account_info

    Account information available for known accounts provided by CSPR.cloud team

    caller_cspr_name

    string

    Primary CSPR.name of the deploy caller account

    contract_package

    Relations

    The Deploy entity has the following relations with other entities:

    Entity
    Mapping property
    Description

    caller_public_key

    Deploys are called by accounts.

    block_hash

    Deploys are executed in blocks.

    contract_hash

    Deploys can call contracts, and contracts are deployed with deploys.

    entry_point

    Endpoints

    The Deploy entity has the following endpoints:

    • Get deploy

    • Get deploys

    • Get account deploys

    • Get block deploys

    Relation endpoints

    • Get deploy execution types

    Get fungible token actions

    Get fungible token actions

    Query params

    Property
    Description

    contract_package_hash

    Filter token actions by contract package hash

    Sorting

    Property
    Description

    Default sorting is timestamp DESC

    Optional properties

    Property
    Type
    Description

    Response

    Example

    Including related entities

    CSPR.cloud REST API provides the possibility to include related entities in responses. An entity is called related if its identifier is present among the requested entity's properties. For example, the Deploy entity is related to the NFT Action entity because the latter has a deploy_hash property identifying the deploy that produced the action. Not all related entities can be included in responses; the ones that can are listed in the "Optional properties" section for the corresponding entity or endpoint page.

    Related entities are included the same as other optional properties, using the includes query param. For the related entity to be added to the response, its name has to be specified in the list of includes.

    Including related entities makes it possible to fetch the required data in one request, simplifying the integration and reducing latency, which is especially useful when processing paginated responses. Continuing the NFT Action and Deploy example, one may need to know the deploy caller account when processing the NFT Action data. By including the Deploy object in the NFT Action response, all the required information can be received in just one API call instead of requesting the deploy data for each NFT action in the list:

    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/accounts/B6C26649540C59DECBC53274A67336D0588F6AD2AE0863A8A636DDDCC75689F0/ft-token-actions' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "amount": "24928248069",
          "contract_package_hash": "0885c63f5f25ec5b6f3b57338fae5849aea5f1a2c96fc61411f2bfc5e432de5a",
          "deploy_hash": "0005f1e53afa9799a66a389a90caab84ab3cbd000ab7741e55e09f80c75002b6",
          "block_height": 1475677,
          "from_hash": null,
          "from_type": 1,
          "ft_action_type_id": 1,
          "timestamp": "2023-02-09T19:16:21Z",
          "to_hash": "b6c26649540c59decbc53274a67336d0588f6ad2ae0863a8a636dddcc75689f0",
          "to_type": 1,
          "transform_idx": 92
        },
        {
          "amount": "24928248069",
          "contract_package_hash": "0885c63f5f25ec5b6f3b57338fae5849aea5f1a2c96fc61411f2bfc5e432de5a",
          "deploy_hash": "0005f1e53afa9799a66a389a90caab84ab3cbd000ab7741e55e09f80c75002b6",
          "block_height": 1475677,
          "from_hash": "b6c26649540c59decbc53274a67336d0588f6ad2ae0863a8a636dddcc75689f0",
          "from_type": 1,
          "ft_action_type_id": 2,
          "timestamp": "2023-02-09T19:16:21Z",
          "to_hash": "a5a9a804a383f3b0e131c85d471542af2c6d4ec57bab39182ba93dd7bd86f46c",
          "to_type": 1,
          "transform_idx": 104
        },
        ...
        {
          "amount": "22894649700",
          "contract_package_hash": "0885c63f5f25ec5b6f3b57338fae5849aea5f1a2c96fc61411f2bfc5e432de5a",
          "deploy_hash": "00194e8c2076ae84447a8ccabf39ad1eb1a090ab4e592989fd497961fb0b7293",
          "block_height": 1461592,
          "from_hash": "b6c26649540c59decbc53274a67336d0588f6ad2ae0863a8a636dddcc75689f0",
          "from_type": 1,
          "ft_action_type_id": 4,
          "timestamp": "2023-02-04T10:52:19Z",
          "to_hash": null,
          "to_type": 1,
          "transform_idx": 147
        }
      ],
      "item_count": 97704,
      "page_count": 9771
    }
    {
      "deploy_hash": "88461218a5e972fcda1d764d7cc4edb2e0c3a538123b97890d484f43c55935f5",
      "block_hash": "d76b4ce5281f2306911a0e5e9ac0b29f1f4daf36f4636e78599ce64a7f7528a1",
      "block_height": 2404577,
      "caller_public_key": "020304811a7b142c32860cb1c114f23b0754215918d819f485b0a201af6cde70fa6c",
      "execution_type_id": 6,
      "contract_package_hash": null,
      "contract_hash": null,
      "entry_point_id": null,
      "args": {
        "amount": {
          "cl_type": "U512",
          "parsed": "2500000000"
        },
        "id": {
          "cl_type": {
            "Option": "U64"
          },
          "parsed": null
        },
        "target": {
          "cl_type": {
            "ByteArray": 32
          },
          "parsed": "536345751b7c6c6299d5ef10862d76736ed062bc32c1dabcd1179c06469d93ca"
        }
      },
      "payment_amount": "100000000",
      "cost": "100000000",
      "error_message": null,
      "status": "processed",
      "timestamp": "2024-01-08T15:24:47Z"
    }
    GET /ft-token-actions
    AccountInfo
    CentralizedAccountInfo
    AccountInfo
    CentralizedAccountInfo

    string(64)

    Hash of the contract package called by the deploy represented as a hexadecimal string. null if the deploy had no contract call.

    contract_hash

    string(64)

    Hash of the contract called by the deploy represented as a hexadecimal string. null if the deploy had no contract call.

    entry_point_id

    uint32

    Identifier of the ContractEntrypoint called by deploy. null if the deploy had no contract call.

    args

    JSON

    Deploy sessions arguments provided for contract execution.

    payment_amount

    string

    Payment amount provided by the caller in motes. The type is string to avoid overflow in languages that don't support uint64, which is the correct type. null if a custom payment contract was provided to the deploy instead of the value in motes.

    cost

    string

    Deploy execution cost. The type is string to avoid overflow in languages that don't support uint64, which is the correct type.

    error_message

    string(128)

    Error message in case of a failed deploy. null for successful. deploys.

    status

    string

    Deploy status (pending, expired, or processed).

    timestamp

    string

    Deploy creation timestamp in the ISO 8601 format.

    ContractPackage called by deploy.

    contract

    Contract

    Contract called by deploy.

    contract_entrypoint

    ContractEntrypoint

    ContractEntrypoint called by deploy.

    rate

    float32

    CSPR rate for specified currency that was relevant at the moment of deploy creation.

    Deploys can call entry points.

    ContractPackage

    contract_package_hash

    Deploys can call contracts in contract packages.

    DeployExecutionType

    execution_type_id

    Deploys call contracts via different execution types.

    Fungible token action

    deploy_hash

    Fungible token actions are result of deploy execution.

    NFT

    NFTs are created as result of deploy execution. There is no direct mapping, but rather a semantic relationship between deploys and nft tokens.

    NFT Action

    deploy_hash

    NFT actions are result of deploy execution.

    Transfer

    deploy_hash

    Transfers are result of deploy execution.

    DeployExecutionType
    AccountInfo
    Account info
    CentralizedAccountInfo
    ContractPackage
    Account
    Block
    Contract
    ContractEntrypoint
    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/contract-packages/998af6825d77da15485baf4bb89aeef3f1dfb4a78841d149574b0be694ce4821/nft-tokens/2/actions?includes=deploy' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "contract_package_hash": "998af6825d77da15485baf4bb89aeef3f1dfb4a78841d149574b0be694ce4821",
          "deploy": {
            "args": {
              "recipient": {
                "cl_type": "Key",
                "parsed": {
                  "Account": "account-hash-989ca079a5e446071866331468ab949483162588d57ec13ba6bb051f1e15f8b7"
                }
              },
              "token_ids": {
                "cl_type": {
                  "List": "U256"
                },
                "parsed": [
                  "2"
                ]
              }
            },
            "block_hash": "6dd2def46e2417f05dbbb3b8429099f20f89f7fb4b32d4e61fd5d79959ba35f8",
            "caller_public_key": "013eecc2f0fbcad01a35fca7ad0bf191a8cf1eb8d6b13ea63cb92a31e6c767c0bc",
            "contract_hash": "ff2f649f127c033d744f80e7c3bcf0561c716d8f6d1dadc0cd79d8b2d309c020",
            "contract_package_hash": "998af6825d77da15485baf4bb89aeef3f1dfb4a78841d149574b0be694ce4821",
            "cost": "801777450",
            "deploy_hash": "7ffa747cf92deace24a8f81f62ed01694271940ac16e20c419a56f47f680f0a5",
            "entry_point_id": 96622,
            "error_message": null,
            "execution_type_id": 4,
            "payment_amount": "1000000000",
            "status": "processed",
            "timestamp": "2022-10-28T13:40:14Z"
          },
          "deploy_hash": "7ffa747cf92deace24a8f81f62ed01694271940ac16e20c419a56f47f680f0a5",
          "from_hash": "c1e4f35cf36553d9acca0fa02be97537f333c18783373e34d6932eb649584a8c",
          "from_type": 0,
          "nft_action_id": 4,
          "timestamp": "2022-10-28T13:40:14Z",
          "to_hash": "989ca079a5e446071866331468ab949483162588d57ec13ba6bb051f1e15f8b7",
          "to_type": 0,
          "token_id": "2",
          "token_tracking_id": 20709
        },
        {
          "contract_package_hash": "998af6825d77da15485baf4bb89aeef3f1dfb4a78841d149574b0be694ce4821",
          "deploy": {
            "args": {
              "token_meta_data": {
                "cl_type": "String",
                "parsed": "{\"token_uri\":\"ipfs://\"}"
              },
              "token_owner": {
                "cl_type": "Key",
                "parsed": {
                  "Account": "account-hash-d0bc9ca1353597c4004b8f881b397a89c1779004f5e547e04b57c2e7967c6269"
                }
              }
            },
            "block_hash": "928a4518bd001cc4ba07a6405e2a2053c157a8a16f0df08668a8aa4d12b7ddbf",
            "caller_public_key": "016d9e3db0a800aef8d18975b469c77bef042ee909d24cb83d27df97a22bb6d8ad",
            "contract_hash": "4a2c7bda207ddf20487c13bd882a0773e1047c0544024bfae4a40e8769a8f452",
            "contract_package_hash": "e2e9be86fb0bef6f2df08c0e3b49cc66ce458a40e496e115f6dc984011177d16",
            "cost": "6398252230",
            "deploy_hash": "af1d08519310188c9746f090d7a0d999da13b58d64680086277bdecebfd29628",
            "entry_point_id": 117617,
            "error_message": null,
            "execution_type_id": 2,
            "payment_amount": "10381644690",
            "status": "processed",
            "timestamp": "2023-01-01T09:40:04Z"
          },
          "deploy_hash": "af1d08519310188c9746f090d7a0d999da13b58d64680086277bdecebfd29628",
          "from_hash": null,
          "from_type": null,
          "nft_action_id": 1,
          "timestamp": "2023-01-01T09:40:04Z",
          "to_hash": "d0bc9ca1353597c4004b8f881b397a89c1779004f5e547e04b57c2e7967c6269",
          "to_type": 0,
          "token_id": "2",
          "token_tracking_id": 20709
        }
      ],
      "item_count": 2,
      "page_count": 1
    }

    to_account_info

    Action source account info if it's an account

    to_centralized_account_info

    Action target centralized account info if it's an account

    from_account_info

    Action target account info if it's an account

    from_centralized_account_info

    Action target centralized account info if it's an account

    rate

    float32

    CSPR rate for specified currency that was relevant at the moment of deploy creation.

    from_cspr_name

    string

    Primary CSPR.name of the source account, if it is an account

    to_cspr_name

    string

    Primary CSPR.name of the destination account, if it is an account

    account_hash

    Filter token actions by account hash

    from_block_height

    From block height range

    to_block_height

    To block height range

    timestamp

    Sort fungible token actions by timestamp

    contract_package

    ContractPackage

    Fungible contract package

    deploy

    Deploy

    Deploy in which the token action occurred

    from_public_key

    string(68)

    Action source public key if it's an account

    to_public_key

    string(68)

    PaginatedResponse
    <FTTokenAction>

    Action target public key if it's an account

    curl -X 'GET' \
      'https://api.testnet.cspr.cloud/accounts/B6C26649540C59DECBC53274A67336D0588F6AD2AE0863A8A636DDDCC75689F0/ft-token-actions' \
      -H 'accept: application/json' \
      -H 'authorization: 55f79117-fc4d-4d60-9956-65423f39a06a'
    {
      "data": [
        {
          "amount": "24928248069",
          "contract_package_hash": "0885c63f5f25ec5b6f3b57338fae5849aea5f1a2c96fc61411f2bfc5e432de5a",
          "deploy_hash": "0005f1e53afa9799a66a389a90caab84ab3cbd000ab7741e55e09f80c75002b6",
          "block_height": 1475677,
          "from_hash": null,
          "from_type": 1,
          "ft_action_type_id": 1,
          "timestamp": "2023-02-09T19:16:21Z",
          "to_hash": "b6c26649540c59decbc53274a67336d0588f6ad2ae0863a8a636dddcc75689f0",
          "to_type": 1,
          "transform_idx": 92
        },
        {
          "amount": "24928248069",
          "contract_package_hash": "0885c63f5f25ec5b6f3b57338fae5849aea5f1a2c96fc61411f2bfc5e432de5a",
          "deploy_hash": "0005f1e53afa9799a66a389a90caab84ab3cbd000ab7741e55e09f80c75002b6",
          "block_height": 1475677,
          "from_hash": "b6c26649540c59decbc53274a67336d0588f6ad2ae0863a8a636dddcc75689f0",
          "from_type": 1,
          "ft_action_type_id": 2,
          "timestamp": "2023-02-09T19:16:21Z",
          "to_hash": "a5a9a804a383f3b0e131c85d471542af2c6d4ec57bab39182ba93dd7bd86f46c",
          "to_type": 1,
          "transform_idx": 104
        },
        ...
        {
          "amount": "22894649700",
          "contract_package_hash": "0885c63f5f25ec5b6f3b57338fae5849aea5f1a2c96fc61411f2bfc5e432de5a",
          "deploy_hash": "00194e8c2076ae84447a8ccabf39ad1eb1a090ab4e592989fd497961fb0b7293",
          "block_height": 1461592,
          "from_hash": "b6c26649540c59decbc53274a67336d0588f6ad2ae0863a8a636dddcc75689f0",
          "from_type": 1,
          "ft_action_type_id": 4,
          "timestamp": "2023-02-04T10:52:19Z",
          "to_hash": null,
          "to_type": 1,
          "transform_idx": 147
        }
      ],
      "item_count": 97704,
      "page_count": 9771
    }
    AccountInfo
    CentralizedAccountInfo
    AccountInfo
    CentralizedAccountInfo