Atune Docs
Guides

Use Atune with Segment

Route Segment track, identify, and group messages into Atune without changing your downstream understanding model.

Atune is native-first. Use the SDK when you can install it directly.

If Segment is already your event source of truth, send Segment messages to Atune instead. Segment is an ingress adapter. After mapping, events and identity updates enter the same Atune ingest core as native capture.

Endpoint

Send single messages or batch envelopes to:

Segment endpoint
https://useatune.com/api/segment

Sign in to see this sample with your own workspace API key.

Use your workspace API key as a Bearer token.

Track

track creates an Atune event. The event must resolve to an account. Atune uses this account precedence:

  1. top-level accountId
  2. context.groupId
  3. context.traits.accountId
  4. context.traits.companyId
  5. properties.accountId
  6. properties.companyId
  7. properties.groupId

Atune does not guess. If none of those fields exist, the request is rejected.

Send a Segment track
curl -X POST https://useatune.com/api/segment \-H "Authorization: Bearer <YOUR_API_KEY>" \-H "Content-Type: application/json" \-d '{  "type": "track",  "messageId": "seg-msg-001",  "event": "Invoice Sent",  "userId": "user_123",  "properties": {    "accountId": "acme",    "amount": 1200  }}'

Sign in to see this sample with your own workspace API key.

Repeated track deliveries with the same messageId are idempotent per workspace.

Identify

identify can attach name and email to a user. It is treated as personal data and requires the workspace DPA to be accepted.

Send a Segment identify
curl -X POST https://useatune.com/api/segment \-H "Authorization: Bearer <YOUR_API_KEY>" \-H "Content-Type: application/json" \-d '{  "type": "identify",  "userId": "user_123",  "traits": {    "accountId": "acme",    "name": "Kari Nordmann",    "email": "kari@acme.example"  }}'

Sign in to see this sample with your own workspace API key.

Group

group attaches company identity to an account. groupId becomes the Atune account ID. traits.company or traits.name becomes the account display name.

Send a Segment group
curl -X POST https://useatune.com/api/segment \-H "Authorization: Bearer <YOUR_API_KEY>" \-H "Content-Type: application/json" \-d '{  "type": "group",  "groupId": "acme",  "userId": "user_123",  "traits": {    "name": "Acme AS"  }}'

Sign in to see this sample with your own workspace API key.

Batch

Segment-style batch envelopes are supported. If sentAt is present, Atune uses it as the timestamp fallback for track messages that do not include timestamp.

Send a Segment batch
curl -X POST https://useatune.com/api/segment \-H "Authorization: Bearer <YOUR_API_KEY>" \-H "Content-Type: application/json" \-d '{  "sentAt": "2026-07-26T10:00:00.000Z",  "batch": [    {      "type": "track",      "messageId": "seg-msg-002",      "event": "Report Generated",      "properties": { "accountId": "acme" }    },    {      "type": "group",      "groupId": "acme",      "traits": { "name": "Acme AS" }    }  ]}'

Sign in to see this sample with your own workspace API key.

If a batch contains identify or group, the whole batch requires the workspace DPA. This prevents partial identity writes.

On this page