> For the complete documentation index, see [llms.txt](https://www.center.daxium-air.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://www.center.daxium-air.com/api-reference/doc-api/publipostages.md).

# Publipostages

Générer des documents (éditique) à partir de modèles et de fiches

## GET /{app\_short}/reports/{report\_id}

> Récupérer un document généré

```json
{"openapi":"3.0.0","info":{"title":"Daxium Air API","version":"v1.3"},"tags":[{"name":"publipostages"}],"servers":[{"url":"https://api.daxium-air.com","description":"Production"}],"security":[{"oauth2":{}}],"components":{"securitySchemes":{"oauth2":{"type":"oauth2","description":"Envoyez l'access token sous la forme `Authorization: Bearer <token>`.","flows":{"password":{"tokenUrl":"/oauth/v2/token","refreshUrl":"/oauth/v2/token","scopes":{}},"authorizationCode":{"authorizationUrl":"/oauth/v2/auth","tokenUrl":"/oauth/v2/token","refreshUrl":"/oauth/v2/token","scopes":{}}}}},"parameters":{"XAcceptVersion":{"name":"X-Accept-Version","in":"header","description":"Version de l'API à appliquer. Vaut `v1.0` si omise ; une valeur inconnue bascule sur la version la plus récente.","required":false,"schema":{"type":"string","default":"v1.3","enum":["v1.0","v1.1","v1.2","v1.3"]}}},"schemas":{"Report":{"description":"Publipostage généré","properties":{"errorMessage":{"description":"Message d'erreur, le cas échéant","type":"string"},"id":{"description":"Identifiant du publipostage","type":"integer"},"original_document":{"description":"Fichier généré au format d'origine","properties":{"file_name":{"description":"Nom du fichier généré","type":"string"},"file_uuid":{"description":"UUID du fichier généré","type":"string"}},"type":"object"},"pdf_document":{"description":"Fichier généré au format PDF","properties":{"file_name":{"type":"string"},"file_uuid":{"type":"string"}},"type":"object"},"status":{"description":"Statut du publipostage (ex. finished, error)","type":"string"}},"type":"object"},"ErrorResponse":{"description":"Corps d'erreur standardisé retourné par le subscriber d'exceptions REST.","properties":{"code":{"description":"Code d'erreur Daxium.","type":"string"},"message":{"type":"string"},"url":{"description":"Lien vers le code d'erreur dans la référence des erreurs.","type":"string"},"api_version":{"type":"string"},"infos":{"description":"Contexte additionnel sur l'erreur, lorsque l'exception en porte.","type":"array","items":{}},"server_time":{"type":"integer"}},"type":"object"}},"responses":{"Unauthorized":{"description":"Access token manquant ou invalide.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}},"paths":{"/{app_short}/reports/{report_id}":{"get":{"tags":["publipostages"],"summary":"Récupérer un document généré","operationId":"getReport","parameters":[{"name":"app_short","in":"path","description":"Nom court du vertical métier, tel qu'il apparaît dans l'URL du back-office.","required":true,"schema":{"type":"string"}},{"name":"report_id","in":"path","required":true,"schema":{"type":"string","pattern":"[0-9]+"}},{"$ref":"#/components/parameters/XAcceptVersion"}],"responses":{"200":{"description":"Objet document","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Report"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"description":"Aucun document avec cet identifiant dans le vertical métier.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}}}}
```

## Lister les modèles de publipostage

> Les modèles peuvent être filtrés par formulaire ou par fiche.

```json
{"openapi":"3.0.0","info":{"title":"Daxium Air API","version":"v1.3"},"tags":[{"name":"publipostages"}],"servers":[{"url":"https://api.daxium-air.com","description":"Production"}],"security":[{"oauth2":{}}],"components":{"securitySchemes":{"oauth2":{"type":"oauth2","description":"Envoyez l'access token sous la forme `Authorization: Bearer <token>`.","flows":{"password":{"tokenUrl":"/oauth/v2/token","refreshUrl":"/oauth/v2/token","scopes":{}},"authorizationCode":{"authorizationUrl":"/oauth/v2/auth","tokenUrl":"/oauth/v2/token","refreshUrl":"/oauth/v2/token","scopes":{}}}}},"parameters":{"XAcceptVersion":{"name":"X-Accept-Version","in":"header","description":"Version de l'API à appliquer. Vaut `v1.0` si omise ; une valeur inconnue bascule sur la version la plus récente.","required":false,"schema":{"type":"string","default":"v1.3","enum":["v1.0","v1.1","v1.2","v1.3"]}}},"schemas":{"ReportTemplateListResponse":{"properties":{"server_time":{"type":"integer","format":"int64"},"templates":{"type":"array","items":{"$ref":"#/components/schemas/ReportTemplate"}},"total_count":{"type":"integer"},"total_pages":{"type":"integer"}},"type":"object"},"ReportTemplate":{"description":"Modèle de publipostage","properties":{"id":{"description":"Identifiant du modèle","type":"integer"},"listingMode":{"description":"Indique si le modèle est en mode listing","type":"boolean"},"mailBody":{"description":"Corps de l'email envoyé avec le document généré, lorsqu'il est envoyé par mail.","type":"string"},"mailSubject":{"description":"Objet de l'email envoyé avec le document généré, lorsqu'il est envoyé par mail.","type":"string"},"name":{"description":"Nom du modèle","type":"string"},"reportName":{"description":"Nom donné au document généré.","type":"string"},"sendAsHtml":{"description":"Indique si le corps d'email ci-dessus est envoyé en HTML.","type":"boolean"},"templateEngine":{"description":"Moteur de génération du modèle (ex. docxopenxml, xlsxaspose)","type":"string"}},"type":"object"},"ErrorResponse":{"description":"Corps d'erreur standardisé retourné par le subscriber d'exceptions REST.","properties":{"code":{"description":"Code d'erreur Daxium.","type":"string"},"message":{"type":"string"},"url":{"description":"Lien vers le code d'erreur dans la référence des erreurs.","type":"string"},"api_version":{"type":"string"},"infos":{"description":"Contexte additionnel sur l'erreur, lorsque l'exception en porte.","type":"array","items":{}},"server_time":{"type":"integer"}},"type":"object"}},"responses":{"Unauthorized":{"description":"Access token manquant ou invalide.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}},"paths":{"/{app_short}/report_templates":{"get":{"tags":["publipostages"],"summary":"Lister les modèles de publipostage","description":"Les modèles peuvent être filtrés par formulaire ou par fiche.","operationId":"listReportTemplates","parameters":[{"name":"page","in":"query","description":"Numéro de page","required":false,"allowEmptyValue":false,"schema":{"type":"string","default":"0","pattern":"\\d+"}},{"name":"per_page","in":"query","description":"Nombre de résultats par page (max. 1000)","required":false,"allowEmptyValue":false,"schema":{"type":"string","default":"10","pattern":"-?\\d+"}},{"name":"updated_since","in":"query","description":"Récupérer uniquement les modèles modifiés depuis cette date","required":false,"allowEmptyValue":false,"schema":{"type":"string","default":"","pattern":"\\d+"}},{"name":"structure","in":"query","description":"Identifiant du formulaire","required":false,"allowEmptyValue":false,"schema":{"type":"string","default":"","pattern":"[0-9]+"}},{"name":"submission","in":"query","description":"Identifiant de la fiche","required":false,"allowEmptyValue":false,"schema":{"type":"string","default":"","pattern":"[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}"}},{"name":"app_short","in":"path","description":"Nom court du vertical métier, tel qu'il apparaît dans l'URL du back-office.","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/XAcceptVersion"}],"responses":{"200":{"description":"Liste paginée des modèles","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReportTemplateListResponse"}}}},"401":{"$ref":"#/components/responses/Unauthorized"}}}}}}
```

## Lister les documents générés

> Retourne les documents générés pour la fiche indiquée.

```json
{"openapi":"3.0.0","info":{"title":"Daxium Air API","version":"v1.3"},"tags":[{"name":"publipostages"}],"servers":[{"url":"https://api.daxium-air.com","description":"Production"}],"security":[{"oauth2":{}}],"components":{"securitySchemes":{"oauth2":{"type":"oauth2","description":"Envoyez l'access token sous la forme `Authorization: Bearer <token>`.","flows":{"password":{"tokenUrl":"/oauth/v2/token","refreshUrl":"/oauth/v2/token","scopes":{}},"authorizationCode":{"authorizationUrl":"/oauth/v2/auth","tokenUrl":"/oauth/v2/token","refreshUrl":"/oauth/v2/token","scopes":{}}}}},"parameters":{"XAcceptVersion":{"name":"X-Accept-Version","in":"header","description":"Version de l'API à appliquer. Vaut `v1.0` si omise ; une valeur inconnue bascule sur la version la plus récente.","required":false,"schema":{"type":"string","default":"v1.3","enum":["v1.0","v1.1","v1.2","v1.3"]}}},"schemas":{"ReportListResponse":{"properties":{"next_page":{"type":"integer"},"reports":{"type":"array","items":{"$ref":"#/components/schemas/Report"}},"server_time":{"type":"integer","format":"int64"},"total_count":{"type":"integer"}},"type":"object"},"Report":{"description":"Publipostage généré","properties":{"errorMessage":{"description":"Message d'erreur, le cas échéant","type":"string"},"id":{"description":"Identifiant du publipostage","type":"integer"},"original_document":{"description":"Fichier généré au format d'origine","properties":{"file_name":{"description":"Nom du fichier généré","type":"string"},"file_uuid":{"description":"UUID du fichier généré","type":"string"}},"type":"object"},"pdf_document":{"description":"Fichier généré au format PDF","properties":{"file_name":{"type":"string"},"file_uuid":{"type":"string"}},"type":"object"},"status":{"description":"Statut du publipostage (ex. finished, error)","type":"string"}},"type":"object"},"ErrorResponse":{"description":"Corps d'erreur standardisé retourné par le subscriber d'exceptions REST.","properties":{"code":{"description":"Code d'erreur Daxium.","type":"string"},"message":{"type":"string"},"url":{"description":"Lien vers le code d'erreur dans la référence des erreurs.","type":"string"},"api_version":{"type":"string"},"infos":{"description":"Contexte additionnel sur l'erreur, lorsque l'exception en porte.","type":"array","items":{}},"server_time":{"type":"integer"}},"type":"object"}},"responses":{"Unauthorized":{"description":"Access token manquant ou invalide.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}},"paths":{"/{app_short}/reports":{"get":{"tags":["publipostages"],"summary":"Lister les documents générés","description":"Retourne les documents générés pour la fiche indiquée.","operationId":"listReports","parameters":[{"name":"page","in":"query","description":"Numéro de page","required":false,"allowEmptyValue":false,"schema":{"type":"string","default":"0","pattern":"\\d+"}},{"name":"per_page","in":"query","description":"Nombre de résultats par page (max. 1000)","required":false,"allowEmptyValue":false,"schema":{"type":"string","default":"10","pattern":"-?\\d+"}},{"name":"updated_since","in":"query","description":"Récupérer uniquement les publipostages modifiés depuis cette date","required":false,"allowEmptyValue":false,"schema":{"type":"string","default":"","pattern":"\\d+"}},{"name":"submission","in":"query","description":"Identifiant de la fiche","required":true,"allowEmptyValue":false,"schema":{"type":"string","default":"","pattern":"[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}"}},{"name":"app_short","in":"path","description":"Nom court du vertical métier, tel qu'il apparaît dans l'URL du back-office.","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/XAcceptVersion"}],"responses":{"200":{"description":"Liste paginée des documents","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReportListResponse"}}}},"400":{"description":"`submission` est absent ou n'est pas un UUID valide.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"$ref":"#/components/responses/Unauthorized"}}}}}}
```

## Générer un document

> Génère un document à partir d'un modèle et d'une fiche.

```json
{"openapi":"3.0.0","info":{"title":"Daxium Air API","version":"v1.3"},"tags":[{"name":"publipostages"}],"servers":[{"url":"https://api.daxium-air.com","description":"Production"}],"security":[{"oauth2":{}}],"components":{"securitySchemes":{"oauth2":{"type":"oauth2","description":"Envoyez l'access token sous la forme `Authorization: Bearer <token>`.","flows":{"password":{"tokenUrl":"/oauth/v2/token","refreshUrl":"/oauth/v2/token","scopes":{}},"authorizationCode":{"authorizationUrl":"/oauth/v2/auth","tokenUrl":"/oauth/v2/token","refreshUrl":"/oauth/v2/token","scopes":{}}}}},"parameters":{"XAcceptVersion":{"name":"X-Accept-Version","in":"header","description":"Version de l'API à appliquer. Vaut `v1.0` si omise ; une valeur inconnue bascule sur la version la plus récente.","required":false,"schema":{"type":"string","default":"v1.3","enum":["v1.0","v1.1","v1.2","v1.3"]}}},"schemas":{"ReportInput":{"description":"Corps de lancement d'un publipostage","required":["template_id","submission_id","api_callback"],"properties":{"api_callback":{"description":"URL appelée (PUT) à la fin de la génération ; `{publipostage_id}` y est substitué (obligatoire)","type":"string"},"header_name":{"description":"Nom d'en-tête HTTP à transmettre lors du callback (optionnel)","type":"string"},"header_value":{"description":"Valeur d'en-tête HTTP à transmettre lors du callback (optionnel)","type":"string"},"join_format":{"description":"Format de sortie : `original`, `pdf`, ou `original,pdf` (deux rapports générés)","type":"string","enum":["original","pdf","original,pdf"]},"submission_id":{"description":"Identifiant de la fiche (obligatoire)","type":"string","format":"uuid"},"template_id":{"description":"Identifiant du modèle (obligatoire)","type":"integer"}},"type":"object"},"Report":{"description":"Publipostage généré","properties":{"errorMessage":{"description":"Message d'erreur, le cas échéant","type":"string"},"id":{"description":"Identifiant du publipostage","type":"integer"},"original_document":{"description":"Fichier généré au format d'origine","properties":{"file_name":{"description":"Nom du fichier généré","type":"string"},"file_uuid":{"description":"UUID du fichier généré","type":"string"}},"type":"object"},"pdf_document":{"description":"Fichier généré au format PDF","properties":{"file_name":{"type":"string"},"file_uuid":{"type":"string"}},"type":"object"},"status":{"description":"Statut du publipostage (ex. finished, error)","type":"string"}},"type":"object"},"ErrorResponse":{"description":"Corps d'erreur standardisé retourné par le subscriber d'exceptions REST.","properties":{"code":{"description":"Code d'erreur Daxium.","type":"string"},"message":{"type":"string"},"url":{"description":"Lien vers le code d'erreur dans la référence des erreurs.","type":"string"},"api_version":{"type":"string"},"infos":{"description":"Contexte additionnel sur l'erreur, lorsque l'exception en porte.","type":"array","items":{}},"server_time":{"type":"integer"}},"type":"object"}},"responses":{"Unauthorized":{"description":"Access token manquant ou invalide.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}},"paths":{"/{app_short}/reports":{"post":{"tags":["publipostages"],"summary":"Générer un document","description":"Génère un document à partir d'un modèle et d'une fiche.","operationId":"createReport","parameters":[{"name":"app_short","in":"path","description":"Nom court du vertical métier, tel qu'il apparaît dans l'URL du back-office.","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/XAcceptVersion"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReportInput"}}}},"responses":{"200":{"description":"Génération du document lancée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Report"}}}},"400":{"description":"Le corps de la requête est invalide.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"$ref":"#/components/responses/Unauthorized"}}}}}}
```

## GET /{app\_short}/reports/{report\_id}/results/{file\_uuid}

> Télécharger le résultat d'un document généré

```json
{"openapi":"3.0.0","info":{"title":"Daxium Air API","version":"v1.3"},"tags":[{"name":"publipostages"}],"servers":[{"url":"https://api.daxium-air.com","description":"Production"}],"security":[{"oauth2":{}}],"components":{"securitySchemes":{"oauth2":{"type":"oauth2","description":"Envoyez l'access token sous la forme `Authorization: Bearer <token>`.","flows":{"password":{"tokenUrl":"/oauth/v2/token","refreshUrl":"/oauth/v2/token","scopes":{}},"authorizationCode":{"authorizationUrl":"/oauth/v2/auth","tokenUrl":"/oauth/v2/token","refreshUrl":"/oauth/v2/token","scopes":{}}}}},"parameters":{"XAcceptVersion":{"name":"X-Accept-Version","in":"header","description":"Version de l'API à appliquer. Vaut `v1.0` si omise ; une valeur inconnue bascule sur la version la plus récente.","required":false,"schema":{"type":"string","default":"v1.3","enum":["v1.0","v1.1","v1.2","v1.3"]}}},"responses":{"Unauthorized":{"description":"Access token manquant ou invalide.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"schemas":{"ErrorResponse":{"description":"Corps d'erreur standardisé retourné par le subscriber d'exceptions REST.","properties":{"code":{"description":"Code d'erreur Daxium.","type":"string"},"message":{"type":"string"},"url":{"description":"Lien vers le code d'erreur dans la référence des erreurs.","type":"string"},"api_version":{"type":"string"},"infos":{"description":"Contexte additionnel sur l'erreur, lorsque l'exception en porte.","type":"array","items":{}},"server_time":{"type":"integer"}},"type":"object"}}},"paths":{"/{app_short}/reports/{report_id}/results/{file_uuid}":{"get":{"tags":["publipostages"],"summary":"Télécharger le résultat d'un document généré","operationId":"getReportResult","parameters":[{"name":"app_short","in":"path","description":"Nom court du vertical métier, tel qu'il apparaît dans l'URL du back-office.","required":true,"schema":{"type":"string"}},{"name":"report_id","in":"path","required":true,"schema":{"type":"string","pattern":"[0-9]+"}},{"name":"file_uuid","in":"path","required":true,"schema":{"type":"string","pattern":"[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}"}},{"$ref":"#/components/parameters/XAcceptVersion"}],"responses":{"200":{"description":"Contenu binaire du document produit","content":{"application/octet-stream":{"schema":{"type":"string","format":"binary"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"description":"Aucun document avec cet identifiant dans le vertical métier.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}}}}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://www.center.daxium-air.com/api-reference/doc-api/publipostages.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
