Skip To Content

Blockdaemon Documentation

Troubleshooting

Overview

Assets Issues
Field Cannot Be Blank
Filter by Token ID
Token Type Is Not a Valid Value
Failed to Parse Attributes
Sort by Fields
Failed to Parse Page Token
Page Size Value

Asset Issues
Not Found

Events Issues
Field Cannot Be Blank
Filter by Token ID
Sort by Fields
Failed to Parse Page Token
Page Size Value

Collections Issues
Token Type Is Not a Valid Value
Sort by Fields
Failed to Parse Page Token
Page Size Value

Collections Search Issues
Name Cannot Be Blank
Collection Name Length
Page Size Value

Collection Issues
Not Found


Overview

This page includes troubleshooting guides for the most common issues with the following NFT API endpoints:

Note: Example queries show how to retrieve data from the Ethereum Mainnet network.


Assets: Field Cannot Be Blank

You may encounter an issue when trying to get a list of NFT assets with the following endpoint:

Error Message

{
    "code": 3,
    "message": "invalid input data",
    "details": [
        {
            "@type": "type.googleapis.com/google.rpc.BadRequest",
            "fieldViolations": [
                {
                    "field": "contract_address",
                    "description": "cannot be blank"
                },
                {
                    "field": "wallet_address",
                    "description": "cannot be blank"
                },
                {
                    "field": "collection_name",
                    "description": "cannot be blank"
                }
            ]
        }
    ]
}

Solution

You need to specify one of the required query parameters:

  • collection_name, e.g. Bored Ape Yacht Club
  • contract_address, e.g. 0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D
  • wallet_address, e.g. 0x5682035b6b1D04924C7661b09A974fF0695De6bE

Learn more about the endpoint: GET NFT Assets

Correct Example

The following is a correct query for getting a list of Ethereum Mainnet assets by collection name:

https://svc.blockdaemon.com/nft/v1/ethereum/mainnet/assets?collection_name=Bored Ape Yacht Club

To get Ethereum Mainnet assets by contract address, use:

https://svc.blockdaemon.com/nft/v1/ethereum/mainnet/assets?contract_address=0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D

To get Ethereum Mainnet assets by wallet address, use:

https://svc.blockdaemon.com/nft/v1/ethereum/mainnet/assets?wallet_address=0x5682035b6b1D04924C7661b09A974fF0695De6bE

Assets: Filter by Token ID

You may encounter an issue when trying to get a list of NFT assets filtered by token ID. It comes up when your query includes:

Error Message

{
    "code": 3,
    "message": "invalid input data",
    "details": [
        {
            "@type": "type.googleapis.com/google.rpc.BadRequest",
            "fieldViolations": [
                {
                    "field": "contract_address",
                    "description": "Contract address must be provided to filter by Token ID"
                }
            ]
        }
    ]
}

Solution

You can filter the results by token_id only if the query includes a contract address as one of the parameters:

  • parameter: contract_address
  • value: e.g. 0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D

If your query includes token_id but does not include contract_address, you will get an error.

Learn more about the endpoint: GET NFT Assets

Correct Example

The following is a correct query for getting a list of Ethereum Mainnet assets by contract address, filtered by token ID:

https://svc.blockdaemon.com/nft/v1/ethereum/mainnet/assets?contract_address=0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D&token_id=9999

Assets: Token Type Is Not a Valid Value

You may encounter an issue when trying to set filter NFT assets by token type. It comes up when your query includes:

Error Message

{
    "code": 3,
    "message": "parsing list "token_type": "YOUR_VALUE" is not a valid value",
    "details": []
}

Solution

Use the token_type parameter only with one of the following values:

  • ERC721
  • ERC1155
  • ERC20
  • CRYPTOPUNKS

Please make sure that the value is in upper case and does not contain spaces.

Learn more about the endpoint: GET NFT Assets

Correct Example

The following is a correct query for getting a list of Ethereum Mainnet assets by wallet address, filtered by token type (ERC-1155):

https://svc.blockdaemon.com/nft/v1/ethereum/mainnet/assets?wallet_address=0x5682035b6b1D04924C7661b09A974fF0695De6bE&token_type=ERC1155

Note: Instead of wallet_address, you can use any other required parameter.


Assets: Failed to Parse Attributes

