Projet
Le projet est ce à quoi votre clé est rattachée. Cette ressource le lit et modifie ses réglages : son identité, l'entreprise et l'adresse utilisées sur les factures, et les couleurs avec lesquelles son icône est dessinée. Il n'existe aucun appel permettant de créer ou de supprimer un projet par l'API.
Les appels
| Méthode | Chemin | Droit requis |
|---|---|---|
| GET | /v1/project | project:read |
| GET | /v1/project/<project_id> | project:read |
| PATCH | /v1/project | project:write |
<project_id> doit être votre propre projet, préfixé proj_. Nommer tout autre projet donne 403 et The API key doesn't have permissions to perform the request. : cette forme de chemin ne sert donc qu'à affirmer quel projet vous attendiez.
L'objet projet
| Champ | Type | Description |
|---|---|---|
id | chaîne | L'identifiant du projet, préfixé proj_. |
object | chaîne | Toujours project. |
name | chaîne | Le nom du projet. |
description | chaîne | L'objet du projet. |
country | chaîne | Le code pays du projet. |
default_locale | chaîne | La langue par défaut, sous forme de code ISO 639-3 à trois lettres. |
creator_id | chaîne | Le consommateur qui a créé le projet. |
owner_id | chaîne | Le consommateur qui en est propriétaire. |
is_verified | booléen | Indique si le projet a été vérifié. |
cdn | objet | Le périmètre de diffusion de fichiers du projet, sous public_id et public_key. |
company | objet | Les informations d'entreprise. Voir ci-dessous. |
address | objet | L'adresse postale. Voir ci-dessous. |
appearance | objet | Les couleurs de l'icône, sous icon_bg_color et icon_text_color. |
team_total | entier | Le nombre de membres du projet. |
status | chaîne | Le statut du projet. |
verified_at | entier | Le moment où il a été vérifié, ou null. |
suspended_at | entier | Le moment où il a été suspendu, ou null. |
suspended_reason | chaîne | La raison de sa suspension, ou une chaîne vide. |
deleted_at | entier | Le moment où il a été supprimé, ou null. |
created_at | entier | Date de création, en secondes Unix. |
updated_at | entier | Dernière modification, en secondes Unix. |
company contient name, number, legal_form, vat_number et country. address contient line_1, line_2, postal_code, city, state et country.
Consulter le projet
curl https://api.think.ultineo.com/v1/project \
-H "Authorization: Bearer sk-project-YOUR_KEY" {
"code": 200,
"title": "OK",
"response": {
"id": "proj_3f6c1d90ab77e2415c08",
"object": "project",
"name": "Acme",
"description": "Acme's reasoning workspace",
"country": "us",
"default_locale": "eng",
"creator_id": "cons_8e2b45a10c9df7631b4a",
"owner_id": "cons_8e2b45a10c9df7631b4a",
"is_verified": true,
"cdn": {
"public_id": "cdnu_6b2e91f47a05c3d8e142",
"public_key": "cdnk_a37f0b81de692c45f70d"
},
"company": {
"name": "Acme Inc.",
"number": "552100554",
"legal_form": "Inc.",
"vat_number": "US552100554",
"country": "us"
},
"address": {
"line_1": "18 Market Street",
"line_2": "",
"postal_code": "94105",
"city": "San Francisco",
"state": "CA",
"country": "us"
},
"appearance": {
"icon_bg_color": "#4f46e5",
"icon_text_color": "#ffffff"
},
"team_total": 4,
"status": "activated",
"verified_at": 1751414400,
"suspended_at": null,
"suspended_reason": "",
"deleted_at": null,
"created_at": 1751328000,
"updated_at": 1754205600
}
} Mettre à jour le projet
PATCH /v1/project accepte trois champs racine et trois objets imbriqués. N'envoyez que ce que vous souhaitez modifier.
| Paramètre | Type | Description |
|---|---|---|
name | chaîne | Un nouveau nom. |
description | chaîne | Une nouvelle description. |
default_locale | chaîne | Un code de langue ISO 639-3 à trois lettres, en minuscules. |
company | objet | L'un quelconque de name, number, legal_form, vat_number, country. |
address | objet | L'un quelconque de line_1, line_2, postal_code, city, state, country. |
appearance | objet | L'un ou l'autre, ou les deux, de icon_bg_color, icon_text_color. |
curl -X PATCH https://api.think.ultineo.com/v1/project \
-H "Authorization: Bearer sk-project-YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"description": "Acme support automation",
"address": { "line_1": "20 Market Street", "postal_code": "94105" }
}' La réponse est l'objet projet complet, relu après la modification, exactement tel que le renvoie le GET. Vérifiez les champs que vous avez envoyés plutôt que de les supposer appliqués.
| Code | Message | Cause |
|---|---|---|
| 400 | No updatable field provided. | Le corps ne contenait aucun des champs ci-dessus. |
| 422 | default_locale must be a three-letter ISO-639-3 code. | Le code ne comportait pas trois lettres minuscules. |
| 422 | <name> must be an object. | company, address ou appearance a été envoyé sous une forme autre qu'un objet. |
Important — Un objet imbriqué envoyé sous forme de chaîne ou de tableau est rejeté plutôt qu'ignoré : un contenu mal formé ne peut donc jamais ressembler à une mise à jour réussie. Envoyez
{"company": {"name": "Acme Inc."}}, jamais{"company": "Acme Inc."}.
Chaque mise à jour est consignée dans le journal d'activité du projet, en nommant les sections modifiées. Voir Événements.