MENU navbar-image

Introduction

This documentation aims to provide all the information you need to work with our API.

Authenticating requests

To authenticate requests, include an Authorization header with the value "Bearer {YOUR_API_KEY}".

All authenticated endpoints are marked with a requires authentication badge in the documentation below.

You can retrieve your token by visiting the dashboard.

Endpoints

GET v1/health

requires authentication

Example request:
curl --request GET \
    --get "https://api.peerme.io/v1/health" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.peerme.io/v1/health"
);

const headers = {
    "Authorization": "Bearer {YOUR_API_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):

Show headers
content-type: text/html; charset=UTF-8
cache-control: no-cache, private
x-ratelimit-limit: 120
x-ratelimit-remaining: 119
vary: Origin
 

i am good buddy
 

Request   

GET v1/health

Headers

Authorization      

Example: Bearer {YOUR_API_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

GET v1/users

requires authentication

Example request:
curl --request GET \
    --get "https://api.peerme.io/v1/users?page=1" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.peerme.io/v1/users"
);

const params = {
    "page": "1",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_API_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "address": "erd17ALoyrM6qkTQzQxvKXTXif85C2fAFrGpYeQQPmZ78fkWdNbxZDg6ZDrbUx",
            "username": "tysonnikolaus.elrond",
            "name": "Orpha Bode",
            "bio": null,
            "hasProfileImage": false,
            "profileImageUrl": "https://api.peerme.io/images/profile-picture-placeholder.png",
            "followers": 0,
            "followings": 0,
            "connections": [],
            "boosterUntil": null
        },
        {
            "address": "erd1dUNxfMicXoLytvKq1irlwnOnqtgwiERnwuwrsecYyJWqCCNw4yBfUzYj3g",
            "username": "arlene28.elrond",
            "name": "Miss Haylie Gaylord",
            "bio": null,
            "hasProfileImage": false,
            "profileImageUrl": "https://api.peerme.io/images/profile-picture-placeholder.png",
            "followers": 0,
            "followings": 0,
            "connections": [],
            "boosterUntil": null
        }
    ]
}
 

Request   

GET v1/users

Headers

Authorization      

Example: Bearer {YOUR_API_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

page   string   

The page number Example: 1

GET v1/users/{user_id}

requires authentication

Example request:
curl --request GET \
    --get "https://api.peerme.io/v1/users/quasi" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.peerme.io/v1/users/quasi"
);

const headers = {
    "Authorization": "Bearer {YOUR_API_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "address": "erd1pNeIsAuG86D4wNjXIVMU0zbFsqVU76LY82DYat9vXBTMrCrMp9K4797XSY",
        "username": "vena39.elrond",
        "name": "Will Lemke",
        "bio": null,
        "hasProfileImage": false,
        "profileImageUrl": "https://api.peerme.io/images/profile-picture-placeholder.png",
        "followers": 0,
        "followings": 0,
        "connections": [],
        "boosterUntil": null
    }
}
 

Request   

GET v1/users/{user_id}

Headers

Authorization      

Example: Bearer {YOUR_API_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

user_id   string   

The user's blockchain address or username Example: quasi

GET v1/entities

requires authentication

Example request:
curl --request GET \
    --get "https://api.peerme.io/v1/entities?page=1" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.peerme.io/v1/entities"
);

