✨Works out of the box. If you face any issue at all, hit us up here and we will write the integration for you.

Learn about Providers
Custom Provider

Custom Providers

The Custom Provider comes into play when the required data is not readily available within an HTML element and requires additional computational steps to derive the desired outcome. This provider type demands the integration of custom logic for operations like calculations, aggregations, or transformations to acquire the desired data.

We have a set of pre-defined providers that you can use to create a request object. A typical request object using custom provider includes the following:

  • provider: The name of the provider.
  • payload: The payload to be sent to the provider. This is provider specific. It includes the data that you want your users to create proof of credentials for.
{
    "provider": "<NAME_OF_PROVIDER>",
    "payload": {}
}

Example:

const request = reclaim.requestProofs({
        title: "My DeFi app", // Name of your application
        baseCallbackUrl: "http://<YOUR_BACKEND_SERVER_URL>/callback", 
        requestedProofs: [
            new reclaim.CustomProvider({
                provider: 'bybit-balance',
                payload: {}
            }),
        ],
    });
 

Predefined Providers

Here is the list of supported providers and their payload:

Bybit Balance

Get the balance of a user's Bybit account

{
    "provider": "bybit-balance",
    "payload": {}
}

ADHAAR

Verify a person's name from their Aadhaar

{
    "provider": "uidai-aadhar",
    "payload": {}
}

Verify a perons's phone number from their Aadhaar

{
    "provider": "uidai-phone",
    "payload": {}
}

Get the State of a person from their Aadhaar

{
    "provider": "uidai-state",
    "payload": {}
}

Verify a person's ADHAAR number

{
    "provider": "uidai-uid",
    "payload": {}
}

Verify a person's Date of Birth from their Aadhaar

{
    "provider": "uidai-dob",
    "payload": {}
}

Verify a person's address from their Aadhaar

{
    "provider": "uidai-address",
    "payload": {}
}

IRS

Verify a person's name

{
    "provider": "irs-name",
    "payload": {}
}

Verify a person's address

{
    "provider": "irs-address",
    "payload": {}
}

Google

Get the email of a user's Google account

{
    "provider": "google-login",
    "payload": {}
}

Tinder

Number of Tinder matches

{
    "provider": "tinder-match-count",
    "payload": {}
}

YCombinator

Get YC userId

{
    "provider": "yc-login",
    "payload": {}
}

Dunzo

Get the last order details of a user's Dunzo account

{
    "provider": "dunzo-last-order",
    "payload": {}
}

Swiggy

Get the total number of orders of a user's Swiggy account

{
    "provider": "swiggy-total-count",
    "payload": {}
}

Spotify

Get account type of a user's Spotify account (Premium or Free)

{
    "provider": "spotify-account-type",
    "payload": {}
}

Verify that a person is a Spotify user

{
    "provider": "spotify-email",
    "payload": {}
}

Get the username of a user's Spotify account

{
    "provider": "spotify-username",
    "payload": {}
}

GitHub

GitHub commits to a particular repo

Check if a user has made commits to a particular repo. Learn how to search for commits here (opens in a new tab).

{
    "provider": "github-commits",
    "payload": {
        "type": "github-commits",
        "repository": "<REPO_NAME>",
        "searchQuery": {
            "keywords": [],
            "qualifiers": {}
        }
    }
}

GitHub Issues: Verify that a user has created an issue

Check if a user has created an issue in a particular repo. Learn how to search for issues here (opens in a new tab).

{
    "provider": "github-issues",
    "payload": {
        "type": "github-issues",
        "repository": "<REPO_NAME>",
        "searchQuery": {
            "keywords": [],
            "qualifiers": {}
        }
    }
}

GitHub Pull Requests: Verify that a user has created a pull request

Check if a user has created a pull request in a particular repo. Learn how to search for pull requests here (opens in a new tab).

{
    "provider": "github-pull-requests",
    "payload": {
        "type": "github-pull-requests",
        "repository": "<REPO_NAME>",
        "searchQuery": {
            "keywords": [],
            "qualifiers": {}
        }
    }
}

Codeforces

Get a user's rating

{
    "provider": "codeforces-rating",
    "payload": {}
}

Facebook

Get number of friends a user has

{
    "provider": "facebook-friends-count",
    "payload": {}
}

Devfolio

Get number of hackathons a user has participated in

{
    "provider": "devfolio-hackathon-count",
    "payload": {}
}

Tumblr

Verify that you follow a specific account

{
    "provider": "tumblr-follower",
    "payload": {
        "followingAccount": "<ACCOUNT_NAME>"
    }
}

Wikipedia

Verify that you are user on Wikipedia

{
    "provider": "wikipedia-user",
    "payload": {}
}

Notion

Verify that you are a user on Notion

{
    "provider": "notion-username",
    "payload": {}
}

Chess

Verify that you are a user on Chess.com

{
    "provider": "chess-user",
    "payload": {}
}

Mastodon

Verify that you are a user on Mastodon

{
    "provider": "mastodon-user",
    "payload": {}
}

Medium

Get number of followers on Medium

{
    "provider": "medium-followers-count",
    "payload": {}
}

Letterboxd

Verify a person's Letterboxd account

{
    "provider": "letterboxd-user",
    "payload": {}
}

Outlook

Verify a user's Outlook account

{
    "provider": "outlook-login",
    "payload": {}
}

Coinswitch

Get a user's portfolio value on Coinswitch

{
    "provider": "coinswitch-balance",
    "payload": {}
}

GoDaddy

Verify that a user is a GoDaddy account holder

{
    "provider": "godaddy-login",
    "payload": {}
}

Zoho

Verify that a user is a Zoho account holder

{
    "provider": "zoho-email",
    "payload": {}
}