> ## 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.

# Publish a message

> Publiez un message sur votre canal personnalisé

> **Supported products**

> **Required Scopes**


## OpenAPI

````yaml specs/2026-09/conversations-custom-channels-v2026-09.json POST /conversations/custom-channels/2026-09/{channelId}/messages
openapi: 3.0.1
info:
  title: Conversations Custom Channels
  description: Basepom for all HubSpot Projects
  version: 2026-09
  x-hubspot-product-tier-requirements:
    marketing: FREE
    sales: PROFESSIONAL
    service: PROFESSIONAL
    cms: FREE
    commerce: FREE
    crmHub: FREE
    dataHub: FREE
  x-hubspot-api-use-case: >-
    Allow admins to install an integration with a third-party messaging channel
    that your team uses to communicate with customers, to allow users in your
    account to manage their conversations for that channel directly in HubSpot.
  x-hubspot-introduction: >-
    Use the custom channels API to create custom channels to build a bridge
    between an external message service and HubSpot's inbox or help desk
    features. 
servers:
  - url: https://api.hubapi.com
security: []
tags:
  - name: Basic
  - name: Channel accounts
  - name: Channels
  - name: Messages
paths:
  /conversations/custom-channels/2026-09/{channelId}/messages:
    post:
      tags:
        - Messages
      summary: Publier un message
      description: Publiez un message sur votre canal personnalisé
      operationId: post-/conversations/custom-channels/2026-09/{channelId}/messages
      parameters:
        - name: channelId
          in: path
          description: L'identifiant unique du canal personnalisé où le message sera créé.
          required: true
          style: simple
          explode: false
          schema:
            type: integer
            format: int32
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ChannelIntegrationMessageEgg'
        required: true
      responses:
        '201':
          description: successful operation
          headers:
            Location:
              description: URL of the newly created resource
              style: simple
              explode: false
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicConversationsMessage'
        default:
          $ref: '#/components/responses/Error'
          description: ''
      security:
        - oauth2:
            - conversations.custom_channels.write
