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

# Search for a discount

> Recherchez des objets CRM d'un type spécifié à l'aide de divers filtres et critères. Ce point de terminaison vous permet d'effectuer des requêtes complexes pour récupérer des objets qui correspondent à des conditions spécifiques. Les résultats de la recherche incluent le nombre total d'objets correspondants et les objets eux-mêmes.

> **Supported products**

> **Required Scopes**


## OpenAPI

````yaml specs/2026-09/crm-discounts-v2026-09.json POST /crm/objects/2026-09/discounts/search
openapi: 3.0.1
info:
  title: CRM Discounts
  description: Basepom for all HubSpot Projects
  version: 2026-09
  x-hubspot-product-tier-requirements:
    marketing: FREE
    sales: FREE
    service: FREE
    cms: FREE
    commerce: FREE
    crmHub: FREE
    dataHub: FREE
servers:
  - url: https://api.hubapi.com
security: []
tags:
  - name: Advanced
  - name: Basic
  - name: Batch
  - name: Search
paths:
  /crm/objects/2026-09/discounts/search:
    post:
      tags:
        - Search
      summary: Recherche
      description: >-
        Recherchez des objets CRM d'un type spécifié à l'aide de divers filtres
        et critères. Ce point de terminaison vous permet d'effectuer des
        requêtes complexes pour récupérer des objets qui correspondent à des
        conditions spécifiques. Les résultats de la recherche incluent le nombre
        total d'objets correspondants et les objets eux-mêmes.
      operationId: >-
        post-/crm/objects/2026-09/discounts/search_/crm/objects/2026-09-beta/{objectType}/search
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PublicObjectSearchRequest'
        required: true
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/CollectionResponseWithTotalSimplePublicObject
        default:
          $ref: '#/components/responses/Error'
          description: ''
      security:
        - oauth2:
            - crm.objects.deals.read
        - oauth2:
            - crm.objects.subscriptions.read
        - oauth2:
            - crm.objects.services.read
        - oauth2:
            - crm.objects.tickets.sensitive.read
        - oauth2:
            - crm.objects.orders.read
        - oauth2:
            - crm.objects.listings.write
        - oauth2:
            - crm.objects.custom.read
        - oauth2:
            - crm.objects.companies.write
        - oauth2:
            - crm.objects.tasks.read
        - oauth2:
            - crm.objects.custom.sensitive.write.v2
        - oauth2:
            - crm.objects.custom.highly_sensitive.write.v2
        - oauth2:
            - crm.objects.companies.read
        - oauth2:
            - crm.objects.appointments.sensitive.read.v2
        - oauth2:
            - crm.objects.contacts.highly_sensitive.read.v2
        - oauth2:
            - crm.objects.tickets.highly_sensitive.read
        - oauth2:
            - crm.objects.companies.sensitive.read.v2
        - oauth2:
            - crm.objects.tickets.sensitive.write
        - oauth2:
            - media_bridge.read
        - oauth2:
            - crm.objects.deals.highly_sensitive.read.v2
        - oauth2:
            - crm.objects.contacts.highly_sensitive.write.v2
        - oauth2:
            - crm.objects.companies.highly_sensitive.read.v2
        - oauth2:
            - crm.objects.commercepayments.write
        - oauth2:
            - crm.objects.invoices.write
        - oauth2:
            - crm.objects.contacts.sensitive.write.v2
        - oauth2:
            - crm.objects.calls.read
        - oauth2:
            - crm.objects.users.write
        - oauth2:
            - crm.objects.meetings.read
        - oauth2:
            - crm.objects.custom.sensitive.read.v2
        - oauth2:
            - crm.objects.users.read
        - oauth2:
            - crm.objects.partner-services.read
        - oauth2:
            - crm.objects.orders.write
        - oauth2:
            - crm.objects.partner-services.write
        - oauth2:
            - crm.objects.appointments.write
        - oauth2:
            - crm.objects.projects.highly_sensitive.write
        - oauth2:
            - crm.objects.carts.write
        - oauth2:
            - crm.objects.tickets.highly_sensitive.write
        - oauth2:
            - crm.objects.commercepayments.read
        - oauth2:
            - crm.objects.products.write
        - oauth2:
            - crm.objects.feedback_submissions.read
        - oauth2:
            - crm.objects.services.write
        - oauth2:
            - crm.objects.subscriptions.write
        - oauth2:
            - crm.objects.deals.sensitive.write.v2
        - oauth2:
            - crm.objects.contacts.read
        - oauth2:
            - crm.objects.appointments.sensitive.write.v2
        - oauth2:
            - crm.objects.projects.highly_sensitive.read
        - oauth2:
            - crm.objects.invoices.read
        - oauth2:
            - crm.objects.custom.write
        - oauth2:
            - tickets.sensitive.v2
        - oauth2:
            - crm.objects.deals.write
        - oauth2:
            - e-commerce
        - oauth2:
            - crm.objects.appointments.read
        - oauth2:
            - crm.objects.projects.read
        - oauth2:
            - crm.objects.companies.sensitive.write.v2
        - oauth2:
            - crm.objects.companies.highly_sensitive.write.v2
        - oauth2:
            - crm.objects.deals.highly_sensitive.write.v2
        - oauth2:
            - crm.objects.custom.highly_sensitive.read.v2
        - oauth2:
            - crm.objects.goals.write
        - oauth2:
            - crm.objects.projects.sensitive.read
        - oauth2:
            - crm.objects.line_items.write
        - oauth2:
            - crm.objects.contacts.write
        - oauth2:
            - crm.objects.goals.read
        - oauth2:
            - crm.objects.line_items.read
        - oauth2:
            - crm.objects.partner-clients.write
        - oauth2:
            - crm.objects.projects.write
        - oauth2:
            - crm.objects.projects.sensitive.write
        - oauth2:
            - crm.objects.deals.sensitive.read.v2
        - oauth2:
            - crm.objects.quotes.write
        - oauth2:
            - tickets.highly_sensitive.v2
        - oauth2:
            - crm.objects.leads.read
        - oauth2:
            - crm.objects.leads.write
        - oauth2:
            - crm.objects.carts.read
        - oauth2:
            - crm.objects.emails.read
        - oauth2:
            - crm.objects.quotes.read
        - oauth2:
            - crm.objects.courses.write
        - oauth2:
            - crm.objects.partner-clients.read
        - oauth2:
            - crm.objects.notes.read
        - oauth2:
            - crm.objects.courses.read
        - oauth2:
            - crm.objects.listings.read
        - oauth2:
            - crm.objects.contacts.sensitive.read.v2
        - oauth2:
            - crm.objects.products.read