You may encounter an issue when trying to get a list of NFT assets filtered by an attribute. It comes up when your query includes:

Error Messages

{
    "code": 3,
    "message": "invalid input data",
    "details": [
        {
            "@type": "type.googleapis.com/google.rpc.BadRequest",
            "fieldViolations": [
                {
                    "field": "attributes_filter",
                    "description": "failed to parse attributes[0]: cannot be empty"
                }
            ]
        }
    ]
}
{
    "code": 3,
    "message": "invalid input data",
    "details": [
        {
            "@type": "type.googleapis.com/google.rpc.BadRequest",
            "fieldViolations": [
                {
                    "field": "attributes_filter",
                    "description": "failed to parse attributes[0]: key cannot be empty"
                }
            ]
        }
    ]
}
{
    "code": 3,
    "message": "invalid input data",
    "details": [
        {
            "@type": "type.googleapis.com/google.rpc.BadRequest",
            "fieldViolations": [
                {
                    "field": "attributes_filter",
                    "description": "failed to parse attributes[0]: value cannot be empty"
                }
            ]
        }
    ]
}
{
    "code": 3,
    "message": "invalid input data",
    "details": [
        {
            "@type": "type.googleapis.com/google.rpc.BadRequest",
            "fieldViolations": [
                {
                    "field": "attributes_filter",
                    "description": "failed to parse attributes[0]: Background, must be in key:value format"
                }
            ]
        }
    ]
}

Solution

For the attributes parameter, specify a key:value pair, e.g. Background:Purple.

Please make sure that you added both a key and a value and there is the : sign between them.

Learn more about the endpoint: GET NFT Assets

Correct Example

The following is a correct query for getting a list of Ethereum Mainnet assets by collection name, sorted by attribute:

https://svc.blockdaemon.com/nft/v1/ethereum/mainnet/assets?collection_name=Bored Ape Yacht Club&attributes=Background:Purple

Note: Instead of collection_name, you can use any other required parameter.


Assets: Sort by Fields

You may encounter an issue when trying to get a list of NFT assets sorted by a given field. It comes up when your query includes:

Error Message

{
    "code": 3,
    "message": "invalid input data",
    "details": [
        {
            "@type": "type.googleapis.com/google.rpc.BadRequest",
            "fieldViolations": [
                {
                    "field": "sort_by",
                    "description": "Must be sort by one of the following fields: [token_id name mint_date]"
                }
            ]
        }
    ]
}

Solution

Use the sort_by parameter only with one of the following values:

  • name
  • mint_date
  • token_id

Learn more about the endpoint: GET NFT Assets

Correct Example

The following is a correct query for getting a list of Ethereum Mainnet assets by wallet address, sorted by token ID:

https://svc.blockdaemon.com/nft/v1/ethereum/mainnet/assets?wallet_address=0x46Fd6B647Dc8C82aD8f6cf0CC6b22ACad3f6e39d&sort_by=token_id

Note: Instead of wallet_address, you can use any other required parameter.


Assets: Failed to Parse Page Token

You may encounter an issue when you retrieve a list of NFT assets and try to get the next page of the response. It comes up when your query includes:

Error Message

{
    "code": 3,
    "message": "invalid input data",
    "details": [
        {
            "@type": "type.googleapis.com/google.rpc.BadRequest",
            "fieldViolations": [
                 {
                    "field": "page_token",
                    "description": "failed to parse page token"
                }
            ]
        }
    ]
}

Solution

Use the page_size parameter with the the token returned in the next_page_token field in the end of the previous page:

"meta":  {
    "paging":  {
        "next_page_token": "eyJ0b2tlbl9pZCI6OTg5OX0="
    }
}

Please make sure that you added the whole token, including the = sign(s).

Learn more about the endpoint: GET NFT Assets

Correct Example

The following is a correct query for getting a list of Ethereum Mainnet assets by contract address and adding a page token:

https://svc.blockdaemon.com/nft/v1/ethereum/mainnet/assets?contract_address=0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D&page_token=eyJ0b2tlbl9pZCI6OTg5OX0=

Note: Instead of contract_address, you can use any other required parameter.


Assets: Page Size Value

You may encounter an issue when trying to set the maximum number of NFT assets returned on one page. It comes up when your query includes:

Error Message

