com.atiproto.subscription

A record representing a subscription from one user to another

Repository @atiproto.com did:plc:4x5dcv6u4wlkjcssto7f22nu namespace authority
Details · record, key any
Kindrecord
Record keyany
Authorityatiproto.com
Indexed

Record

record · key any

Properties

accessUntil

string · datetime

Date until which the subscriber retains access after cancellation

amount

requiredinteger

Subscription amount in cents (0 for free subscriptions)

  • minimum: 0

billingStartDate

requiredstring · datetime

First billing period, can be used to determine recurrence

cancelledAt

string · datetime

Cancellation timestamp

createdAt

requiredstring · datetime

Creation timestamp

currency

requiredstring

ISO 4217 currency code

  • maxLength: 3

interval

requiredstring

Billing interval

  • maxLength: 64
  • enum: monthly | yearly

status

requiredstring

Subscription status

  • maxLength: 64
  • enum: pending | active | past_due | cancelled | expired

subject

requiredstring · did

DID of the user being subscribed to

#view

object

View of a subscription record for use in API responses

Properties

accessUntil

string · datetime

Date until which the subscriber retains access after cancellation

amount

requiredinteger

Subscription amount in cents (0 for free subscriptions)

  • minimum: 0

billingStartDate

requiredstring · datetime

First billing period, can be used to determine recurrence

cancelledAt

string · datetime

Cancellation timestamp

createdAt

requiredstring · datetime

Creation timestamp

currency

requiredstring

ISO 4217 currency code

  • maxLength: 3

interval

requiredstring

Billing interval

  • maxLength: 64
  • enum: monthly | yearly

renewalDate

string · datetime

Next scheduled renewal/billing date. Server-derived from the billing schedule; not stored in PDS. Omitted when not applicable (e.g. cancelled or unauthenticated views).

status

requiredstring

Subscription status

  • maxLength: 64
  • enum: pending | active | past_due | cancelled | expired

subject

string · did

DID of the user being subscribed to

uri

requiredstring · at-uri

AT-URI of the subscription record

Similar lexicons

semantic match

Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.

  • A recurring payment commitment. Immutable once created — supporters cancel and create new subscriptions to change terms. Bills on anniversary dates with automatic retry on failure.

  • Get a specific subscription sent by the authenticated user. Looks up by subscription record uri or subject (recipient) DID. These are mutually exclusive; uri takes precedence.

  • A subscription tier offered by a creator. Lives in the creator's repository, so the creator is the repo owner and is not repeated as a field. Tiers are tied to the creator's DID rather than to any publication or app.

  • Count active subscriptions. If subject is provided, counts subscriptions received by that DID. If omitted, counts subscriptions the authenticated user has active (as the subscriber). Optionally filtered by a start/end datetime window (matching billingStartDate). When the authenticated user is the subject/owner of the target, the response also includes the sum of amounts.

  • Proof that a subscriber currently holds a tier. This is the record attested.network deliberately leaves undefined: its payment records prove a payment happened but carry no expiry, revocation or status, so they cannot answer 'is this subscription active right now'. Lives in the SUBSCRIBER's repository, alongside the payment record that granted it. Entitlements are short-lived and RENEWED, never long-lived and revoked: each successful billing cycle writes a fresh record, so cancellation is the ob