Delegate
  • Overview
  • Delegating a wallet
  • Comparison with Others
  • FAQ
  • Audits
  • Integrate In Your Project
    • Smart Contract Examples
    • Token Ownership Claiming
  • Upgrade to V2
    • V2 is a Separate Contract
    • V1 → V2 migration
    • Batching
    • Subdelegations
  • Advanced Use Cases
    • Shadow Delegation
  • Delegate Market
    • Overview
    • FAQ
  • Gaming
    • Delegate for Gaming
  • Technical Documentation
    • Delegate Registry
      • Contract Addresses
      • IDelegateRegistry.sol
    • Javascript SDK
      • Installation / Importing
      • Setup
      • Check Delegations
        • checkDelegateForAll
        • checkDelegateForContract
        • checkDelegateForERC721
        • checkDelegateForERC1155
        • checkDelegateForERC20
      • Fetch Delegations
      • Delegate/Revoke
        • delegateAll
        • delegateContract
        • delegateERC721
        • delegateERC1155
        • delegateERC20
    • REST API
      • v2
      • v1
  • Resources
    • Media Kit
    • Github
    • Twitter
    • Live Stats
  • V1 Registry (Legacy)
    • Technical Documentation
Powered by GitBook
On this page
  • Authentication
  • Delegations by wallet
  • Get a list of incoming and outgoing delegations for a specific wallet.
  • Delegation Checks
  • Returns true if delegate is granted to act on the from's behalf
  • Returns true if delegate is granted to act on from's behalf for entire wallet or that specific contract
  • Returns true if delegate is granted to act on from's behalf for entire wallet, that contract, or that specific tokenId
  • Returns the delegated balance, which will be 0 if the delegation does not exist
  • Returns the delegated balance, which will be 0 if the delegation does not exist
  1. Technical Documentation
  2. REST API

v2

PreviousREST APINextv1

Last updated 1 year ago

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:

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

curl https://api.delegate.xyz/registry/v2/0x0000000000000000000000000000000000000000

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

curl https://api.delegate.xyz/registry/v2/check/all?to=0x0000000000000000000000000000000000000000&from=0x0000000000000000000000000000000000000001

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

curl https://api.delegate.xyz/registry/v2/check/contract?to=0x0000000000000000000000000000000000000000&from=0x0000000000000000000000000000000000000001&contract=0x0000000000000000000000000000000000000003

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

curl https://api.delegate.xyz/registry/v2/check/contract?to=0x0000000000000000000000000000000000000000&from=0x0000000000000000000000000000000000000001&contract=0x0000000000000000000000000000000000000003&tokenId=1

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

curl https://api.delegate.xyz/registry/v2/check/erc1155?to=0x0000000000000000000000000000000000000000&from=0x0000000000000000000000000000000000000001&contract=0x0000000000000000000000000000000000000003&tokenId=1

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

curl https://api.delegate.xyz/registry/v2/check/erc20?to=0x0000000000000000000000000000000000000000&from=0x0000000000000000000000000000000000000001&contract=0x0000000000000000000000000000000000000003
https://delegate.xyz/developer/api-keys