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

# Recherche d'annonces publicitaires d'entreprise

> Recherchez des publicités diffusées par des entreprises. Consultez le [guide Advertisement Search](/fr/developer-guides/search/advertisement-search).



## OpenAPI

````yaml fr-openapi POST /companies/advertisements/search
openapi: 3.0.0
info:
  description: >-
    L'API Pubrio fournit une intelligence d'expansion de marché — des signaux en
    temps réel qui indiquent quand une entreprise entre sur un nouveau marché —
    ainsi que les données d'entreprises et de personnes qui les sous-tendent.
    Recherchez, consultez et enrichissez des comptes et des contacts, et
    abonnez-vous à des signaux de mouvement typés et datés sur plus de 200
    marchés.
  version: 1.0.0
  title: Pubrio OpenAPI
  termsOfService: https://pubrio.com/fr/terms-of-service
  contact:
    email: king.lai@pubrio.com
    name: King Lai
    url: https://pubrio.com/fr/get-in-touch
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
servers:
  - url: https://api.pubrio.com
security:
  - pubrio_api_key: []
tags:
  - name: Profile
    description: >-
      Informations de profil de l'espace de travail et statistiques
      d'utilisation
  - name: Enrichment
    description: >-
      Enrichissez les fiches de personnes et d'entreprises avec des données B2B
      détaillées
  - name: Lookalike
    description: Trouvez des entreprises similaires à une entreprise donnée
  - name: Search
    description: >-
      Recherchez des personnes, des entreprises, des offres d'emploi, des
      actualités et des publicités à l'aide de filtres
  - name: Lookup
    description: >-
      Consultez des informations détaillées sur des personnes, entreprises,
      offres d'emploi, actualités, publicités et technologies spécifiques
  - name: LinkedIn
    description: >-
      Consultez les données de personnes et d'entreprises via des URL de profil
      LinkedIn
  - name: Redeem
    description: >-
      Utilisez des crédits pour débloquer les coordonnées de personnes (unitaire
      et par lot)
  - name: Channels
    description: >-
      Gérez les modèles de canaux de prospection (création, mise à jour,
      suppression, liste)
  - name: Monitor
    description: >-
      Créez et gérez des moniteurs de données avec webhooks, statistiques et
      traitement
  - name: Filters
    description: >-
      Récupérez les valeurs de filtre disponibles pour les paramètres de
      recherche (technologies, localisations, secteurs verticaux, etc.)
  - name: API Keys
    description: >-
      Listez et inspectez les journaux de requêtes API et les statistiques
      d'utilisation des clés API
  - name: Insights
    description: >-
      Informations agrégées sur les signaux des entreprises (offres d'emploi,
      actualités, publicités).
  - name: Export
    description: Exports de données en masse (soumis à des crédits).
  - name: Expansion
    description: >-
      Intelligence d'expansion de marché des entreprises : signaux, étapes,
      marchés et exports.
externalDocs:
  description: >-
    L'API Pubrio permet de rechercher, prévisualiser et enrichir des contacts et
    des comptes. La base de données Pubrio fournit des données étendues de
    contacts B2B et de veille commerciale.
  url: https://docs.pubrio.com
