Données personnalisées
Equinix Metal™ propose un service de données personnalisé, afin que vous puissiez définir et consommer des données sur vos serveurs et votre infrastructure via les métadonnées du serveur et l'API Equinix Metal .
Les données personnalisées peuvent être considérées comme une fonctionnalité de balise beaucoup plus expressive. Elles permettent de gérer des chaînes, des tableaux, des cartes, des cartes de tableaux de nombres, des booléens, etc. au format JSON. Les champs et les propriétés des objets sont entièrement définis par l'utilisateur et visent à offrir des options d'automatisation supplémentaires. Les objets JSON utilisés sur cette page ne sont que de simples exemples.
Approvisionnement avec des données personnalisées
- Console
- API
Pour ajouter des données personnalisées à votre serveur lors de sa mise en service, développez la section Paramètres optionnels. Sélectionnez Données personnalisées. Entrez vos données au format JSON dans le champ prévu à cet effet.

Lors de la configuration de votre serveur dans l'API, définissez votre objet de données personnalisé dans le corps de la requête POST au point de terminaison /projects/{id}/devices.
curl -X POST \
-H "Content-Type: application/json" \
-H "X-Auth-Token: <API_TOKEN>" \
"https://api.equinix.com/metal/v1/projects/{id}/devices" \
-d '{
"metro": "<metro_code>",
"plan": "<server_type>",
"operating_system": "<os_code>",
"customdata": {
"data": {
"text": "testing device",
"frozen": false,
"oneOf": 3
}
}
}'
Accéder aux données personnalisées
- Console
- Server Metadata
- API
Une fois votre serveur configuré, vous pouvez accéder à ses données personnalisées à partir de l'onglet Paramètres du serveur.

Faites défiler jusqu'à la section Données personnalisées.

Une fois vos données personnalisées définies sur votre serveur, vous pouvez y accéder localement sur le serveur à partir du point de terminaison des métadonnées du serveur.
curl https://metadata.platformequinix.com/metadata | jq '.customdata'
Vous pouvez accéder aux données personnalisées de l'extérieur du serveur à partir du point de terminaison API devices/{id}/customdata.
curl -X GET -H 'X-Auth-Token: <API_TOKEN>' https://api.equinix.com/metal/v1/devices/{id}/customdata
Les données personnalisées sont accessibles tant que le serveur est provisionné dans votre projet.
Ajout ou modification de données personnalisées
- Console
- API
Pour mettre à jour les données personnalisées de votre serveur, ouvrez l'onglet Paramètres du serveur.

Faites défiler jusqu'à la section Données personnalisées et entrez vos nouvelles données au format JSON dans le champ, puis cliquez sur Enregistrer.

Pour mettre à jour les données personnalisées de votre serveur, envoyez un PUT au point de terminaison /devices/{id}, en définissant l'objet de données personnalisées dans le corps de la requête.
curl -X PUT \
-H "Content-Type: application/json" \
-H "X-Auth-Token: $API_TOKEN" \
"https://api.equinix.com/metal/v1/devices/{id}" \
-d '{
"customdata": {
"data": {
"text": "Click Here"
}
}
}'
Données personnalisées pour d'autres ressources
Outre les serveurs, d'autres ressources Equinix Metal prennent en charge les données personnalisées via l'API. Bien que non disponibles dans les métadonnées, ces points de terminaison peuvent être utilisés pour le stockage d'état distant spécifique à la ressource offrant la propriété "customdata".
Utilisateurs
Vous pouvez ajouter des données personnalisées à n'importe quel utilisateur déjà créé avec le point de terminaison /users/{id}.
curl -X PUT \
-H "Content-Type: application/json" \
-H "X-Auth-Token: <API_TOKEN>" \
"https://api.equinix.com/metal/v1/users/{id}" \
-d '{
"customdata": {
"data": {
"text": "bot-user-1",
"auto-rotate": true
}
}
}'
Vous pouvez ensuite y accéder depuis le point de terminaison /users/{id}/customdata.
curl -X GET -H 'X-Auth-Token: <API_TOKEN>' https://api.equinix.com/metal/v1/users/{id}/customdata
Projets
Vous pouvez créer un projet avec des données personnalisées en l'incluant dans le corps de votre POST au point de terminaison /projects.
curl -X POST \
-H "Content-Type: application/json" \
-H "X-Auth-Token: <API_TOKEN>" \
"https://api.equinix.com/metal/v1/projects/" \
-d '{
"customdata": {
"data": {
"text": "dev-env-05",
"do-not-disturb": false
}
},
"name": "string",
"organization_id": "<uuid>",
"payment_method_id": "<uuid>"
}'
Vous pouvez mettre à jour les données personnalisées d'un projet en utilisant le champ "customdata" dans le corps d'une requête PUT au point de terminaison /projects/{id}.
curl -X PUT \
-H "Content-Type: application/json" \
-H "X-Auth-Token: <API_TOKEN>" \
"https://api.equinix.com/metal/v1/projects/{id}" \
-d '{
"customdata": {
"data": {
"text": "dev-env-05",
"do-not-disturb": true
}
}
}'
Finalement, vous pouvez récupérer les données personnalisées d'un projet à partir du point de terminaison /projects/{id}/customdata.
curl -X GET -H 'X-Auth-Token: <API_TOKEN>' https://api.equinix.com/metal/v1/projects/{id}/customdata
Organisations
Vous pouvez ajouter des données personnalisées à n'importe quelle organisation en utilisant le champ "customdata" dans le corps d'une requête PUT au point de terminaison /organizations/{id}.
curl -X PUT \
-H "Content-Type: application/json" \
-H "X-Auth-Token: <API_TOKEN>" \
"https://api.equinix.com/metal/v1/organizations/{id}" \
-d '{
"customdata": {
"data": {
"text": "cluster-03",
"do-not-disturb": true
},
"owners": "internal"
}
}'
Vous pouvez récupérer les données personnalisées d'une organisation à partir du point de terminaison /organizations/{id}/customdata.
curl -X GET -H 'X-Auth-Token: <API_TOKEN>' https://api.equinix.com/metal/v1/organizations/{id}/customdata
Adresses IP
Vous pouvez ajouter des données personnalisées à une adresse IP lorsqu'elle est attribuée à un serveur en incluant le champ « customdata » dans le corps de votre requête POST au point de terminaison /devices/{id}/ips.
curl -X POST \
-H "Content-Type: application/json" \
-H "X-Auth-Token: <API_TOKEN>" \
"https://api.equinix.com/metal/v1/devices/{id}/ips" \
-d '{
"address": "198.51.100.3/31",
"customdata": {
"data": {
"text": "connect-me",
"can_float": false
},
"group": "for_vms"
}
}'
Vous pouvez mettre à jour les données personnalisées d'une adresse IP en utilisant le champ "customdata" dans le corps d'une requête PATCH au point de terminaison /ips/{id}.
curl -X PATCH \
-H "Content-Type: application/json" \
-H "X-Auth-Token: <API_TOKEN>" \
"https://api.equinix.com/metal/v1/ips/{id}" \
-d '{
"address": "198.51.100.3/31",
"customdata": {
"data": {
"text": "connect-me",
"can_float": true
},
"group": "static"
}
}'
Vous pouvez récupérer les données personnalisées d'une adresse IP à partir du point de terminaison /ips/{id}/customdata.
curl -X GET -H 'X-Auth-Token: <API_TOKEN>' https://api.equinix.com/metal/v1/ips/{id}/customdata