DAN
Website
  • ๐Ÿš€Accelerating Digital Ownership Adoption
  • Digital Assets Network
    • โŒChallenges in Adoption
    • โœ…DAN Stack
    • ๐Ÿ“œModular Protocol
    • ๐ŸŽฏDAN Labs Impact
    • ๐Ÿ”ยฎ๏ธ ERC-7066 Author
      • Overview
  • DAN PROTOCOLS
    • ๐Ÿ“ŒModular Solutions for Digital Ownership
    • ๐Ÿ’กAsset Creation
    • ๐ŸคMarketplace
    • ๐Ÿ”“Rent Protocol
    • ๐Ÿ’ฐLoan Protocol
      • How does a loan work?
    • ๐Ÿ’ฐUtility Protocol
      • How does it work?
  • For Developers
    • ๐Ÿš€Launchpad
      • APIs
        • User's Collections
        • Collection Details
      • SDK
        • Create Collection
        • Mint NFT
        • Mint NFT (Batch)
    • ๐Ÿ›’Market
      • APIs
      • SDK
        • Create Listing
        • Buy Listed NFT
        • Cancel Listing
    • โš™๏ธUtility
      • APIs
        • ๐Ÿ‘ฅClient
          • Register
          • Verify
          • Redeem Code
          • Get All Claimed Utility User
        • ๐Ÿ‘จโ€๐Ÿ’ปDeveloper
          • Get All Benefits By Collection
      • SDK
    • ๐Ÿ’ฐLoans
      • APIs
        • User Loans
        • Raw Transactions (Advanced)
      • SDK
        • EVM
        • Solana
      • Wallet Integration
        • EVM
        • Solana
    • ๐Ÿ—ž๏ธRentals
      • APIs
        • NFTs (Owned and Rented)
        • NFTs (Rented)
        • Raw Transactions (Advanced)
      • On-Chain
      • SDK
        • EVM
        • Solana
      • Wallet Integration
        • EVM
        • Solana
    • โ›“๏ธSupported Chains
  • UseCases : Case Studies
    • ๐ŸคNFT Rentals
    • ๐Ÿ’ŽEphemeral / Consumable NFTs
    • ๐Ÿ“NFT Mandates
    • ๐ŸŽ†Post-Mint Utility
    • ๐Ÿ’ผPartial Payment at Mint
  • Community
    • ๐Ÿ”‘Terms of Service
    • ๐Ÿ”Privacy Policy
    • ๐ŸŒWebsite
    • ๐Ÿ‘ฝDiscord
    • ๐ŸฆTwitter
Powered by GitBook
On this page
  1. For Developers
  2. Rentals
  3. APIs

NFTs (Rented)

PreviousNFTs (Owned and Rented)NextRaw Transactions (Advanced)

Last updated 1 month ago

Using External Indexer

Query Parameters specific for rentals:

  • collection: Filter for token address of the NFT collection

  • rentee: Filter for assets rented by a wallet

  • state: Filter for all assets on Marketplace (STALE) or rented out (RENT)

  • onlyRentData : Output only rental data (NFT rentee, NFT owner, rental expiry, state)

Response:

  • Successful responses return an array of asset managers for provided token address with detailed information, such as the current rentee and the state of each asset.

Example: How to Integrate with exiting external NFT indexer

  • Get all rented collection NFTs by user wallet

let nfts= indexerCall(wallet.address) // indexer call to get nfts by wallet
nfts.push.apply(nfts, await getNFTs(chainId,wallet.address,tokenAddress));

async function getNFTs(chainId, address,tokenAddress){
    const nfts = await fetch(`https://api.danlabs.xyz/assetManager/${chainId}?user=${walletAddress}&collection=${collectionAddress}`)
    .then(response => {
        if (!response.ok) {
        throw new Error(`HTTP error! Status: ${response.status}`);
        }
        return response.json();
    })
    .catch(error => {
        // Handle network errors or API response errors here
        console.error('Error:', error.message);
    });
    return nfts;
}
  • Get all rented NFTs by user wallet

let nfts= indexerCall(wallet.address) // indexer call to get nfts by wallet
nfts.push.apply(nfts, await getNFTs(chainId,wallet.address));

async function getNFTs(chainId, address){
    const nfts = await fetch(`https://api.danlabs.xyz/assetManager/${chainId}?user=${walletAddress}`)
    .then(response => {
        if (!response.ok) {
        throw new Error(`HTTP error! Status: ${response.status}`);
        }
        return response.json();
    })
    .catch(error => {
        // Handle network errors or API response errors here
        console.error('Error:', error.message);
    });
    return nfts;
๐Ÿ—ž๏ธ

Get Asset Manager by Chain ID

get
Path parameters
chainIdstringRequired

The ID of the blockchain chain

Example: 296
Query parameters
userstringOptional

NFT owner

providerstringOptional

Loan provided by

collectionstringOptional

The token address of the collection

Default: 0x00000000000000000000000000000000003a05ad
renteestringOptional

The current rentee of the asset manager

statestring ยท enumOptional

The state of the asset manager (Valid values: LOAN | RENT | STALE | PRE_LOAN)

Possible values:
onlyRentDatabooleanOptional

filter to only get rented NFT data (rentee, owner, rent_expiry, state)

Responses
200
Successful response
application/json
500
Internal server error
application/json
get
GET /assetManager/{chainId} HTTP/1.1
Host: api.danlabs.xyz
Accept: */*
[
  {
    "id": 1,
    "initializer": "text",
    "loan_pool_index": 1,
    "loan_offer_index": 1,
    "state": "text",
    "loan_expiry": 1,
    "provider": "text",
    "rate": 1,
    "validity_expiry": 1,
    "is_fixed": true,
    "fixed_minutes": 1,
    "rent_expiry": 1,
    "rentee": "text",
    "private_rental": true,
    "owner_share": 1,
    "whitelist": [
      "text"
    ],
    "metadata_uri": "text",
    "metadata_link": "text",
    "name": "text",
    "image": "text",
    "chain_id": "text",
    "contract_address": "text",
    "token_address": "text",
    "token_id": "text",
    "rental_type": "text",
    "profit": 1,
    "domint": true,
    "loan_amount": 1,
    "index": 1,
    "tx_hash": "text",
    "master_index": 1
  }
]
  • Using External Indexer
  • GETGet Asset Manager by Chain ID
  • Example: How to Integrate with exiting external NFT indexer