paths:
  /companies/advertisements/search:
    post:
      tags:
        - Search
      summary: Rechercher des publicités d'entreprises
      description: >-
        Recherchez des publicités diffusées par des entreprises. Consultez le
        [guide Advertisement
        Search](/fr/developer-guides/search/advertisement-search).
      operationId: companies_search_advertisements
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                target_locations:
                  $ref: '#/components/schemas/target_locations'
                exclude_target_locations:
                  $ref: '#/components/schemas/exclude_target_locations'
                search_terms:
                  $ref: '#/components/schemas/search_terms'
                headlines:
                  $ref: '#/components/schemas/headlines'
                filter_conditions:
                  $ref: '#/components/schemas/ads_filter_conditions'
                start_dates:
                  $ref: '#/components/schemas/start_dates'
                end_dates:
                  $ref: '#/components/schemas/end_dates'
                active_dates:
                  $ref: '#/components/schemas/advertisement_active_dates_search'
                created_at:
                  $ref: '#/components/schemas/search_created_at'
                company_locations:
                  $ref: '#/components/schemas/company_locations'
                companies:
                  $ref: '#/components/schemas/companies'
                advertisement_search_id:
                  allOf:
                    - $ref: '#/components/schemas/advertisement_search_id'
                  description: >-
                    Ne renvoie que cet enregistrement unique. Pratique pour
                    récupérer à nouveau une ligne que vous avez stockée
                    précédemment, sans pagination.
                domains:
                  $ref: '#/components/schemas/domains'
                linkedin_urls:
                  $ref: '#/components/schemas/company_linkedin_urls'
                is_realtime_enrichment:
                  $ref: '#/components/schemas/is_realtime_enrichment'
                advertisement_formats:
                  $ref: '#/components/schemas/advertisement_formats'
                reach_tiers:
                  $ref: '#/components/schemas/advertisement_reach_tiers'
                advertisement_active_ads:
                  $ref: '#/components/schemas/advertisement_active_ads'
                advertisement_running_ads:
                  $ref: '#/components/schemas/advertisement_running_ads'
                advertisement_total_ads:
                  $ref: '#/components/schemas/advertisement_total_ads'
                advertisement_platform_count:
                  $ref: '#/components/schemas/advertisement_platform_count'
                advertisement_format_count:
                  $ref: '#/components/schemas/advertisement_format_count'
                advertisement_impressions_estimate:
                  $ref: '#/components/schemas/advertisement_impressions_estimate'
                advertisement_country_activity:
                  $ref: '#/components/schemas/advertisement_country_activity'
                source_types:
                  $ref: '#/components/schemas/advertisement_source_types'
                exclude_source_types:
                  $ref: '#/components/schemas/advertisement_exclude_source_types'
                enrichment_mode:
                  $ref: '#/components/schemas/advertisement_enrichment_mode'
                per_page:
                  $ref: '#/components/schemas/per_page'
                page:
                  $ref: '#/components/schemas/page'
                is_ascending_order:
                  $ref: '#/components/schemas/is_ascending_order'
                publisher_platforms:
                  $ref: '#/components/schemas/advertisement_publisher_platforms'
                exclude_publisher_platforms:
                  $ref: >-
                    #/components/schemas/advertisement_exclude_publisher_platforms
                is_include_unlinked_companies:
                  $ref: >-
                    #/components/schemas/advertisement_is_include_unlinked_companies
      responses:
        '200':
          description: >-
            Réponse réussie contenant les détails de la recherche de publicités
            d'entreprises.
          content:
            application/json:
              schema:
                type: object
                properties:
                  metadata:
                    $ref: '#/components/schemas/advertisement_search_metadata'
                  data:
                    type: object
                    properties:
                      pagination:
                        $ref: '#/components/schemas/search_pagination'
                      advertisements:
                        type: array
                        items:
                          $ref: '#/components/schemas/advertisement_search_result'
              example:
                metadata:
                  profile: null
                  filters:
                    source_types:
                      - linkedin
                    per_page: 25
                    language: en
                  ignored_fields: []
                  applied_source_types:
                    - linkedin
                data:
                  pagination:
                    page: 1
                    per_page: 25
                    total_entries: 694356
                    total_pages: 27775
                    total_display_pages: 250
                    is_timeout: false
                  advertisements:
                    - target_country_codes:
                        - US
                        - GB
                        - SG
                      advertisement_id: 3af8cb80-9a04-49a8-832d-333961d5f77a
                      advertisement_search_id: 3af8cb80-9a04-49a8-832d-333961d5f77a
                      created_at: '2026-03-03T01:46:35.909Z'
                      last_modified: '2026-03-03T12:46:25.289Z'
                      started_at: '2026-02-25T00:00:00.000Z'
                      ended_at: '2026-03-02T00:00:00.000Z'
                      title: Thuraya-4 Satellite Solutions for Energy
                      source_type: linkedin
                      advertisement_format: Single Image Ad
                      video_url: null
                      image_url: >-
                        https://buckets.pubrio.com/images/public/cL1U5ghYPAy65qc4cu5wtmgzv8P9xJgrofNTwohPWsyT3S5ob2zNp6Jov1nM9aaDRy.jpg
                      carousel_images: null
                      destination_url: >-
                        https://www.thuraya.com/en/thuraya-4-ngs/home/index.html?trk=ad_library_ad_preview_headline_content
                      companies:
                        logo_url: >-
                          https://buckets.pubrio.com/company-logo/MjA3NTQ4NjQyM2lsajlzc25qMXNwYWNlNDIuYWlsaW5rZWRpbl82NDIyMjM3NA==.jpg
                        domain_search_id: fe3963dc-87a4-4016-8c95-217ea68cd57a
                        company_name: Space42
                        linkedin_name: space42ai
                        country_code: AE
                        domain: space42.ai
                      raw_link_url: null
                      publisher_platforms: null
                      advertisement_format_normalized: image
                      is_company_matched: true
                      advertiser: Thuraya
                      advertiser_url: https://www.linkedin.com/company/thuraya
                      advertisement_url: https://www.linkedin.com/ad-library/detail/1518455034
                      total_impressions: < 1k
                      total_impressions_lower: null
                      total_impressions_upper: 1000
                    - target_country_codes:
                        - US
                        - GB
                        - SG
                      advertisement_id: 47eb6229-e7aa-427f-bcd3-76e154fd5022
                      advertisement_search_id: 47eb6229-e7aa-427f-bcd3-76e154fd5022
                      created_at: '2026-06-03T22:00:33.035Z'
                      last_modified: '2026-06-05T18:15:51.823Z'
                      started_at: '2026-05-25T07:00:00.000Z'
                      ended_at: '2026-06-03T07:00:00.000Z'
                      title: Dubai Opportunities. One Exclusive Event
                      source_type: facebook
                      advertisement_format: DCO
                      video_url: null
                      image_url: >-
                        https://buckets.pubrio.com/images/public/4snZgJwKCWEYwAUwxrkkK1ooEFEAMF92Xet6Bm16oAyqwUSoqekDjX8S9DmfixutuH.jpg
                      carousel_images: null
                      destination_url: >-
                        https://promotions.damacproperties.com/en/event-in-egypt-social-specific/
                      raw_link_url: http://fb.me/
                      publisher_platforms:
                        - facebook
                        - instagram
                      companies:
                        logo_url: >-
                          https://buckets.pubrio.com/company-logo/MjYwODA0MjRkYW1hY3Byb3BlcnRpZXMuY29tbGlua2VkaW5fcF9sb2dvMTU=.jpg
                        domain_search_id: 9da7386c-5bdc-42b2-8fee-456e91024a3a
                        company_name: Damac Properties
                        linkedin_name: damac-properties
                        country_code: AE
                        domain: damacproperties.com
                      advertisement_format_normalized: image
                      is_company_matched: true
                      advertiser: Thuraya
                      advertiser_url: https://www.linkedin.com/company/thuraya
                      advertisement_url: https://www.linkedin.com/ad-library/detail/1518455034
                      total_impressions: < 1k
                      total_impressions_lower: null
                      total_impressions_upper: 1000
                    - ...
        '400':
          $ref: '#/components/responses/general_error'
        '429':
          $ref: '#/components/responses/rate_limit_error'
        '500':
          $ref: '#/components/responses/server_error'
