API

Introduction

CLORE.AIarrow-up-right l'API peut être utilisée pour automatiser les déploiements de vos charges de travail sur CLORE.AIarrow-up-right

Tout d'abord, vous devez obtenir une clé API alt text alt text


Réponses de l'API

Les réponses sont renvoyées au format JSON, peuvent avoir différents champs

Le champ toujours renvoyé est code, indiquant le statut

champ code

code
Description

0

NORMAL

1

ERREUR DE BASE DE DONNÉES

2

DONNÉES D'ENTRÉE INVALIDES

3

JETON API INVALIDE

4

POINT DE TERMINAISON INVALIDE

5

DÉPASSÉ la limite de 1 requête/seconde

6

Erreur spécifiée dans erreur champ


Points de terminaison

1. portefeuilles

À propos

Retourne les portefeuilles et les soldes

En-têtes

Champ
Type
Obligatoire
Description

auth

chaîne

Oui

Jeton API

Sortie

Champ
Type
Description

code

int

Code d'état

portefeuilles

[]string

Tableau de portefeuilles

Exemple

Entrée :

Sortie :

2. mes_serveurs

À propos

Retourne vos serveurs que vous fournissez à clore.aiarrow-up-right place de marché

En-têtes

Champ
Type
Obligatoire
Description

auth

chaîne

Oui

Jeton API

Sortie

Champ
Type
Description

code

int

Code d'état

limite

int

Nombre maximal de serveurs que vous pouvez posséder

serveurs

[]string

Tableau de serveurs

servers[x].name

chaîne

Nom du serveur sélectionné par l'utilisateur

servers[x].connected

chaîne

Le serveur a-t-il déjà été connecté à clore.aiarrow-up-right

servers[x].visibility

chaîne

Visibilité sur la place de marché

servers[x].pricing

[]string

Prix/jour à la demande

servers[x].online

booléen

Le serveur est-il en ligne

servers[x].min_spot_pricing

[]string

Prix minimal/jour pour la location sur le marché spot

servers[x].init_token

chaîne

Jeton d'initialisation

servers[x].specs

[]string

Spécifications du serveur

Exemple

Entrée :

Sortie :

*USD non implémenté pour le moment

3. configuration_serveur

À propos

Obtenir la configuration d'un serveur spécifique

En-têtes

Champ
Type
Obligatoire
Description

auth

chaîne

Oui

Jeton API

Type de contenu

chaîne

Oui

Doit être application/json

Corps

Champ
Type
Obligatoire
Description

server_name

chaîne

Oui

Nom du serveur

Sortie

Champ
Type
Description

code

int

Code d'état

creation_completed

booléen

La création du serveur est-elle terminée

config

[]string

Configuration du serveur

config.name

chaîne

Nom du serveur sélectionné par l'utilisateur

config.connected

booléen

Le serveur a-t-il déjà été connecté à clore.aiarrow-up-right

config.visibility

chaîne

Visibilité sur la place de marché

config.pricing

[]string

Prix/jour à la demande

config.spot_pricing

[]string

Prix minimal/jour pour la location sur le marché spot

config.mrl

int

Durée maximale de location en heures

config.online

booléen

Le serveur est-il en ligne

config.initialized

booléen

Le serveur a-t-il déjà été connecté à clore.aiarrow-up-right

config.id

int

ID unique du serveur

config.rental_status

int

0 - non loué | 1 - Loué sur le marché spot | 2 - Loué à la demande

config.specs

[]string

Spécifications du serveur

config.background_job

[]string

Tâche d'arrière-plan lorsque non loué

Exemple

Entrée :

Sortie :

*USD non implémenté pour le moment

4. place de marché

À propos

Obtenir la place de marché

En-têtes

Champ
Type
Obligatoire
Description

auth

chaîne

Oui

Jeton API

Sortie

Champ
Type
Description

code

int

Code d'état

mes_serveurs

[]string

Tableau d'IDs de serveurs que vous fournissez à clore.aiarrow-up-right (ne peut pas être loué)

serveurs

[]string

Tableau de serveurs publics sur la place de marché

servers[x].id

int

ID unique du serveur

servers[x].owner

int

ID unique du propriétaire

servers[x].mrl

int

Durée maximale de location en heures

servers[x].price.on_demand

[]string