components:
  schemas:
    ChannelIntegrationMessageEgg:
      required:
        - attachments
        - channelAccountId
        - messageDirection
        - recipients
        - senders
        - text
        - timestamp
      type: object
      properties:
        associateWithContactId:
          type: integer
          description: L'ID du contact auquel ce message doit être associé.
          format: int64
        attachments:
          type: array
          description: >-
            Un ensemble de pièces jointes incluses dans le message, qui peuvent
            être des fichiers, des lieux, des contacts ou d'autres types pris en
            charge.
          items:
            oneOf:
              - $ref: '#/components/schemas/FileAttachment'
              - $ref: '#/components/schemas/LocationAttachment'
              - $ref: '#/components/schemas/ContactAttachment'
              - $ref: '#/components/schemas/UnsupportedContentAttachment'
              - $ref: '#/components/schemas/MessageHeaderAttachment'
              - $ref: '#/components/schemas/QuickRepliesAttachment'
              - $ref: '#/components/schemas/SocialMetadataIntegrationAttachment'
        channelAccountId:
          type: string
          description: L'ID du compte de canal par lequel le message est envoyé.
        inReplyToId:
          type: string
          description: L'ID du message auquel ce message répond.
        integrationIdempotencyId:
          type: string
          description: >-
            Un identifiant unique pour assurer l'idempotence du message au sein
            de l'intégration.
        integrationThreadId:
          type: string
          description: >-
            Un identifiant unique pour le fil de discussion au sein de
            l'intégration.
        messageDirection:
          type: string
          description: "La direction du message, indiquant s'il est «\_ENTRANT\_» ou «\_SORTANT\_»."
          enum:
            - INCOMING
            - OUTGOING
        preResolvedContacts:
          $ref: '#/components/schemas/PreResolvedContacts'
        recipients:
          type: array
          description: >-
            Un tableau de participants représentant les destinataires du
            message.
          items:
            $ref: '#/components/schemas/ChannelIntegrationParticipant'
        richText:
          type: string
          description: Le contenu du message en texte enrichi, permettant la mise en forme.
        senders:
          type: array
          description: Un tableau de participants représentant les expéditeurs du message.
          items:
            $ref: '#/components/schemas/ChannelIntegrationParticipant'
        text:
          type: string
          description: Le contenu du message en texte brut.
        timestamp:
          type: string
          description: La date et l'heure de création du message, au format ISO 8601.
          format: date-time
    PublicConversationsMessage:
      required:
        - archived
        - attachments
        - channelAccountId
        - channelId
        - client
        - conversationsThreadId
        - createdAt
        - createdBy
        - direction
        - id
        - recipients
        - senders
        - text
        - truncationStatus
        - type
      type: object
      properties:
        archived:
          type: boolean
          description: Un booléen indiquant si le message est archivé.
        attachments:
          type: array
          description: >-
            Un ensemble de pièces jointes incluses dans le message, qui peuvent
            être des fichiers, des lieux, des contacts ou d'autres types pris en
            charge.
          items:
            oneOf:
              - $ref: '#/components/schemas/PublicFile'
              - $ref: '#/components/schemas/PublicLocation'
              - $ref: '#/components/schemas/PublicContact'
              - $ref: '#/components/schemas/PublicUnsupportedContent'
              - $ref: '#/components/schemas/PublicMessageHeader'
              - $ref: '#/components/schemas/PublicQuickReplies'
              - $ref: '#/components/schemas/PublicWhatsAppTemplateMetadata'
              - $ref: '#/components/schemas/PublicSocialMetadataAttachment'
        channelAccountId:
          type: string
          description: L'identifiant du compte de canal associé au message.
        channelId:
          type: string
          description: L'identifiant du canal par lequel le message a été envoyé.
        client:
          $ref: '#/components/schemas/PublicClient'
        conversationsThreadId:
          type: string
          description: L'identifiant du fil de conversation auquel ce message appartient.
        createdAt:
          type: string
          description: La date et l'heure de création du message, au format ISO 8601.
          format: date-time
        createdBy:
          type: string
          description: L'identifiant de l'utilisateur ou du système qui a créé le message.
        direction:
          type: string
          description: "La direction du message, soit «\_ENTRANT\_» ou «\_SORTANT\_»."
          enum:
            - INCOMING
            - OUTGOING
        id:
          type: string
          description: L'identifiant unique du message.
        inReplyToId:
          type: string
          description: L'identifiant du message auquel ce message répond, le cas échéant.
        recipients:
          type: array
          description: >-
            Un tableau de destinataires du message, chacun contenant les détails
            du destinataire.
          items:
            $ref: '#/components/schemas/PublicRecipient'
        richText:
          type: string
          description: Le contenu en texte enrichi du message, s'il est disponible.
        senders:
          type: array
          description: >-
            Un tableau d'expéditeurs associés au message, chacun contenant les
            détails de l'expéditeur.
          items:
            $ref: '#/components/schemas/PublicSender'
        status:
          $ref: '#/components/schemas/PublicMessageStatus'
        subject:
          type: string
          description: L'objet du message, le cas échéant.
        text:
          type: string
          description: Le contenu du message en texte brut.
        truncationStatus:
          type: string
          description: "Indique si le contenu du message est tronqué. Les valeurs valides sont «\_NOT_TRUNCATED\_», «\_TRUNCATED_TO_MOST_RECENT_REPLY\_» et «\_TRUNCATED\_»."
          enum:
            - NOT_TRUNCATED
            - TRUNCATED
            - TRUNCATED_TO_MOST_RECENT_REPLY
        type:
          type: string
          description: Le type de message, qui est toujours « MESSAGE ».
          default: MESSAGE
          enum:
            - MESSAGE
        updatedAt:
          type: string
          description: >-
            La date et l'heure de la dernière mise à jour du message, au format
            ISO 8601.
          format: date-time
      x-hubspot-sub-type-impl: true
    FileAttachment:
      title: FILE
      required:
        - fileId
        - type
      type: object
      properties:
        fileId:
          type: string
          description: Une chaîne représentant l'identifiant unique du fichier.
        fileUsageType:
          type: string
          description: "Une chaîne qui spécifie le type d'utilisation du fichier. Les valeurs valides incluent\_: «\_STICKER\_», «\_VOICE_RECORDING\_», «\_IMAGE\_», «\_AUDIO\_» et «\_OTHER\_»."
          enum:
            - AUDIO
            - IMAGE
            - OTHER
            - STICKER
            - VOICE_RECORDING
        type:
          type: string
          description: "Une chaîne qui indique le type de pièce jointe. La valeur par défaut est «\_FILE\_»."
          default: FILE
          enum:
            - FILE
      x-hubspot-sub-type-impl: true
    LocationAttachment:
      title: LOCATION
      required:
        - latitude
        - longitude
        - type
      type: object
      properties:
        address:
          type: string
          description: Une chaîne représentant l'adresse de l'emplacement.
        latitude:
          type: number
          description: Un nombre représentant la latitude de l'emplacement.
        longitude:
          type: number
          description: Un nombre représentant la longitude de l'emplacement.
        name:
          type: string
          description: Une chaîne représentant le nom de l'emplacement.
        type:
          type: string
          description: "Une chaîne indiquant le type de pièce jointe, qui est toujours «\_LOCATION\_»."
          default: LOCATION
          enum:
            - LOCATION
        url:
          type: string
          description: Une chaîne représentant une URL associée à l'emplacement.
      x-hubspot-sub-type-impl: true
    ContactAttachment:
      title: CONTACT
      required:
        - contactProfile
        - type
      type: object
      properties:
        contactProfile:
          $ref: '#/components/schemas/ContactProfile'
        type:
          type: string
          description: "Une chaîne de caractères indiquant le type de pièce jointe. La valeur par défaut est «\_CONTACT\_»."
          default: CONTACT
          enum:
            - CONTACT
      x-hubspot-sub-type-impl: true
    UnsupportedContentAttachment:
      title: UNSUPPORTED_CONTENT
      required:
        - type
      type: object
      properties:
        type:
          type: string
          description: "Une chaîne indiquant le type de pièce jointe. La valeur par défaut est « UNSUPPORTED_CONTENT\_»."
          default: UNSUPPORTED_CONTENT
          enum:
            - UNSUPPORTED_CONTENT
      x-hubspot-sub-type-impl: true
    MessageHeaderAttachment:
      title: MESSAGE_HEADER
      required:
        - type
      type: object
      properties:
        fileId:
          type: integer
          description: >-
            Un entier facultatif représentant l'ID d'un fichier associé, formaté
            en int64.
          format: int64
        text:
          type: string
          description: >-
            Une chaîne de caractères facultative contenant des informations
            textuelles pour l'en-tête du message.
        type:
          type: string
          description: "Une chaîne représentant le type de pièce jointe, qui est toujours «\_MESSAGE_HEADER\_»."
          default: MESSAGE_HEADER
          enum:
            - MESSAGE_HEADER
      x-hubspot-sub-type-impl: true
    QuickRepliesAttachment:
      title: QUICK_REPLIES
      required:
        - quickReplies
        - type
      type: object
      properties:
        quickReplies:
          type: array
          description: >-
            Un tableau d'objets QuickReply, chacun représentant une option
            prédéfinie que l'utilisateur peut sélectionner.
          items:
            $ref: '#/components/schemas/QuickReply'
        type:
          type: string
          description: "Une chaîne indiquant le type de pièce jointe. La valeur par défaut est «\_QUICK_REPLIES\_»."
          default: QUICK_REPLIES
          enum:
            - QUICK_REPLIES
      x-hubspot-sub-type-impl: true
    SocialMetadataIntegrationAttachment:
      title: SOCIAL_MEDIA_METADATA
      required:
        - socialMetadata
        - type
      type: object
      properties:
        socialMetadata:
          $ref: '#/components/schemas/SocialMetadata'
        type:
          type: string
          description: "Une chaîne indiquant le type de pièce jointe, qui est «\_SOCIAL_MEDIA_METADATA\_»."
          default: SOCIAL_MEDIA_METADATA
          enum:
            - SOCIAL_MEDIA_METADATA
      x-hubspot-sub-type-impl: true
    PreResolvedContacts:
      required:
        - contacts
      type: object
      properties:
        contacts:
          type: array
          description: >-
            Un tableau d'objets PreResolvedContact. Chaque objet contient des
            informations sur un contact pré-résolu, y compris les propriétés qui
            ont mené à la correspondance. Ce tableau est obligatoire.
          items:
            $ref: '#/components/schemas/PreResolvedContact'
    ChannelIntegrationParticipant:
      required:
        - deliveryIdentifier
      type: object
      properties:
        deliveryIdentifier:
          $ref: '#/components/schemas/PublicDeliveryIdentifier'
        name:
          type: string
          description: >-
            Le nom du participant. Il s'agit d'une chaîne de caractères qui peut
            être utilisée pour identifier le participant au sein du canal.
        senderActorId:
          type: string
          description: >-
            Chaîne représentant l'identifiant unique de l'acteur expéditeur.
            Elle est utilisée pour distinguer l'expéditeur au sein de
            l'intégration du canal.
    PublicFile:
      title: FILE
      required:
        - fileId
        - fileUsageType
        - type
      type: object
      properties:
        fileId:
          type: string
          description: Une chaîne représentant l'identifiant unique du fichier.
        fileUsageType:
          type: string
          description: "Une chaîne spécifiant le type d'utilisation du fichier, qui peut être «\_STICKER\_», «\_VOICE_RECORDING\_», «\_IMAGE\_», «\_AUDIO\_» ou «\_OTHER\_»."
          enum:
            - AUDIO
            - IMAGE
            - OTHER
            - STICKER
            - VOICE_RECORDING
        name:
          type: string
          description: Une chaîne contenant le nom du fichier.
        type:
          type: string
          description: "Une chaîne indiquant le type de la pièce jointe, qui est toujours «\_FILE\_»."
          default: FILE
          enum:
            - FILE
        url:
          type: string
          description: Une chaîne contenant l'URL où le fichier peut être consulté.
      x-hubspot-sub-type-impl: true
    PublicLocation:
      title: LOCATION
      required:
        - latitude
        - longitude
        - type
      type: object
      properties:
        address:
          type: string
          description: Une chaîne représentant l'adresse de l'emplacement.
        latitude:
          type: number
          description: Un nombre représentant la latitude de l'emplacement.
        longitude:
          type: number
          description: Un nombre représentant la longitude de l'emplacement.
        name:
          type: string
          description: Une chaîne représentant le nom de l'emplacement.
        type:
          type: string
          description: "Une chaîne qui spécifie le type du composant, qui est «\_LOCATION\_»."
          default: LOCATION
          enum:
            - LOCATION
        url:
          type: string
          description: Une chaîne représentant une URL associée à l'emplacement.
      x-hubspot-sub-type-impl: true
    PublicContact:
      title: CONTACT
      required:
        - contactProfile
        - type
      type: object
      properties:
        contactProfile:
          $ref: '#/components/schemas/ContactProfile'
        type:
          type: string
          description: "Une chaîne indiquant le type de l'élément, qui est «\_CONTACT\_» par défaut."
          default: CONTACT
          enum:
            - CONTACT
      x-hubspot-sub-type-impl: true
    PublicUnsupportedContent:
      title: UNSUPPORTED_CONTENT
      required:
        - type
      type: object
      properties:
        type:
          type: string
          description: "Une chaîne qui spécifie le type de contenu non pris en charge. La valeur par défaut et unique est «\_UNSUPPORTED_CONTENT\_»."
          default: UNSUPPORTED_CONTENT
          enum:
            - UNSUPPORTED_CONTENT
      x-hubspot-sub-type-impl: true
    PublicMessageHeader:
      title: MESSAGE_HEADER
      required:
        - type
      type: object
      properties:
        fileId:
          type: integer
          description: Un entier représentant l'ID d'un fichier associé, formaté en int64.
          format: int64
        text:
          type: string
          description: Une chaîne contenant le contenu textuel de l'en-tête du message.
        type:
          type: string
          description: "Une chaîne de caractères indiquant le type de l'en-tête du message. La valeur par défaut et unique valide est «\_MESSAGE_HEADER\_»."
          default: MESSAGE_HEADER
          enum:
            - MESSAGE_HEADER
      x-hubspot-sub-type-impl: true
    PublicQuickReplies:
      title: QUICK_REPLIES
      required:
        - allowMultiSelect
        - allowUserInput
        - quickReplies
        - type
      type: object
      properties:
        allowMultiSelect:
          type: boolean
          description: >-
            Un booléen indiquant si l'utilisateur peut sélectionner plusieurs
            réponses rapides.
        allowUserInput:
          type: boolean
          description: >-
            Un booléen indiquant si l'utilisateur est autorisé à saisir sa
            propre réponse en plus de choisir parmi les réponses rapides.
        quickReplies:
          type: array
          description: >-
            Un tableau d'objets QuickReply, chacun représentant une seule option
            de réponse rapide disponible pour l'utilisateur.
          items:
            $ref: '#/components/schemas/QuickReply'
        type:
          type: string
          description: "Une chaîne de caractères indiquant le type d'élément, qui est « QUICK_REPLIES\_»."
          default: QUICK_REPLIES
          enum:
            - QUICK_REPLIES
      x-hubspot-sub-type-impl: true
    PublicWhatsAppTemplateMetadata:
      title: WHATSAPP_TEMPLATE_METADATA
      required:
        - crmObjectIds
        - parameters
        - type
      type: object
      properties:
        contentId:
          type: integer
          description: "Un entier représentant l'ID du contenu associé au modèle. Il s'agit d'un entier de 64\_bits."
          format: int64
        crmObjectIds:
          type: object
          additionalProperties:
            type: integer
            format: int64
          description: "Un objet mappant les types d'objets CRM à leurs ID respectifs, où chaque ID est un entier de 64\_bits."
        mappedTemplateId:
          type: integer
          description: "Un entier représentant l'ID du modèle mappé. Il s'agit d'un entier de 64\_bits."
          format: int64
        parameters:
          type: object
          additionalProperties:
            type: string
          description: >-
            Un objet contenant des paires clé-valeur de paramètres utilisés pour
            la personnalisation de modèles, où chaque valeur est une chaîne de
            caractères.
        rootMicId:
          type: integer
          description: "Un entier représentant l'ID de contexte d'interaction du message racine. Il s'agit d'un entier de 64\_bits."
          format: int64
        type:
          type: string
          description: "Une chaîne indiquant le type de métadonnées, qui est «\_WHATSAPP_TEMPLATE_METADATA\_»."
          default: WHATSAPP_TEMPLATE_METADATA
          enum:
            - WHATSAPP_TEMPLATE_METADATA
      x-hubspot-sub-type-impl: true
    PublicSocialMetadataAttachment:
      title: SOCIAL_MEDIA_METADATA
      required:
        - socialMetadata
        - type
      type: object
      properties:
        socialMetadata:
          $ref: '#/components/schemas/SocialMetadata'
        type:
          type: string
          description: "Une chaîne indiquant le type de pièce jointe, qui est «\_SOCIAL_MEDIA_METADATA\_»."
          default: SOCIAL_MEDIA_METADATA
          enum:
            - SOCIAL_MEDIA_METADATA
      x-hubspot-sub-type-impl: true
    PublicClient:
      required:
        - clientType
      type: object
      properties:
        clientType:
          type: string
          description: "Le type de client qui interagit avec l'API\_: «\_HUBSPOT, SYSTEM, INTEGRATION et UNKNOWN\_»."
          enum:
            - HUBSPOT
            - INTEGRATION
            - SYSTEM
            - UNKNOWN
        integrationAppId:
          type: integer
          description: >-
            L'identifiant unique de l'application d'intégration associée à ce
            client. Il s'agit d'une valeur entière.
          format: int32
    PublicRecipient:
      required:
        - deliveryIdentifier
      type: object
      properties:
        actorId:
          type: string
          description: >-
            Une chaîne de caractères représentant l'identifiant unique de
            l'acteur associé au destinataire.
        deliveryIdentifier:
          $ref: '#/components/schemas/PublicDeliveryIdentifier'
        name:
          type: string
          description: Une chaîne représentant le nom du destinataire.
        recipientField:
          type: string
          description: Une chaîne représentant un champ spécifique lié au destinataire.
    PublicSender:
      type: object
      properties:
        actorId:
          type: string
          description: >-
            L'identifiant unique de l'expéditeur, représenté sous forme de
            chaîne de caractères.
        deliveryIdentifier:
          $ref: '#/components/schemas/PublicDeliveryIdentifier'
        name:
          type: string
          description: >-
            Le nom de l'expéditeur, représenté sous forme de chaîne de
            caractères.
        senderField:
          type: string
          description: >-
            Un champ de chaîne de caractères associé à l'expéditeur, dont
            l'utilisation spécifique n'est pas détaillée dans les
            spécifications.
    PublicMessageStatus:
      required:
        - statusType
      type: object
      properties:
        failureDetails:
          $ref: '#/components/schemas/PublicMessageFailureDetails'
        statusType:
          type: string
          description: "Le statut actuel du message. Les valeurs valides incluent «\_ENVOYÉ\_», «\_ÉCHOUÉ\_», «\_REÇU\_» et «\_LU\_»."
          enum:
            - FAILED
            - READ
            - RECEIVED
            - SENT
    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
    ContactProfile:
      required:
        - addresses
        - emails
        - phones
        - urls
      type: object
      properties:
        addresses:
          type: array
          description: >-
            Un tableau d'adresses associées au contact, où chaque adresse
            comprend des détails tels que le type (par exemple, HOME, WORK), la
            rue, la ville, l'état, le code postal, le pays et le code de pays.
          items:
            $ref: '#/components/schemas/ContactAddress'
        emails:
          type: array
          description: >-
            Un tableau d'adresses e-mail pour le contact, chaque e-mail ayant un
            type (par exemple, DOMICILE, TRAVAIL) et l'adresse e-mail elle-même.
          items:
            $ref: '#/components/schemas/ContactEmail'
        name:
          $ref: '#/components/schemas/ContactName'
        org:
          $ref: '#/components/schemas/ContactOrg'
        phones:
          type: array
          description: >-
            Un tableau de numéros de téléphone pour le contact, chaque numéro de
            téléphone incluant un type (par exemple, cellulaire, principal,
            domicile, travail) et le numéro de téléphone.
          items:
            $ref: '#/components/schemas/ContactPhone'
        urls:
          type: array
          description: >-
            Un tableau d'URL liées au contact, où chaque URL comprend un type
            (par exemple, DOMICILE, TRAVAIL) et l'URL elle-même.
          items:
            $ref: '#/components/schemas/ContactUrl'
    QuickReply:
      required:
        - value
        - valueType
      type: object
      properties:
        label:
          type: string
          description: >-
            L'étiquette affichée à l'utilisateur pour l'option de réponse
            rapide.
        value:
          type: string
          description: >-
            La valeur associée à la réponse rapide, généralement utilisée comme
            réponse lorsque la réponse rapide est sélectionnée. Il s'agit d'une
            chaîne de caractères.
        valueType:
          type: string
          description: "Le type de la valeur, indiquant comment la valeur doit être interprétée. Il s'agit d'une chaîne de caractères et peut être soit «\_TEXT\_» , soit «\_URL\_» ."
          enum:
            - TEXT
            - URL
    SocialMetadata:
      required:
        - mediaType
      type: object
      properties:
        description:
          type: string
          description: Une description du contenu multimédia.
        id:
          type: string
          description: L'identifiant unique de ce contenu multimédia.
        mediaTitle:
          type: string
          description: Le titre du contenu multimédia.
        mediaType:
          type: string
          description: "Le type de contenu multimédia, tel que «\_PHOTO\_», «\_VIDÉO\_», «\_CARROUSEL\_», «\_LIEN\_», «\_ARTICLE\_», «\_GIF\_», «\_DOCUMENT\_», «\_SONDAGE\_», «\_AUCUN\_», «\_STORY\_» ou «\_AUDIO\_»."
          enum:
            - ARTICLE
            - AUDIO
            - CAROUSEL
            - DOCUMENT
            - GIF
            - LINK
            - NONE
            - PHOTO
            - POLL
            - STORY
            - VIDEO
        mediaUrl:
          type: string
          description: L'URL où se trouve le contenu multimédia.
        mediaUrlString:
          type: string
          description: Chaîne de caractères représentant l'URL du contenu multimédia.
        thumbnailUrl:
          type: string
          description: L'URL de l'image miniature du contenu multimédia.
    PreResolvedContact:
      required:
        - contactPropertiesLeadingToMatch
        - contactVid
      type: object
      properties:
        contactPropertiesLeadingToMatch:
          type: array
          description: "Un tableau de chaînes de caractères indiquant les propriétés utilisées pour faire correspondre et identifier le contact. Les valeurs valides incluent divers attributs de contact tels que «\_email\_», «\_firstname\_», «\_lastname\_», et bien d'autres."
          items:
            type: string
            enum:
              - address
              - annualrevenue
              - associatedcompanyid
              - associatedcompanylastupdated
              - city
              - closedate
              - company
              - company_size
              - country
              - createdate
              - currentlyinworkflow
              - date_of_birth
              - days_to_close
              - degree
              - email
              - engagements_last_meeting_booked
              - engagements_last_meeting_booked_campaign
              - engagements_last_meeting_booked_medium
              - engagements_last_meeting_booked_source
              - fax
              - field_of_study
              - first_conversion_date
              - first_conversion_event_name
              - first_deal_created_date
              - firstname
              - followercount
              - gender
              - graduation_date
              - hs_active_contracts_arr
              - hs_active_contracts_mrr
              - hs_active_contracts_tcv
              - hs_additional_emails
              - hs_all_contact_vids
              - hs_analytics_average_page_views
              - hs_analytics_first_referrer
              - hs_analytics_first_timestamp
              - hs_analytics_first_touch_converting_campaign
              - hs_analytics_first_url
              - hs_analytics_first_visit_timestamp
              - hs_analytics_last_referrer
              - hs_analytics_last_timestamp
              - hs_analytics_last_touch_converting_campaign
              - hs_analytics_last_url
              - hs_analytics_last_visit_timestamp
              - hs_analytics_num_event_completions
              - hs_analytics_num_page_views
              - hs_analytics_num_visits
              - hs_analytics_revenue
              - hs_analytics_source
              - hs_analytics_source_composite_data
              - hs_analytics_source_data_1
              - hs_analytics_source_data_2
              - hs_associated_target_accounts
              - hs_avatar_filemanager_key
              - hs_bing_ad_clicked
              - hs_bing_click_id
              - hs_buying_role
              - hs_calculated_form_submissions
              - hs_calculated_merged_vids
              - hs_calculated_mobile_number
              - hs_calculated_phone_number
              - hs_calculated_phone_number_area_code
              - hs_calculated_phone_number_country_code
              - hs_calculated_phone_number_region_code
              - hs_chat_assistant_iql_date
              - hs_chat_assistant_source
              - hs_chat_assistant_summary
              - hs_chatgpt_ad_clicked
              - hs_chatgpt_click_id
              - hs_clicked_linkedin_ad
              - hs_consent_to_email_tracking
              - hs_contact_creation_legal_basis_source_instance_id
              - hs_contact_enrichment_opt_out
              - hs_contact_enrichment_opt_out_timestamp
              - hs_content_membership_email
              - hs_content_membership_email_confirmed
              - hs_content_membership_follow_up_enqueued_at
              - hs_content_membership_notes
              - hs_content_membership_registered_at
              - hs_content_membership_registration_domain_sent_to
              - hs_content_membership_registration_email_sent_at
              - hs_content_membership_status
              - hs_conversations_visitor_email
              - hs_count_is_unworked
              - hs_count_is_worked
              - hs_country_region_code
              - hs_created_by_conversations
              - hs_cross_account_note
              - hs_cross_sell_opportunity
              - hs_current_customer
              - hs_currently_enrolled_in_prospecting_agent
              - hs_customer_agent_lead_status
              - hs_data_privacy_ads_consent
              - hs_date_entered_customer
              - hs_date_entered_evangelist
              - hs_date_entered_lead
              - hs_date_entered_marketingqualifiedlead
              - hs_date_entered_opportunity
              - hs_date_entered_other
              - hs_date_entered_salesqualifiedlead
              - hs_date_entered_subscriber
              - hs_date_exited_customer
              - hs_date_exited_evangelist
              - hs_date_exited_lead
              - hs_date_exited_marketingqualifiedlead
              - hs_date_exited_opportunity
              - hs_date_exited_other
              - hs_date_exited_salesqualifiedlead
              - hs_date_exited_subscriber
              - hs_document_last_revisited
              - hs_email_bad_address
              - hs_email_bounce
              - hs_email_click
              - hs_email_communication_subscriptions_opted_in
              - hs_email_communication_subscriptions_opted_out
              - hs_email_customer_quarantined_reason
              - hs_email_delivered
              - hs_email_domain
              - hs_email_engagement_likelihood_category
              - hs_email_first_click_date
              - hs_email_first_open_date
              - hs_email_first_reply_date
              - hs_email_first_send_date
              - hs_email_hard_bounce_reason
              - hs_email_hard_bounce_reason_enum
              - hs_email_is_ineligible
              - hs_email_last_click_date
              - hs_email_last_email_name
              - hs_email_last_open_date
              - hs_email_last_reply_date
              - hs_email_last_send_date
              - hs_email_live_sourcing_restricted
              - hs_email_open
              - hs_email_optimal_send_day_of_week
              - hs_email_optimal_send_time_of_day
              - hs_email_optout
              - hs_email_optout_survey_reason
              - hs_email_quarantined
              - hs_email_quarantined_reason
              - hs_email_recipient_fatigue_recovery_time
              - hs_email_replied
              - hs_email_sends_since_last_engagement
              - hs_email_type
              - hs_emailconfirmationstatus
              - hs_employment_change_detected_date
              - hs_enforce_double_opt_in
              - hs_enriched_email_bounce_detected
              - hs_excluded_from_cross_account_data_mirroring
              - hs_facebook_ad_clicked
              - hs_facebook_click_id
              - hs_facebookid
              - hs_feedback_last_ces_survey_date
              - hs_feedback_last_ces_survey_follow_up
              - hs_feedback_last_ces_survey_rating
              - hs_feedback_last_csat_survey_date
              - hs_feedback_last_csat_survey_follow_up
              - hs_feedback_last_csat_survey_rating
              - hs_feedback_last_nps_follow_up
              - hs_feedback_last_nps_rating
              - hs_feedback_last_nps_rating_number
              - hs_feedback_last_survey_date
              - hs_feedback_show_nps_web_survey
              - hs_first_closed_order_id
              - hs_first_engagement_object_id
              - hs_first_order_closed_date
              - hs_first_outreach_date
              - hs_first_subscription_create_date
              - hs_full_name_or_email
              - hs_geohash_1
              - hs_geohash_2
              - hs_geohash_3
              - hs_geohash_4
              - hs_geohash_5
              - hs_geohash_6
              - hs_google_click_id
              - hs_googleplusid
              - hs_gps_coordinates
              - hs_gps_error
              - hs_gps_latitude
              - hs_gps_longitude
              - hs_has_active_subscription
              - hs_inbound_agent_inquiry_type
              - hs_inbound_agent_last_conversation_date
              - hs_inbound_agent_qualification_status
              - hs_inferred_language_codes
              - hs_intent_paid_up_to_date
              - hs_intent_signals_enabled
              - hs_ip_timezone
              - hs_is_contact
              - hs_is_enriched
              - hs_is_mass_marketing_activation_disallowed
              - hs_is_merge_revertible
              - hs_is_unworked
              - hs_job_change_detected_date
              - hs_journey_stage
              - hs_language
              - hs_last_metered_enrichment_timestamp
              - hs_last_sales_activity_date
              - hs_last_sales_activity_timestamp
              - hs_last_sales_activity_type
              - hs_last_sms_send_date
              - hs_last_sms_send_name
              - hs_latest_disqualified_lead_date
              - hs_latest_meeting_activity
              - hs_latest_open_lead_date
              - hs_latest_qualified_lead_date
              - hs_latest_sequence_ended_date
              - hs_latest_sequence_enrolled
              - hs_latest_sequence_enrolled_date
              - hs_latest_sequence_finished_date
              - hs_latest_sequence_unenrolled_date
              - hs_latest_source
              - hs_latest_source_composite_data
              - hs_latest_source_data_1
              - hs_latest_source_data_2
              - hs_latest_source_timestamp
              - hs_latest_subscription_create_date
              - hs_latitude
              - hs_lead_status
              - hs_legal_basis
              - hs_lifecyclestage_customer_date
              - hs_lifecyclestage_evangelist_date
              - hs_lifecyclestage_lead_date
              - hs_lifecyclestage_marketingqualifiedlead_date
              - hs_lifecyclestage_opportunity_date
              - hs_lifecyclestage_other_date
              - hs_lifecyclestage_salesqualifiedlead_date
              - hs_lifecyclestage_subscriber_date
              - hs_linkedin_ad_clicked
              - hs_linkedin_click_id
              - hs_linkedin_url
              - hs_linkedinid
              - hs_live_enrichment_deadline
              - hs_longitude
              - hs_manual_campaign_ids
              - hs_marketable_reason_id
              - hs_marketable_reason_type
              - hs_marketable_status
              - hs_marketable_until_renewal
              - hs_membership_has_accessed_private_content
              - hs_membership_last_private_content_access_date
              - hs_messaging_engagement_score
              - hs_mobile_sdk_push_tokens
              - hs_next_renewal_date
              - hs_notes_last_activity
              - hs_notes_next_activity
              - hs_notes_next_activity_type
              - hs_num_active_contracts
              - hs_num_associated_open_deals
              - hs_persona
              - hs_pinned_engagement_id
              - hs_pipeline
              - hs_predictivecontactscore
              - hs_predictivecontactscore_tmp
              - hs_predictivecontactscore_v2
              - hs_predictivecontactscorebucket
              - hs_predictivescoringtier
              - hs_predictivescoringtier_tmp
              - hs_prospecting_agent_activation_email_id
              - hs_prospecting_agent_activation_status
              - hs_prospecting_agent_actively_enrolled_count
              - hs_prospecting_agent_enrollment_status
              - hs_prospecting_agent_enrollment_status_raw
              - hs_prospecting_agent_last_enrolled
              - hs_prospecting_agent_sender
              - hs_prospecting_agent_total_enrolled_count
              - hs_quarantined_emails
              - hs_recent_closed_order_date
              - hs_reddit_ad_clicked
              - hs_reddit_click_id
              - hs_registered_member
              - hs_registration_method
              - hs_returning_to_office_detected_date
              - hs_role
              - hs_sa_first_engagement_date
              - hs_sa_first_engagement_descr
              - hs_sa_first_engagement_object_type
              - hs_sales_email_last_clicked
              - hs_sales_email_last_opened
              - hs_sales_email_last_replied
              - hs_searchable_calculated_international_mobile_number
              - hs_searchable_calculated_international_phone_number
              - hs_searchable_calculated_mobile_number
              - hs_searchable_calculated_phone_number
              - hs_seniority
              - hs_sequences_actively_enrolled_count
              - hs_sequences_enrolled_count
              - hs_sequences_is_enrolled
              - hs_social_facebook_clicks
              - hs_social_google_plus_clicks
              - hs_social_last_engagement
              - hs_social_linkedin_clicks
              - hs_social_num_broadcast_clicks
              - hs_social_twitter_clicks
              - hs_source_object_id
              - hs_source_portal_id
              - hs_sourced_contact_origin
              - hs_state_code
              - hs_sub_role
              - hs_testpurge
              - hs_testrollback
              - hs_tiktok_ad_clicked
              - hs_tiktok_click_id
              - hs_time_between_contact_creation_and_deal_close
              - hs_time_between_contact_creation_and_deal_creation
              - hs_time_in_customer
              - hs_time_in_evangelist
              - hs_time_in_lead
              - hs_time_in_marketingqualifiedlead
              - hs_time_in_opportunity
              - hs_time_in_other
              - hs_time_in_salesqualifiedlead
              - hs_time_in_subscriber
              - hs_time_to_first_engagement
              - hs_time_to_move_from_lead_to_customer
              - hs_time_to_move_from_marketingqualifiedlead_to_customer
              - hs_time_to_move_from_opportunity_to_customer
              - hs_time_to_move_from_salesqualifiedlead_to_customer
              - hs_time_to_move_from_subscriber_to_customer
              - hs_timezone
              - hs_twitterid
              - hs_user_ids_of_all_notification_recipients
              - hs_v2_cumulative_time_in_customer
              - hs_v2_cumulative_time_in_evangelist
              - hs_v2_cumulative_time_in_lead
              - hs_v2_cumulative_time_in_marketingqualifiedlead
              - hs_v2_cumulative_time_in_opportunity
              - hs_v2_cumulative_time_in_other
              - hs_v2_cumulative_time_in_salesqualifiedlead
              - hs_v2_cumulative_time_in_subscriber
              - hs_v2_date_entered_current_stage
              - hs_v2_date_entered_customer
              - hs_v2_date_entered_evangelist
              - hs_v2_date_entered_lead
              - hs_v2_date_entered_marketingqualifiedlead
              - hs_v2_date_entered_opportunity
              - hs_v2_date_entered_other
              - hs_v2_date_entered_salesqualifiedlead
              - hs_v2_date_entered_subscriber
              - hs_v2_date_exited_customer
              - hs_v2_date_exited_evangelist
              - hs_v2_date_exited_lead
              - hs_v2_date_exited_marketingqualifiedlead
              - hs_v2_date_exited_opportunity
              - hs_v2_date_exited_other
              - hs_v2_date_exited_salesqualifiedlead
              - hs_v2_date_exited_subscriber
              - hs_v2_latest_time_in_customer
              - hs_v2_latest_time_in_evangelist
              - hs_v2_latest_time_in_lead
              - hs_v2_latest_time_in_marketingqualifiedlead
              - hs_v2_latest_time_in_opportunity
              - hs_v2_latest_time_in_other
              - hs_v2_latest_time_in_salesqualifiedlead
              - hs_v2_latest_time_in_subscriber
              - hs_v2_time_in_current_stage
              - hs_whatsapp_bsuids
              - hs_whatsapp_phone_number
              - hs_why_this_contact
              - hubspot_owner_id
              - hubspotscore
              - industry
              - ip_city
              - ip_country
              - ip_country_code
              - ip_latlon
              - ip_state
              - ip_state_code
              - ip_zipcode
              - job_function
              - jobtitle
              - kloutscoregeneral
              - lastmodifieddate
              - lastname
              - lifecyclestage
              - linkedinbio
              - linkedinconnections
              - marital_status
              - message
              - military_status
              - mobilephone
              - notes_last_contacted
              - notes_last_updated
              - notes_next_activity_date
              - num_associated_deals
              - num_contacted_notes
              - num_conversion_events
              - num_notes
              - num_unique_conversion_events
              - numemployees
              - owneremail
              - ownername
              - phone
              - photo
              - recent_conversion_date
              - recent_conversion_event_name
              - recent_deal_amount
              - recent_deal_close_date
              - relationship_status
              - salutation
              - school
              - seniority
              - start_date
              - state
              - surveymonkeyeventlastupdated
              - total_revenue
              - twitterbio
              - twitterhandle
              - twitterprofilephoto
              - webinareventlastupdated
              - website
              - work_email
              - zip
        contactVid:
          type: integer
          description: >-
            L'identifiant unique du contact, représenté sous forme d'entier au
            format int64.
          format: int64
    PublicDeliveryIdentifier:
      required:
        - type
        - value
      type: object
      properties:
        type:
          type: string
          description: "Une chaîne de caractères représentant le type d'identifiant de livraison. Les valeurs valides incluent «\_HS_EMAIL_ADDRESS\_», «\_HS_PHONE_NUMBER\_», «\_HS_SHORT_CODE\_» et «\_CHANNEL_SPECIFIC_OPAQUE_ID\_»."
          enum:
            - CHANNEL_SPECIFIC_OPAQUE_ID
            - HS_EMAIL_ADDRESS
            - HS_PHONE_NUMBER
            - HS_SHORT_CODE
        value:
          type: string
          description: >-
            Une chaîne représentant la valeur associée au type d'identifiant de
            livraison.
    PublicMessageFailureDetails:
      required:
        - errorMessageTokens
      type: object
      properties:
        errorMessage:
          type: string
          description: >-
            Chaîne de caractères contenant une description lisible par
            l'utilisateur de l'erreur survenue lors de la livraison du message.
        errorMessageTokens:
          type: object
          additionalProperties:
            type: string
          description: >-
            Un objet contenant des paires clé-valeur où chaque clé est un nom de
            jeton et chaque valeur est une chaîne de caractères. Ces jetons
            fournissent un contexte ou des détails supplémentaires liés au
            message d'erreur.
    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é trouvée.
        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.
    ContactAddress:
      type: object
      properties:
        city:
          type: string
          description: >-
            La ville où se trouve le contact. Il s'agit d'une valeur de type
            chaîne de caractères.
        country:
          type: string
          description: >-
            Le pays où se trouve le contact. Il s'agit d'une valeur de type
            texte.
        countryCode:
          type: string
          description: >-
            Le code représentant le pays de l'adresse du contact. C'est une
            valeur de type chaîne de caractères.
        state:
          type: string
          description: L'état où se trouve le contact. Il s'agit d'une valeur de chaîne.
        street:
          type: string
          description: >-
            L'adresse postale du contact. Il s'agit d'une valeur de type chaîne
            de caractères.
        type:
          type: string
          description: "Le type d'adresse, qui peut être «\_DOMICILE\_» ou «\_TRAVAIL\_»."
          enum:
            - HOME
            - WORK
        zip:
          type: string
          description: >-
            Le code postal de l'adresse du contact. Il s'agit d'une valeur de
            type chaîne.
    ContactEmail:
      required:
        - email
      type: object
      properties:
        email:
          type: string
          description: >-
            L'adresse e-mail réelle du contact, représentée sous forme de chaîne
            de caractères.
        type:
          type: string
          description: "Le type d'adresse e-mail, qui peut être «\_DOMICILE\_» ou «\_TRAVAIL\_»."
          enum:
            - HOME
            - WORK
    ContactName:
      type: object
      properties:
        firstName:
          type: string
          description: Une chaîne représentant le prénom du contact.
        lastName:
          type: string
          description: Une chaîne représentant le nom de famille du contact.
        middleName:
          type: string
          description: Chaîne représentant le deuxième prénom du contact.
        prefix:
          type: string
          description: "Une chaîne représentant le préfixe du nom du contact, tel que «\_M.\_», «\_Mme\_» ou «\_Dr.\_»."
        suffix:
          type: string
          description: "Chaîne représentant le suffixe du nom du contact, tel que «\_Jr.\_», «\_Sr.\_» ou «\_III\_»."
    ContactOrg:
      type: object
      properties:
        company:
          type: string
          description: >-
            Le nom de l’entreprise à laquelle le contact est associé. Il s’agit
            d’une valeur de type chaîne de caractères.
        department:
          type: string
          description: >-
            Le service au sein de l'entreprise où travaille le contact. Il
            s'agit d'une valeur de type chaîne de caractères.
        title:
          type: string
          description: >-
            Le titre de poste du contact au sein de son entreprise. Il s'agit
            d'une valeur de type chaîne de caractères.
    ContactPhone:
      required:
        - phone
      type: object
      properties:
        phone:
          type: string
          description: >-
            Le numéro de téléphone associé au contact. Il s'agit d'une chaîne de
            caractères représentant le numéro de téléphone du contact.
        type:
          type: string
          description: "Le type de téléphone, qui peut être l'un des suivants\_: «\_CELL\_», «\_MAIN\_», «\_HOME\_» ou «\_WORK\_»."
          enum:
            - CELL
            - HOME
            - MAIN
            - WORK
    ContactUrl:
      required:
        - url
      type: object
      properties:
        type:
          type: string
          description: "La catégorie de l'URL, indiquant son objectif. Les valeurs valides incluent «\_HOME\_» et «\_WORK\_»."
          enum:
            - HOME
            - WORK
        url:
          type: string
          description: La chaîne d'URL réelle associée au contact.
  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:
            conversations.custom_channels.read: ''
            conversations.custom_channels.write: ''

````