# Fichiers HTML

## Récupérer un fichier HTML

> Récupère un fichier HTML stocké dans Firebase en utilisant un token chiffré passé comme paramètre de requête.\
> \
> \### Paramètre de Requête\
> \- \*\*token\*\* \*(string, obligatoire)\*: Token chiffré représentant l'utilisateur, la session et le nom du fichier. Ce token est utilisé pour localiser et déchiffrer le fichier HTML correspondant.\
> \
> \### Réponse (HTTP 200)\
> \
> En cas de succès, retourne le contenu du fichier HTML avec un \`Content-Type\` de \`text/html\`.\
> \
> \`\`\`html\
> \<html>\<body>\<h1>Exemple HTML\</h1>\</body>\</html>\
> \`\`\`\
> \
> \### Gestion des Erreurs\
> \
> \- \*\*400 Requête Incorrecte\*\*: Retourné si le paramètre \`token\` est manquant ou vide.\
> \- \*\*404 Non Trouvé\*\*: Retourné si le fichier HTML ne peut pas être récupéré (par exemple, token invalide ou fichier introuvable).\
> \- \*\*500 Erreur Interne du Serveur\*\*: Retourné si une erreur inattendue survient sur le serveur.\
> \
> \### Sécurité\
> \
> Aucune authentification n'est requise pour ce point de terminaison.