{
    "code": 3,
    "message": "invalid input data",
    "details": [
        {
            "@type": "type.googleapis.com/google.rpc.BadRequest",
            "fieldViolations": [
                {
                    "field": "limit",
                    "description": "Page size must be between 0 and 100"
                }
            ]
        }
    ]
}

Solution

Use the page_size parameter with a number between 0 and 100.

Learn more about the endpoint: GET NFT Assets

Correct Example

The following is a correct query for getting a list of Ethereum Mainnet assets by contract address and setting the page size:

https://svc.blockdaemon.com/nft/v1/ethereum/mainnet/assets?contract_address=0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D&page_size=10

Note: Instead of contract_address, you can use any other required parameter.


Asset: Not Found

You may encounter an issue when trying to get an NFT asset with the following endpoint:

Error Message

{
    "error": {
        "message": "Not Found"
    }
}

Solution

You need to identify the asset you want to get. There are two ways to do it.

1. Specify the unique asset ID as the last path parameter, e.g.:

  • 5e1f4454-34ff-5118-9987-96b481625128

Note: Asset IDs are returned by GET NFT Assets in the id field.

2. Specify the contract address and token ID as query parameters:

  • contract_address, e.g. 0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D
  • token_id, e.g. 9999

Learn more about the endpoint: GET NFT Asset

Correct Example

The following is a correct query for getting an Ethereum Mainnet asset by unique ID:

https://svc.blockdaemon.com/nft/v1/ethereum/mainnet/asset/5e1f4454-34ff-5118-9987-96b481625128

To get an Ethereum Mainnet asset by contract address and token ID, use:

https://svc.blockdaemon.com/nft/v1/ethereum/mainnet/asset?contract_address=0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D&token_id=9999

Events: Field Cannot Be Blank

You may encounter an issue when trying to get a list of NFT events with the following endpoint:

Error Message

{
    "code": 3,
    "message": "invalid input data",
    "details": [
        {
            "@type": "type.googleapis.com/google.rpc.BadRequest",
            "fieldViolations": [
                {
                    "field": "contract_address",
                    "description": "cannot be blank"
                },
                {
                    "field": "wallet_address",
                     "description": "cannot be blank"
                }
            ]
        }
    ]
}

Solution

You need to specify one of the required query parameters:

  • contract_address, e.g. 0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D
  • wallet_address, e.g. 0x5682035b6b1D04924C7661b09A974fF0695De6bE

Learn more about the endpoint: GET NFT Events

Correct Example

The following is a correct query for getting a list of Ethereum Mainnet events by contract address:

https://svc.blockdaemon.com/nft/v1/ethereum/mainnet/events?contract_address=0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D

To get Ethereum Mainnet events by wallet address, use:

https://svc.blockdaemon.com/nft/v1t/ethereum/mainnet/events?wallet_address=0x5682035b6b1D04924C7661b09A974fF0695De6bE

Filter by Token ID

You may encounter an issue when trying to get a list of NFT events filtered by token ID. It comes up when your query includes:

Error Message

{
    "code": 3,
    "message": "invalid input data",
    "details": [
        {
            "@type": "type.googleapis.com/google.rpc.BadRequest",
            "fieldViolations": [
                {
                    "field": "contract_address",
                    "description": "Contract address must be provided to filter by Token ID"
                }
            ]
        }
    ]
}

Solution

You can filter the results by token_id only if the query includes a contract address as one of the parameters:

  • parameter: contract_address
  • value: e.g. 0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D

If your query includes token_id but does not include contract_address, you will get an error.

Learn more about the endpoint: GET NFT Events

Correct Example

The following is a correct query for getting a list of Ethereum Mainnet events by contract address, filtered by token ID:

https://svc.blockdaemon.com/nft/v1/ethereum/mainnet/events?contract_address=0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D&token_id=9999

Events: Sort by Fields

You may encounter an issue when trying to get a list of NFT events sorted by a given field. It comes up when your query includes:

Error Message

{
    "code": 3,
    "message": "invalid input data",
    "details": [
        {
            "@type": "type.googleapis.com/google.rpc.BadRequest",
            "fieldViolations": [
                {
                        "field": "sort_by",
                        "description": "Must be sort by one of the following fields: timestamp"
                }
            ]
        }
    ]
}

Solution

Use the sort_by parameter only with the following value: timestamp.

Learn more about the endpoint: GET NFT Events

Correct Example

