# Establecer identificadores de integración

> Añade identificadores de integración a un perfil.

## 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 de servidor de Adapty
  version: 1.0.0
servers:
  - url: https://api.adapty.io
    description: Servidor de producción
paths:
  /api/v2/server-side-api/integration/profile/set/integration-identifiers/:
    post:
      summary: Establecer identificadores de integración
      description: Añade identificadores de integración a un perfil.
      operationId: setIntegrationIdentifiers
      tags:
        - Integration
      security:
        - apikeyAuth: []
      parameters:
        - name: adapty-customer-user-id
          in: header
          required: false
          schema:
            type: string
          description: El ID único del cliente en tu sistema. Se requiere `adapty-customer-user-id` o `adapty-profile-id`.
        - name: adapty-profile-id
          in: header
          required: false
          schema:
            type: string
            format: uuid
          description: El ID único del perfil en tu sistema. La mejor opción si trabajas con perfiles anónimos. Se requiere `adapty-customer-user-id` o `adapty-profile-id`.
      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: Identificadores de integración establecidos correctamente. El cuerpo de la respuesta está vacío.
        "400":
          description: Solicitud incorrecta
          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: No autorizado
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
              example:
                errors:
                  - Invalid API key
                error_code: unauthorized
                status_code: 401
        "404":
          description: Perfil no encontrado
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
              example:
                errors:
                  - Profile not found
                error_code: profile_not_found
                status_code: 404
        "500":
          description: Error interno del servidor
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
components:
  schemas:
    IntegrationIdentifiersRequest:
      type: object
      properties:
        adjust_device_id:
          type: string
          nullable: true
          description: El ID de usuario de red en la integración de Adjust
        airbridge_device_id:
          type: string
          nullable: true
          description: El ID del dispositivo del usuario en la integración de Airbridge
        amplitude_device_id:
          type: string
          nullable: true
          description: El ID del dispositivo del usuario en la integración de Amplitude
        amplitude_user_id:
          type: string
          nullable: true
          description: El ID del usuario en la integración de Amplitude
        appmetrica_device_id:
          type: string
          nullable: true
          description: El ID del dispositivo del usuario en la integración de AppMetrica
        appmetrica_profile_id:
          type: string
          nullable: true
          description: El ID del usuario en la integración de AppMetrica
        appsflyer_id:
          type: string
          nullable: true
          description: El ID de usuario de red en la integración de AppsFlyer
        branch_id:
          type: string
          nullable: true
          description: La Branch Key de la app del usuario en la integración de Branch
        facebook_anonymous_id:
          type: string
          nullable: true
          description: El ID del usuario en la integración de Facebook Ads
        firebase_app_instance_id:
          type: string
          nullable: true
          description: El ID del usuario en la integración de Firebase
        mixpanel_user_id:
          type: string
          nullable: true
          description: El ID del usuario en la integración de Mixpanel
        one_signal_player_id:
          type: string
          nullable: true
          description: El ID del usuario en la integración de OneSignal (identificador heredado)
        one_signal_subscription_id:
          type: string
          nullable: true
          description: El ID del usuario en la integración de OneSignal (identificador recomendado)
        posthog_distinct_user_id:
          type: string
          nullable: true
          description: El ID del usuario en la integración de PostHog
        pushwoosh_hwid:
          type: string
          nullable: true
          description: El ID del dispositivo del usuario en la integración de Pushwoosh
        tenjin_analytics_installation_id:
          type: string
          nullable: true
          description: El ID del dispositivo del usuario en la integración de Tenjin
      description: Se debe proporcionar al menos un identificador de integración
    ErrorResponse:
      type: object
      properties:
        errors:
          type: array
          items:
            type: object
            properties:
              source:
                type: string
                nullable: true
                description: Origen del error
              errors:
                type: array
                items:
                  type: string
                description: Array de mensajes de error
        error_code:
          type: string
          description: Nombre corto del error
        status_code:
          type: integer
          description: Código de estado HTTP
      required:
        - errors
        - error_code
        - status_code
  securitySchemes:
    apikeyAuth:
      type: apiKey
      name: Authorization
      in: header
      default: Api-Key {Your secret API key}
      description: |
        Las solicitudes a la API deben autenticarse con tu clave API secreta en la cabecera **Authorization**
        con el valor `Api-Key {your_secret_api_key}`, por ejemplo,
        `Api-Key secret_live_...`. Puedes encontrar esta clave en el Adapty Dashboard ->
        **App Settings** -> pestaña **General** -> sección **API keys**.
```
