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

# Update segment membership

> Mettez à jour les contrôles d'accès d’une liste en ajoutant et en supprimant des membres en une seule opération. Ce point de terminaison vous permet de gérer efficacement les contrôles d'accès à une liste en spécifiant les membres à ajouter et ceux à supprimer en une seule requête.

> **Supported products**

> **Required Scopes**


## OpenAPI

````yaml specs/2026-09/crm-lists-v2026-09.json PUT /crm/lists/2026-09/{listId}/memberships/add-and-remove
openapi: 3.0.1
info:
  title: CRM Lists
  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: Basic
  - name: Batch
  - name: Search
paths:
  /crm/lists/2026-09/{listId}/memberships/add-and-remove:
    put:
      tags:
        - Basic
      summary: Mettre à jour les contrôles d'accès
      description: >-
        Mettez à jour les contrôles d'accès d’une liste en ajoutant et en
        supprimant des membres en une seule opération. Ce point de terminaison
        vous permet de gérer efficacement les contrôles d'accès à une liste en
        spécifiant les membres à ajouter et ceux à supprimer en une seule
        requête.
      operationId: put-/crm/lists/2026-09/{listId}/memberships/add-and-remove
      parameters:
        - name: listId
          in: path
          description: >-
            L'identifiant unique de la liste dont les contrôles d'accès doivent
            être mis à jour.
          required: true
          style: simple
          explode: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MembershipChangeRequest'
        required: true
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MembershipsUpdateResponse'
        default:
          $ref: '#/components/responses/Error'
          description: ''
      security:
        - oauth2:
            - crm.lists.write
            - crm.segments.read
        - oauth2:
            - cms.membership.access_groups.write
            - crm.lists.read
        - oauth2:
            - crm.segments.read
            - crm.segments.write
        - oauth2:
            - crm.lists.read
            - crm.segments.write
        - oauth2:
            - crm.lists.read
            - crm.lists.write
        - oauth2:
            - cms.membership.access_groups.write
            - crm.segments.read
components:
  schemas:
    MembershipChangeRequest:
      required:
        - recordIdsToAdd
        - recordIdsToRemove
      type: object
      properties:
        recordIdsToAdd:
          type: array
          description: >-
            Un tableau de chaînes de caractères représentant les identifiants
            uniques des fiches d'informations à ajouter à la liste.
          items:
            type: string
        recordIdsToRemove:
          type: array
          description: >-
            Un tableau de chaînes de caractères représentant les identifiants
            uniques des fiches d'informations à supprimer de la liste.
          items:
            type: string
    MembershipsUpdateResponse:
      required:
        - recordIdsMissing
        - recordIdsRemoved
        - recordsIdsAdded
      type: object
      properties:
        recordIdsMissing:
          type: array
          description: >-
            Un tableau de chaînes de caractères représentant les identifiants
            des fiches introuvables ou n'ayant pas pu être traitées lors de la
            mise à jour.
          items:
            type: string
        recordIdsRemoved:
          type: array
          description: >-
            Un tableau de chaînes de caractères représentant les identifiants
            des fiches d'informations qui ont été supprimées de la liste avec
            succès.
          items:
            type: string
        recordsIdsAdded:
          type: array
          description: >-
            Un tableau de chaînes représentant les identifiants des fiches
            d'informations qui ont été ajoutés à la liste avec succès.
          items:
            type: string
    Error:
      required:
        - category
        - correlationId
        - message
      type: object
      properties:
        category:
          type: string
          description: Une chaîne indiquant la catégorie de l'erreur.
        context:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
          description: >-
            Un objet contenant un contexte additionnel sur l'erreur, représenté
            sous forme de carte de paires clé-valeur.
          example: >-
            {invalidPropertyName=[propertyValue], missingScopes=[scope1,
            scope2]}
        correlationId:
          type: string
          description: >-
            Un identifiant unique pour l'instance d'erreur, utilisé à des fins
            de suivi et de débogage.
          format: uuid
          example: aeb5f871-7f07-4993-9211-075dc63e7cbf
        errors:
          type: array
          description: >-
            Un tableau d'objets ErrorDetail, chacun fournissant des informations
            supplémentaires sur les erreurs spécifiques qui se sont produites.
          items:
            $ref: '#/components/schemas/ErrorDetail'
        links:
          type: object
          additionalProperties:
            type: string
          description: >-
            Un objet contenant des liens connexes, représenté sous forme de
            mappage des noms de liens vers des URL.
        message:
          type: string
          description: >-
            Une chaîne qui fournit une description de l'erreur lisible par un
            humain.
          example: An error occurred
        subCategory:
          type: string
          description: >-
            Un objet représentant une classification plus spécifique de l'erreur
            au sein de sa catégorie.
      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
    ErrorDetail:
      required:
        - message
      type: object
      properties:
        code:
          type: string
          description: >-
            Une chaîne représentant un code d'erreur spécifique qui identifie le
            type d'erreur.
        context:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
          description: >-
            Un objet contenant un contexte additionnel sur l'erreur, représenté
            comme une carte de chaînes de caractères vers des tableaux de
            chaînes de caractères, qui peut inclure des paramètres ou des
            valeurs spécifiques liés à l'erreur.
          example: '{missingScopes=[scope1, scope2]}'
        in:
          type: string
          description: "Une chaîne indiquant l'emplacement où l'erreur s'est produite, tel que «\_query\_», «\_header\_» ou «\_body\_»."
        message:
          type: string
          description: Une chaîne contenant une description de l'erreur lisible.
        subCategory:
          type: string
          description: >-
            Un objet fournissant une catégorisation supplémentaire de l'erreur,
            qui peut contenir des détails supplémentaires.
      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:
            cms.membership.access_groups.write: ''
            crm.lists.read: ''
            crm.lists.write: ''
            crm.segments.read: ''
            crm.segments.write: ''

````