components:
  schemas:
    PublicObjectSearchRequest:
      required:
        - after
        - filterGroups
        - limit
        - properties
        - sorts
      type: object
      properties:
        after:
          type: string
          description: >-
            Une chaîne utilisée comme jeton de curseur pour la pagination. Elle
            représente la dernière ressource lue avec succès et est utilisée
            pour récupérer l'ensemble de résultats suivant dans une réponse
            paginée.
        filterGroups:
          type: array
          description: >-
            Un tableau de groupes de filtres utilisés pour affiner les résultats
            de recherche. Chaque groupe de filtres peut contenir plusieurs
            filtres qui sont appliqués ensemble.
          items:
            $ref: '#/components/schemas/FilterGroup'
        limit:
          type: integer
          description: >-
            Un entier indiquant le nombre maximal de résultats à renvoyer. Cela
            permet de contrôler la taille de l'ensemble de résultats.
          format: int32
        properties:
          type: array
          description: >-
            Un tableau de chaînes spécifiant les propriétés à renvoyer dans les
            résultats de recherche. Si une propriété spécifiée n'est pas
            présente sur les objets, elle sera ignorée.
          items:
            type: string
        query:
          type: string
          description: >-
            Chaîne représentant une requête de recherche à faire correspondre
            aux propriétés des objets.
        sorts:
          type: array
          description: "Un tableau de chaînes spécifiant l'ordre de tri des résultats de recherche. Chaque chaîne représente une propriété à trier, avec une direction facultative (par exemple, «\_propertyName ASC\_» ou «\_propertyName DESC\_»)."
          items:
            type: string
      description: Décrit une demande de recherche
    CollectionResponseWithTotalSimplePublicObject:
      required:
        - results
        - total
      type: object
      properties:
        paging:
          $ref: '#/components/schemas/Paging'
        results:
          type: array
          description: >-
            Un tableau d'éléments SimplePublicObject, chacun représentant un
            objet individuel dans la collection.
          items:
            $ref: '#/components/schemas/SimplePublicObject'
        total:
          type: integer
          description: Le nombre de résultats disponibles
          format: int32
      description: >-
        Représente une liste d'objets simples renvoyés par une requête API,
        ainsi que le nombre total d'objets disponibles.
    FilterGroup:
      required:
        - filters
      type: object
      properties:
        filters:
          type: array
          description: >-
            Un tableau d'objets de filtre qui définissent les critères de
            recherche. Chaque filtre spécifie une propriété, un opérateur et une
            valeur ou une plage de valeurs à utiliser comme filtre.
          items:
            $ref: '#/components/schemas/Filter'
      description: >-
        Représente un groupe de filtres utilisés pour interroger des données
        dans HubSpot. Ce composant est utilisé pour définir des critères de
        filtrage des fiches d'informations dans divers points de terminaison
        d'API.
    Paging:
      type: object
      properties:
        next:
          $ref: '#/components/schemas/NextPage'
        prev:
          $ref: '#/components/schemas/PreviousPage'
      description: >-
        Représente les informations de pagination pour naviguer dans une liste
        de résultats de l'API. Il fournit des détails sur la manière d'accéder à
        l'ensemble de résultats précédent ou suivant.
    SimplePublicObject:
      required:
        - archived
        - createdAt
        - id
        - properties
        - updatedAt
      type: object
      properties:
        archived:
          type: boolean
          description: Un booléen indiquant si cet objet est archivé.
        archivedAt:
          type: string
          description: La date et l'heure d'archivage de cet objet, au format ISO 8601.
          format: date-time
        createdAt:
          type: string
          description: La date et l'heure de création de cet objet, au format ISO 8601.
          format: date-time
        id:
          type: string
          description: >-
            L'identifiant unique de cet objet CRM, représenté sous forme de
            chaîne de caractères.
        objectWriteTraceId:
          type: string
          description: >-
            Une chaîne de caractères utilisée pour tracer les opérations
            d'écriture sur cet objet.
        properties:
          type: object
          additionalProperties:
            type: string
          description: >-
            Une carte des noms de propriétés et de leurs valeurs, où chaque
            valeur est une chaîne de caractères.
        propertiesWithHistory:
          type: object
          additionalProperties:
            type: array
            items:
              $ref: '#/components/schemas/ValueWithTimestamp'
          description: >-
            Une carte des noms de propriétés vers des tableaux de valeurs
            historiques, chacun avec un horodatage et des informations de
            source.
        updatedAt:
          type: string
          description: >-
            La date et l'heure de la dernière mise à jour de cet objet, au
            format ISO 8601.
          format: date-time
        url:
          type: string
          description: Chaîne représentant l'URL de cet objet.
        warnings:
          type: array
          description: >-
            Un tableau d'avertissements associés à cet objet, chacun contenant
            une catégorie, un message et un contexte.
          items:
            $ref: '#/components/schemas/PublicObjectWarning'
      description: Un objet public simple.
    Error:
      required:
        - category
        - correlationId
        - message
      type: object
      properties:
        category:
          type: string
          description: La catégorie d'erreur
        context:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
          description: Contexte concernant la condition d'erreur
          example: >-
            {invalidPropertyName=[propertyValue], missingScopes=[scope1,
            scope2]}
        correlationId:
          type: string
          description: >-
            Un identifiant unique pour la demande. Incluez cette valeur dans
            tous les rapports d'erreurs ou tickets d'assistance
          format: uuid
          example: aeb5f871-7f07-4993-9211-075dc63e7cbf
        errors:
          type: array
          description: informations supplémentaires à propos de l'erreur
          items:
            $ref: '#/components/schemas/ErrorDetail'
        links:
          type: object
          additionalProperties:
            type: string
          description: >-
            Une carte des noms de liens vers les URI associés contenant de la
            documentation sur l'erreur ou les mesures correctives recommandées
        message:
          type: string
          description: >-
            Un message lisible par la personne décrivant l'erreur ainsi que les
            mesures correctives possibles, le cas échéant
          example: An error occurred
        subCategory:
          type: string
          description: >-
            Une catégorie spécifique qui contient des détails plus précis sur
            l'erreur
      description: >-
        Représente une réponse d'erreur renvoyée par l'API lorsqu'une opération
        échoue. Ce composant est utilisé dans divers points de terminaison pour
        fournir des informations détaillées sur l'erreur rencontrée.
      example:
        message: Invalid input (details will vary based on the error)
        correlationId: aeb5f871-7f07-4993-9211-075dc63e7cbf
        category: VALIDATION_ERROR
        links:
          knowledge-base: https://www.hubspot.com/products/service/knowledge-base
    Filter:
      required:
        - operator
        - propertyName
      type: object
      properties:
        highValue:
          type: string
          description: "Une chaîne facultative représentant la valeur de la limite supérieure pour les filtres basés sur une plage. Elle est utilisée avec des opérateurs, tels que «\_BETWEEN\_», pour spécifier une plage."
        operator:
          type: string
          description: "L'opérateur utilisé pour comparer la valeur de la propriété. Il s'agit d'une chaîne et peut être l'une des valeurs prédéfinies suivantes\_: «\_EQ\_», «\_NEQ\_», «\_LT\_», «\_LTE\_», «\_GT\_», «\_GTE\_», «\_BETWEEN\_», «\_IN\_», «\_NOT_IN\_», «\_HAS_PROPERTY\_», «\_NOT_HAS_PROPERTY\_», «\_CONTAINS_TOKEN\_» ou «\_NOT_CONTAINS_TOKEN\_»."
          enum:
            - BETWEEN
            - CONTAINS_TOKEN
            - EQ
            - GT
            - GTE
            - HAS_PROPERTY
            - IN
            - LT
            - LTE
            - NEQ
            - NOT_CONTAINS_TOKEN
            - NOT_HAS_PROPERTY
            - NOT_IN
        propertyName:
          type: string
          description: >-
            Le nom de la propriété à filtrer. Il s'agit d'une chaîne qui
            identifie la propriété de l'objet CRM à laquelle le filtre
            s'applique.
        value:
          type: string
          description: >-
            La valeur à laquelle comparer la propriété. C'est une chaîne
            utilisée avec l'opérateur pour déterminer si la propriété remplit la
            condition de filtre.
        values:
          type: array
          description: "Un tableau de chaînes de caractères représentant plusieurs valeurs pour le filtre. Ceci est utilisé avec des opérateurs, tels que «\_IN\_» ou «\_NOT_IN\_» pour correspondre à l'une des valeurs spécifiées."
          items:
            type: string
      description: "Définit une condition unique pour la recherche d'objets CRM, en spécifiant la propriété sur laquelle filtrer, l'opérateur à utiliser (tel que «\_égal à\_», «\_supérieur à\_» ou «\_contient\_») et la ou les valeurs à comparer. "
    NextPage:
      required:
        - after
      type: object
      properties:
        after:
          type: string
          description: >-
            Un jeton de chaîne utilisé comme curseur pour récupérer la page de
            résultats suivante.
        link:
          type: string
          description: Chaîne contenant le lien URL vers la page de résultats suivante.
      description: >-
        Spécifie les informations de pagination nécessaires pour récupérer le
        prochain ensemble de résultats dans une réponse d'API paginée
    PreviousPage:
      required:
        - before
      type: object
      properties:
        before:
          type: string
          description: >-
            Un jeton de chaîne utilisé pour récupérer la page de résultats
            précédente.
        link:
          type: string
          description: Un lien URL pour accéder à la page de résultats précédente.
      description: >-
        spécifie les informations de pagination nécessaires pour récupérer
        l'ensemble de résultats précédent dans une réponse d'API paginée
    ValueWithTimestamp:
      required:
        - sourceType
        - timestamp
        - value
      type: object
      properties:
        sourceId:
          type: string
          description: >-
            Une chaîne représentant l'identifiant unique de la source à partir
            de laquelle la valeur a été obtenue.
        sourceLabel:
          type: string
          description: >-
            Une chaîne fournissant une étiquette lisible par un humain pour la
            source de la valeur.
        sourceType:
          type: string
          description: >-
            Une chaîne de caractères indiquant le type de source d'où provient
            la valeur. Cette propriété est obligatoire.
        timestamp:
          type: string
          description: >-
            La date et l'heure d'enregistrement de la fiche d'informations, au
            format ISO 8601.
          format: date-time
        updatedByUserId:
          type: integer
          description: >-
            Un nombre entier représentant l'ID de l'utilisateur ayant mis à jour
            la valeur pour la dernière fois.
          format: int32
        value:
          type: string
          description: >-
            La valeur associée à l'horodatage. Il s'agit d'une chaîne de
            caractères représentant les données qui ont été enregistrées.
      description: Modèle de propriété qui inclut un horodatage.
    PublicObjectWarning:
      required:
        - category
        - context
        - message
      type: object
      properties:
        category:
          type: string
          description: Une chaîne indiquant la catégorie de l'avertissement.
        context:
          type: object
          additionalProperties:
            type: string
          description: >-
            Un objet fournissant un contexte supplémentaire sur l'avertissement,
            avec des propriétés de chaîne.
        message:
          type: string
          description: Chaîne contenant le message d'avertissement.
      description: >-
        Représente un message d'avertissement lié à un objet public dans
        HubSpot, fournissant des détails sur la nature et le contexte de
        l'avertissement.
    ErrorDetail:
      required:
        - message
      type: object
      properties:
        code:
          type: string
          description: Le code du statut associé au détail de l'erreur
        context:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
          description: Contexte concernant la condition d'erreur
          example: '{missingScopes=[scope1, scope2]}'
        in:
          type: string
          description: >-
            Le nom du champ ou du paramètre dans lequel l'erreur a été détectée.
            Il s'agit d'une propriété de type chaîne de caractères.
        message:
          type: string
          description: >-
            Un message lisible par la personne décrivant l'erreur ainsi que les
            mesures correctives possibles, le cas échéant
        subCategory:
          type: string
          description: >-
            Une catégorie spécifique qui contient des détails plus précis sur
            l'erreur
      description: >-
        Représente des informations détaillées sur une erreur survenue dans
        l'API. Ce composant est utilisé pour fournir un contexte et des
        spécificités supplémentaires sur les erreurs, généralement dans le cadre
        d'une réponse d'erreur.
  responses:
    Error:
      description: An error occurred.
      content:
        '*/*':
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    oauth2:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://app.hubspot.com/oauth/authorize
          tokenUrl: https://api.hubapi.com/oauth/v1/token
          scopes:
            crm.objects.appointments.read: ''
            crm.objects.appointments.sensitive.read.v2: ''
            crm.objects.appointments.sensitive.write.v2: ''
            crm.objects.appointments.write: ''
            crm.objects.calls.read: ''
            crm.objects.carts.read: ''
            crm.objects.carts.write: ''
            crm.objects.commercepayments.read: ''
            crm.objects.commercepayments.write: ''
            crm.objects.companies.highly_sensitive.read.v2: ''
            crm.objects.companies.highly_sensitive.write.v2: ''
            crm.objects.companies.read: ''
            crm.objects.companies.sensitive.read.v2: ''
            crm.objects.companies.sensitive.write.v2: ''
            crm.objects.companies.write: ''
            crm.objects.contacts.highly_sensitive.read.v2: ''
            crm.objects.contacts.highly_sensitive.write.v2: ''
            crm.objects.contacts.read: ''
            crm.objects.contacts.sensitive.read.v2: ''
            crm.objects.contacts.sensitive.write.v2: ''
            crm.objects.contacts.write: ''
            crm.objects.courses.read: ''
            crm.objects.courses.write: ''
            crm.objects.custom.highly_sensitive.read.v2: ''
            crm.objects.custom.highly_sensitive.write.v2: ''
            crm.objects.custom.read: ''
            crm.objects.custom.sensitive.read.v2: ''
            crm.objects.custom.sensitive.write.v2: ''
            crm.objects.custom.write: ''
            crm.objects.deals.highly_sensitive.read.v2: ''
            crm.objects.deals.highly_sensitive.write.v2: ''
            crm.objects.deals.read: ''
            crm.objects.deals.sensitive.read.v2: ''
            crm.objects.deals.sensitive.write.v2: ''
            crm.objects.deals.write: ''
            crm.objects.emails.read: ''
            crm.objects.feedback_submissions.read: ''
            crm.objects.goals.read: ''
            crm.objects.goals.write: ''
            crm.objects.invoices.read: ''
            crm.objects.invoices.write: ''
            crm.objects.leads.read: ''
            crm.objects.leads.write: ''
            crm.objects.line_items.read: ''
            crm.objects.line_items.write: ''
            crm.objects.listings.read: ''
            crm.objects.listings.write: ''
            crm.objects.meetings.read: ''
            crm.objects.notes.read: ''
            crm.objects.orders.read: ''
            crm.objects.orders.write: ''
            crm.objects.partner-clients.read: ''
            crm.objects.partner-clients.write: ''
            crm.objects.partner-services.read: ''
            crm.objects.partner-services.write: ''
            crm.objects.products.read: ''
            crm.objects.products.write: ''
            crm.objects.projects.highly_sensitive.read: ''
            crm.objects.projects.highly_sensitive.write: ''
            crm.objects.projects.read: ''
            crm.objects.projects.sensitive.read: ''
            crm.objects.projects.sensitive.write: ''
            crm.objects.projects.write: ''
            crm.objects.quotes.read: ''
            crm.objects.quotes.write: ''
            crm.objects.services.read: ''
            crm.objects.services.write: ''
            crm.objects.subscriptions.read: ''
            crm.objects.subscriptions.write: ''
            crm.objects.tasks.read: ''
            crm.objects.tickets.highly_sensitive.read: ''
            crm.objects.tickets.highly_sensitive.write: ''
            crm.objects.tickets.sensitive.read: ''
            crm.objects.tickets.sensitive.write: ''
            crm.objects.users.read: ''
            crm.objects.users.write: ''
            e-commerce: ''
            media_bridge.read: ''
            tickets.highly_sensitive.v2: ''
            tickets.sensitive.v2: ''

````