Навчальний посібник з використання кінцевих точок класу A в API проєкта Ковалент

fOrest
Covalent
Published in
3 min readMay 27, 2021

В даній статті я розповім про кінцеві точки класу А в API від проєкту Ковалент. Але спочатку давайте більше дізнаємося про саме API.

Огляд API

API Ковалента є RESTful. Усі запити виконуються за допомогою метода cURL. Тобто посилаючи звичайні запити, навіть за допомогою звичайного браузера, Ви отримуєте інформація в JSON форматі. Для того, щоб можна було відправити запит, потрібно отримати ключ API. Цей ключ є безкоштовним і немає обмежень по кількості запитів.

По даному посиланню, Ви можете зареєструватися на сайті Ковалента і отримати ключ: https://www.covalenthq.com/platform/#/auth/register/

Отриманий ключ, Ви можете використати для надсилання запитів з написаної Вами програми або протестувати запити на сайті Ковалента за даним посиланням: https://www.covalenthq.com/docs/api/#overview

У верхній частині сторінки можете вставити свій ключ і нажати кнопку SET, для того, щоб була можливість відправляти запити через API.

Якщо у Вас немає cпеціальних знань та навичок для роботи з API, Вам потрібно уважно прочитати все інструкцію з самого початку та намагатися протестувати різні запити. Для цього потрібно у вільних полях ввести інформацію, яку запитують і нажати кнопку TRY.

А тепер я більш детально опишу технічні особливості запитів:

Для запиту використовується даний шаблон: https://api.covalenthq.com/v1/

Список підтримуваних мереж та коди даних мереж для запиту.

Основні мережі в форматі назва (код) :

Ethereum (1), Polygon/Matic (137), Avalanche C-Chain (43114), Binance Smart Chain (56), Fantom Opera (250).

Тестові мережі в форматі назва (код) :

Polygon/Matic Mumbai (80001), Fuji C-Chain (43113), Kovan (42).

Кінцеві точки Класу А

Кінцеві точки Класу А використовуються для отримання даних (по заданому параметру) з усіх захищених блокчейнів, які підтримує Ковалент.

Тепер я хочу більш детально розказати про всі можливі опції для Класу А.

Отримати баланс токенів за адресою

GET /v1/{chain_id}/address/{address}/balances_v2/

Відправивши цей запит, Ви отримує баланс всіх токенів за адресою, а також отримуєте дані про НФТ. Для цього потрібно вибрати блокчейн і вказати Ваший адрес.

Отримати історичну вартість портфоліо

GET /v1/{chain_id}/address/{address}/portfolio_v2/

Вибравши блокчейн і вказавши адрес, можна отримати історичні дані, про, як змінювалася вартість портфеля в залежності від часу.

Отримати історію транзакцій

GET /v1/{chain_id}/address/{address}/transactions_v2/

Можна отримати всі історичні транзакція по заданому адресу.

Отримати історію переміщення ERC-20 токенів

GET /v1/{chain_id}/address/{address}/transfers_v2/

По заданому запиту, можна отримати переміщення всіх токенів стандарту ERC-20.

Отримати блок

GET /v1/{chain_id}/block_v2/{block_height}/

Потрібно вказати номер мережі та висоту блоку.

Отримати висоту блоків

GET /v1/{chain_id}/block_v2/{start_date}/{end_date}/

У цьому запиті потрібно вибрати мережу, а також вказати дату початку відліку і дату закінчення відліку, в форматі yyyy-MM-ddTHH:mm:ssZ

Отримати журнал подій за адресою контракту

GET /v1/{chain_id}/events/address/{address}/

Відповідь даного запиту буде містити декодовані дані (журнал подій) смарт контракту.

Отримати журнал подій за темами хешів

GET /v1/{chain_id}/events/topics/{topic}/

Запит повертає список декодованих подій журналу з одним або кількома хешами тем, розділених комою.

Отримати зовнішні метадані NFT

GET /v1/{chain_id}/tokens/{address}/nft_metadata/{token_id}/

Щоб отримати зовнішні метадані, потрібно вказати адресу контракту NFT та ідентифікатор токена.

Отримати ідентифікатор NFT токена

GET /v1/{chain_id}/tokens/{address}/nft_token_ids/

Даний запит повертає список усіх ідентифікаторів токена для контракту NFT у мережі блокчейнів.

Отримати транзакції NFT токена

GET /v1/{chain_id}/tokens/{address}/nft_transactions/{token_id}/

Запит повертає список всіх транзакцій, які відповідають заданому NFT контракту та ідентифікатору токена у мережі блокчейнів.

Отримати дані про зміни холдерів токенів між двома висотами блоків

GET /v1/{chain_id}/tokens/{address}/token_holders_changes/

Можна отримати дані про зміни балансів токенів, якими володіють холдери, між заданими Вами початковим і кінцевим блоком.

Отримати холдерів токенів на певній висоті блоку

GET /v1/{chain_id}/tokens/{address}/token_holders/

По заданому адресу (контракту) можна отримати список всіх власників токенів при певній висоті блока.

Отримати всі метадані контракту

GET /v1/{chain_id}/tokens/tokenlists/{id}/

Повертає список усіх контрактів на блокчейні разом з їх метаданими.

Отримати транзакцію

GET /v1/{chain_id}/transaction_v2/{tx_hash}/

Отримати транзакцію, вказавши хеш транзакції. У відповідь на запит будуть входити декодовані події журналу.

Більш детальну інформацію можете знайти в офіційному посібнику за даною адресою: https://www.covalenthq.com/docs/api/#tag--Class-A

Також рекомендую дізнатися більше інформації про Ковалент з наступних джерел:

Сайт: https://www.covalenthq.com
Дискорд: http://covalenthq.com/discord
Твіттер: https://twitter.com/Covalent_HQ
Телеграм: https://t.me/CovalentHQ
Блог (сайт): https://www.covalenthq.com/blog/
Блог (Медіум): https://medium.com/covalent-hq/
Ютуб канал: https://www.youtube.com/c/CovalentHQ/

Раджу переглянути спільноти Ковалент Україна:

Твіттер: https://twitter.com/CovalentUkraine
Телеграм: https://t.me/covalent_ukraine
Інстаграм: http://instagram.com/covalent_ukraine
Ютуб канал: http://youtube.com/channel/UCrmRKKv3iQiaK51B50BnUpw

--

--