components:
  schemas:
    target_locations:
      type: array
      items:
        type: string
      example:
        - TW
        - AE
        - 'NO'
      description: >-
        Filtre les publicités pour inclure celles ciblant des localisations
        spécifiques par code pays. Utilisez ce paramètre pour trouver les
        publicités diffusées dans des pays spécifiques. Se combine avec
        `filter_conditions` à l'aide de l'opérateur OR - la publicité doit
        cibler au moins l'une des localisations spécifiées.
    exclude_target_locations:
      type: array
      items:
        type: string
      example:
        - IS
        - GB
        - FR
        - IE
        - ES
      description: >-
        Filtre les publicités pour exclure celles ciblant des localisations
        spécifiques par code pays. Utilisez ce paramètre pour écarter les
        publicités diffusées dans des pays spécifiques. Lorsqu'il est spécifié
        dans `filter_conditions` avec l'opérateur 'or', la publicité ne doit
        cibler aucune des localisations exclues.
    search_terms:
      type: array
      items:
        type: string
      example:
        - pubrio
      description: Une liste de chaînes sur lesquelles filtrer les résultats.
    headlines:
      type: array
      items:
        type: string
      example:
        - ASUS
        - iPhone
      description: Une liste d'accroches pour filtrer les résultats de recherche.
    ads_filter_conditions:
      type: array
      items:
        type: object
        properties:
          key:
            type: string
            enum:
              - target_locations
              - exclude_target_locations
            example: exclude_target_locations
            description: >-
              La clé de filtre spécifiant à quelle propriété appliquer
              l'opérateur.
          operator:
            type: string
            enum:
              - or
              - and
            example: or
            description: >-
              L'opérateur logique à appliquer. Utilisez 'or' pour faire
              correspondre les publicités qui incluent/excluent au moins une des
              localisations spécifiées, ou 'and' pour faire correspondre les
              publicités qui incluent/excluent toutes les localisations
              spécifiées.
      description: >-
        Options de filtrage avancées pour les recherches de publicités.
        Spécifiez des conditions pour affiner vos résultats de recherche pour le
        point de terminaison de recherche de publicités.
    start_dates:
      type: array
      items:
        type: string
        format: date
      example:
        - '2025-12-01'
        - '2025-12-01'
      description: Une liste de dates de début pour filtrer les résultats de recherche.
    end_dates:
      type: array
      items:
        type: string
        format: date
      example:
        - '2025-12-25'
        - '2025-12-25'
      description: Une liste de dates de fin pour filtrer les résultats de recherche.
    advertisement_active_dates_search:
      type: array
      items:
        type: string
        format: date
      minItems: 2
      maxItems: 2
      example:
        - '2026-08-01'
        - '2026-08-31'
      description: >-
        Fenêtre inclusive `[from, to]` (UTC). Renvoie les publicités actives à
        un moment quelconque de cette fenêtre, y compris celles qui ont démarré
        plus tôt, ce qui la fait correspondre à Advertisement Insights. Les
        publicités non datées comptent à partir de `created_at`. Les deux dates
        sont requises, `from` ≤ `to`.
    search_created_at:
      type: string
      format: date-time
      example: '2026-09-02T12:00:00Z'
      description: >-
        Ingéré à cet instant ou après (UTC). Date ou horodatage ISO. Pour des
        synchronisations incrémentielles, transmettez le `created_at` de votre
        enregistrement stocké le plus récent.
    company_locations:
      type: array
      items:
        type: string
      example:
        - US
        - SG
        - CN
      description: >-
        L'emplacement du siège social de l'entreprise. Consultez les points de
        terminaison `location` sous l'onglet Filters pour plus d'informations.
    companies:
      type: array
      items:
        type: string
        format: uuid
      description: >-
        Une liste d'identifiants uniques (domain_search_id) utilisée pour les
        opérations de recherche d'entreprises et de personnes.
    advertisement_search_id:
      type: string
      format: uuid
      example: a92643e8-9033-4029-aa65-ef929327cebb
      description: >-
        Un identifiant unique pour le résultat de recherche de publicité.
        Utilisé pour référencer des publicités spécifiques renvoyées par le
        point de terminaison de recherche de publicités.
    domains:
      type: array
      items:
        type: string
      example:
        - pubrio.com
      description: >-
        Liste de domaines d'entreprise utilisée pour les opérations de recherche
        d'entreprises et de personnes. Si nous recevons une URL telle que
        `www.pubrio.com` ou `https://docs.pubrio.com/`, le système la convertira
        en `pubrio.com` pour le traitement.
    company_linkedin_urls:
      type: array
      items:
        type: string
      example:
        - https://www.linkedin.com/company/pubrio
      description: >-
        L'URL complète du profil d'entreprise LinkedIn. L'URL commence par
        `http` et contient `linkedin.com/company/`
    is_realtime_enrichment:
      type: boolean
      default: false
      example: true
      description: >-
        Active l'enrichissement en temps réel pour une requête unique limitée à
        une entreprise (filtrée par `domain_search_id`, `domains`, ou
        `linkedin_urls`). Lorsque la recherche initiale ne renvoie aucun
        résultat, le point de terminaison extrait la source, enregistre les
        données de manière persistante, puis relance la recherche avant de
        répondre. Soumis à un délai propre à chaque route.
    advertisement_formats:
      type: array
      items:
        type: string
        enum:
          - image
          - video
          - text
          - carousel
          - dynamic_product
          - document
          - message
          - event
          - article
          - spotlight
          - follow
          - job
          - engagement
      example:
        - image
        - video
      description: >-
        Trouve les entreprises ayant au moins une publicité dans l'un de ces
        formats créatifs.
    advertisement_reach_tiers:
      type: array
      items:
        type: string
        enum:
          - lt_1k
          - 1k_10k
          - 10k_50k
          - 50k_100k
          - 100k_500k
          - 500k_1m
          - 1m_plus
      example:
        - 100k_500k
        - 500k_1m
        - 1m_plus
      description: >-
        Tranche d'impressions de la publicité : `lt_1k`, `1k_10k`, `10k_50k`,
        `50k_100k`, `100k_500k`, `500k_1m`, `1m_plus`. Les publicités sans
        valeur `total_impressions` ne correspondent jamais ; les slugs inconnus
        ne correspondent à rien.
    advertisement_active_ads:
      type: array
      items:
        type: integer
        nullable: true
      minItems: 2
      maxItems: 2
      example:
        - 1
        - null
      description: >-
        Nombre minimal et maximal de publicités actuellement actives de
        l'entreprise, tous pays confondus. Utilisez `null` pour une borne
        ouverte, par ex. `[1, null]` pour « au moins une publicité active ».
    advertisement_running_ads:
      type: array
      items:
        type: integer
        nullable: true
      minItems: 2
      maxItems: 2
      example:
        - 1
        - null
      description: >-
        Nombre minimal et maximal de publicités de l'entreprise encore diffusées
        (sans date de fin, ou avec une date de fin dans le futur). Actuellement
        renseigné uniquement pour les publicités LinkedIn.
    advertisement_total_ads:
      type: array
      items:
        type: integer
        nullable: true
      minItems: 2
      maxItems: 2
      example:
        - 10
        - null
      description: >-
        Nombre minimal et maximal du total des publicités jamais enregistrées
        pour l'entreprise, tous pays confondus.
    advertisement_platform_count:
      type: array
      items:
        type: integer
        nullable: true
      minItems: 2
      maxItems: 2
      example:
        - 2
        - null
      description: >-
        Nombre minimal et maximal de plateformes publicitaires distinctes
        (linkedin, facebook, google, tiktok, apple) sur lesquelles l'entreprise
        fait activement de la publicité.
    advertisement_format_count:
      type: array
      items:
        type: integer
        nullable: true
      minItems: 2
      maxItems: 2
      example:
        - 2
        - null
      description: >-
        Nombre minimal et maximal de formats créatifs publicitaires distincts
        que l'entreprise diffuse activement.
    advertisement_impressions_estimate:
      type: array
      items:
        type: integer
        nullable: true
      minItems: 2
      maxItems: 2
      example:
        - 1000
        - null
      description: >-
        Nombre minimal et maximal estimé d'impressions publicitaires, cumulé sur
        tous les pays. Seules les publicités disposant d'une plage d'impressions
        déclarée sont comptabilisées.
    advertisement_country_activity:
      type: object
      properties:
        country:
          type: string
          example: US
          description: Code pays ISO 3166-1 alpha-2 auquel limiter ce filtre. Obligatoire.
        rank:
          type: array
          items:
            type: integer
            nullable: true
          minItems: 2
          maxItems: 2
          example:
            - null
            - 500
          description: >-
            Classement au sein de ce pays par volume publicitaire. 1 correspond
            au plus gros annonceur, et le chiffre augmente à mesure que le
            volume publicitaire diminue. Utilisez `[null, 500]` pour trouver les
            500 plus gros annonceurs de ce pays ; utilisez `[500, null]` pour
            trouver tous ceux classés au 500e rang ou au-delà.
        percentile:
          type: array
          items:
            type: number
            nullable: true
          minItems: 2
          maxItems: 2
          example:
            - 90
            - null
          description: >-
            Centile au sein de ce pays par volume publicitaire, de 0 à 100. Plus
            la valeur est élevée, plus l'annonceur dépense. Utilisez `[90,
            null]` pour les 10 % d'annonceurs les plus dépensiers de ce pays.
        volume_score:
          type: array
          items:
            type: number
            nullable: true
          minItems: 2
          maxItems: 2
          example:
            - 0.5
            - null
          description: >-
            Le score de volume publicitaire sous-jacent, compris entre 0 et 1, à
            partir duquel `rank` et `percentile` sont tous deux calculés.
        active_ads:
          type: array
          items:
            type: integer
            nullable: true
          minItems: 2
          maxItems: 2
          example:
            - 1
            - null
          description: Nombre minimal et maximal de publicités actives, limité à ce pays.
        running_ads:
          type: array
          items:
            type: integer
            nullable: true
          minItems: 2
          maxItems: 2
          example:
            - 1
            - null
          description: >-
            Nombre minimal et maximal de publicités diffusées, limité à ce pays.
            Actuellement renseigné uniquement pour les publicités LinkedIn.
        total_ads:
          type: array
          items:
            type: integer
            nullable: true
          minItems: 2
          maxItems: 2
          example:
            - 10
            - null
          description: Nombre minimal et maximal total de publicités, limité à ce pays.
        impressions:
          type: array
          items:
            type: integer
            nullable: true
          minItems: 2
          maxItems: 2
          example:
            - 1000
            - null
          description: Nombre minimal et maximal estimé d'impressions, limité à ce pays.
      required:
        - country
      example:
        country: US
        rank:
          - null
          - 500
      description: >-
        Activité publicitaire pour un pays spécifique. `country` est
        obligatoire, et au moins un autre champ doit être renseigné (un pays
        seul ne correspond à rien). Pour un total tous pays confondus, utilisez
        plutôt les filtres de premier niveau `advertisement_active_ads` /
        `advertisement_total_ads` / `advertisement_impressions_estimate`.
    advertisement_source_types:
      type: array
      items:
        type: string
        enum:
          - linkedin
          - facebook
          - google
          - tiktok
          - apple
      example:
        - linkedin
        - facebook
      description: >-
        Sources à inclure : `linkedin`, `facebook` (`meta` accepté), `google`,
        `tiktok`, `apple`. Les valeurs inconnues ne correspondent à rien et sont
        reprises dans `metadata.unsupported_source_types`.
    advertisement_exclude_source_types:
      type: array
      items:
        type: string
        enum:
          - linkedin
          - facebook
          - google
          - tiktok
          - apple
      example:
        - apple
      description: >-
        Exclut les publicités capturées depuis ces sources. Même vocabulaire que
        `source_types` (`linkedin`, `facebook`, `google`, `tiktok`, `apple` ;
        `meta` est un alias de `facebook`). Les valeurs inconnues sont ignorées.
    advertisement_enrichment_mode:
      type: string
      enum:
        - default
        - latest
      default: default
      example: latest
      description: >-
        Contrôle le comportement de l'enrichissement en temps réel. `default`
        renvoie ce qui se trouve déjà dans la base de données, et ne déclenche
        l'enrichissement que lorsque l'ensemble de résultats est vide et que
        `is_realtime_enrichment` est activé. `latest` contourne le cache et
        force un nouveau passage d'enrichissement sur les enregistrements source
        les plus récents à chaque appel — il déclenche l'enrichissement de
        lui-même, sans nécessiter aucun autre indicateur.
    per_page:
      type: integer
      example: 25
      default: 25
      maximum: 25
      description: >-
        Enregistrements par page. Par défaut 25, ce qui constitue également le
        plafond sur la plupart des forfaits — la limite correspond au
        `max_search_per_page` de votre abonnement, renvoyé par
        [Profile](/fr/api-reference/endpoint/profile/profile). Le dépasser
        renvoie **HTTP 416** avec le code `41676` (ou `41613` pour la recherche
        d'entreprises et de personnes), et non un ensemble de résultats tronqué.
    page:
      type: integer
      example: 1
      default: 1
      description: >-
        Numéro de page, à partir de 1. Le plafond correspond au
        `max_search_page` de votre abonnement (`max_company_search_page` pour la
        recherche d'entreprises), renvoyé par
        [Profile](/fr/api-reference/endpoint/profile/profile). Le dépasser
        renvoie **HTTP 416**.
    is_ascending_order:
      type: boolean
      default: false
      example: false
      description: >-
        Sens de tri. Les résultats sont renvoyés du plus récent au plus ancien
        par défaut ; définissez `true` pour du plus ancien au plus récent. Il
        n'y a pas de `sort_by` sur cet endpoint — la clé de tri est fixe et
        indiquée dans la description de l'endpoint.
    advertisement_publisher_platforms:
      type: array
      items:
        type: string
        enum:
          - facebook
          - instagram
          - messenger
          - threads
          - audience_network
      example:
        - facebook
        - instagram
      description: >-
        Filtre les publicités Facebook/Meta selon la surface de plateforme sur
        laquelle elles ont été diffusées. En minuscules et insensible à la
        casse. S'applique uniquement à la source `facebook` (les autres sources
        sont mono-plateforme).
    advertisement_exclude_publisher_platforms:
      type: array
      items:
        type: string
        enum:
          - facebook
          - instagram
          - messenger
          - threads
          - audience_network
      example:
        - audience_network
      description: >-
        Exclut les publicités Facebook/Meta diffusées sur ces surfaces de
        plateforme.
    advertisement_is_include_unlinked_companies:
      type: boolean
      default: false
      example: true
      description: >-
        Inclut les publicités non encore liées à une entreprise résolue
        (publicités de la couche brute, par ex. publicités frauduleuses ou de
        pages éphémères). Par défaut à false, ce qui ne renvoie que les
        publicités attribuées à une entreprise.
    advertisement_search_metadata:
      allOf:
        - $ref: '#/components/schemas/search_metadata'
        - type: object
          properties:
            applied_source_types:
              type: array
              items:
                type: string
              description: >-
                Uniquement lorsque `source_types` a été envoyé : les valeurs qui
                ont été reconnues et appliquées.
            unsupported_source_types:
              type: array
              items:
                type: string
              description: >-
                Uniquement lorsque `source_types` contenait une valeur qui n'est
                pas une source connue. Ces valeurs ne correspondent à rien.
            coverage_notes:
              type: array
              items:
                type: object
                properties:
                  source_type:
                    type: string
                  scope:
                    type: string
                    enum:
                      - eea_uk_ch
              description: Notes de couverture pour les sources demandées, le cas échéant.
            skipped_source_types:
              type: array
              items:
                type: object
                properties:
                  source_type:
                    type: string
                    description: Source qui a été ignorée.
                  reason:
                    type: string
                    enum:
                      - country_unknown_until_enriched
                    description: Raison pour laquelle la source n'a pas été appliquée.
              description: >-
                Sources qui n'ont pas été appliquées pour les `target_locations`
                demandées, chacune avec une `reason`.
      description: Contexte de la requête.
    search_pagination:
      type: object
      description: Pagination de l'ensemble de résultats.
      properties:
        page:
          type: integer
          description: Numéro de la page actuelle.
        per_page:
          type: integer
          description: Nombre d'enregistrements par page.
        total_entries:
          type: integer
          description: >-
            Nombre total d'enregistrements correspondants. Pour les recherches
            larges, indépendantes d'une entreprise, il s'agit d'une estimation.
        total_pages:
          type: integer
          description: '`total_entries` divisé par `per_page`.'
        total_display_pages:
          type: integer
          description: >-
            Pages que vous pouvez réellement demander, plafonnées par le
            `max_search_page` de votre forfait.
        is_timeout:
          type: boolean
          description: >-
            `true` lorsque la requête de comptage a expiré et que
            `total_entries` est une estimation partielle.
    advertisement_search_result:
      type: object
      description: Une publicité.
      properties:
        advertisement_id:
          type: string
          format: uuid
          description: Identifiant de la publicité.
        advertisement_search_id:
          type: string
          format: uuid
          description: >-
            Même valeur que `advertisement_id`. Transmettez-la à Advertisement
            Lookup.
        created_at:
          type: string
          format: date-time
          description: >-
            Date à laquelle Pubrio a capturé la publicité pour la première fois.
            C'est la clé de tri par défaut.
        last_modified:
          type: string
          format: date-time
          description: Date de dernière mise à jour de l'enregistrement.
        started_at:
          type: string
          format: date-time
          description: >-
            Date à laquelle la publicité a commencé à être diffusée, telle que
            rapportée par la source.
          nullable: true
        ended_at:
          type: string
          format: date-time
          description: >-
            Date à laquelle la publicité a cessé d'être diffusée ; `null` tant
            qu'elle est encore active.
          nullable: true
        title:
          type: string
          description: Titre ou nom de la publicité.
          nullable: true
        source_type:
          type: string
          enum:
            - linkedin
            - facebook
            - google
            - tiktok
            - apple
          description: >-
            Source depuis laquelle la publicité a été capturée. Même vocabulaire
            que le filtre `source_types`.
        advertisement_format:
          type: string
          description: >-
            Libellé de format exactement tel que publié par la source, par ex.
            `Single Image Ad`, `MULTI_IMAGES`.
          nullable: true
        advertisement_format_normalized:
          type: string
          nullable: true
          enum:
            - image
            - video
            - text
            - carousel
            - dynamic_product
            - document
            - message
            - event
            - article
            - spotlight
            - follow
            - job
            - engagement
            - other
          description: >-
            Format canonique, le vocabulaire accepté par le filtre
            `advertisement_formats`. `other` lorsque le libellé brut n'est pas
            mappé.
        is_company_matched:
          type: boolean
          description: >-
            `true` lorsque la publicité est liée à un enregistrement
            d'entreprise Pubrio. Les publicités non liées ne sont renvoyées
            qu'avec `is_include_unlinked_companies: true`.
        advertiser:
          type: string
          description: Nom de l'annonceur tel qu'affiché par la source.
          nullable: true
        advertiser_url:
          type: string
          description: Page de l'annonceur à la source, lorsque disponible.
          nullable: true
        advertisement_url:
          type: string
          description: >-
            Lien vers la publicité dans la bibliothèque publicitaire de la
            source, lorsque disponible.
          nullable: true
        total_impressions:
          type: string
          description: >-
            Estimation d'impressions exactement telle que publiée par la source,
            par ex. `< 1k`, `10k-50k`. `null` pour les sources qui ne rapportent
            pas d'impressions.
          nullable: true
        total_impressions_lower:
          type: integer
          nullable: true
          description: >-
            Borne inférieure de la plage d'impressions ; `null` pour les plages
            de type `< N`.
        total_impressions_upper:
          type: integer
          nullable: true
          description: >-
            Borne supérieure de la plage d'impressions ; `null` pour les plages
            ouvertes.
        image_url:
          type: string
          description: Image du visuel, lorsque la publicité en a une.
          nullable: true
        video_url:
          type: string
          description: Vidéo du visuel, lorsque la publicité en a une.
          nullable: true
        carousel_images:
          type: array
          nullable: true
          items:
            type: string
          description: Images du carrousel, pour les formats carrousel.
        destination_url:
          type: string
          description: >-
            Page de destination résolue. Les enrobages de clic Facebook tels que
            `fb.me` sont déballés pour révéler l'URL réelle du tunnel.
          nullable: true
        raw_link_url:
          type: string
          description: Le lien original exactement tel que capturé, avant déballage.
          nullable: true
        target_country_codes:
          type: array
          nullable: true
          items:
            type: string
          description: >-
            Pays dans lesquels la publicité a été diffusée (ISO 3166-1 alpha-2).
            Même vocabulaire que le filtre `target_locations`.
        publisher_platforms:
          type: array
          nullable: true
          items:
            type: string
            enum:
              - facebook
              - instagram
              - messenger
              - threads
              - audience_network
          description: >-
            Surfaces Meta sur lesquelles la publicité a été diffusée :
            `facebook`, `instagram`, `messenger`, `threads`, `audience_network`.
            `null` pour les sources autres que `facebook`.
        companies:
          $ref: '#/components/schemas/search_result_company'
    search_metadata:
      type: object
      description: Contexte de la requête.
      properties:
        profile:
          type: object
          nullable: true
          description: >-
            Bloc de crédit (`credit`, `topup_credit`, `total_credit_cost`)
            lorsque la comptabilisation des crédits est demandée ; `null` pour
            le trafic par simple clé API.
        filters:
          type: object
          description: >-
            Écho du corps de la requête tel que l'endpoint l'a appliqué, y
            compris les valeurs par défaut telles que `per_page` et `language`.
        ignored_fields:
          type: array
          items:
            type: string
          description: >-
            Clés du corps que l'endpoint n'a pas reconnues et a abandonnées.
            Vide signifie que toutes les clés ont été appliquées — un filtre mal
            orthographié élargit la recherche au lieu d'échouer.
    search_result_company:
      type: object
      description: L'entreprise à laquelle l'enregistrement est lié.
      properties:
        domain_search_id:
          type: string
          format: uuid
          description: >-
            Identifiant d'entreprise Pubrio. Transmettez-le à `companies` sur
            n'importe quelle recherche, ou à Company Lookup.
        company_name:
          type: string
          description: Nom de l'entreprise.
        linkedin_name:
          type: string
          nullable: true
          description: >-
            Slug d'entreprise LinkedIn (la partie après
            `linkedin.com/company/`).
        country_code:
          type: string
          nullable: true
          description: Code ISO 3166-1 alpha-2 du siège social de l'entreprise.
        company_url:
          type: string
          nullable: true
          description: URL du site web de l'entreprise.
        domain:
          type: string
          description: Domaine de l'entreprise, normalisé (`stripe.com`).
        logo_url:
          type: string
          nullable: true
          description: URL du logo de l'entreprise.
  responses:
    general_error:
      description: >-
        Requête invalide. La requête était mal formée ou contenait des
        paramètres invalides. Consultez le code d'erreur et le message pour plus
        de détails.
      content:
        application/json:
          schema:
            required:
              - code
              - message
              - details
            type: object
            properties:
              code:
                example: 40001
                type: integer
              message:
                example: >-
                  Errors and codes will vary depending on the scenario, please
                  see the documentation for information.
                type: string
              details:
                type: object
    rate_limit_error:
      description: >-
        Limite de débit dépassée. Trop de requêtes ont été effectuées au cours
        d'une période donnée. Réessayez après la réinitialisation de la fenêtre
        de limitation de débit.
      content:
        application/json:
          schema:
            required:
              - error
            type: object
            properties:
              error:
                example: Request rate limit exceeded. Please wait and try again later.
                type: string
    server_error:
      description: >-
        Erreur interne du serveur. Une erreur inattendue s'est produite sur le
        serveur. Contactez le support si l'erreur persiste.
      content:
        application/json:
          schema:
            required:
              - error
            type: object
            properties:
              error:
                example: An unexpected error occurred on the server.
                type: string
  securitySchemes:
    pubrio_api_key:
      type: apiKey
      name: pubrio-api-key
      description: >-
        Un jeton API unique qui représente les actions que vous effectuez via
        l'API ainsi que les autorisations et opérations correspondantes. Vous
        pouvez le créer dans la section
        [Settings](https://dashboard.pubrio.com/#/settings/).
      in: header

````