The following is a correct query for getting a list of Ethereum Mainnet events by wallet address, sorted by timestamp:

https://svc.blockdaemon.com/nft/v1/ethereum/mainnet/events?wallet_address=0x46Fd6B647Dc8C82aD8f6cf0CC6b22ACad3f6e39d&sort_by=timestamp

Note: Instead of wallet_address, you can use any other required parameter.


Events: Failed to Parse Page Token

You may encounter an issue when you retrieve a list of NFT events and try to get the next page of the response. It comes up when your query includes:

Error Message

{
    "code": 3,
    "message": "invalid input data",
    "details": [
        {
            "@type": "type.googleapis.com/google.rpc.BadRequest",
            "fieldViolations": [
                {
                    "field": "page_token",
                    "description": "failed to parse page token"
                }
            ]
        }
    ]
}

Solution

Use the page_size parameter with the value returned in the next_page_token field in the end of the previous page:

"meta":  {
    "paging":  {
        "next_page_token": "eyJ0aW1lc3RhbXAiOjE2NDkyNzA1MDUsInNpZCI6MTEwODkyMjU4fQ=="
    }
}

Please make sure that you added the whole token, including the = sign(s).

Learn more about the endpoint: GET NFT Events

Correct Example

The following is a correct query for getting a list of Ethereum Mainnet events by contract address and adding a page token:

https://svc.blockdaemon.com/nft/v1/ethereum/mainnet/events?contract_address=0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D&page_token=eyJ0aW1lc3RhbXAiOjE2NDkyNzA1MDUsInNpZCI6MTEwODkyMjU4fQ==

Note: Instead of contract_address, you can use any other required parameter.


Events: Page Size Value

You may encounter an issue when trying to set the maximum number of NFT events returned on one page. It comes up when your query includes:

Error Message

{
    "code": 3,
    "message": "invalid input data",
    "details": [
        {
            "@type": "type.googleapis.com/google.rpc.BadRequest",
            "fieldViolations": [
                {
                    "field": "limit",
                    "description": "Page size must be between 0 and 100"
                }
            ]
        }
    ]
}

Solution

Use the page_size parameter with a number between 0 and 100.

Learn more about the endpoint: GET NFT Events

Correct Example

The following is a correct query for getting a list of Ethereum Mainnet events by contract address and setting the page size:

https://svc.blockdaemon.com/nft/v1/ethereum/mainnet/events?contract_address=0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D&page_size=10

Note: Instead of contract_address, you can use any other required parameter.


Collections: Token Type Is Not a Valid Value

You may encounter an issue when trying to set filter NFT collections by token type. It comes up when your query includes:

Error Message

{
    "code": 3,
    "message": "parsing list "token_type": "YOUR_VALUE" is not a valid value",
    "details": []
}

Solution

Use the token_type parameter only with one of the following values:

  • ERC721
  • ERC1155
  • ERC20
  • CRYPTOPUNKS

Please make sure that the value is in upper case and does not contain spaces.

Learn more about the endpoint: GET All NFT Collections

Correct Example

The following is a correct query for getting a list of Ethereum Mainnet collections filtered by token type (ERC-721):

https://svc.blockdaemon.com/nft/v1/ethereum/mainnet/collections?token_type=ERC721

Collections: Sort by Fields

You may encounter an issue when trying to get a list of NFT collections sorted by a given field. It comes up when your query includes:

Error Message

{
    "code": 3,
    "message": "invalid input data",
    "details": [
        {
            "@type": "type.googleapis.com/google.rpc.BadRequest",
            "fieldViolations": [
                {
                    "field": "sort_by",
                    "description": "Must be sort by one of the following fields: [name]"
                }
            ]
        }
    ]
}

Solution

Use the sort_by parameter only with the following value: name.

Learn more about the endpoint: GET All NFT Collections

Correct Example

The following is a correct query for getting a list of Ethereum Mainnet collections sorted by name:

https://svc.blockdaemon.com/nft/v1/ethereum/mainnet/collections?sort_by=name

Collections: Failed to Parse Page Token

You may encounter an issue when you retrieve a list of NFT collections and try to get the next page of the response. It comes up when your query includes:

Error Message

{
    "code": 3,
    "message": "invalid input data",
    "details": [
        {
            "@type": "type.googleapis.com/google.rpc.BadRequest",
            "fieldViolations": [
                {
                    "field": "page_token",
                    "description": "failed to parse page token"
                }
            ]
        }
    ]
}