Prix à la demande par jour

servers[x].spot

[]string

Prix minimal du marché spot par jour

servers[x].rented

booléen

Le serveur est-il loué à la demande

servers[x].specs

[]string

Spécifications du serveur

Exemple

Obtenir la place de marché

Entrée :

Sortie :

5. mes_commandes

À propos

Obtenir vos commandes

En-têtes

Champ
Type
Obligatoire
Description

auth

chaîne

Oui

Jeton API

Chaîne de requête

Champ
Type
Obligatoire
Description

return_completed

booléen

Non

Retourner les commandes terminées (expirées)

Sortie

Champ
Type
Description

code

int

Code d'état

limite

int

Nombre maximal de commandes actives

commandes

[]string

Tableau de commandes

orders[x].id

int

ID unique de la commande

orders[x].fee

float

Frais (%) payés à clore.aiarrow-up-right

orders[x].creation_fee

float

Frais de création payés à clore.aiarrow-up-right

orders[x].price

float

Prix de la commande (coût) par jour

orders[x].mrl

int

Durée maximale de location de la commande en secondes

orders[x].image

chaîne

Image Docker utilisée

orders[x].currency

chaîne

Devise utilisée pour la facturation

orders[x].spend

float

Argent dépensé sur la commande

orders[x].ct

int

Heure de création (temps UNIX)

orders[x].p

int

Cluster de proxy actuellement utilisé

orders[x].specs

[]string

Spécifications du serveur

orders[x].si

int

ID unique du serveur

orders[x].pub_cluster

[]string

Points de terminaison publics avec ports transférés

orders[x].tcp_ports

[]string

Transfert de port TCP

orders[x].http_port

chaîne

Port du conteneur transféré via le proxy HTTPS

orders[x].spot

booléen

Indication qu'il s'agit d'une commande spot

orders[x].expired

booléen

Indication que la commande a expiré

Entrée :

Sortie :

6. marché_spot

À propos

Obtenir le marché spot pour un serveur spécifique

En-têtes

Champ
Type
Obligatoire
Description

auth

chaîne

Oui

Jeton API

Chaîne de requête

Champ
Type
Obligatoire
Description

marché

int

Oui

ID unique du serveur

Sortie

Champ
Type
Description

code

int

Code d'état

existe

booléen

Vérification que le marché existe

marché

objet

Marché

market.offers

tableau

Offres de location pour le serveur

market.offers[x].offer_id

int

ID unique de l'offre

market.offers[x].bid

float

Prix proposé par jour

market.offers[x].active

booléen

Cette offre est actuellement utilisée

market.offers[x].my

booléen

Cette offre m'appartient

market.server

objet

Informations sur le serveur

market.server.min_pricing

objet

Prix d'offre minimal par jour

market.server.mrl

int

Durée maximale de location en secondes

market.server.visibility

chaîne

Vous ne pouvez créer des offres que lorsque la visibilité est publique

market.server.online

booléen

Le serveur est en ligne

Entrée :

Sortie :

7. definir_parametres_serveur

À propos

Configurer les paramètres du serveur que vous fournissez sur clore.aiarrow-up-right place de marché

En-têtes

Champ
Type
Obligatoire
Description

auth

chaîne

Oui

Jeton API

Type de contenu

chaîne

Oui

Doit être application/json

Corps

Champ
Type
Obligatoire
Description

nom

chaîne

Oui

Nom du serveur sélectionné par l'utilisateur

disponibilité

booléen

Oui

Le serveur peut-il être loué

mrl

int

Oui

Durée maximale de location du serveur

à_la_demande

float

Oui

Prix par jour pour votre serveur à la demande

spot

float

Oui

Prix minimum par jour pour une offre SPOT

Sortie

Champ
Type
Description

code

int

Code d'état

Exemple

Créons une preuve d'envoi pour une transaction envoyée depuis le portefeuille actuel.

Entrée :

Sortie :

8. definir_prix_spot

À propos

Définir le prix par jour de votre offre SPOT

En-têtes

Champ
Type
Obligatoire
Description

auth

chaîne

Oui

Jeton API

Type de contenu

chaîne

Oui

Doit être application/json

Corps

Champ
Type
Obligatoire
Description

order_id

int

Oui

ID unique de l'offre

desired_price

float

Oui

