Early bird discounts live! Claim your offer

member.trial_joined

A subscriber joins on a trial via cardless trial or access-code redemption.

Like member.joined, this event covers zero-payment acquisition only. A paid checkout that starts in a trial does not emit it.

When this fires

Two paths emit this event:

  • Cardless trial start — a subscriber begins a trial that took no payment method.
  • Access-code redemption on a trial plan — the redeemed plan sets trial_ends_at, so this fires in place of member.joined.

A Stripe checkout that begins with a trial window emits subscription.activated and subscription.trial_started, but no member.* join event.

Required ability

project-user:view — token must carry this at mint time to subscribe an endpoint to this event.

Payload

The data keys differ by path. Absent keys are omitted entirely, not sent as null.

Cardless trial start
{
  "id": "evt_01HX...",
  "type": "member.trial_joined",
  "created_at": "2026-05-18T10:05:00Z",
  "api_version": "2026-05-01",
  "project_id": "7f3d1c92-8b45-4e6a-9d21-5c8e0a4b6f13",
  "data": {
    "subscription_id": "5b7e2d40-1a86-4c39-97f2-e83d0b16c5a4",
    "plan_id": "c4e82f16-93a7-4d5b-b81c-6e0f27a94d3b",
    "subscriber_id": "2a91c4e7-6f38-4b52-8e0d-9c1a7b3f5d80",
    "trial_ends_at": "2026-05-25T10:05:00Z"
  }
}
Access-code redemption on a trial plan
{
  "id": "evt_01HX...",
  "type": "member.trial_joined",
  "created_at": "2026-05-18T10:05:00Z",
  "api_version": "2026-05-01",
  "project_id": "7f3d1c92-8b45-4e6a-9d21-5c8e0a4b6f13",
  "data": {
    "subscription_id": "5b7e2d40-1a86-4c39-97f2-e83d0b16c5a4",
    "project_id": "7f3d1c92-8b45-4e6a-9d21-5c8e0a4b6f13",
    "plan_id": "c4e82f16-93a7-4d5b-b81c-6e0f27a94d3b",
    "subscriber_id": "2a91c4e7-6f38-4b52-8e0d-9c1a7b3f5d80",
    "access_code": "TRIAL-7C1B4"
  }
}

Field reference

FieldTypeNotes
idstring ULIDUnique event id, prefixed evt_. Use for idempotent processing.
typestringAlways member.trial_joined for this event.
created_atISO 8601 timestampServer-side emission time.
api_versionstringWebhook API contract version.
project_idstring UUIDProject this event belongs to.
data.subscription_idstring UUIDSubscription that triggered the join.
data.plan_idstring UUIDPlan the subscription is on.
data.subscriber_idstring UUIDSubscriber's project-scoped user id.
data.trial_ends_atISO 8601 timestampCardless-trial path only.
data.project_idstring UUIDAccess-code path only. Mirrors the envelope project_id.
data.access_codestringAccess-code path only. The full redeemed code, not masked.

Caveats

How is this guide?

On this page

Subscriby is a product designed by you — for you.

No boardroom full of executives deciding what we ships next. Our roadmap always shaped by you with your feedback.

Share feedback or a request