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

# Répertorier les sites web de l’utilisateur

> Renvoie les sites accessibles à l’utilisateur dans votre organisation, par appartenance globale implicite ou explicite au site. L’organisation prévaut : ses membres reçoivent tous les sites non en pause avec `access_type: "organization"`. Sinon, seuls les sites ayant une ligne `website_members` sont renvoyés. `404` si `user_id` ne correspond à aucun utilisateur AthenaHQ. `200` avec `websites` vide si l’utilisateur existe sans accès dans votre organisation, sans distinguer autre organisation et absence d’accès ici. Clé globale requise. Les **intégrations partenaires** reçoivent aussi `external_id` par site (`null` sans association), omis pour les clients directs.



## OpenAPI

````yaml fr/api-reference/openapi.json get /api/v1/users/{user_id}/websites
openapi: 3.1.0
info:
  title: API AthenaHQ
  description: >-
    L’API AthenaHQ permet de gérer vos sites et prompts par programme pour
    l’optimisation de contenu par IA.
  version: 1.0.0
  contact:
    email: support@athenahq.ai
servers:
  - url: https://api.athenahq.ai
    description: Serveur de production
security:
  - apiKey: []
tags:
  - name: Basics
    description: Opérations API principales pour gérer sites et prompts
  - name: Metrics
    description: Points de terminaison de métriques et analyses de visibilité IA
  - name: Billing
    description: Points de facturation et crédits pour gérer la consommation
  - name: Team Management
    description: Points de terminaison de gestion des membres et invitations
  - name: Groups
    description: Points de terminaison de gestion des groupes de sites
  - name: Content
    description: >-
      Points de terminaison Content Hub : onglets, URL suivies et détail des
      prompts par URL.
  - name: Pitch Workspace
    description: >-
      Points de terminaison des rapports Pitch Workspace : exécutions à
      l’échelle de l’organisation avec concurrents, prompts, attributs et
      métriques agrégées.
  - name: Knowledge Base
    description: >-
      Endpoints de lecture de la base de connaissances de la marque — faits
      approuvés et piliers qui les organisent.
paths:
  /api/v1/users/{user_id}/websites:
    parameters:
      - name: user_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
        description: Identifiant unique de l’utilisateur cible
    get:
      tags:
        - Team Management
      summary: Répertorier les sites web de l’utilisateur
      description: >-
        Renvoie les sites accessibles à l’utilisateur dans votre organisation,
        par appartenance globale implicite ou explicite au site. L’organisation
        prévaut : ses membres reçoivent tous les sites non en pause avec
        `access_type: "organization"`. Sinon, seuls les sites ayant une ligne
        `website_members` sont renvoyés. `404` si `user_id` ne correspond à
        aucun utilisateur AthenaHQ. `200` avec `websites` vide si l’utilisateur
        existe sans accès dans votre organisation, sans distinguer autre
        organisation et absence d’accès ici. Clé globale requise. Les
        **intégrations partenaires** reçoivent aussi `external_id` par site
        (`null` sans association), omis pour les clients directs.
      operationId: listUserWebsites
      responses:
        '200':
          description: Réponse réussie avec la liste des sites web, éventuellement vide
          content:
            application/json:
              schema:
                type: object
                properties:
                  websites:
                    type: array
                    items:
                      $ref: '#/components/schemas/UserWebsite'
                required:
                  - websites
        '400':
          description: Requête incorrecte - Format d’ID utilisateur invalide
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Non autorisé — clé API invalide ou absente
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: Interdit — clé API globale requise
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error: 'Forbidden: global API key required'
        '404':
          description: Introuvable — aucun utilisateur AthenaHQ pour ce user_id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                error: User not found
        '500':
          description: Erreur interne du serveur
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - apiKey: []
components:
  schemas:
    UserWebsite:
      type: object
      description: Site accessible à un utilisateur avec son mode d’accès
      required:
        - id
        - website_name
        - website_url
        - access_type
        - role
      properties:
        id:
          type: string
          format: uuid
          description: Identifiant unique du site
        website_name:
          type: string
          description: Nom d’affichage du site
        website_url:
          type: string
          description: Domaine du site web (sans protocole)
        access_type:
          type: string
          enum:
            - organization
            - website
          description: >-
            Mode d’accès au site : `organization`, membre avec accès implicite à
            tous les sites ; `website`, ligne website_members explicite pour ce
            site.
        role:
          type: string
          description: >-
            Rôle de l’utilisateur. Pour `access_type: "organization"`, il s’agit
            du rôle dans l’organisation. Pour `access_type: "website"`, il
            s’agit du rôle propre au site web. Chaque rôle est son slug — son
            nom normalisé (minuscules, sans espaces) : `admin`, `viewer`,
            `editor`, `billing` ou l’ID d’un rôle personnalisé (ex. :
            `contentmanager`). `admin` et `viewer` restent inchangés par rapport
            aux versions précédentes.
        external_id:
          type: string
          nullable: true
          description: >-
            **Partenaires uniquement.** Identifiant fourni par le partenaire et
            associé à ce site. Présent uniquement si l’organisation de
            l’appelant est marquée comme partenaire. Omis pour les clients
            directs. `null` indique l’absence d’association. En snake_case pour
            suivre les noms de champs de ce point de terminaison.
          example: ws_a7f3b2c9
    Error:
      type: object
      description: Objet de réponse d’erreur
      required:
        - error
      properties:
        error:
          type: string
          description: Message expliquant l’erreur
          example: Unauthorized
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        Clé API d’authentification. Créez-en une
        [ici](https://app.athenahq.ai/organization?tab=api).

````

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