Le prix que vous proposez par jour

Exemple

Essayons de mettre à jour le prix du marché spot

Entrée 1 (La diminution était trop grande) :

Sortie possible 1 (La diminution était trop grande) : Vous pouvez baisser le prix de l'offre spot au maximum de 0.00000100 ₿

Champ
Type
Description

code

int

Code d'état

erreur

chaîne

Champ de description de l'erreur

max_step

float

Valeur la plus basse possible à laquelle vous pouvez actuellement baisser le prix

Entrée 2 (Diminution de prix valide) :

Sortie possible 2 (Diminution de prix valide) :

Entrée 3 (Baisser le prix encore plus après avoir envoyé l'Entrée 2) :

Sortie possible 3 (Baisser le prix encore plus après l'Entrée 2) : Vous pouvez baisser le prix spot une fois toutes les 600 secondes

Champ
Type
Description

code

int

Code d'état

erreur

chaîne

Champ de description de l'erreur

time_to_lowering

float

Temps restant (sec) avant la prochaine possibilité de baisser le prix

9. annuler_commande

À propos

Définir le prix par jour de votre offre SPOT

En-têtes

Champ
Type
Obligatoire
Description

auth

chaîne

Oui

Jeton API

Type de contenu

chaîne

Oui

Doit être application/json

Corps

Champ
Type
Obligatoire
Description

id

int

Oui

ID unique de la commande/offre

problème

chaîne

Non

Si vous avez rencontré des problèmes avec le serveur, vous pouvez les signaler à clore.aiarrow-up-right l'équipe, maximum 2048 caractères

Sortie

Champ
Type
Description

code

int

Code d'état

Exemple

Annuler commande/offre

Entrée : Dans cet exemple, nous signalons des problèmes avec le GPU n°1 ; si vous n'avez pas de problèmes, n'incluez pas le champ issue. Vous pouvez écrire n'importe quel message dans le champ texte et nous l'examinerons

Sortie :

10. creer_commande

À propos

Vous pouvez créer une offre spot ou une commande à la demande avec ce point de terminaison Ce point de terminaison autorise également seulement 1 requête toutes les 5 secondes

En-têtes

Champ
Type
Obligatoire
Description

auth

chaîne

Oui

Jeton API

Type de contenu

chaîne

Oui

Doit être application/json

Corps

Champ
Type
Obligatoire
Description

devise

chaîne

Oui

Nom de la devise

image

chaîne

Oui

Image valide depuis Docker Hub

serveur_a_louer

int

Oui

ID du serveur que vous souhaitez louer

type

chaîne

Oui

à la demande OU spot

prix_spot

float

Dépend

Prix offert par jour sur le marché spot, requis lors de la création d'une commande spot

ports

objet

Non

Configuration du transfert de ports, maximum 5 enregistrements

env

objet

Non

Variables d'environnement, limitées à 12000 caractères au total une fois sérialisées. Nom de la variable - 128 symboles max Valeur de la variable - 1536 symboles max

jupyter_token

chaîne

Non

Jeton Jupyter pour les images contenant des notebooks Jupyter, maximum 32 caractères *

ssh_key

chaîne

Non

Clé SSH pour les images avec SSH, maximum 3072 caractères *

ssh_password

chaîne

Non

Mot de passe SSH pour les images avec SSH, maximum 32 caractères *

commande

chaîne

Non

La commande sera exécutée sur le serveur après la création de la commande

required_price

float

Non

Spécifiez le prix pour lequel vous souhaitez démarrer la commande ; si le propriétaire de la machine change le prix, la commande ne démarrera pas (à la demande uniquement)

autossh_entrypoint

booléen

Non

Utilisez le point d'entrée clore.ai, qui déploie automatiquement le serveur SSH et personnalisé /root/onstart.sh script

* Pour les champs marqués d'un astérisque, vous ne pouvez entrer que des caractères appartenant à ce groupe regexp /^[a-zA-Z0-9\s-=.@+/]+$/

Sortie

Champ
Type
Description

code

int

Code d'état

Exemple

Entrée 1 (Créer une offre spot) :

Sortie 1 (Créer une offre spot) :

Entrée 2 (Créer une commande à la demande) :

Sortie 2 (Créer une commande à la demande) :

Mis à jour

Ce contenu vous a-t-il été utile ?