# setIntegrationAttribute()

Sets a single attribute for third-party integrations.

Purpose [#purpose]

Syncs a user identifier from an analytics or attribution provider with Superwall. This enables better user tracking and attribution across platforms.

Signature [#signature]

```dart
Future<void> setIntegrationAttribute(
  IntegrationAttribute attribute,
  String? value,
)
```

Parameters [#parameters]

<TypeTable
  type="{
  attribute: {
    type: &#x22;IntegrationAttribute&#x22;,
    description: &#x22;The integration attribute key specifying the integration provider.&#x22;,
    required: true,
  },
  value: {
    type: &#x22;String?&#x22;,
    description: &#x22;The value to associate with the attribute. Pass `null` to remove the attribute.&#x22;,
  },
}"
/>

Returns / State [#returns--state]

Returns a `Future<void>` that completes when the attribute is set.

Usage [#usage]

Setting an integration attribute:

```dart
await Superwall.shared.setIntegrationAttribute(
  IntegrationAttribute.mixpanelDistinctId,
  'user_123',
);
```

Removing an integration attribute:

```dart
await Superwall.shared.setIntegrationAttribute(
  IntegrationAttribute.mixpanelDistinctId,
  null,
);
```

Syncing with multiple providers:

```dart
// Mixpanel
await Superwall.shared.setIntegrationAttribute(
  IntegrationAttribute.mixpanelDistinctId,
  mixpanelUserId,
);

// Amplitude
await Superwall.shared.setIntegrationAttribute(
  IntegrationAttribute.amplitudeUserId,
  amplitudeUserId,
);

// Adjust
await Superwall.shared.setIntegrationAttribute(
  IntegrationAttribute.adjustId,
  adjustId,
);
```

Related [#related]

* [`setIntegrationAttributes()`](/docs/flutter/sdk-reference/setIntegrationAttributes) - Set multiple attributes at once
* [`IntegrationAttribute`](/docs/flutter/sdk-reference/IntegrationAttribute) - Available integration attribute types