const params = {
    "page": "1",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_API_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "address": "erd1qqqqqqqqqqqqqqqpqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqplllst77y4l",
            "slug": "alicia-weissnat-dao",
            "name": "Alicia Weissnat DAO",
            "description": "Reprehenderit qui velit ex sed nihil aut. Aut officiis ex est quaerat. Quos cum exercitationem voluptate laboriosam modi id quisquam. Et in est autem.",
            "avatarUrl": "",
            "isAvatarNft": false,
            "headerImageUrl": null,
            "verified": false,
            "private": false,
            "tags": [],
            "socials": [],
            "governance": {
                "nft": null,
                "owned": null,
                "token": null,
                "tokenName": null,
                "tokenDecimals": null,
                "quorum": null,
                "minVoteWeight": null,
                "minProposeWeight": null,
                "votingPeriodMinutes": null
            },
            "children": [],
            "roles": []
        },
        {
            "address": "erd1qqqqqqqqqqqqqqqpqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqplllst77y4l",
            "slug": "mr-kareem-beahan-jr-dao",
            "name": "Mr. Kareem Beahan Jr. DAO",
            "description": "Ab harum enim maxime eligendi dolores maxime. Occaecati iusto voluptatibus consequatur nemo maxime occaecati. Et alias sed id illo neque corporis non. Vel praesentium veritatis repudiandae.",
            "avatarUrl": "",
            "isAvatarNft": false,
            "headerImageUrl": null,
            "verified": false,
            "private": false,
            "tags": [],
            "socials": [],
            "governance": {
                "nft": null,
                "owned": null,
                "token": null,
                "tokenName": null,
                "tokenDecimals": null,
                "quorum": null,
                "minVoteWeight": null,
                "minProposeWeight": null,
                "votingPeriodMinutes": null
            },
            "children": [],
            "roles": []
        }
    ]
}
 

Request   

GET v1/entities

Headers

Authorization      

Example: Bearer {YOUR_API_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

page   string   

The page number Example: 1

GET v1/entities/{entity_id}

requires authentication

Example request:
curl --request GET \
    --get "https://api.peerme.io/v1/entities/velit" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.peerme.io/v1/entities/velit"
);

const headers = {
    "Authorization": "Bearer {YOUR_API_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "address": "erd1qqqqqqqqqqqqqqqpqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqplllst77y4l",
        "slug": "haylie-klocko-dao",
        "name": "Haylie Klocko DAO",
        "description": "Laborum incidunt itaque velit neque consequatur suscipit error. Doloribus ut laboriosam aut est quibusdam commodi. Voluptas aperiam ex et doloribus delectus quia iusto ipsum.",
        "avatarUrl": "",
        "isAvatarNft": false,
        "headerImageUrl": null,
        "verified": false,
        "private": false,
        "tags": [],
        "socials": [],
        "governance": {
            "nft": null,
            "owned": null,
            "token": null,
            "tokenName": null,
            "tokenDecimals": null,
            "quorum": null,
            "minVoteWeight": null,
            "minProposeWeight": null,
            "votingPeriodMinutes": null
        },
        "children": [],
        "roles": []
    }
}
 

Request   

GET v1/entities/{entity_id}

Headers

Authorization      

Example: Bearer {YOUR_API_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

entity_id   string   

The entity's blockchain address or slug Example: velit

GET v1/entities/{entity_id}/proposals

requires authentication

Example request:
curl --request GET \
    --get "https://api.peerme.io/v1/entities/reprehenderit/proposals?page=1" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.peerme.io/v1/entities/reprehenderit/proposals"
);

const params = {
    "page": "1",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_API_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "tx": "wFd9ywMxjVvN7JnSieEyECU74RCezfGGayUniDt8jhbj1dvoa3ngTxZRh5nIcsHK",
            "pollOption": null,
            "upvotes": null,
            "downvotes": null,
            "createdAt": "2023-01-23T19:11:00+00:00",
            "user": {
                "address": "erd1oP06eKNohRx3hMWiamQpgJgMQSnKAXVPwvifTGcoUNpW88Z57pxrhNhtGQ",
                "username": "eoconner.elrond",
                "name": "Dr. Ludie Goldner",
                "bio": null,
                "hasProfileImage": false,
                "profileImageUrl": "https://api.peerme.io/images/profile-picture-placeholder.png",
                "followers": 0,
                "followings": 0,
                "connections": [],
                "boosterUntil": null
            }
        },
        {
            "tx": "VcpjgGmM0YI5typsUwlTI5nKivee0s2F3RsNjYCu2e7pIsQf7EnlDJcwW9C0lrtn",
            "pollOption": null,
            "upvotes": null,
            "downvotes": null,
            "createdAt": "2023-01-23T19:11:00+00:00",
            "user": {
                "address": "erd18c9ygihPNfybpc7d0oBAU3HqmtNeKjYXSTxGHfLm2UwWzymll1li9te9kz",
                "username": "alize06.elrond",
                "name": "Jarret Wuckert",
                "bio": null,
                "hasProfileImage": false,
                "profileImageUrl": "https://api.peerme.io/images/profile-picture-placeholder.png",
                "followers": 0,
                "followings": 0,
                "connections": [],
                "boosterUntil": null
            }
        }
    ]
}
 

