API Endpoints

List of endpoints used by the client application to communicate with the PaintSwap API and contracts

General notes

Endpoints are subject to change during the ongoing development of our platform, for support please visit our discord.

All prices are reported in the wei unit.

Sales

Sale endpoints return relevant sales data like seller, collection, maxOffer, etc.

Sales Index

GET https://api.paintswap.finance/v2/sales

Returns an array of sale items from the PaintSwap Marketplace.

Defaults to 20 items in endTime descending order.

Query Parameters

NameTypeDescription

numToFetch

number

Amount of items to fetch.

numToSkip

number

Amount of items to skip.

orderBy

string

Determines what attribute to order the response by. Defaults to endTime

orderDirection

string

Determines direction of response. Defaults to asc.

includeActive

boolean

Determines if active listings should be included in the response.

onlyCompleted

boolean

Filters out active listings from the response

onlyVerified

boolean

Filters out sales of unverified NFTs from community contracts.

sold

boolean

Filters out active and unsold listings.

includeAuctions

boolean

Determines if auction listings should be included in the response.

includeSales

boolean

Determines if sale listings should be included in the response.

withOffers

boolean

Filters out sales without offers.

withBids

boolean

Filters out auctions without bids

seller

address(string)

Filters sales by the specified seller address

search

string

Filters sales by the name of the NFT

collections

string[]

Filters sales by the specified collection addresses.

Currently only supports 1 collection address.

version

number

Determines which version of listings to fetch. Version 1: BRUSH

Version 2: FTM (default)

whitelist

boolean

Filters out listings that have not been approved by the PaintSwap team.

{
  "sales": [
    {
      "addresses": [
        "0x5dbc2a8b01b7e37dfd7850237a3330c9939d6457"
      ],
      "amount": "1",
      "amountBatches": [
        "1"
      ],
      "amountRemaining": "1",
      "complete": false,
      "endTime": "1638390046",
      "id": "50810",
      "isAuction": false,
      "isERC721s": [
        true
      ],
      "isNSFW": false,
      "marketplaceURI": "",
      "maxBid": "0",
      "maxBidder": "0x0000000000000000000000000000000000000000",
      "maxOffer": "0",
      "maxOfferer": "0x0000000000000000000000000000000000000000",
      "nextMinimum": "1",
      "price": "1749000000000000000000",
      "seller": "0x5a81b38f189b23ffad763b90d75723d45d01c2d2",
      "sold": false,
      "startTime": "1635970846",
      "tokenIds": [
        "56"
      ],
      "version": 2,
      "minBid": 1,
      "minOffer": 1,
      "address": "0x5dbc2a8b01b7e37dfd7850237a3330c9939d6457",
      "tokenId": "56",
      "isERC721": true,
      "contentVerified": true,
      "contractVerified": false
    },
    {
      "addresses": [
        "0x12094ae07817a2630f9f12fbaa4fb81d93adba2c"
      ],
      "amount": "1",
      "amountBatches": [
        "1"
      ],
      "amountRemaining": "1",
      "complete": false,
      "endTime": "1638390055",
      "id": "71720",
      "isAuction": false,
      "isERC721s": [
        true
      ],
      "isNSFW": false,
      "marketplaceURI": "",
      "maxBid": "0",
      "maxBidder": "0x0000000000000000000000000000000000000000",
      "maxOffer": "0",
      "maxOfferer": "0x0000000000000000000000000000000000000000",
      "nextMinimum": "1",
      "price": "35000000000000000000",
      "seller": "0x36a72afb5629c8a91bc8567e5847326f6be3a302",
      "sold": false,
      "startTime": "1638217255",
      "tokenIds": [
        "512"
      ],
      "version": 2,
      "minBid": 1,
      "minOffer": 1,
      "address": "0x12094ae07817a2630f9f12fbaa4fb81d93adba2c",
      "tokenId": "512",
      "isERC721": true,
      "contentVerified": true,
      "contractVerified": false
    }
  ]
}

