> This page is for Plate-forme, version Hérité.
> For other versions, use one of these documentation indexes:
> - V4 (default): https://next.developer.frame.io/platform/v4/llms.txt
> - V4 expérimental: https://next.developer.frame.io/platform/v4-experimental/llms.txt
> - Hérité: https://next.developer.frame.io/platform/v2/llms.txt

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://next.developer.frame.io/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://next.developer.frame.io/_mcp/server.

# Concepts clés

## Structure de l'API




L'API Frame.io prend en charge des concepts courants comme la limitation de débit, la pagination pour les collections de ressources, le contrôle de version et les erreurs. Cette section décrit les spécificités de chacun.




### Organisation et style

L'API est organisée autour de principes [REST](https://restfulapi.net/) courants. Toutes les requêtes doivent être effectuées via SSL. Tous les corps de requête et de réponse, y compris les erreurs, sont encodés en JSON.

Sauf indication contraire, les méthodes d'API respectent ce qui suit :

* Les propriétés sans valeur utiliseront `null` au lieu d'être non définies * Le « Snake Case » est utilisé pour les noms d'attribut (par ex. `first_name`) * Les dates et heures sont rendues au format ISO-8601 (par ex. `2016-02-03T16:38:46.985Z`)

### Conventions de chemin d'accès




Comptes &gt; Équipes &gt; Projets &gt; Ressources &gt; Commentaires





En général, les chemins d'accès de ressources dans l'API Frame.io suivront le modèle de hiérarchie ci-dessus, jusqu'à un niveau parent. Quand cela est intuitif, l'API prend en charge les chemins d'accès de ressources autonomes pour les objets qui sont strictement détenus, logiquement parlant.





Par exemple, l'API Frame.io prend en charge les deux chemins d'accès suivants :

* `GET /accounts/:id/teams` -- renvoie toutes les équipes d'un compte. * `GET /teams` -- renvoie toutes les équipes de l'utilisateur appelant. * `GET /teams/:id` -- renvoie les détails d'une équipe spécifique.

Autre exemple : les commentaires n'ont pas beaucoup de sens en dehors de leur contexte de ressource, donc les méthodes de collection et de création de commentaires se trouvent dans la portée de la ressource. Cependant, lors de la mise à jour ou de la suppression d'un commentaire, le contexte de la ressource n'est pas aussi significatif et est omis du chemin d'accès de la ressource :

* `GET /assets/:id/comments` * `POST /assets/:id/comments` * `PUT /comments/:id` * `DELETE /comments/:id`

## Portées

Que vous récupériez un jeton via OAuth2.0 ou directement via le [Portail développeur](/), tous les jetons d'API doivent être associés à une liste explicite de « portées », qui font référence à une combinaison d'une ressource (par ex. `Ressource`) et d'une action (par ex. `créer`), et sont exprimées avec la notation par points. Par exemple, un jeton avec la portée `asset.create` pourrait créer de nouvelles ressources.

Si vous utilisez une implémentation avec un jeton de développeur, alors les portées sont définies et attribuées au jeton d'accès lui-même. Si vous utilisez une application OAuth, les portées sont définies pour l'application, et lorsque les utilisateurs interagissent avec l'application pour la première fois, ils acceptent d'octroyer à l'application l'autorisation d'agir avec les portées demandées.





Les portées disponibles pour les jetons de développeur et les applications incluent les éléments suivants (veuillez noter que certaines portées ne sont pas disponibles pour tout le monde, et elles sont signalées en cas de problème).




| Catégorie de portée | Description |
| ---------- | ---------- |
| Comptes, utilisateurs et équipes | Obtenez des informations sur les comptes et équipes auxquels vous avez accès. Si l'utilisateur authentifié est un administrateur, etc., il peut avoir accès aux informations sur des utilisateurs et équipes supplémentaires dans son compte. <br /><br />**Remarque** : Pour mettre à jour les équipes (par exemple, gérer les webhooks), vous devez avoir un rôle de gestionnaire d'équipe ou d'administrateur de compte. |
| Projets et ressources | Obtenez des informations de base sur les projets, vérifiez ou mettez à jour l'abonnement de l'utilisateur, créez ou mettez à jour les ressources |
| Commentaires | Obtenez, créez ou supprimez des commentaires sur une ressource, ou créez des réponses à un commentaire spécifique.<br /><br />**Remarque :** Les demandes de mise à jour ou de suppression de commentaires doivent être effectuées par le créateur du commentaire. |
| Liens de révision | Créez ou gérez les paramètres des liens de révision.<br /><br />**Remarque :** Les liens de révision sont une fonctionnalité principale de Frame.io pour collecter les ressources et les envoyer pour commentaires via une seule URL sans nécessiter d'accès explicite à l'équipe ou au projet. |
| Webhooks | Les webhooks fournissent un moyen de tirer profit des événements qui se produisent à l'intérieur de Frame.io dans les notifications qui peuvent être envoyées aux systèmes externes pour le traitement, le rappel d'API et, en fin de compte, l'automatisation de workflow. |
| Journaux d'audit | Frame.io expose les journaux pour la grande majorité des activités effectuées dans ses applications. Cela inclut à la fois les CRUD de base sur les ressources principales et certaines abstractions spéciales (par exemple `AssetVersioned`). Vous devez être un administrateur pour accéder aux journaux. |
| Présentations |




## Pagination




Les méthodes API qui renvoient une collection de résultats sont toujours paginées. Toutes les méthodes qui attendent des résultats paginés répondront aux paramètres de requête suivants et renverront les attributs d'en-tête suivants :




| Description | Paramètre de requête | Attribut d'en-tête |
| ---------- | ---------- | ---------- |
| Taille de page | `page_size` | `per-page` |
| Numéro de page | `page` | `page-number` |
| Nombre de pages | N/D | `total-pages` |
| Nombre total | N/D | `total` |
De plus, les résultats paginés incluront un en-tête de réponse `Link` ([voir RFC-5988](https://tools.ietf.org/html/rfc5988)) avec les informations suivantes :
* `next` -- l'URL correspondante est le lien vers la page suivante.
* `prev` -- l'URL correspondante est le lien vers la page précédente.
* `last` -- l'URL correspondante est le lien vers la dernière page.

**Remarque :** lorsque ni les liens `next` ni `prev` ne sont présents, cela indique que la première page renvoyée est la seule page.