> For the complete documentation index, see [llms.txt](https://docs.discordtop.net/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.discordtop.net/api-reference/api-v7/models.md).

# Models

## The VoteCheckSuccess object

```json
{"openapi":"3.0.3","info":{"title":"DiscordTop Developer API - Version 7","version":"7.0"},"components":{"schemas":{"VoteCheckSuccess":{"type":"object","required":["ok","guild_id","has_voted","is_doubled","last_vote_at","next_vote_at","cooldown_remaining_seconds"],"properties":{"ok":{"type":"boolean"},"guild_id":{"type":"string"},"has_voted":{"type":"boolean","description":"`true` : l'utilisateur est encore dans le cooldown.\n`false` : aucun vote récent ou cooldown terminé.\n"},"is_doubled":{"type":"boolean","description":"Indique si le vote d'un utilisateur est considéré comme doublé."},"last_vote_at":{"type":"string","format":"date-time","nullable":true},"next_vote_at":{"type":"string","format":"date-time","nullable":true},"cooldown_remaining_seconds":{"type":"integer"}}}}}}
```

## The GuildMeSuccess object

```json
{"openapi":"3.0.3","info":{"title":"DiscordTop Developer API - Version 7","version":"7.0"},"components":{"schemas":{"GuildMeSuccess":{"type":"object","required":["ok","guild_id","votes","lifetime_votes","votes_last_7_days","rank","boosts","reviews","rating"],"properties":{"ok":{"type":"boolean"},"guild_id":{"type":"string"},"votes":{"type":"integer","description":"Nombre de votes de la guilde sur le classement mensuel en cours."},"lifetime_votes":{"type":"integer","description":"Nombre total de votes reçus par la guilde depuis son ajout sur DiscordTop."},"votes_last_7_days":{"type":"integer","description":"Nombre de votes reçus sur les 7 derniers jours."},"rank":{"type":"integer","nullable":true,"description":"Position actuelle de la guilde dans le classement mensuel."},"boosts":{"type":"integer","description":"Nombre de boosts actifs sur la guilde."},"reviews":{"type":"integer","description":"Nombre total d'avis publiés pour la guilde."},"rating":{"type":"number","format":"float","nullable":true,"description":"Note moyenne des avis publiés, arrondie à une décimale. Null si aucun avis n'est disponible."}}}}}}
```

## The GuildVotesSuccess object

```json
{"openapi":"3.0.3","info":{"title":"DiscordTop Developer API - Version 7","version":"7.0"},"components":{"schemas":{"GuildVotesSuccess":{"allOf":[{"$ref":"#/components/schemas/VotesListBaseSuccess"},{"type":"object","required":["guild_id"],"properties":{"guild_id":{"type":"string"}}}]},"VotesListBaseSuccess":{"type":"object","required":["ok","votes","total","pagination","period"],"properties":{"ok":{"type":"boolean"},"votes":{"type":"array","description":"Liste des votes logiques retournés pour la page courante.","items":{"$ref":"#/components/schemas/VoteEvent"}},"total":{"type":"integer","description":"Nombre total de votes logiques correspondant aux filtres demandés, sur la période.\nCe total n'est pas limité par `pagination.limit`.\n"},"pagination":{"$ref":"#/components/schemas/CursorPagination"},"period":{"$ref":"#/components/schemas/Period"}}},"VoteEvent":{"type":"object","required":["user_id","timestamp","is_doubled"],"properties":{"user_id":{"type":"string","description":"ID Discord de l'utilisateur ayant voté."},"timestamp":{"type":"string","format":"date-time","description":"Date du vote."},"is_doubled":{"type":"boolean","description":"Indique si ce vote est considéré comme doublé.\n\nTant qu'aucune colonne dédiée n'existe en base de données, cette valeur peut être déduite\npar l'API à partir de deux votes similaires dans un lapse de temps très court.\n"}}},"CursorPagination":{"type":"object","required":["limit","has_more","next_cursor"],"properties":{"limit":{"type":"integer"},"has_more":{"type":"boolean"},"next_cursor":{"type":"string","nullable":true,"description":"Curseur à utiliser pour récupérer la page suivante. Null s'il n'y a plus de page."}}},"Period":{"type":"object","required":["from","to"],"properties":{"from":{"type":"string","format":"date-time"},"to":{"type":"string","format":"date-time"}}}}}}
```

## The GuildUserVotesSuccess object

```json
{"openapi":"3.0.3","info":{"title":"DiscordTop Developer API - Version 7","version":"7.0"},"components":{"schemas":{"GuildUserVotesSuccess":{"allOf":[{"$ref":"#/components/schemas/VotesListBaseSuccess"},{"type":"object","required":["guild_id","user_id"],"properties":{"guild_id":{"type":"string"},"user_id":{"type":"string","description":"ID Discord de l'utilisateur demandé."}}}]},"VotesListBaseSuccess":{"type":"object","required":["ok","votes","total","pagination","period"],"properties":{"ok":{"type":"boolean"},"votes":{"type":"array","description":"Liste des votes logiques retournés pour la page courante.","items":{"$ref":"#/components/schemas/VoteEvent"}},"total":{"type":"integer","description":"Nombre total de votes logiques correspondant aux filtres demandés, sur la période.\nCe total n'est pas limité par `pagination.limit`.\n"},"pagination":{"$ref":"#/components/schemas/CursorPagination"},"period":{"$ref":"#/components/schemas/Period"}}},"VoteEvent":{"type":"object","required":["user_id","timestamp","is_doubled"],"properties":{"user_id":{"type":"string","description":"ID Discord de l'utilisateur ayant voté."},"timestamp":{"type":"string","format":"date-time","description":"Date du vote."},"is_doubled":{"type":"boolean","description":"Indique si ce vote est considéré comme doublé.\n\nTant qu'aucune colonne dédiée n'existe en base de données, cette valeur peut être déduite\npar l'API à partir de deux votes similaires dans un lapse de temps très court.\n"}}},"CursorPagination":{"type":"object","required":["limit","has_more","next_cursor"],"properties":{"limit":{"type":"integer"},"has_more":{"type":"boolean"},"next_cursor":{"type":"string","nullable":true,"description":"Curseur à utiliser pour récupérer la page suivante. Null s'il n'y a plus de page."}}},"Period":{"type":"object","required":["from","to"],"properties":{"from":{"type":"string","format":"date-time"},"to":{"type":"string","format":"date-time"}}}}}}
```

## The VotesListBaseSuccess object

```json
{"openapi":"3.0.3","info":{"title":"DiscordTop Developer API - Version 7","version":"7.0"},"components":{"schemas":{"VotesListBaseSuccess":{"type":"object","required":["ok","votes","total","pagination","period"],"properties":{"ok":{"type":"boolean"},"votes":{"type":"array","description":"Liste des votes logiques retournés pour la page courante.","items":{"$ref":"#/components/schemas/VoteEvent"}},"total":{"type":"integer","description":"Nombre total de votes logiques correspondant aux filtres demandés, sur la période.\nCe total n'est pas limité par `pagination.limit`.\n"},"pagination":{"$ref":"#/components/schemas/CursorPagination"},"period":{"$ref":"#/components/schemas/Period"}}},"VoteEvent":{"type":"object","required":["user_id","timestamp","is_doubled"],"properties":{"user_id":{"type":"string","description":"ID Discord de l'utilisateur ayant voté."},"timestamp":{"type":"string","format":"date-time","description":"Date du vote."},"is_doubled":{"type":"boolean","description":"Indique si ce vote est considéré comme doublé.\n\nTant qu'aucune colonne dédiée n'existe en base de données, cette valeur peut être déduite\npar l'API à partir de deux votes similaires dans un lapse de temps très court.\n"}}},"CursorPagination":{"type":"object","required":["limit","has_more","next_cursor"],"properties":{"limit":{"type":"integer"},"has_more":{"type":"boolean"},"next_cursor":{"type":"string","nullable":true,"description":"Curseur à utiliser pour récupérer la page suivante. Null s'il n'y a plus de page."}}},"Period":{"type":"object","required":["from","to"],"properties":{"from":{"type":"string","format":"date-time"},"to":{"type":"string","format":"date-time"}}}}}}
```

## The VoteEvent object

```json
{"openapi":"3.0.3","info":{"title":"DiscordTop Developer API - Version 7","version":"7.0"},"components":{"schemas":{"VoteEvent":{"type":"object","required":["user_id","timestamp","is_doubled"],"properties":{"user_id":{"type":"string","description":"ID Discord de l'utilisateur ayant voté."},"timestamp":{"type":"string","format":"date-time","description":"Date du vote."},"is_doubled":{"type":"boolean","description":"Indique si ce vote est considéré comme doublé.\n\nTant qu'aucune colonne dédiée n'existe en base de données, cette valeur peut être déduite\npar l'API à partir de deux votes similaires dans un lapse de temps très court.\n"}}}}}}
```

## The CursorPagination object

```json
{"openapi":"3.0.3","info":{"title":"DiscordTop Developer API - Version 7","version":"7.0"},"components":{"schemas":{"CursorPagination":{"type":"object","required":["limit","has_more","next_cursor"],"properties":{"limit":{"type":"integer"},"has_more":{"type":"boolean"},"next_cursor":{"type":"string","nullable":true,"description":"Curseur à utiliser pour récupérer la page suivante. Null s'il n'y a plus de page."}}}}}}
```

## The Period object

```json
{"openapi":"3.0.3","info":{"title":"DiscordTop Developer API - Version 7","version":"7.0"},"components":{"schemas":{"Period":{"type":"object","required":["from","to"],"properties":{"from":{"type":"string","format":"date-time"},"to":{"type":"string","format":"date-time"}}}}}}
```

## The ErrorResponse object

```json
{"openapi":"3.0.3","info":{"title":"DiscordTop Developer API - Version 7","version":"7.0"},"components":{"schemas":{"ErrorResponse":{"type":"object","required":["ok","error","message"],"properties":{"ok":{"type":"boolean"},"error":{"type":"string"},"message":{"type":"string"}}}}}}
```

## The ValidationError object

```json
{"openapi":"3.0.3","info":{"title":"DiscordTop Developer API - Version 7","version":"7.0"},"components":{"schemas":{"ValidationError":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"object","properties":{"rule":{"type":"string"},"field":{"type":"string"},"message":{"type":"string"}}}}}}}}}
```

## The RateLimitError object

```json
{"openapi":"3.0.3","info":{"title":"DiscordTop Developer API - Version 7","version":"7.0"},"components":{"schemas":{"RateLimitError":{"type":"object","properties":{"message":{"type":"string"}}}}}}
```

## The ServerError object

```json
{"openapi":"3.0.3","info":{"title":"DiscordTop Developer API - Version 7","version":"7.0"},"components":{"schemas":{"ServerError":{"type":"object","properties":{"message":{"type":"string"}}}}}}
```
