Get started

    API Endpoint

        https://analytics.polygon.technology/score/
                

Polygon Reputation is a composite score based on network activity. Updated weekly, the score will initially be comprised of the following metrics:

  • Two-week engagement: How active has a user been in the last two weeks
  • 10 week retention: How many weeks in the last 10 weeks has the user engaged with Polygon

We believe these metrics best identify active users on the Polygon Network - users who engage with protocols regularly and represent true, ongoing demand for dApps.

How can dApps use Polygon Score?

Any dApp on Polygon can use Polygon Reputation to identify highly engaged users. Engaged users can be rewarded by Applications in a number of ways. Some examples includes:

  • Be awarded tokens
  • Added to whitelists for premium features or early access
  • Dropped NFTs
  • Provided protocol specific awards or incentives.
  • Identify ideal candidates for beta tests
  • New user acquisition

Single Users

To get the payload with scores and score elements of a single user for the latest week, use the Users' Score And Elements endpoint.

All Users


# Full Payload

# Curl Example
curl --location --request GET \
'https://analytics.polygon.technology/score/all'
                

To get the full payload with scores of all users for the latest week, you need to make a GET call to the following url :
https://analytics.polygon.technology/score/all

Note: Usage of this endpoint should be avoided unless strictly required as it pulls the complete payload for millions of address



Result example :

[
    {
        "address": "0xe93592318ef121fb932804bde04f3433ae9ce4d6",
        "protocol": "polygon.score",
        "score": 98.0
    },
    {
        "address": "0x93e34c29470c0a1a76a9568be5b05c656e976977",
        "protocol": "polygon.score",
        "score": 94.0
    },
    {
        "address": "0x8d4e314b108300de1fdf6a0c830b8af67f65c51e",
        "protocol": "polygon.score",
        "score": 98.0
    },
    {
        "address": "0xaab3da1ba28496bfb3be41a800981a944581591c",
        "protocol": "polygon.score",
        "score": 100.0
    },
    ....
    ....
]
                

All Users from n Quantile


# Return all users from the top 10 percent of users

# Curl Example
curl --location --request POST \
'https://analytics.polygon.technology/score/score-quantile?top-percent=10'
                

To get all users from the top m percentage of users for the latest week, you need to make a POST call to the following url :
https://analytics.polygon.technology/score/score-quantile



Result example :

[
    {
        "address": "0x918bd41281d5373261f2f8f746bbdd872962f902",
        "protocol": "polygon.score",
        "score": 98.0
    },
    {
        "address": "0xd7309a23247f467e82544cac4d8b3e57c7c5575c",
        "protocol": "polygon.score",
        "score": 94.0
    },
    {
        "address": "0xcd107eca2e99aac18a6bcc830c07c703dc5044d4",
        "protocol": "polygon.score",
        "score": 98.0
    },
    {
        "address": "0xaab3da1ba28496bfb3be41a800981a944581591c",
        "protocol": "polygon.score",
        "score": 100.0
    },
    {
        "address": "0xc01ecaee1b6dcb632985631ccfe40169cb5e41a0",
        "protocol": "polygon.score",
        "score": 99.0
    }
    ....
    ....
]
                

QUERY PARAMETERS

Field Type Description
top-percent Numeric The top percentage of users to return. For example, a value of 10 would return random users from the top 10%

Top Users from n Quantile


# Return 5 random user from the top 10 percent of users

# Curl Example
curl --location --request POST \
'https://analytics.polygon.technology/score/nscore-quantile?top-percent=10&user-count=5'
                

To get random n users from the top m percentage of users for the latest week, you need to make a POST call to the following url :
https://analytics.polygon.technology/score/nscore-quantile



Result example :

[
    {
        "address": "0x918bd41281d5373261f2f8f746bbdd872962f902",
        "protocol": "polygon.score",
        "score": 98.0
    },
    {
        "address": "0xd7309a23247f467e82544cac4d8b3e57c7c5575c",
        "protocol": "polygon.score",
        "score": 94.0
    },
    {
        "address": "0xcd107eca2e99aac18a6bcc830c07c703dc5044d4",
        "protocol": "polygon.score",
        "score": 98.0
    },
    {
        "address": "0xaab3da1ba28496bfb3be41a800981a944581591c",
        "protocol": "polygon.score",
        "score": 100.0
    },
    {
        "address": "0xc01ecaee1b6dcb632985631ccfe40169cb5e41a0",
        "protocol": "polygon.score",
        "score": 99.0
    }
]
                

