Авторизация
Cryptoswap API использует ключи для авторизации запросов. Для получения ключа обратитесь к @CryptoSwappp3.
Для авторизации запроса необходимо указать ключ в заголовке:
x-cryptoswap-api: ключ
Транзакции
Создать инвойс
import requests
import json
api_key = 'your_api_key'
headers = {
'x-cryptoswap-api': api_key,
'Content-Type': 'application/json'
}
base_url = 'https://<endpoint>/api'
data = {
'amount': 1500,
'callback_url': 'your_callback_url',
'customer_markup': True
}
response = requests.post(url=base_url, headers=headers, data=json.dumps(data))
print(response.json())
const axios = require('axios');
const api_key = 'your_api_key';
const headers = {
'x-cryptoswap-api': api_key,
'Content-Type': 'application/json'
};
const base_url = 'https://<endpoint>/api';
const data = {
amount: 1500,
callback_url: 'your_callback_url',
customer_markup: true
};
axios.post(`${base_url}/invoice`, data, { headers: headers })
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
Этот эндпойнт создает транзакцию для приема рублей на карту.
HTTP Request
POST https://<endpoint>/api/invoice
Параметры запроса
| Параметр | Тип | Дефолт | Описание |
|---|---|---|---|
| amount | number | Сумма в рублях, которую хотите принять. | |
| currency | string | rub | Валюта для расчета суммы к зачислению: btc, ltc, xmr, rub |
| customer_markup | boolean | false | Если значение true, то комиссию сервиса оплатит клиент. |
| callback_url | string | none | URL, на который будут отправляться уведомления о транзакции. |
Параметры ответа
| Параметр | Тип | Описание |
|---|---|---|
| id | string | Уникальный номер инвойса. |
| pay | number | Итоговая сумма к оплате. |
| get | boolean | Сумма, которая будет зачислена на ваш баланс. |
| address | string | Номер карты для оплаты. |
| expiry | number | Дедлайн для оплаты инвойса, unix-время в миллисекундах. |
Создать покупку
import requests
import json
api_key = 'your_api_key'
headers = {
'x-cryptoswap-api': api_key,
'Content-Type': 'application/json'
}
base_url = 'https://<endpoint>/api'
data = {
'amount': 0.001,
'coin': 'btc',
'address': 'bc1qz7cx50f8wq7uhtpave9a4ptjvs9jghdhr5k5rj',
'callback_url': 'https://example.com',
'amount_denominator': 'btc'
}
response = requests.post(f'{base_url}/buy', headers=headers, data=json.dumps(data))
print(response.json())
const axios = require('axios');
const api_key = 'your_api_key';
const headers = {
'x-cryptoswap-api': api_key,
'Content-Type': 'application/json'
};
const base_url = 'https://<endpoint>/api';
const data = {
amount: 0.001,
coin: 'btc',
address: 'bc1qz7cx50f8wq7uhtpave9a4ptjvs9jghdhr5k5rj',
callback_url: 'https://example.com',
amount_denominator: 'btc'
};
axios.post(`${base_url}/buy`, data, { headers: headers })
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
Этот эндпойнт создает транзакцию для приема рублей на карту.
HTTP Request
POST https://<endpoint>/api/invoice
Параметры запроса
| Параметр | Тип | Дефолт | Описание |
|---|---|---|---|
| amount | number | Сумма, которую хотите купить. | |
| coin | string | Монета для покупки, может быть 'btc', 'ltc' или 'xmr'. | |
| address | string | Адрес получателя. | |
| callback_url | string | none | URL, на который будут отправляться уведомления о транзакции. |
| amount_denominator | string | coin | Деноминатор суммы, должен быть либо 'rub', либо совпадать с монетой. |
Параметры ответа
| Параметр | Тип | Описание |
|---|---|---|
| id | string | Уникальный номер инвойса. |
| pay | number | Итоговая сумма к оплате. |
| get | boolean | Сумма, которая будет зачислена на ваш баланс. |
| address | string | Номер карты для оплаты. |
| expiry | number | Дедлайн для оплаты инвойса, unix-время в миллисекундах. |
Получить список транзакций
import requests
api_key = 'your_api_key'
headers = {
'x-cryptoswap-api': api_key,
}
response = requests.get('https://<endpoint>/api/transactions', headers=headers)
print(response.json())
const axios = require('axios');
const api_key = 'your_api_key';
const headers = {
'x-cryptoswap-api': api_key,
};
axios.get('https://<endpoint>/api/transactions', { headers: headers })
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
Этот эндпойнт возвращает список всех транзакций.
HTTP Request
GET https://<endpoint>/api/transactions
Параметры запроса
| Параметр | Тип | Дефолт | Описание |
|---|---|---|---|
| page | number | 1 | Номер страницы |
| type | number | Тип транзакции (1 - покупка, 2 - продажа) |
Параметры ответа
| Параметр | Тип | Описание |
|---|---|---|
| transactions | array | Список транзакций |
Получить информацию о транзакции
import requests
api_key = 'your_api_key'
headers = {
'x-cryptoswap-api': api_key,
}
response = requests.get('https://<endpoint>/api/transactions/{id}', headers=headers)
print(response.json())
const axios = require('axios');
const api_key = 'your_api_key';
const headers = {
'x-cryptoswap-api': api_key,
};
axios.get('https://<endpoint>/api/transactions/{id}', { headers: headers })
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
Этот эндпойнт возвращает информацию о конкретной транзакции.
HTTP Request
GET https://<endpoint>/api/transactions/{id}
Параметры запроса
| Параметр | Тип | Описание |
|---|---|---|
| id | string | ID транзакции |
Параметры ответа
| Параметр | Тип | Описание |
|---|---|---|
| transaction | object | Информация о транзакции |
Объект transaction
| Параметр | Тип | Описание |
|---|---|---|
| id | string | Номер заявки |
| currency | string | Деноминатор суммы к зачислению |
| status | number | Статус заявки. 0 - ожидает оплаты, 1 - оплата получена, 2 - операция завершена, 3 - оплата просрочена, 4/5 - отмена |
| callback_url | string | Webhook URL |
| created_at | number | Время создания заявки, unix-штамп в миллисекундах |
| expires_at | number | Время экспирации заявки, unix-штамп в миллисекундах |
| amount_pay | number | Сумма к оплате |
| amount_receive | number | Сумма к зачислению |
| address | string | Адрес для зачисления |
Отменить транзакцию
import requests
api_key = 'your_api_key'
headers = {
'x-cryptoswap-api': api_key,
}
response = requests.delete('https://<endpoint>/api/transactions/{id}', headers=headers)
print(response.json())
const axios = require('axios');
const api_key = 'your_api_key';
const headers = {
'x-cryptoswap-api': api_key,
};
axios.delete('https://<endpoint>/api/transactions/{id}', { headers: headers })
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
Этот эндпойнт отменяет транзакцию.
HTTP Request
DELETE https://<endpoint>/api/transactions/{id}
Параметры запроса
| Параметр | Тип | Описание |
|---|---|---|
| id | string | ID транзакции |
Параметры ответа
| Параметр | Тип | Описание |
|---|---|---|
| message | string | Сообщение об успешной отмене транзакции |
Ошибки
| Код | Значение |
|---|---|
| 400 | Bad Request -- Неправильный запрос. |
| 401 | Unauthorized -- Ошибка авторизации. |
| 403 | Forbidden -- Ошибка авторизации. |
| 404 | Not Found -- Запрашиваемый ресурс не найден. |
| 429 | Too Many Requests -- Превышено допустимое число запросов. |
| 500 | Internal Server Error -- Технические работы. |