````json
{"openapi":"3.1.1","info":{"title":"API WEB AIKYNETIX","version":"v2"},"servers":[{"url":"https://api.aikynetix.app"}],"security":[],"paths":{"/helper/html-files/":{"get":{"operationId":"helper_html-files_list","summary":"Récupérer un fichier HTML","description":"Récupère un fichier HTML stocké dans Firebase en utilisant un token chiffré passé comme paramètre de requête.\n\n### Paramètre de Requête\n- **token** *(string, obligatoire)*: Token chiffré représentant l'utilisateur, la session et le nom du fichier. Ce token est utilisé pour localiser et déchiffrer le fichier HTML correspondant.\n\n### Réponse (HTTP 200)\n\nEn cas de succès, retourne le contenu du fichier HTML avec un `Content-Type` de `text/html`.\n\n```html\n<html><body><h1>Exemple HTML</h1></body></html>\n```\n\n### Gestion des Erreurs\n\n- **400 Requête Incorrecte**: Retourné si le paramètre `token` est manquant ou vide.\n- **404 Non Trouvé**: Retourné si le fichier HTML ne peut pas être récupéré (par exemple, token invalide ou fichier introuvable).\n- **500 Erreur Interne du Serveur**: Retourné si une erreur inattendue survient sur le serveur.\n\n### Sécurité\n\nAucune authentification n'est requise pour ce point de terminaison.","parameters":[{"schema":{"type":"string"},"name":"token","in":"query","description":"Token chiffré utilisé pour récupérer le fichier HTML.","required":true}],"responses":{"200":{"description":"Fichier HTML récupéré avec succès.","content":{"application/json":{"schema":{"description":"Le contenu du fichier HTML.","type":"string"}}}},"400":{"description":"Requête Incorrecte - Retourné si le paramètre `token` est manquant ou vide. Assurez-vous que le token est fourni dans la chaîne de requête.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"description":"Message d'erreur indiquant que le token est requis.","type":"string"}}}}}},"404":{"description":"Non Trouvé - Retourné si le fichier HTML ne peut pas être récupéré. Cela peut être dû à un token invalide ou si le fichier n'existe pas.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"description":"Message d'erreur indiquant que le fichier HTML n'a pas pu être trouvé.","type":"string"}}}}}},"500":{"description":"Erreur Interne du Serveur - Retourné si une erreur inattendue survient sur le serveur. Consultez les détails de l'erreur pour plus d'informations.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"description":"Un message d'erreur détaillé décrivant l'échec côté serveur.","type":"string"}}}}}}},"tags":["helper"]}}}}
````

## Téléverser un fichier HTML

> Téléverse un fichier HTML vers Firebase pour une session spécifique. Le fichier doit être fourni sous forme de form-data avec une clé \`html\_file\` et avoir un type de contenu 'text/html'. De plus, le \`session\_id\` doit être inclus dans le form-data pour associer le fichier à une session.\
> \
> \### Données du Formulaire\
> \- \*\*html\_file\*\* \*(fichier, obligatoire)\*: Le fichier HTML à téléverser. Seuls les fichiers avec le type de contenu 'text/html' sont acceptés.\
> \- \*\*session\_id\*\* \*(string, obligatoire)\*: L'ID de session associé au fichier HTML téléversé.\
> \
> \### Réponse (HTTP 201)\
> En cas de succès, retourne un objet JSON contenant :\
> \- \*\*message\*\* \*(string)\*: Un message de confirmation indiquant que le fichier a été téléversé avec succès.\
> \- \*\*token\*\* \*(string)\*: Un token chiffré représentant les informations du fichier et de la session.\
> \
> \### Gestion des Erreurs\
> \
> \- \*\*400 Requête Incorrecte\*\*: Retourné si des champs obligatoires sont manquants (par exemple aucun fichier ou ID de session fourni), si le type de fichier n'est pas 'text/html', ou si l'UID admin est invalide.\
> \- \*\*404 Non Trouvé\*\*: Retourné si l'ID de session n'existe pas dans Firestore. Cela indique que l'ID de session fourni ne correspond à aucune session existante dans la base de données.\
> \- \*\*422 Entité Non Traitable\*\*: Retourné si le traitement du fichier HTML (par exemple, le chiffrement) échoue.\
> \- \*\*500 Erreur Interne du Serveur\*\*: Retourné si une erreur inattendue survient sur le serveur.\
> \
> \### Sécurité\
> Un token API-KEY valide doit être fourni dans l'en-tête \`Authorization\`.

```json
{"openapi":"3.1.1","info":{"title":"API WEB AIKYNETIX","version":"v2"},"servers":[{"url":"https://api.aikynetix.app"}],"security":[{"Bearer":[]},{"ApiKeyAuth":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header","description":"Entrez votre token Bearer (authentification Firebase) au format : Bearer <token>"},"ApiKeyAuth":{"type":"apiKey","name":"API-KEY","in":"header","description":"Entrez votre clé API dans l'en-tête : API-KEY: <api_key>"}}},"paths":{"/helper/html-files/":{"post":{"operationId":"helper_html-files_create","summary":"Téléverser un fichier HTML","description":"Téléverse un fichier HTML vers Firebase pour une session spécifique. Le fichier doit être fourni sous forme de form-data avec une clé `html_file` et avoir un type de contenu 'text/html'. De plus, le `session_id` doit être inclus dans le form-data pour associer le fichier à une session.\n\n### Données du Formulaire\n- **html_file** *(fichier, obligatoire)*: Le fichier HTML à téléverser. Seuls les fichiers avec le type de contenu 'text/html' sont acceptés.\n- **session_id** *(string, obligatoire)*: L'ID de session associé au fichier HTML téléversé.\n\n### Réponse (HTTP 201)\nEn cas de succès, retourne un objet JSON contenant :\n- **message** *(string)*: Un message de confirmation indiquant que le fichier a été téléversé avec succès.\n- **token** *(string)*: Un token chiffré représentant les informations du fichier et de la session.\n\n### Gestion des Erreurs\n\n- **400 Requête Incorrecte**: Retourné si des champs obligatoires sont manquants (par exemple aucun fichier ou ID de session fourni), si le type de fichier n'est pas 'text/html', ou si l'UID admin est invalide.\n- **404 Non Trouvé**: Retourné si l'ID de session n'existe pas dans Firestore. Cela indique que l'ID de session fourni ne correspond à aucune session existante dans la base de données.\n- **422 Entité Non Traitable**: Retourné si le traitement du fichier HTML (par exemple, le chiffrement) échoue.\n- **500 Erreur Interne du Serveur**: Retourné si une erreur inattendue survient sur le serveur.\n\n### Sécurité\nUn token API-KEY valide doit être fourni dans l'en-tête `Authorization`.","responses":{"201":{"description":"Fichier téléversé avec succès.","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"description":"Un message de confirmation.","type":"string"},"token":{"description":"Token chiffré représentant les informations du fichier et de la session.","type":"string"}}}}}},"400":{"description":"Requête Incorrecte - Retourné si des champs obligatoires sont manquants (par exemple, aucun fichier fourni, ID de session manquant), si le type de fichier est invalide (seuls les fichiers HTML sont autorisés), ou si l'UID admin est invalide.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"description":"Message d'erreur détaillé expliquant la requête invalide.","type":"string"}}}}}},"404":{"description":"Non Trouvé - Retourné si l'ID de session n'existe pas dans Firestore.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"description":"Message d'erreur indiquant que l'ID de session n'a pas été trouvé.","type":"string"}}}}}},"422":{"description":"Entité Non Traitable - Retourné si le traitement du fichier HTML (par exemple, le chiffrement) échoue.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"description":"Message d'erreur détaillé décrivant l'échec du traitement.","type":"string"}}}}}},"500":{"description":"Erreur Interne du Serveur - Retourné si une erreur inattendue survient sur le serveur.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"description":"Un message d'erreur détaillé indiquant un échec côté serveur.","type":"string"}}}}}}},"tags":["helper"],"requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"type":"object","properties":{"html_file":{"type":"string","description":"Le fichier HTML à téléverser. Doit avoir le type de contenu 'text/html'."},"session_id":{"type":"string","description":"L'ID de session à associer au fichier HTML téléversé."}},"required":["html_file","session_id"]}}}}}}}}
```


---

# Agent Instructions: Querying This Documentation

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

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.aikynetix.app/fr/api-documentation/developer-resources-and-api-reference/api-reference/html-files.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