QUERY PARAMETERS

Field Type Description
top-percent Numeric The top percentage of users to return. For example, a value of 10 would return random users from the top 10%
user-count Numeric The number of random users to return from the given percentage of top users

Users' score and elements


# Return latest score and score components of a user 

# Curl Example
curl --location --request POST \
'https://analytics.polygon.technology/score/user-latest?address=0x6c89a699b4588d1727d531f644638bd6bf02b65b'
                

To get the latest Polygon Score and all the score components for an address, you need to make a POST call to the following url :
https://analytics.polygon.technology/score/user-latest



Result example :

[
    {
        "Week":42,
        "Address":"0x6c89a699b4588d1727d531f644638bd6bf02b65b",
        "NoOfTxns":111.0,
        "Retention Count":9.0,
        "Net Volume":1863.0027802555,
        "NoOfTxnsQ":0.99,
        "Retention CountQ":1.0,
        "Volume Group":1.5,
        "Score":2.43,
        "Score100":95.3,
        "ScoreQ":100.0,
        "Protocol":"polygon.score"
    }
]

                

QUERY PARAMETERS

Field Type Description
address String The wallet address of the user

Address Interaction


# Return latest score, interaction data and score components of a user for the latest week

# Curl Example
curl --location --request POST \
'https://analytics.polygon.technology/user-interaction-latest?address=0xe123b7df9a55073b6bb726d87a41ee18375ded6e&contracts=0xd05e3E715d945B59290df0ae8eF85c1BdB684744, 0x3ac4e9aa29940770aeC38fe853a4bbabb2dA9C19, 0xbEadf48d62aCC944a06EEaE0A9054A90E5A7dc97'
            

To get address and their score based on their interaction with given contract addresses. To get the data for the latest week, you need to make a POST request to: https://analytics.polygon.technology/score/user-interaction-latest This will help dApps get scores of users who have interacted with their contracts.


QUERY PARAMETERS

Field Type Description
address String Users' wallet address
contracts String Comma-seperated list of contract addresses (Example: 0xa, 0xb, 0xc)

For a given week:


# Return latest score, interaction data and score components of a user for a given week

# Curl Example
curl --location --request POST \
'https://analytics.polygon.technology/user-interaction-week?address=0xe123b7df9a55073b6bb726d87a41ee18375ded6e&contracts=0xd05e3E715d945B59290df0ae8eF85c1BdB684744, 0x3ac4e9aa29940770aeC38fe853a4bbabb2dA9C19, 0xbEadf48d62aCC944a06EEaE0A9054A90E5A7dc97&week=44&year=2021'
            

To get address and their score based on their interaction with given contract addresses for a particular week, you need to make a POST request to: https://analytics.polygon.technology/score/user-interaction-week



Result example :

[
    {
        "Week": 44,
        "Address": "0xe123b7df9a55073b6bb726d87a41ee18375ded6e",
        "NoOfTxns": 192.0,
        "Retention Count": 10.0,
        "Year": 2021.0,
        "Net Volume": 0.0,
        "NoOfTxnsQ": 1.0,
        "Retention CountQ": 1.0,
        "Volume Group": 1.0,
        "Score": 1.7,
        "Score100": 66.7,
        "ScoreQ": 100.0,
        "Protocol": "polygon.score",
        "Token Transfers": 4,
        "Transactions": 5
    }
]
                                

QUERY PARAMETERS

Field Type Description
address String Users' wallet address
contracts String Comma-seperated list of contract addresses (Example: 0xa, 0xb, 0xc)
week Numeric ISO-standard week number to filter results for
year Numeric Calendar year to filter results for

User Affinity (Coming Soon)

User affinity returns a granular score for users based on their interactions with a particular type of dApp on the network - like NFTs, Gaming, Social etc.


QUERY PARAMETERS

Field Type Description
user String User's wallet address
type String (Options: NFT, DeFi, Social, Gaming)