Request   

GET v1/entities/{entity_id}/proposals

Headers

Authorization      

Example: Bearer {YOUR_API_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

entity_id   string   

The entity's blockchain address or slug Example: reprehenderit

Query Parameters

page   string   

The page number Example: 1

GET v1/entities/{entity_id}/votes

requires authentication

Example request:
curl --request GET \
    --get "https://api.peerme.io/v1/entities/itaque/votes?page=1" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.peerme.io/v1/entities/itaque/votes"
);

const params = {
    "page": "1",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_API_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "tx": "YPCOdQuDd8IrvCjGPmhzHxVQwkwD1gUlPahdayKmaUEIiFX3kRETbh1yMY9lnSLB",
            "pollOption": null,
            "upvotes": null,
            "downvotes": null,
            "createdAt": "2023-01-23T19:11:00+00:00",
            "user": {
                "address": "erd1DE31NfBWBeuOMdygW01N7fgNMy9Px1s6XO5K8xWV2DgqfHSFUS82bxqOli",
                "username": "trevorlittle.elrond",
                "name": "Mrs. Jada Mueller",
                "bio": null,
                "hasProfileImage": false,
                "profileImageUrl": "http://api.peerme.io/images/profile-picture-placeholder.png",
                "followers": 0,
                "followings": 0,
                "connections": [],
                "boosterUntil": null
            }
        },
        {
            "tx": "zkO0Y1IeaemaysfYjmldHBo1xSViijjuykQPYu9a96fHAPW3VpUsnxfNhs36ZFKf",
            "pollOption": null,
            "upvotes": null,
            "downvotes": null,
            "createdAt": "2023-01-23T19:11:00+00:00",
            "user": {
                "address": "erd178kW4LexUmcVEn3zw0747tL4dy3KZS2BZUs5GtPiGDKdmAG7fL2W0ppQCy",
                "username": "georgeheidenreich.elrond",
                "name": "Mr. Cornell Hermiston DDS",
                "bio": null,
                "hasProfileImage": false,
                "profileImageUrl": "http://api.peerme.io/images/profile-picture-placeholder.png",
                "followers": 0,
                "followings": 0,
                "connections": [],
                "boosterUntil": null
            }
        }
    ]
}
 

Request   

GET v1/entities/{entity_id}/votes

Headers

Authorization      

Example: Bearer {YOUR_API_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

entity_id   string   

The entity's blockchain address or slug Example: itaque

Query Parameters

page   string   

The page number Example: 1

GET v1/entities/{entity_id}/members

requires authentication

Example request:
curl --request GET \
    --get "https://api.peerme.io/v1/entities/qui/members?page=1&sort=votes" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.peerme.io/v1/entities/qui/members"
);

