# Définir les identifiants d'intégration

> Ajoute des identifiants d'intégration à un profil.

## OpenAPI

```yaml
/api-specs/adapty-api.yaml post /api/v2/server-side-api/integration/profile/set/integration-identifiers/
openapi: 3.1.0
info:
  title: API côté serveur Adapty
  version: 1.0.0
servers:
  - url: https://api.adapty.io
    description: Serveur de production
paths:
  /api/v2/server-side-api/integration/profile/set/integration-identifiers/:
    post:
      summary: Définir les identifiants d'intégration
      description: Ajoute des identifiants d'intégration à un profil.
      operationId: setIntegrationIdentifiers
      tags:
        - Integration
      security:
        - apikeyAuth: []
      parameters:
        - name: adapty-customer-user-id
          in: header
          required: false
          schema:
            type: string
          description: L'identifiant unique du client dans votre système. `adapty-customer-user-id` ou `adapty-profile-id` est requis.
        - name: adapty-profile-id
          in: header
          required: false
          schema:
            type: string
            format: uuid
          description: L'identifiant unique du profil dans votre système. Meilleure option si vous travaillez avec des profils anonymes. `adapty-customer-user-id` ou `adapty-profile-id` est requis.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/IntegrationIdentifiersRequest"
            example:
              pushwoosh_hwid: example_pushwoosh_hwid
              mixpanel_user_id: example_mixpanel_user_id
              facebook_anonymous_id: example_facebook_anonymous_id
              firebase_app_instance_id: example_firebase_app_instance_id
              amplitude_user_id: example_amplitude_user_id
              amplitude_device_id: example_amplitude_device_id
              appmetrica_device_id: example_appmetrica_device_id
              appmetrica_profile_id: example_appmetrica_profile_id
              one_signal_subscription_id: example_one_signal_subscription_id
              one_signal_player_id: example_one_signal_player_id
              branch_id: example_branch_id
              appsflyer_id: example_appsflyer_id
              adjust_device_id: example_adjust_device_id
              airbridge_device_id: example_airbridge_device_id
              tenjin_analytics_installation_id: example_tenjin_analytics_installation_id
              posthog_distinct_user_id: example_posthog_distinct_user_id
      responses:
        "200":
          description: Identifiants d'intégration définis avec succès. Le corps de la réponse est vide.
        "400":
          description: Requête incorrecte
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
              example:
                errors:
                  - At least one integration identifier must be provided.
                error_code: validation_error
                status_code: 400
        "401":
          description: Non autorisé
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
              example:
                errors:
                  - Invalid API key
                error_code: unauthorized
                status_code: 401
        "404":
          description: Profil introuvable
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
              example:
                errors:
                  - Profile not found
                error_code: profile_not_found
                status_code: 404
        "500":
          description: Erreur interne du serveur
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
components:
  schemas:
    IntegrationIdentifiersRequest:
      type: object
      properties:
        adjust_device_id:
          type: string
          nullable: true
          description: L'identifiant réseau de l'utilisateur dans l'intégration Adjust
        airbridge_device_id:
          type: string
          nullable: true
          description: L'identifiant de l'appareil de l'utilisateur dans l'intégration Airbridge
        amplitude_device_id:
          type: string
          nullable: true
          description: L'identifiant de l'appareil de l'utilisateur dans l'intégration Amplitude
        amplitude_user_id:
          type: string
          nullable: true
          description: L'identifiant de l'utilisateur dans l'intégration Amplitude
        appmetrica_device_id:
          type: string
          nullable: true
          description: L'identifiant de l'appareil de l'utilisateur dans l'intégration AppMetrica
        appmetrica_profile_id:
          type: string
          nullable: true
          description: L'identifiant de l'utilisateur dans l'intégration AppMetrica
        appsflyer_id:
          type: string
          nullable: true
          description: L'identifiant réseau de l'utilisateur dans l'intégration AppsFlyer
        branch_id:
          type: string
          nullable: true
          description: La clé Branch de l'application de l'utilisateur dans l'intégration Branch
        facebook_anonymous_id:
          type: string
          nullable: true
          description: L'identifiant de l'utilisateur dans l'intégration Facebook Ads
        firebase_app_instance_id:
          type: string
          nullable: true
          description: L'identifiant de l'utilisateur dans l'intégration Firebase
        mixpanel_user_id:
          type: string
          nullable: true
          description: L'identifiant de l'utilisateur dans l'intégration Mixpanel
        one_signal_player_id:
          type: string
          nullable: true
          description: L'identifiant de l'utilisateur dans l'intégration OneSignal (identifiant hérité)
        one_signal_subscription_id:
          type: string
          nullable: true
          description: L'identifiant de l'utilisateur dans l'intégration OneSignal (identifiant recommandé)
        posthog_distinct_user_id:
          type: string
          nullable: true
          description: L'identifiant de l'utilisateur dans l'intégration PostHog
        pushwoosh_hwid:
          type: string
          nullable: true
          description: L'identifiant de l'appareil de l'utilisateur dans l'intégration Pushwoosh
        tenjin_analytics_installation_id:
          type: string
          nullable: true
          description: L'identifiant de l'appareil de l'utilisateur dans l'intégration Tenjin
      description: Au moins un identifiant d'intégration doit être fourni
    ErrorResponse:
      type: object
      properties:
        errors:
          type: array
          items:
            type: object
            properties:
              source:
                type: string
                nullable: true
                description: Source de l'erreur
              errors:
                type: array
                items:
                  type: string
                description: Tableau de messages d'erreur
        error_code:
          type: string
          description: Nom court de l'erreur
        status_code:
          type: integer
          description: Code de statut HTTP
      required:
        - errors
        - error_code
        - status_code
  securitySchemes:
    apikeyAuth:
      type: apiKey
      name: Authorization
      in: header
      default: Api-Key {Your secret API key}
      description: |
        Les requêtes API doivent être authentifiées par votre clé API secrète via l'en-tête **Authorization** 
        avec la valeur `Api-Key {your_secret_api_key}`, par exemple, 
        `Api-Key secret_live_...`. Retrouvez cette clé dans l'Adapty Dashboard -> 
        **App Settings** -> onglet **General** -> section **API keys**.
```