Sales Show

GET https://api.paintswap.finance/v2/sales/:id

Responds with a single sale listing item

Path Parameters

NameTypeDescription

id*

number

The sale id to fetch

{
  "sale": {
    "addresses": [
      "0x8c2fcd5d857ee9aa19d1a27ae81ab1129385e3ac"
    ],
    "amount": "1",
    "amountBatches": [
      "1"
    ],
    "amountRemaining": "0",
    "complete": true,
    "endTime": "1636914587",
    "id": "32612",
    "isAuction": false,
    "isERC721s": [
      true
    ],
    "isNSFW": false,
    "marketplaceURI": "https://m76p21w4h9.execute-api.us-east-1.amazonaws.com/getUman?index=9",
    "maxBid": "0",
    "maxBidder": "0x0000000000000000000000000000000000000000",
    "maxOffer": "0",
    "maxOfferer": "0x0000000000000000000000000000000000000000",
    "nextMinimum": "1",
    "price": "75000000000000000000000",
    "seller": "0x8d33b117443dd01f50e630641d30ad1f3923c2d4",
    "sold": true,
    "startTime": "1634495387",
    "tokenIds": [
      "9"
    ],
    "version": 2,
    "minBid": 1,
    "minOffer": 1,
    "address": "0x8c2fcd5d857ee9aa19d1a27ae81ab1129385e3ac",
    "tokenId": "9",
    "isERC721": true,
    "contentVerified": true,
    "contractVerified": false
  }
}

Stats

GET https://api.paintswap.finance/v2/sales/stats

Returns the total volume of the marketplace sales in FTM

{
  "volume": "6467670110161212771918000",
  "version": 2
}

Collections

Collections Index

GET https://api.paintswap.finance/v2/collections

Responds with a list of collections with stats

Query Parameters

NameTypeDescription

numToFetch

number

Amount of items to fetch.

numToSkip

number

Amount of items to skip.

orderBy

string

Determines what attribute to order the response by. Defaults to totalVolumeTradedFTM

orderDirection

string

Determines direction of response. Defaults to asc.

{
  "collections": [
    {
      "id": "0x5dbc2a8b01b7e37dfd7850237a3330c9939d6457",
      "createdAt": "2021-11-16T21:41:53.383Z",
      "updatedAt": "2021-11-16T21:41:53.383Z",
      "address": "0x5dbc2a8b01b7e37dfd7850237a3330c9939d6457",
      "owner": "0x52908400098527886e0f7030069857d2e4169ee7",
      "name": "Ancestral Umans",
      "description": "Ancestral Umans are the ancient kin to the Modern Umans, who crossed into the Fantom dimension eons ago. They were led there by the Tribune: Shamanka, the Healer; Abka, the Peacekeeper; Jigari, the Protector.",
      "nsfw": false,
      "mintPriceLow": null,
      "mintPriceHigh": null,
      "verified": true,
      "startBlock": null,
      "website": "https://worldofumans.com",
      "twitter": "worldofumans",
      "discord": "https://discord.gg/worldofumans",
      "medium": "",
      "telegram": "",
      "reddit": "",
      "poster": "https://media-collections.paintswap.finance/ancestral_umans_poster.jpg",
      "banner": "https://media-collections.paintswap.finance/ancestral_umans_banner.jpg",
      "thumbnail": "https://media-collections.paintswap.finance/ancestral_umans_thumbnail.png",
      "standard": "721",
      "featured": true,
      "displayed": true,
      "imageStyle": null,
      "customMetadata": null,
      "floor": "0",
      "totalVolumeTraded": "0",
      "lastSellPrice": "0",
      "activeSales": 0,
      "stats": {
        "floor": "0",
        "totalVolumeTraded": "0",
        "lastSellPrice": "0",
        "activeSales": 0
      }
    },
    {
      "id": "0x9044948e1a934340766c16f094cc32205d60d1b2",
      "createdAt": "2021-11-16T21:41:53.383Z",
      "updatedAt": "2021-11-16T21:41:53.383Z",
      "address": "0x9044948e1a934340766c16f094cc32205d60d1b2",
      "owner": "0x52908400098527886e0f7030069857d2e4169ee7",
      "name": "Brew Master",
      "description": "​​The BrewMaster Collection is a proof of concept project demonstrating the value of collaboration between local artists and local business through the use of NFTs. Crypto based payment processing startup StrangeBrew has teamed up with renowned NFT artist Uman to create a collection of unique NFT beers on the Fantom Opera blockchain.",
      "nsfw": false,
      "mintPriceLow": null,
      "mintPriceHigh": null,
      "verified": true,
      "startBlock": null,
      "website": "https://strangebrew.xyz/",
      "twitter": "StrangeBrewFTM",
      "discord": "https://discord.gg/ZDQKBkWBea",
      "medium": "",
      "telegram": "",
      "reddit": "",
      "poster": "https://media-collections.paintswap.finance/brewmaster_poster.jpg",
      "banner": "https://media-collections.paintswap.finance/brewmaster_banner.jpg",
      "thumbnail": "https://media-collections.paintswap.finance/brewmaster_thumbnail.png",
      "standard": "721",
      "featured": true,
      "displayed": true,
      "imageStyle": null,
      "customMetadata": null,
      "floor": "0",
      "totalVolumeTraded": "0",
      "lastSellPrice": "0",
      "activeSales": 0,
      "stats": {
        "floor": "0",
        "totalVolumeTraded": "0",
        "lastSellPrice": "0",
        "activeSales": 0
      }
    }
  ]
}

