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

# Lister les moniteurs

> Récupère tous les moniteurs pour votre équipe. Retourne les moniteurs actifs par défaut et peut inclure les moniteurs supprimés sur demande.



## OpenAPI

````yaml fr/openapi/monitors.json GET /v1/monitors
openapi: 3.0.3
info:
  title: API des Moniteurs
  version: 1.0.0
servers:
  - url: https://api.olostep.com
security: []
paths:
  /v1/monitors:
    get:
      summary: Lister les Moniteurs
      description: >-
        Liste les moniteurs pour ton équipe. Les moniteurs supprimés sont exclus
        sauf si `include_deleted=true`.
      parameters:
        - name: include_deleted
          in: query
          required: false
          schema:
            type: string
            enum:
              - 'true'
              - 'false'
            default: 'false'
      responses:
        '200':
          description: Liste des moniteurs.
          content:
            application/json:
              schema:
                type: object
                properties:
                  monitors:
                    type: array
                    items:
                      $ref: '#/components/schemas/Monitor'
                  count:
                    type: integer
        '401':
          description: Clé API invalide.
        '500':
          description: Erreur interne du serveur lors de la liste des moniteurs.
      security:
        - Authorization: []
components:
  schemas:
    Monitor:
      type: object
      properties:
        id:
          type: string
          description: Identifiant unique du moniteur (`monitor_…`).
        object:
          type: string
          example: monitor
        query:
          type: string
          description: Intention de surveillance en langage naturel.
        tracked:
          $ref: '#/components/schemas/MonitorTracked'
        source_policy:
          $ref: '#/components/schemas/MonitorSourcePolicy'
        schedule:
          $ref: '#/components/schemas/MonitorSchedule'
        notification:
          $ref: '#/components/schemas/MonitorNotification'
        webhook:
          allOf:
            - $ref: '#/components/schemas/MonitorWebhook'
          nullable: true
        output_schema:
          type: object
          additionalProperties: true
          nullable: true
          description: Schéma JSON optionnel pour la sortie d'extraction structurée.
        status:
          type: string
          enum:
            - provisioning
            - active
            - paused
            - failed
            - deleted
          description: Surveille le statut du cycle de vie.
        error_message:
          type: string
          nullable: true
          description: Présent lorsque `status` est `failed`.
        last_run:
          allOf:
            - $ref: '#/components/schemas/MonitorLastRun'
          nullable: true
          description: >-
            Résumé du dernier instantané. Inclus dans `GET
            /v1/monitors/{monitor_id}`.
        agent:
          $ref: '#/components/schemas/MonitorAgent'
        metadata:
          type: object
          additionalProperties: true
        created:
          type: integer
          description: Horodatage Unix (secondes).
        updated:
          type: integer
          description: Horodatage Unix (secondes).
        total_count:
          type: integer
          description: >-
            Nombre total d'instantanés. Inclus dans `GET
            /v1/monitors/{monitor_id}` sauf si `include_total_count=false`.
        mermaid_diagram:
          type: string
          description: >-
            Diagramme de flux Mermaid du DAG du moniteur. Inclus lorsque
            `include-diagram=true` lors de la récupération.
    MonitorTracked:
      type: object
      description: Cibles résolues que le moniteur suit après la fin de la planification.
      properties:
        type:
          type: string
          nullable: true
          description: Type de surface suivi (par exemple `url` ou `web_query`).
        urls:
          type: array
          items:
            type: string
            format: uri
          description: URLs concrètes surveillées.
        web_query:
          type: string
          nullable: true
          description: >-
            Requête de recherche web utilisée lorsque le moniteur suit un
            ensemble de résultats dynamiques.
    MonitorSourcePolicy:
      type: object
      description: >-
        Listes d'autorisation et de refus d'URL/domaine optionnelles appliquées
        pendant la planification et l'exécution.
      properties:
        include_urls:
          type: array
          items:
            type: string
            format: uri
        exclude_urls:
          type: array
          items:
            type: string
            format: uri
        include_domains:
          type: array
          items:
            type: string
        exclude_domains:
          type: array
          items:
            type: string
    MonitorSchedule:
      type: object
      properties:
        frequency:
          type: string
          nullable: true
          description: >-
            Texte de planification en langage naturel (par exemple `every
            hour`).
        cron:
          type: string
          nullable: true
          description: Expression Cron dérivée de `frequency`.
        timezone:
          type: string
          example: UTC
          description: >-
            Fuseau horaire de la planification. Actuellement `UTC` pour les
            plannings des moniteurs.
        next_run_at:
          type: string
          format: date-time
          nullable: true
          description: >-
            Prochaine exécution programmée (ISO 8601). `null` lorsque le
            moniteur n'est pas `active`.
    MonitorNotification:
      type: object
      properties:
        events:
          type: array
          items:
            type: string
            enum:
              - changed
              - first_snapshot
          description: >-
            Quand notifier. `changed` — livrer lorsqu'un changement est détecté
            par rapport au snapshot précédent. `first_snapshot` — livrer lorsque
            le premier snapshot de référence est pris. Par défaut, les deux
            lorsque `channels` n'est pas vide et `events` est vide.
        channels:
          type: array
          items:
            $ref: '#/components/schemas/NotificationChannel'
          description: >-
            Cibles de livraison par email, Slack, ou SMS. Résolu à l'exécution
            par le pipeline du moniteur.
    MonitorWebhook:
      type: object
      required:
        - url
      properties:
        url:
          type: string
          format: uri
          description: >-
            URL HTTP/HTTPS qui reçoit les charges utiles du moniteur (séparée de
            `notification.channels`).
    MonitorLastRun:
      type: object
      properties:
        id:
          type: string
          nullable: true
          description: ID d'exécution du dernier snapshot (`run_…`).
        status:
          type: string
          example: completed
        change_detected:
          type: boolean
          nullable: true
        ran_at:
          type: string
          format: date-time
          nullable: true
    MonitorAgent:
      type: object
      properties:
        id:
          type: string
          nullable: true
          description: ID d'agent interne utilisé pour exécuter le DAG du moniteur.
    NotificationChannel:
      type: object
      required:
        - type
        - target
      properties:
        type:
          type: string
          enum:
            - email
            - slack
            - sms
          description: Type de canal de livraison.
        target:
          type: string
          description: >-
            Adresse email, URL de webhook Slack, ou numéro de téléphone E.164
            (pour SMS).
        events:
          type: array
          items:
            type: string
            enum:
              - changed
              - first_snapshot
          description: >-
            Filtre d'événements optionnel par canal. Lorsqu'il est omis, la
            livraison du canal suit `notification.events` au niveau supérieur
            (ou les valeurs par défaut lorsque les canaux sont définis).
  securitySchemes:
    Authorization:
      type: http
      scheme: bearer
      description: >-
        En-tête d'authentification Bearer sous la forme Bearer <token>, où
        <token> est ton jeton d'authentification.

````