ULTINEO REASONING

Fichiers

Un fichier est une ressource stockée dans le périmètre de diffusion du projet — le plus souvent le logo d'une application. Cette ressource lit les fichiers du projet et leurs catégories, et les supprime. L'envoi de fichiers n'est pas exposé.

Les appels

MéthodeCheminDroit requis
GET/v1/file/categoryfile:read
GET/v1/filefile:read
GET/v1/file/<file_id>file:read
POST/v1/filefile:write
DELETE/v1/file/<file_id>file:write

<file_id> est accepté soit sous la forme de l'identifiant du fichier, préfixé file_, soit sous celle de l'identifiant de diffusion, préfixé cdnf_. category est un mot réservé à cette position et liste les catégories au lieu de lire un fichier.

L'objet fichier

ChampTypeDescription
idchaîneL'identifiant du fichier, préfixé file_.
objectchaîneToujours file.
namechaîneLe nom du fichier.
formatchaîneLe format du fichier.
mimechaîneLe type MIME.
widthentierLa largeur en pixels pour une image, ou null.
heightentierLa hauteur en pixels pour une image, ou null.
sizeentierLa taille en octets.
urlchaîneL'adresse de diffusion, directement utilisable.
categoryobjetLa catégorie, sous id et name.
statuschaîneLe statut du fichier.
created_atentierDate de création, en secondes Unix.
updated_atentierDernière modification, en secondes Unix.

Lister les catégories

GET /v1/file/category renvoie les catégories auxquelles un fichier peut appartenir, au plus 100. Elles sont les mêmes pour tous les projets.

curl
curl https://api.think.ultineo.com/v1/file/category \
  -H "Authorization: Bearer sk-project-YOUR_KEY"
json
{
  "code": 200,
  "title": "OK",
  "response": {
    "object": "list",
    "data": [
      {
        "id": "cdca_7a1c93e5b204df8617ca",
        "object": "file_category",
        "name": "Logos"
      }
    ],
    "total": 1
  }
}

Lister les fichiers

GET /v1/file renvoie les fichiers du projet, les plus récents d'abord, au plus

  1. Il n'accepte aucun paramètre de pagination ; total porte le décompte réel.
curl
curl https://api.think.ultineo.com/v1/file \
  -H "Authorization: Bearer sk-project-YOUR_KEY"
json
{
  "code": 200,
  "title": "OK",
  "response": {
    "object": "list",
    "data": [
      {
        "id": "file_d81e4afa6c8bf11fa881",
        "object": "file",
        "name": "support-triage-logo",
        "format": "png",
        "mime": "image/png",
        "width": 512,
        "height": 512,
        "size": 24817,
        "url": "https://cdn.example.com/d/cdnu_6b2e91f47a05c3d8e142/file_d81e4afa6c8bf11fa881.png",
        "category": { "id": "cdca_7a1c93e5b204df8617ca", "name": "Logos" },
        "status": "activated",
        "created_at": 1754205600,
        "updated_at": 1754205600
      }
    ],
    "total": 1
  }
}

Consulter un fichier

GET /v1/file/<file_id> renvoie un seul fichier de votre projet. Un fichier d'un autre projet donne 404 et File not found.

curl
curl https://api.think.ultineo.com/v1/file/file_d81e4afa6c8bf11fa881 \
  -H "Authorization: Bearer sk-project-YOUR_KEY"

L'envoi de fichiers

POST /v1/file existe mais n'envoie rien. Il répond 501 et explique que les fichiers doivent passer par la chaîne de diffusion, que l'API ne porte pas. Envoyez le fichier depuis l'espace de travail, puis relisez-le ici pour obtenir son identifiant et son adresse.

Note — C'est le seul appel de la référence qui répond 501. Il est publié afin qu'un client rencontre un refus clair plutôt qu'un 404 qui ressemblerait à une erreur de routage.

Supprimer un fichier

DELETE /v1/file/<file_id> retire le fichier. Il cesse d'apparaître dans le listage et cesse d'être diffusé.

curl
curl -X DELETE https://api.think.ultineo.com/v1/file/file_d81e4afa6c8bf11fa881 \
  -H "Authorization: Bearer sk-project-YOUR_KEY"
json
{
  "code": 200,
  "title": "OK",
  "response": {
    "deleted": true,
    "id": "file_d81e4afa6c8bf11fa881"
  }
}

Supprimer le logo d'une application publiée laisse l'application sans image, ce qui est l'une des conditions qu'exige la publication. Remplacez le logo avant de supprimer l'ancien. Les suppressions sont consignées — voir Événements.