Collections Show

GET https://api.paintswap.finance/v2/collections/:address

Responds with the data of a specified collection

Path Parameters

NameTypeDescription

address*

string

The collection address to fetch

{
  "collection": {
    "id": "0x2ab5c606a5aa2352f8072b9e2e8a213033e2c4c9",
    "createdAt": "2021-11-16T21:41:53.386Z",
    "updatedAt": "2021-11-16T21:41:53.386Z",
    "address": "0x2ab5c606a5aa2352f8072b9e2e8a213033e2c4c9",
    "owner": "0x52908400098527886e0f7030069857d2e4169ee7",
    "name": "Magicats",
    "description": "When Grim descended upon our world on her paws and broom, she encountered magical kittens who were unaware that they were stuck inside human skins. Who is your inner Magicat? Official SpookySwap Genesis NFTs | 5000 Limited",
    "nsfw": false,
    "mintPriceLow": 0,
    "mintPriceHigh": 0,
    "verified": true,
    "startBlock": null,
    "website": "https://spookyswap.finance/magicats",
    "twitter": "@SpookySwap",
    "discord": "https://discord.gg/spookyswap",
    "medium": "https://spookyswap.medium.com/",
    "telegram": "@SpookySwap_Community",
    "reddit": "r/SpookySwap",
    "poster": "https://media-collections.paintswap.finance/0x2aB5C606a5AA2352f8072B9e2E8A213033e2c4c9_poster.gif",
    "banner": "https://media-collections.paintswap.finance/0x2aB5C606a5AA2352f8072B9e2E8A213033e2c4c9_banner.jpg",
    "thumbnail": "https://media-collections.paintswap.finance/0x2aB5C606a5AA2352f8072B9e2E8A213033e2c4c9_thumb.png",
    "standard": "721",
    "featured": true,
    "displayed": true,
    "imageStyle": null,
    "customMetadata": null,
    "floor": "224000000000000000000",
    "totalVolumeTraded": "543570739999999999980000",
    "lastSellPrice": "350000000000000000000",
    "activeSales": 321,
    "stats": {
      "floor": "224000000000000000000",
      "totalVolumeTraded": "543570739999999999980000",
      "lastSellPrice": "350000000000000000000",
      "activeSales": 321
    }
  }
}

Last updated