Навчальний посібник з використання кінцевих точок класу A в API проєкта Ковалент
В даній статті я розповім про кінцеві точки класу А в 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