API

Введение
CLORE.AI api может использоваться для автоматизации развертывания ваших рабочих нагрузок на CLORE.AI
Сначала вам нужно получить ключ API

Ответы API
Ответы возвращаются в формате JSON, могут иметь разные поля
Всегда возвращаемое поле — code, указывающее статус
поле code
0
НОРМАЛЬНО
1
ОШИБКА БАЗЫ ДАННЫХ
2
НЕКОРРЕКТНЫЕ ВХОДНЫЕ ДАННЫЕ
3
НЕКОРРЕКТНЫЙ API ТОКЕН
4
НЕКОРРЕКТНАЯ КОНЕЧНАЯ ТОЧКА
5
ПРЕВЫШЕН ЛИМИТ 1 запрос/секунду
6
Ошибка указана в ошибка поле
Конечные точки
1. кошельки
кошелькиО сервисе
Возвращает кошельки и балансы
Заголовки
auth
строка
Да
API токен
Выходные данные
код
int
Код состояния
кошельки
[]string
Массив кошельков
Пример
Ввод:
Вывод:
2. my_servers
my_serversО сервисе
Возвращает ваши серверы, которые вы предоставляете на clore.ai рынок
Заголовки
auth
строка
Да
API токен
Выходные данные
код
int
Код состояния
лимит
int
Максимальное количество серверов, которыми вы можете владеть
серверы
[]string
Массив серверов
servers[x].name
строка
Имя сервера, выбранное пользователем
servers[x].visibility
строка
Видимость на рынке
servers[x].pricing
[]string
Цена/день по требованию
servers[x].online
bool
Сервер онлайн ли
servers[x].min_spot_pricing
[]string
Минимальная цена/день для аренды на спотовом рынке
servers[x].init_token
строка
Токен инициализации
servers[x].specs
[]string
Характеристики сервера
Пример
Ввод:
Вывод:
*USD ещё не реализовано
3. server_config
server_configО сервисе
Получить конфигурацию конкретного сервера
Заголовки
auth
строка
Да
API токен
Content-type
строка
Да
Должен быть application/json
Тело
server_name
строка
Да
Имя сервера
Выходные данные
код
int
Код состояния
creation_completed
bool
Создание сервера завершено ли
config
[]string
Конфигурация сервера
config.name
строка
Имя сервера, выбранное пользователем
config.visibility
строка
Видимость на рынке
config.pricing
[]string
Цена/день по требованию
config.spot_pricing
[]string
Минимальная цена/день для аренды на спотовом рынке
config.mrl
int
Максимальная длительность аренды в часах
config.online
bool
Сервер онлайн ли
config.id
int
Уникальный ID сервера
config.rental_status
int
0 - не арендован | 1 - Арендован на спотовом рынке | 2 - Арендован по требованию
config.specs
[]string
Характеристики сервера
config.background_job
[]string
Фоновая задача, когда не арендован
Пример
Ввод:
Вывод:
*USD ещё не реализовано
4. рынок
рынокО сервисе
Получить маркетплейс
Заголовки
auth
строка
Да
API токен
Выходные данные
код
int
Код состояния
my_servers
[]string
Массив идентификаторов серверов, которые вы предоставляете на clore.ai (нельзя арендовать)
серверы
[]string
Массив публичных серверов на маркетплейсе
servers[x].id
int
Уникальный ID сервера
servers[x].owner
int
Уникальный ID владельца
servers[x].mrl
int
Максимальная длительность аренды в часах
servers[x].price.on_demand
[]string
Цена по требованию в день
servers[x].spot
[]string
Минимальная цена на спотовом рынке в день
servers[x].rented
bool
Сервер арендован по требованию ли
servers[x].specs
[]string
Характеристики сервера
Пример
Получить маркетплейс
Ввод:
Вывод:
5. my_orders
my_ordersО сервисе
Получить ваши заказы
Заголовки
auth
строка
Да
API токен
Строка запроса
return_completed
bool
Нет
Возвращать завершённые (истёкшие) заказы
Выходные данные
код
int
Код состояния
лимит
int
Максимальное количество активных заказов
заказы
[]string
Массив заказов
orders[x].id
int
Уникальный ID заказа
orders[x].price
float
Цена заказа (стоимость) в день
orders[x].mrl
int
Максимальная длина аренды заказа в секундах
orders[x].image
строка
Используемый docker образ
orders[x].currency
строка
Валюта, используемая для расчётов
orders[x].spend
float
Потраченные деньги на заказ
orders[x].ct
int
Время создания (UNIX время)
orders[x].p
int
В настоящее время используемый кластер прокси
orders[x].specs
[]string
Характеристики сервера
orders[x].si
int
Уникальный ID сервера
orders[x].pub_cluster
[]string
Публичные конечные точки с проброшенными портами
orders[x].tcp_ports
[]string
Проброс TCP портов
orders[x].http_port
строка
Порт контейнера, проброшенный через HTTPS прокси
orders[x].spot
bool
Подтверждение того, что это спотовый заказ
orders[x].expired
bool
Подтверждение того, что заказ истёк
Ввод:
Вывод:
6. spot_marketplace
spot_marketplaceО сервисе
Получить спотовый маркетплейс для конкретного сервера
Заголовки
auth
строка
Да
API токен
Строка запроса
market
int
Да
Уникальный ID сервера
Выходные данные
код
int
Код состояния
существует
bool
Проверка того, что рынок существует
market
объект
Рынок
market.offers
массив
Предложения аренды для сервера
market.offers[x].offer_id
int
Уникальный ID предложения
market.offers[x].bid
float
Предлагаемая цена в день
market.offers[x].active
bool
Это предложение в настоящее время используется
market.offers[x].my
bool
Это предложение принадлежит мне
market.server
объект
Информация о сервере
market.server.min_pricing
объект
Минимальная цена предложения в день
market.server.mrl
int
Максимальная длительность аренды в секундах
market.server.visibility
строка
Вы можете создавать предложения только когда видимость — public
market.server.online
bool
Сервер онлайн
Ввод:
Вывод:
7. set_server_settings
set_server_settingsО сервисе
Настроить параметры сервера, который вы предоставляете на clore.ai рынок
Заголовки
auth
строка
Да
API токен
Content-type
строка
Да
Должен быть application/json
Тело
имя
строка
Да
Имя сервера, выбранное пользователем
доступность
bool
Да
Можно ли арендовать сервер
mrl
int
Да
Максимальная длительность аренды сервера
on_demand
float
Да
Цена в день за ваш сервер по требованию
spot
float
Да
Минимальная цена в день для SPOT предложения
Выходные данные
код
int
Код состояния
Пример
Давайте создадим доказательство отправки для транзакции, отправленной из текущего кошелька.
Ввод:
Вывод:
8. set_spot_price
set_spot_priceО сервисе
Установить цену в день для вашего SPOT предложения
Заголовки
auth
строка
Да
API токен
Content-type
строка
Да
Должен быть application/json
Тело
order_id
int
Да
Уникальный ID предложения
desired_price
float
Да
Ваша предлагаемая цена в день
Пример
Давайте попробуем обновить цену на спотовом рынке
Ввод 1 (Снижение шага было слишком большим):
Возможный вывод 1 (Снижение шага было слишком большим): Вы можете снизить цену спотового предложения максимум на 0.00000100 ₿
код
int
Код состояния
ошибка
строка
Поле описания ошибки
max_step
float
Наименьшее возможное значение, до которого вы сейчас можете понизить цену
Ввод 2 (Допустимый шаг снижения цены):
Возможный вывод 2 (Допустимый шаг снижения цены):
Ввод 3 (Снизить цену ещё больше после отправки Ввода 2):
Возможный вывод 3 (Снизить цену ещё больше после отправки Ввода 2): Вы можете снижать спотовую цену раз в 600 секунд
код
int
Код состояния
ошибка
строка
Поле описания ошибки
time_to_lowering
float
Оставшееся время (сек) до следующей возможности снизить цену
9. cancel_order
cancel_orderО сервисе
Установить цену в день для вашего SPOT предложения
Заголовки
auth
строка
Да
API токен
Content-type
строка
Да
Должен быть application/json
Тело
id
int
Да
Уникальный ID заказа/предложения
issue
строка
Нет
Если вы столкнулись с проблемами с сервером, вы можете сообщить их команде, максимум 2048 символов clore.ai команде, максимум 2048 символов
Выходные данные
код
int
Код состояния
Пример
Отменить заказ/предложение
Ввод: В этом примере мы сообщаем о проблемах с GPU #1, если у вас нет проблем — не включайте поле issue. Вы можете написать любое сообщение в поле text, и мы расследуем его
Вывод:
10. create_order
create_orderО сервисе
Вы можете создать спотовое предложение или заказ по требованию с этой конечной точкой Эта конечная точка также допускает только 1 запрос за 5 секунд
Заголовки
auth
строка
Да
API токен
Content-type
строка
Да
Должен быть application/json
Тело
currency
строка
Да
Название валюты
image
строка
Да
Допустимый образ из dockerhub
renting_server
int
Да
ID сервера, который вы хотите арендовать
type
строка
Да
по требованию ИЛИ spot
spotprice
float
Зависит
Предлагаемая цена в день на спотовом рынке, требуется при создании спотового заказа
ports
объект
Нет
Конфигурация проброса портов, максимум 5 записей
env
объект
Нет
Переменные окружения, ограничены 12000 символами в сумме при преобразовании в строку. Имя переменной - максимум 128 символов Значение переменной - максимум 1536 символов
jupyter_token
строка
Нет
Токен Jupyter для образов, содержащих блокноты jupyter, максимум 32 символа *
ssh_key
строка
Нет
SSH ключ для образов с SSH, максимум 3072 символа *
ssh_password
строка
Нет
Пароль SSH для образов с SSH, максимум 32 символа *
command
строка
Нет
Команда будет выполнена на сервере после создания заказа
required_price
float
Нет
Укажите цену, по которой вы хотите запустить заказ; если владелец машины изменит цену, заказ не запустится (только по требованию)
autossh_entrypoint
bool
Нет
Использовать entrypoint clore.ai, который автоматически разворачивает SSH сервер и настраиваемый /root/onstart.sh скрипт
* В поля, отмеченные звездочкой, вы можете вводить только символы из этого набора регулярного выражения /^[a-zA-Z0-9\s-=.@+/]+$/
Выходные данные
код
int
Код состояния
Пример
Ввод 1 (Создать спотовое предложение):
Вывод 1 (Создание спотового предложения):
Ввод 2 (Создать заказ по требованию):
Вывод 2 (Создать заказ по требованию):
Последнее обновление
Это было полезно?