---
title: "Registre des formats d'entree et de sortie"
method: GET
path: "/formats"
tags: ["formats"]
---

# Registre des formats d'entree et de sortie

`GET /formats`

## Request

- Base URL: `https://jam-jam.org/api/v1`
- URL: `https://jam-jam.org/api/v1/formats`
- Auth: none required

Point d'entree recommande pour un agent : liste les paires
entree/sortie effectivement servies par CE serveur (`served: true`),
avec leurs limites (`maxBytes`, `maxPages`, `maxDurationS`) et le
palier requis (`tier: free|premium`, `requiresAccount`). Un format
present mais `served: false` existe dans le catalogue produit sans
etre encore branche sur ce serveur (`unavailable` liste ces cas avec
leur raison). Passe `input=<id>` pour ne recevoir que les sorties
possibles depuis ce format (`possibleOutputs`, avec `allowed` et,
pour un refus, `reason`). Reponse mise en cache 1 h : le catalogue ne
change pas a chaque appel.

## Query parameters

- `input` string
- `locale` string

## Response `200`

Formats

- Formats
  - `inputs` object[], required
    - `id` string, required
    - `container` string, required
    - `content` string, required
    - `extensions` string[], required
    - `mimes` string[], required
    - `availability` string, required
    - `requiresAccount` boolean, required
    - `maxBytes` integer
    - `maxPages` integer
    - `maxDurationS` integer
    - `served` boolean, required: Brique branchee sur ce serveur
  - `outputs` object[], required
    - `id` string, required
    - `produces` string, required
    - `requires` string[], required
    - `tier` 'free' | 'premium', required
    - `requiresAccount` boolean, required
    - `quotaUnit` string, required
    - `served` boolean, required
  - `unavailable` object[]
  - `input` string
  - `possibleOutputs` object[]
    - `id` string
    - `allowed` boolean
    - `reason` string

## Other responses

- `400`: Toute erreur de cette API, quel que soit le code HTTP, est un `application/problem+json` (RFC 9457) avec ce meme schema : `code` est la valeur stable a tester par un client (le `status` HTTP peut varier legerement selon le contexte, `code` non). `quota` est renseigne pour les erreurs liees au quota (`quota-exhausted`, `anon-quota-exhausted`, `client-quota`).

---

[API](https://skmtc.dev/jam-jam/apis/jam-jam-convert-api.md) · [All operations](https://skmtc.dev/jam-jam/apis/jam-jam-convert-api/llms.txt) · [OpenAPI document](https://skmtc.dev/jam-jam/apis/jam-jam-convert-api/revisions/64cd41a46e4e?raw)
