Перейти к содержимому

Руководство по быстрому старту

Это руководство поможет вам сделать первые шаги в Chaingateway. Оно описывает, как читать документацию API, создать API-ключ и авторизоваться для использования нашего API.

API Chaingateway предоставляет разработчикам простой интерфейс для взаимодействия с несколькими блокчейнами, такими как Tron, Binance Smart Chain (BNB Chain), Ethereum, Polygon и Bitcoin. Наши эндпоинты API предоставляют вам различные функции, такие как создание транзакций, отправка взаимозаменяемых и невзаимозаменяемых токенов, а также запрос полезных данных блокчейна, таких как балансы аккаунтов и высоты блоков.

API Chaingateway предоставляет разработчикам простой интерфейс для взаимодействия с несколькими блокчейнами, такими как Tron, Binance Smart Chain (BNB Chain), Ethereum, Polygon и Bitcoin. Наши эндпоинты API предоставляют несколько функций, таких как создание транзакций, отправка взаимозаменяемых и невзаимозаменяемых токенов, а также запрос полезных данных блокчейна, таких как балансы аккаунтов и высоты блоков.

  • Как настроить свой аккаунт
  • Как создать свой API-ключ
  • Основные концепции нашего API
  • Как отправить свой первый запрос к API

Сначала создайте аккаунт Chaingateway или войдите в существующий. Затем перейдите на страницу API-ключей, чтобы создать новый токен. Введите имя для своего токена и нажмите «+ Create Token». Ваш новый токен теперь должен отображаться в интерфейсе. Храните его в надёжном месте и не передавайте его другим лицам!

В следующих разделах вы сможете выбрать язык программирования между curl, PHP, Node.js и Python. Если вам нужны примеры кода на других языках, наш справочник API поддерживает множество других языков.

Мы рекомендуем использовать централизованное хранилище для вашего API-ключа — это может быть переменная окружения для curl и Python, или файл .env для Node.js и PHP/Laravel.

REST API Chaingateway следует принципам REST, используя HTTP-запросы для связи. Он предлагает эндпоинты, представляющие ресурсы, например /addresses, и поддерживает стандартные методы, такие как GET, POST, PUT, DELETE, для действий по получению, созданию, обновлению и удалению ресурсов. Ответы обычно возвращаются в формате JSON. Аутентификация обеспечивает безопасный доступ к ресурсам.

Приведём пример с ресурсом address:

  • GET: Получите данные адреса, отправив GET-запрос на /addresses для списка адресов или на /addresses/{id} для конкретного адреса.

  • POST: Создайте новый адрес, отправив POST-запрос на /addresses с данными адреса в теле запроса.

  • PUT: Обновите существующий адрес, отправив PUT-запрос на /addresses/{id} с полной обновлённой информацией об адресе в теле запроса. Поскольку обновление информации об адресе в блокчейнах не допускается, этот метод не существует.

  • DELETE: Удалите адрес, отправив DELETE-запрос на /addresses/{id}.

  • PATCH: Внесите частичные изменения в адрес, отправив PATCH-запрос на /addresses/{id} только с конкретными изменениями. Поскольку обновление информации об адресе в блокчейнах не допускается, этот метод не существует.

Эти методы позволяют клиентам выполнять CRUD-операции с различными ресурсами предсказуемым и последовательным образом в соответствии с принципами REST. Вам нужно убедиться, что метод всегда соответствует необходимой функциональности.

HTTP-заголовки предоставляют дополнительную информацию о запросе или ответе. Вот некоторые часто используемые заголовки:

  • Заголовок Authorization: Заголовок Authorization используется для передачи учётных данных (например, токена или имени пользователя/пароля) вместе с запросом для доступа к защищённым ресурсам. Например, Authorization: <token> указывает, что запрос авторизован с помощью токена.

  • Заголовок Accept: Заголовок Accept указывает типы медиа, которые клиент готов получить в ответе. Он помогает серверу понять, какой тип контента предпочитает клиент. Например, Accept: application/json сообщает серверу, что клиент предпочитает ответы в формате JSON. Можно указать несколько типов медиа, разделённых запятыми, и сервер выберет наиболее подходящий на основе своих возможностей и предпочтений, выраженных клиентом.

  • Заголовок Content-Type: Заголовок Content-Type указывает тип медиа тела запроса, отправляемого на сервер. Он сообщает серверу, как интерпретировать данные в запросе. Например, Content-Type: application/json указывает, что тело запроса отформатировано как JSON. Этот заголовок особенно важен для POST- и PUT-запросов, где клиент отправляет данные на сервер.

После того как вы настроили HTTP-клиент и разобрались, как работает API, мы можем начать использовать его в нашем проекте. Чтобы показать вам, как работает наш API, мы сначала создадим адрес Ethereum.

Давайте разберём различные компоненты этого API-вызова:

Мы используем метод POST, потому что хотим отправить данные в API.

Данные, которые мы отправляем, определены в теле запроса {"password": "architecto"}. Это объект JSON с парой ключ-значение, где ключ — «password», а значение — «architecto». Эти данные будут обработаны сервером в соответствии со спецификациями API.

Заголовок Authorization добавляет заголовок Authorization со значением «YOUR_SECRET_TOKEN» (замените его на свой собственный токен!). Content-Type и Accept оба установлены в application/json, что гарантирует, что обе системы хотят обмениваться данными в формате application/json.

Окно терминала
curl --request POST \
--url http://api.chaingateway.io/api/v2/ethereum/addresses \
--header 'Authorization: YOUR_SECRET_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"password": "architecto"
}'

Ответ будет:

{
"status": 201,
"ok": true,
"message": "Address created",
"data": {}
}

Чтобы получить данные, например список адресов, вы можете использовать метод GET. Этот метод обычно не использует тело запроса.

Окно терминала
curl --request GET \
--url https://api.chaingateway.io/api/v2/ethereum/addresses \
--header 'Authorization: YOUR_SECRET_TOKEN'

Ответ будет:

{
"ok": true
}