# Obtenir le contenu des résultats (/fr/api/search-index/contents)

<!-- agent-signals: reading_time_min: 5 · est_tokens: 3297 · updated: 2026-09-23 -->
Related: [API REST Mintlify Index](/fr/api/search-index/introduction.md), [Construire le contexte d’implémentation](/fr/api/search-index/context.md), [Rechercher des connaissances techniques](/fr/api/search-index/search.md), [Obtenir des retours](/fr/api/analytics/feedback.md)



`POST /v1/contents`

Récupère le contenu correspondant aux identifiants de résultats Mintlify ou aux URL de résultats renvoyés par le point de terminaison search. Une requête peut inclure jusqu’à 20 éléments répartis entre les deux champs.

## OpenAPI

```json
{
  "security": [
    {
      "bearerAuth": []
    }
  ],
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "additionalProperties": false,
          "description": "Fournissez au moins un identifiant de résultat Mintlify ou une URL de résultat. Vous pouvez combiner les deux champs, dans la limite de 20 éléments au total.",
          "anyOf": [
            {
              "required": [
                "urls"
              ]
            },
            {
              "required": [
                "ids"
              ]
            }
          ],
          "properties": {
            "urls": {
              "type": "array",
              "minItems": 1,
              "maxItems": 20,
              "items": {
                "type": "string",
                "format": "uri"
              },
              "description": "URL de résultats à récupérer. Utilisez ce champ pour les résultats web."
            },
            "ids": {
              "type": "array",
              "minItems": 1,
              "maxItems": 20,
              "items": {
                "type": "string",
                "minLength": 1
              },
              "description": "Identifiants de résultats Mintlify à récupérer."
            },
            "maxCharacters": {
              "type": "integer",
              "minimum": 1,
              "description": "Nombre maximal de caractères de contenu à renvoyer par résultat."
            },
            "query": {
              "type": "string",
              "minLength": 1,
              "description": "Requête utilisée pour sélectionner les sections les plus pertinentes lorsque le contenu dépasse `maxCharacters`."
            }
          }
        },
        "example": {
          "ids": [
            "nextjs:/docs/app/getting-started/caching-and-revalidating"
          ],
          "query": "revalider les données mises en cache",
          "maxCharacters": 12000
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Récupération du contenu terminée. Vérifiez chaque statut pour déterminer si l’élément correspondant a réussi.",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "requestId",
              "results",
              "statuses"
            ],
            "properties": {
              "requestId": {
                "type": "string",
                "description": "Identifiant unique de la requête."
              },
              "results": {
                "type": "array",
                "items": {
                  "type": "object",
                  "additionalProperties": false,
                  "required": [
                    "id",
                    "url",
                    "title",
                    "text",
                    "score",
                    "source",
                    "siteName",
                    "breadcrumbs",
                    "publishedDate"
                  ],
                  "properties": {
                    "id": {
                      "type": "string",
                      "description": "Identifiant du résultat. Transmettez les identifiants des résultats Mintlify dans le champ `ids` de la requête contents. Pour les résultats web, transmettez l’URL du résultat dans `urls`."
                    },
                    "url": {
                      "type": "string",
                      "format": "uri",
                      "description": "URL canonique de la source."
                    },
                    "title": {
                      "type": "string",
                      "description": "Titre de la source."
                    },
                    "text": {
                      "type": "string",
                      "description": "Contenu correspondant lorsqu’il est demandé. Sinon, une chaîne vide."
                    },
                    "truncated": {
                      "type": "boolean",
                      "description": "Indique si le contenu renvoyé est plus court que le contenu disponible."
                    },
                    "totalCharacters": {
                      "type": "integer",
                      "minimum": 0,
                      "description": "Nombre de caractères disponibles avant troncature. Présent lorsqu’il est disponible."
                    },
                    "score": {
                      "type": "number",
                      "description": "Score de pertinence relatif. Les réponses contents utilisent `0`, car elles récupèrent des éléments sélectionnés au lieu de classer les résultats."
                    },
                    "source": {
                      "type": "string",
                      "enum": [
                        "mintlify",
                        "web"
                      ],
                      "description": "Source de récupération."
                    },
                    "siteName": {
                      "type": "string",
                      "description": "Site de documentation ou nom d’hôte web."
                    },
                    "breadcrumbs": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Hiérarchie documentaire du résultat."
                    },
                    "publishedDate": {
                      "type": "string",
                      "nullable": true,
                      "description": "Date de publication lorsque la source en fournit une, sinon `null`. Les résultats `search` la normalisent en horodatage ISO 8601 complet. Les résultats `contents` récupérés via `urls` transmettent la chaîne de date originale de la source sans normalisation ; il peut s’agir d’un horodatage complet ou d’une date seule."
                    }
                  }
                },
                "description": "Résultats récupérés avec succès."
              },
              "statuses": {
                "type": "array",
                "items": {
                  "oneOf": [
                    {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "id",
                        "status"
                      ],
                      "properties": {
                        "id": {
                          "type": "string",
                          "description": "Identifiant ou URL demandé."
                        },
                        "status": {
                          "type": "string",
                          "enum": [
                            "success"
                          ],
                          "description": "Statut de récupération."
                        }
                      }
                    },
                    {
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "id",
                        "status",
                        "error"
                      ],
                      "properties": {
                        "id": {
                          "type": "string",
                          "description": "Identifiant ou URL demandé."
                        },
                        "status": {
                          "type": "string",
                          "enum": [
                            "error"
                          ],
                          "description": "Statut de récupération."
                        },
                        "error": {
                          "type": "object",
                          "additionalProperties": false,
                          "required": [
                            "tag",
                            "httpStatusCode"
                          ],
                          "properties": {
                            "tag": {
                              "type": "string",
                              "description": "Catégorie d’erreur lisible par machine."
                            },
                            "httpStatusCode": {
                              "type": "integer",
                              "nullable": true,
                              "description": "Code de statut HTTP amont lorsqu’il est disponible."
                            }
                          }
                        }
                      }
                    }
                  ]
                },
                "description": "Statut de récupération de chaque élément demandé."
              }
            }
          },
          "example": {
            "requestId": "6bf694e4-76cb-4d31-a222-c94b2d9b198a",
            "results": [
              {
                "id": "nextjs:/docs/app/getting-started/caching-and-revalidating",
                "url": "https://nextjs.org/docs/app/getting-started/caching-and-revalidating",
                "title": "Mise en cache et revalidation",
                "text": "# Mise en cache et revalidation\n\nUtilisez les API de revalidation pour actualiser les données mises en cache.",
                "truncated": false,
                "totalCharacters": 78,
                "score": 0,
                "source": "mintlify",
                "siteName": "nextjs",
                "breadcrumbs": [
                  "Routeur App",
                  "Premiers pas"
                ],
                "publishedDate": null
              }
            ],
            "statuses": [
              {
                "id": "nextjs:/docs/app/getting-started/caching-and-revalidating",
                "status": "success"
              }
            ]
          }
        }
      }
    },
    "400": {
      "description": "Le corps de la requête n’est pas valide.",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "error"
            ],
            "properties": {
              "error": {
                "type": "string",
                "description": "Message d’erreur."
              }
            }
          },
          "example": {
            "error": "Une requête peut référencer au maximum 20 éléments entre urls et ids"
          }
        }
      }
    },
    "401": {
      "description": "La clé d’API est absente ou invalide, ou l’organisation n’a pas accès à l’API REST Index.",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "error"
            ],
            "properties": {
              "error": {
                "type": "string",
                "description": "Message d’erreur."
              }
            }
          },
          "example": {
            "error": "Non autorisé"
          }
        }
      }
    },
    "403": {
      "description": "L’adresse IP de la requête n’est pas autorisée par la clé d’API.",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "error"
            ],
            "properties": {
              "error": {
                "type": "string",
                "description": "Message d’erreur."
              }
            }
          },
          "example": {
            "error": "L’adresse IP n’est pas autorisée pour cette clé d’API"
          }
        }
      }
    },
    "429": {
      "description": "L’organisation a dépassé une limite de débit.",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "error"
            ],
            "properties": {
              "error": {
                "type": "string",
                "description": "Message d’erreur."
              }
            }
          },
          "example": {
            "error": "Limite de débit dépassée. Veuillez réessayer plus tard"
          }
        }
      }
    },
    "500": {
      "description": "Index n’a pas pu terminer la requête.",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "error"
            ],
            "properties": {
              "error": {
                "type": "string",
                "description": "Message d’erreur."
              }
            }
          }
        }
      }
    }
  }
}
```