const params = {
    "page": "1",
    "sort": "votes",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_API_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "address": "erd1r5KtDbFS586vhKMzqqgaQh8TUXglwgdp9zhzTQKDDqfRK6tRCrUCbbwtYJ",
            "username": "emmerichmarshall.elrond",
            "name": "Ed Lockman DVM",
            "bio": null,
            "hasProfileImage": false,
            "profileImageUrl": "http://api.peerme.io/images/profile-picture-placeholder.png",
            "followers": 0,
            "followings": 0,
            "connections": [],
            "boosterUntil": null
        },
        {
            "address": "erd115YKu5a4vdCX8wYf3u6ITnXoEFZBwcD6I5rvhHfHc0W7CItrsB4NaLJgpX",
            "username": "oconnerelizabeth.elrond",
            "name": "Mr. Milford Jones DDS",
            "bio": null,
            "hasProfileImage": false,
            "profileImageUrl": "http://api.peerme.io/images/profile-picture-placeholder.png",
            "followers": 0,
            "followings": 0,
            "connections": [],
            "boosterUntil": null
        }
    ]
}
 

Request   

GET v1/entities/{entity_id}/members

Headers

Authorization      

Example: Bearer {YOUR_API_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

entity_id   string   

The entity's blockchain address or slug Example: qui

Query Parameters

page   string   

The page number Example: 1

sort   string  optional  

Sort the results, e.g: votes, proposals Example: votes

GET v1/entities/{entity_id}/stats

requires authentication

Example request:
curl --request GET \
    --get "https://api.peerme.io/v1/entities/et/stats" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.peerme.io/v1/entities/et/stats"
);

const headers = {
    "Authorization": "Bearer {YOUR_API_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "tx": "Ej0V78s2NbnvMF8yRgdO8m9PQB7UuKIR9boaZn4WyCzoY6MR2gn4buZTpa8yv4Kr",
            "pollOption": null,
            "upvotes": null,
            "downvotes": null,
            "createdAt": "2023-01-23T19:11:00+00:00",
            "user": {
                "address": "erd1ZXuDvIJlK8mMkZTFx9ehkZaAlgS2p6J2ooyBHbtT6uZTy0zWOX6lM21XdD",
                "username": "ymclaughlin.elrond",
                "name": "Dr. Lavonne Hyatt Sr.",
                "bio": null,
                "hasProfileImage": false,
                "profileImageUrl": "http://api.peerme.io/images/profile-picture-placeholder.png",
                "followers": 0,
                "followings": 0,
                "connections": [],
                "boosterUntil": null
            }
        },
        {
            "tx": "GDGSDmo4bnPxauCPdFRHhmtWPsdR75owckwnXYzyVhmi5wZAgb2UWdx9A1Zrafmv",
            "pollOption": null,
            "upvotes": null,
            "downvotes": null,
            "createdAt": "2023-01-23T19:11:00+00:00",
            "user": {
                "address": "erd18KYjdL5cMmqCgRdb5MQBGRjNFBQI2JDEIJlqW914Iy9EwfufSFs7pz7K6M",
                "username": "swolff.elrond",
                "name": "Dr. Jennings Glover I",
                "bio": null,
                "hasProfileImage": false,
                "profileImageUrl": "http://api.peerme.io/images/profile-picture-placeholder.png",
                "followers": 0,
                "followings": 0,
                "connections": [],
                "boosterUntil": null
            }
        }
    ]
}
 

Request   

GET v1/entities/{entity_id}/stats

Headers

Authorization      

Example: Bearer {YOUR_API_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

entity_id   string   

The entity's blockchain address or slug Example: et

GET v1/proposals

requires authentication

Example request:
curl --request GET \
    --get "https://api.peerme.io/v1/proposals?page=1" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.peerme.io/v1/proposals"
);

