> ## Documentation Index
> Fetch the complete documentation index at: https://docs.querying.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# API de recherche, publications et commentaires Reddit (REDDIT)

> Recherchez des publications Reddit, lisez une publication avec sa première page de commentaires, ou listez les dernières publications d'un subreddit ou d'un utilisateur.

`REDDIT` lit le Reddit public. Il a quatre modes, choisis par le payload : la recherche (`query`), une publication avec ses commentaires (`url`), le flux d'un subreddit (`action: "feed"`) et les publications d'un utilisateur (`action: "user_posts"`).

| | |
| - | - |
| `taskType` | `REDDIT` |
| Entrée | `query`, ou `url`, ou `action` (`feed`, `user_posts`) ; `subreddit`, `username`, `commentSort`, `commentMaxDepth`, `limit`, `country` |
| Crédits | 1 par tâche |
| Pays | `US` par défaut. |
| Position | Non prise en charge (`422 LOCATION_UNSUPPORTED`). |

## Rechercher des publications

```bash theme={"theme":"css-variables"}
curl -X POST https://api.querying.ai/v1/async/task \
  -H "Authorization: Bearer $QUERYING_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "taskType": "REDDIT", "payload": { "query": "running shoes for flat feet", "subreddit": "RunningShoeGeeks" } }'
```

| Champ | Obligatoire | Description |
| - | - | - |
| `query` | Oui | La requête de recherche. `prompt` est accepté si `query` est absent. |
| `subreddit` | Non | Cherche dans un seul subreddit : son nom sans `r/`, de 2 à 21 lettres, chiffres ou tirets bas. |

La recherche renvoie jusqu'à 25 publications. Par exemple :

```json theme={"theme":"css-variables"}
{
  "results": [
    { "postId": "1uzk9m4", "title": "...", "url": "https://www.reddit.com/r/RunningShoeGeeks/comments/1uzk9m4/...", "subreddit": "RunningShoeGeeks", "preview": "..." }
  ]
}
```

`preview` est le début du texte de la publication, jusqu'à 2 000 caractères, quand elle en a un. Un `results` vide dans une tâche terminée signifie que Reddit n'a rien trouvé.

## Lire une publication et ses commentaires

Envoyez l'`url` d'une publication au lieu de `query` :

```bash theme={"theme":"css-variables"}
curl -X POST https://api.querying.ai/v1/async/task \
  -H "Authorization: Bearer $QUERYING_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "taskType": "REDDIT", "payload": { "url": "https://www.reddit.com/r/RunningShoeGeeks/comments/1uer62n/", "commentSort": "top", "commentMaxDepth": 1 } }'
```

| Champ | Obligatoire | Description |
| - | - | - |
| `url` | Oui | L'adresse d'une publication reddit.com : `https://www.reddit.com/r/{subreddit}/comments/{postId}/...`. Les autres adresses renvoient `422 VALIDATION_ERROR`. |
| `commentSort` | Non | `top`, `new`, `controversial`, `old` ou `qa`. Sans ce paramètre, l'ordre par défaut de Reddit s'applique. |
| `commentMaxDepth` | Non | Écarte les réponses plus profondes, un entier de 0 à 100. `0` ne garde que les commentaires de premier niveau. |

La tâche lit la publication avec sa première page de commentaires, environ 20 à 25. Par exemple :

```json theme={"theme":"css-variables"}
{
  "post": {
    "postId": "1uer62n", "title": "...", "body": "...", "author": "...", "subreddit": "RunningShoeGeeks",
    "score": 12, "upvoteRatio": 0.9, "commentCount": 48, "createdAt": "2026-06-24T21:51:21.586000+0000",
    "archived": false, "url": "https://www.reddit.com/r/RunningShoeGeeks/comments/1uer62n/..."
  },
  "comments": {
    "availableCount": 24,
    "returnedCount": 24,
    "items": [
      { "commentId": "otlz8m5", "author": "...", "body": "...", "score": 5, "depth": 0, "isSubmitter": false, "createdAt": "...", "url": "https://www.reddit.com/r/..." }
    ]
  }
}
```

| Champ | Description |
| - | - |
| `post.commentCount` | Le nombre de commentaires de la publication tel que Reddit l'indique. Quand Reddit ne le fournit pas, le nombre de commentaires de la page lue. `comments` ne contient que cette page. |
| `post.archived` | Estimé à partir de l'âge de la publication ; Reddit verrouille les commentaires après environ 180 jours. |
| `post.author`, `post.body` | `null` quand Reddit n'en affiche pas (auteur supprimé, publication de lien). |
| `comments.items[].depth` | Profondeur de la réponse ; `0` est un commentaire de premier niveau. `parentId` est présent sur les réponses. |
| `comments.items[].isSubmitter` | `true` quand l'auteur de la publication a écrit le commentaire. |

> [!NOTE]
>
> Seule la première page de commentaires est disponible. `commentLimit`, qui déplie d'autres commentaires, renvoie `422 VALIDATION_ERROR` sur les forfaits en libre-service.

## Lister les dernières publications

| Payload | Renvoie |
| - | - |
| `{ "action": "feed", "subreddit": "RunningShoeGeeks" }` | Les dernières publications du subreddit. Sans `subreddit`, r/popular. |
| `{ "action": "user_posts", "username": "example_user" }` | Ce que l'utilisateur a publié. `username` compte de 3 à 20 lettres, chiffres, tirets bas ou traits d'union. |

Tous deux renvoient `results` sous la forme d'une recherche, jusqu'à `limit` publications (25 par défaut).

## Limites et erreurs

* `REDDIT` ignore `markdown`, `rawResponse` et `searchQueries`. Il refuse `html` et `analysis` avec `422` et `citationAnalysis` avec `400` ; voir [flags non pris en charge](/fr/engines/response-options.md#flags-non-pris-en-charge).
* Un `subreddit`, `username`, `url` ou `commentSort` invalide renvoie `422 VALIDATION_ERROR`.
* Les autres erreurs de requête sont listées dans [Erreurs](/fr/concepts/errors.md).

## Voir aussi

* [Web scrape](/fr/engines/web-scrape.md) pour les pages hors de Reddit
* [Tâches asynchrones](/fr/concepts/async-tasks.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.