v2

Supported Networks: All networks on the main delegate.xyz website are supported

Rate Limits: 25 requests per 10 seconds.

To obtain an API key to remove rate limits, you can create one here: https://delegate.xyz/developer/api-keys

Authentication

If you have an API Key, you can add it to the request headers like so:

fetch(URL, { headers: { "X-API-KEY": "abc123" } }) 

Delegations by wallet

Get a list of incoming and outgoing delegations for a specific wallet.

GET https://api.delegate.xyz/registry/v2/:wallet

Path Parameters

Name
Type
Description

wallet*

Address

The wallet to get delegations

Query Parameters

Name
Type
Description

chainId

number

Defaults to 1 (mainnet)

type Delegation = {
    type: "NONE" | "ALL" | "CONTRACT" | "TOKEN";
    from: string;
    to: string;
    contract: string | null;
    tokenId: number | null;
};

// returns Delegation[]

Delegations by wallet Example


Delegation Checks

Returns true if delegate is granted to act on the from's behalf

GET https://api.delegate.xyz/registry/v2/check/all

Query Parameters

Name
Type
Description

to*

Address

The hot wallet to act on your behalf

from*

Address

The cold wallet who issued the delegation

chainId

number

Defaults to 1 (mainnet)

rights

string

bytes32 of rights string

Check All Example


Returns true if delegate is granted to act on from's behalf for entire wallet or that specific contract

GET https://api.delegate.xyz/registry/v2/check/contract

Query Parameters

Name
Type
Description

from*

Address

The hot wallet to act on your behalf

to*

Address

The cold wallet who issued the delegation

contract*

Address

The address for the contract you're delegating

chainId

number

Defaults to 1 (mainnet)

rights

string

bytes32 of rights string

Check Contract Example


Returns true if delegate is granted to act on from's behalf for entire wallet, that contract, or that specific tokenId

GET https://api.delegate.xyz/registry/v2/check/erc721

Query Parameters

Name
Type
Description

delegate*

Address

The hot wallet to act on your behalf

vault*

Address

The cold wallet who issued the delegation

contract*

Address

The address for the contract you're delegating

tokenId*

Number

The token id for the token you're delegating

chainId

number

Defaults to 1 (mainnet)

rights

string

bytes32 of rights string

Check ERC721 Example


Returns the delegated balance, which will be 0 if the delegation does not exist

GET https://api.delegate.xyz/registry/v2/check/erc1155

Query Parameters

Name
Type
Description

delegate*

Address

The hot wallet to act on your behalf

vault*

Address

The cold wallet who issued the delegation

contract*

Address

The address for the contract you're delegating

tokenId*

Number

The token id for the token you're delegating

chainId

number

Defaults to 1 (mainnet)

rights

string

bytes32 of rights string

Check ERC1155 Example


Returns the delegated balance, which will be 0 if the delegation does not exist

GET https://api.delegate.xyz/registry/v2/check/erc20

Query Parameters

Name
Type
Description

delegate*

Address

The hot wallet to act on your behalf

vault*

Address

The cold wallet who issued the delegation

contract*

Address

The address for the contract you're delegating

chainId

number

Defaults to 1 (mainnet)

rights

string

bytes32 of rights string

Check ERC20 Example

Last updated