const params = {
    "page": "1",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_API_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": "9yVjrqPxbXKO",
            "chainId": 31395,
            "title": "Dr.",
            "description": "Quia ab tenetur et sequi hic. Natus aut expedita occaecati dolorem. Eveniet eum alias consequatur unde.",
            "upvotes": "4000000000000000000",
            "downvotes": "1000000000000000000",
            "entity": {
                "address": "erd1qqqqqqqqqqqqqqqpqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqplllst77y4l",
                "slug": "mrs-kelsi-erdman-dao",
                "name": "Mrs. Kelsi Erdman DAO",
                "description": "Debitis et quae molestiae delectus voluptas est enim nam. Voluptatum quo sapiente perferendis ex cum cupiditate.",
                "avatarUrl": "",
                "isAvatarNft": false,
                "headerImageUrl": null,
                "verified": false,
                "private": false,
                "tags": [],
                "socials": [],
                "governance": {
                    "nft": null,
                    "owned": null,
                    "token": null,
                    "tokenName": null,
                    "tokenDecimals": null,
                    "quorum": null,
                    "minVoteWeight": null,
                    "minProposeWeight": null,
                    "votingPeriodMinutes": null
                },
                "children": [],
                "roles": []
            },
            "proposer": {
                "address": "erd1x6MGsF2WijFP54xntZUwPZ1WGy2WwLg6bkXBHh03XcBq9ZQenWUd143fEZ",
                "username": "walkerlysanne.elrond",
                "name": "Mr. Elmore Treutel",
                "bio": null,
                "hasProfileImage": false,
                "profileImageUrl": "http://api.peerme.io/images/profile-picture-placeholder.png",
                "followers": 0,
                "followings": 0,
                "connections": [],
                "boosterUntil": null
            },
            "approvePercent": 80,
            "weighted": false,
            "startsAt": "2023-01-23T19:11:00+00:00",
            "endsAt": "2023-01-30T19:11:00+00:00",
            "createdAt": "2023-01-23T19:11:00+00:00",
            "status": "pending",
            "actions": [],
            "poll": null,
            "guards": [],
            "attachments": [],
            "processed": true,
            "ended": true,
            "finalizing": false,
            "executable": false,
            "tx": "erd1yRd0RcgtJQ1fYA5lg9vAhReUInN3lYkEFweHGQZyGoNun8Mu7ZT68tLlA9",
            "contentHash": "e6556ce76dc57fb7a46ae2ac3ce8191829289cec9441ae8205252c6ddcffcabb",
            "actionsHash": null,
            "trashed": false
        },
        {
            "id": "7k4ZrDg2bVpj",
            "chainId": 99629,
            "title": "Dr.",
            "description": "Necessitatibus qui sed sed quasi praesentium. Et laboriosam sunt voluptatum cupiditate. Et alias dignissimos amet et.",
            "upvotes": "4000000000000000000",
            "downvotes": "1000000000000000000",
            "entity": {
                "address": "erd1qqqqqqqqqqqqqqqpqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqplllst77y4l",
                "slug": "jasmin-ohara-dao",
                "name": "Jasmin O'Hara DAO",
                "description": "Architecto atque aut ut veritatis. Quis molestiae consectetur occaecati. Sit dolor voluptas possimus nesciunt aut dolor qui.",
                "avatarUrl": "",
                "isAvatarNft": false,
                "headerImageUrl": null,
                "verified": false,
                "private": false,
                "tags": [],
                "socials": [],
                "governance": {
                    "nft": null,
                    "owned": null,
                    "token": null,
                    "tokenName": null,
                    "tokenDecimals": null,
                    "quorum": null,
                    "minVoteWeight": null,
                    "minProposeWeight": null,
                    "votingPeriodMinutes": null
                },
                "children": [],
                "roles": []
            },
            "proposer": {
                "address": "erd1T0xWv4LZMDmfYNmbscLUDY9qQEtkyQLm4DkuhXS18pYZK85jI6wY7g5kNz",
                "username": "leonard02.elrond",
                "name": "Norberto Block DVM",
                "bio": null,
                "hasProfileImage": false,
                "profileImageUrl": "http://api.peerme.io/images/profile-picture-placeholder.png",
                "followers": 0,
                "followings": 0,
                "connections": [],
                "boosterUntil": null
            },
            "approvePercent": 80,
            "weighted": false,
            "startsAt": "2023-01-23T19:11:00+00:00",
            "endsAt": "2023-01-30T19:11:00+00:00",
            "createdAt": "2023-01-23T19:11:00+00:00",
            "status": "pending",
            "actions": [],
            "poll": null,
            "guards": [],
            "attachments": [],
            "processed": true,
            "ended": true,
            "finalizing": false,
            "executable": false,
            "tx": "erd1XlfhHCd9MDyddAnXjHWF51OsXPdV90N1mgzv716KqFjTmWmU9vED5C1S2k",
            "contentHash": "15d1a8dbbb808cbedf6ec564c2cde35bdb2a4a3ddee4f8f2b380ad14b93017e0",
            "actionsHash": null,
            "trashed": false
        }
    ]
}
 