Solution

Use the page_size parameter with the value returned in the next_page_token field in the end of the previous page:

"meta":  {
    "paging":  {
        "next_page_token": "eyJuYW1lIjoiMTAwMFdheXNORlQifQ=="
    }
}

Please make sure that you added the whole token, including the = sign(s).

Learn more about the endpoint: GET All NFT Collections

Correct Example

The following is a correct query for getting a list of Ethereum Mainnet collections and adding a page token:

https://svc.blockdaemon.com/nft/v1/ethereum/mainnet/collections?page_token=eyJuYW1lIjoiMTAwMFdheXNORlQifQ==

Collections: Page Size Value

You may encounter an issue when trying to set the maximum number of NFT collections returned on one page. It comes up when your query includes:

Error Message

{
    "code": 3,
    "message": "invalid input data",
    "details": [
        {
            "@type": "type.googleapis.com/google.rpc.BadRequest",
            "fieldViolations": [
                {
                    "field": "limit",
                    "description": "Page size must be between 0 and 100"
                }
            ]
        }
    ]
}

Solution

Use the page_size parameter with a number between 0 and 100.

Learn more about the endpoint: GET All NFT Collections

Correct Example

The following is a correct query for getting a list of Ethereum Mainnet collections and setting the page size:

https://svc.blockdaemon.com/nft/v1/ethereum/mainnet/collections?page_size=10

Collections Search: Name Cannot Be Blank

You may encounter an issue when trying to search collections by name with the following endpoint:

Error Message

{
    "error": {
        "message": "name: cannot be blank."
    }
}

Solution

You need to add the required query parameter and specify its value:

  • collection name
    • parameter: name
    • value: e.g. bored ape

Learn more about the endpoint: GET NFT Collections Search by Name

Correct Example

The following is a correct query for searching Ethereum Mainnet collections by name (bored ape):

https://svc.blockdaemon.com/nft/v1/ethereum/mainnet/collections/search?name=bored ape

Collections Search: Name Length

You may encounter an issue when trying to search collections by name with the following endpoint:

Error Message

{
    "error": {
        "message": "name: Collection name must be between 1 and 50 characters."
    }
}

Solution

When adding the required name parameter, specify a search string that is between 1 and 50 characters.

Learn more about the endpoint: GET NFT Collections Search by Name

Correct Example

The following is a correct query for searching Ethereum Mainnet collections by name (bored ape):

https://svc.blockdaemon.com/nft/v1/ethereum/mainnet/collections/search?name=bored ape

Collections Search: Page Size Value

You may encounter an issue when trying to set the maximum number of NFT collections returned on one page. It comes up when your query includes:

Error Message

{
    "error": {
        "message": "limit: Page size must be between 0 and 100."
    }
}

Solution

Use the page_size parameter with a number between 0 and 100.

Learn more about the endpoint: GET NFT Collections Search by Name

Correct Example

The following is a correct query for searching Ethereum Mainnet collections by name (bored ape) and setting the page size:

https://svc.blockdaemon.com/nft/v1/ethereum/mainnet/collections/search?name=bored ape?page_size=10

Collection: Not Found

You may encounter an issue when trying to get an NFT collection with the following endpoint:

Error Message

{
    "error": {
        "message": "Not Found"
    }
}

Solution

You need to identify the collection you want to get. There are two ways to do it.

1. Specify the unique collection ID as the last path parameter, e.g.:

  • 4203aedd-7964-5fe1-b932-eb8c4fda7822

Note: Collection IDs are returned by GET All NFT Collections in the id field.

2. Specify the contract address as a query parameter:

  • contract_address, e.g. 0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D

Learn more about the endpoint: GET NFT Collection

Correct Example

The following is a correct query for getting an Ethereum Mainnet collection by unique ID:

https://svc.blockdaemon.com/nft/v1/ethereum/mainnet/collection/4203aedd-7964-5fe1-b932-eb8c4fda7822

To get an Ethereum Mainnet collection by contract address, use:

https://svc.blockdaemon.com/nft/v1/ethereum/mainnet/collection?contract_address=0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D

We don't support Internet Explorer

Please use Chrome, Safari, Firefox, or Edge to view this site.