Request   

GET v1/proposals

Headers

Authorization      

Example: Bearer {YOUR_API_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

page   string   

The page number Example: 1

GET v1/proposals/{proposal_id}

requires authentication

Example request:
curl --request GET \
    --get "https://api.peerme.io/v1/proposals/libero" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.peerme.io/v1/proposals/libero"
);

const headers = {
    "Authorization": "Bearer {YOUR_API_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": "B975rKPoly2q",
        "chainId": 76193,
        "title": "Dr.",
        "description": "Odio reiciendis beatae nemo dolores ab quod. Delectus modi ut distinctio deserunt consequuntur dolorum exercitationem. Eaque voluptatum error ut officiis.",
        "upvotes": "4000000000000000000",
        "downvotes": "1000000000000000000",
        "entity": {
            "address": "erd1qqqqqqqqqqqqqqqpqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqplllst77y4l",
            "slug": "madonna-braun-dao",
            "name": "Madonna Braun DAO",
            "description": "Sequi non tempora cupiditate. Quia voluptate tempora quo non autem officia sunt amet. Delectus aut perferendis deleniti ex. Voluptatum enim enim reiciendis quaerat magni illo.",
            "avatarUrl": "",
            "isAvatarNft": false,
            "headerImageUrl": null,
            "verified": false,
            "private": false,
            "tags": [],
            "socials": [],
            "governance": {
                "nft": null,
                "owned": null,
                "token": null,
                "tokenName": null,
                "tokenDecimals": null,
                "quorum": null,
                "minVoteWeight": null,
                "minProposeWeight": null,
                "votingPeriodMinutes": null
            },
            "children": [],
            "roles": []
        },
        "proposer": {
            "address": "erd1CsOLKLgbfIkY35OPKxzEarvlI0qXw9ud6AwHEpSCc8mK3lBxUAQ77CdUH0",
            "username": "columbusdenesik.elrond",
            "name": "Mrs. Cleora O'Connell",
            "bio": null,
            "hasProfileImage": false,
            "profileImageUrl": "http://api.peerme.io/images/profile-picture-placeholder.png",
            "followers": 0,
            "followings": 0,
            "connections": [],
            "boosterUntil": null
        },
        "approvePercent": 80,
        "weighted": false,
        "startsAt": "2023-01-23T19:11:00+00:00",
        "endsAt": "2023-01-30T19:11:00+00:00",
        "createdAt": "2023-01-23T19:11:00+00:00",
        "status": "pending",
        "actions": [],
        "poll": null,
        "guards": [],
        "attachments": [],
        "processed": true,
        "ended": true,
        "finalizing": false,
        "executable": false,
        "tx": "erd1GQgjOhoBIwxk0xQgn272ihVeFRx3DH8gxd6wRSSUl9mr5vhH1H2iQV0WLf",
        "contentHash": "46a80a0a96a52a5baa36e4166e21712f241904460180e2a8a304b298876879bb",
        "actionsHash": null,
        "trashed": false
    }
}
 

Request   

GET v1/proposals/{proposal_id}

Headers

Authorization      

Example: Bearer {YOUR_API_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

proposal_id   string   

The unique hash id of the proposal Example: libero

GET v1/proposals/{proposal_id}/votes

requires authentication

Example request:
curl --request GET \
    --get "https://api.peerme.io/v1/proposals/vel/votes?page=1" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.peerme.io/v1/proposals/vel/votes"
);

const params = {
    "page": "1",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_API_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "tx": "0ayhuGftR3w7BWnXsX3BDQXOh8F83Z6jjLaKVSjFgGaqXScXjyWVJNPZZfSus8rP",
            "pollOption": null,
            "upvotes": null,
            "downvotes": null,
            "createdAt": "2023-01-23T19:11:00+00:00",
            "user": {
                "address": "erd1AB7eoCdjprdN6mtGluMKuwFFpb6ZLlvlCcOIsnDMnceNzQs6M3ECvX9g14",
                "username": "wittingclark.elrond",
                "name": "Breanne Mosciski",
                "bio": null,
                "hasProfileImage": false,
                "profileImageUrl": "http://api.peerme.io/images/profile-picture-placeholder.png",
                "followers": 0,
                "followings": 0,
                "connections": [],
                "boosterUntil": null
            }
        },
        {
            "tx": "LAT6nwrW1xgSEIst3AGfgb8F02TkmIBIpha2rs5NevUXiaRexISS8icywb00yo3S",
            "pollOption": null,
            "upvotes": null,
            "downvotes": null,
            "createdAt": "2023-01-23T19:11:00+00:00",
            "user": {
                "address": "erd12YzoXZxa61vLn2THd5xb43OTfVHZm4dUBe7vd1Q7wTN5ER8Hr5wUKAZxo5",
                "username": "dorothea30.elrond",
                "name": "Maynard Steuber",
                "bio": null,
                "hasProfileImage": false,
                "profileImageUrl": "http://api.peerme.io/images/profile-picture-placeholder.png",
                "followers": 0,
                "followings": 0,
                "connections": [],
                "boosterUntil": null
            }
        }
    ]
}
 

Request   

GET v1/proposals/{proposal_id}/votes

Headers

Authorization      

Example: Bearer {YOUR_API_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

proposal_id   string   

The unique hash id of the proposal Example: vel

Query Parameters

page   string   

The page number Example: 1

GET v1/stats

requires authentication

Example request:
curl --request GET \
    --get "https://api.peerme.io/v1/stats" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.peerme.io/v1/stats"
);

const headers = {
    "Authorization": "Bearer {YOUR_API_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 120
x-ratelimit-remaining: 118
vary: Origin
 

{
    "data": {
        "proposals": {
            "succeeded": 1,
            "defeated": 0,
            "executed": 3
        }
    }
}
 

Request   

GET v1/stats

Headers

Authorization      

Example: Bearer {YOUR_API_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

GET v1/stats/members

requires authentication

Example request:
curl --request GET \
    --get "https://api.peerme.io/v1/stats/members?page=1&sort=votes" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://api.peerme.io/v1/stats/members"
);

const params = {
    "page": "1",
    "sort": "votes",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_API_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "address": "erd1SaFM75Tzf3iWriRhZIoRRbIuAtGMelLKQTsfoN6UELIMnMMsieEIDjL8wr",
            "username": "zion16.elrond",
            "name": "Ms. Raina Becker",
            "bio": null,
            "hasProfileImage": false,
            "profileImageUrl": "http://api.peerme.io/images/profile-picture-placeholder.png",
            "followers": 0,
            "followings": 0,
            "connections": [],
            "boosterUntil": null
        },
        {
            "address": "erd1Twrue1DBSKyszsTIEyARegBLV26xlw4KZqpwgRKhM1lbQ2GIg1hlfzB1FN",
            "username": "alexandre07.elrond",
            "name": "Myrl Medhurst",
            "bio": null,
            "hasProfileImage": false,
            "profileImageUrl": "http://api.peerme.io/images/profile-picture-placeholder.png",
            "followers": 0,
            "followings": 0,
            "connections": [],
            "boosterUntil": null
        }
    ]
}
 

Request   

GET v1/stats/members

Headers

Authorization      

Example: Bearer {YOUR_API_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

page   string   

The page number Example: 1

sort   string  optional  

Sort the results, e.g: votes, proposals Example: votes