Skip to main content

Get membership type

GET /membership-types/{id}

Requires the membership_types:read permission. A missing record or a record owned by another organisation returns 404.

Authorization​

X-API-Key required

Parameters​

NameLocationTypeRequiredDescription
idpathstringYesRemyPass resource _id

Data and reconciliation​

Amounts use minor currency units (for example, GBP 25.50 is returned as 2550). Currency codes are lowercase. Relationship fields contain RemyPass record IDs; use the matching get endpoint to fetch related records. Optional relationships and dates may be absent or null. Checkout tokens, internal metadata, payment-provider credentials and worker leases are excluded.

Request Examples​

curl -X GET "https://api.remypass.com/api/v1/public/membership-types/507f1f77bcf86cd799439011" \
  -H "Accept: application/json" \
  -H "X-API-Key: YOUR_API_KEY"

Responses​

StatusDescription
200Success
400Bad request. The top-level message explains what is invalid and, where applicable, the errors array contains structured field details.
401Missing or invalid API key.
403The caller is not allowed to access this resource.
404Resource not found.
429Rate limit exceeded.
500Server error.

200 Response Example​

{
"success": true,
"message": "Success",
"data": {
"_id": "507f1f77bcf86cd799439011",
"createdAt": "2026-10-06T12:00:00.000Z",
"updatedAt": "2026-10-06T12:00:00.000Z",
"name": "Example",
"description": "example",
"benefits": "example",
"active": true,
"group": "507f1f77bcf86cd799439011",
"sortOrder": 0,
"price": {
"amount": 25,
"currency": "gbp"
},
"expiration": {
"interval": "year",
"intervalCount": 1,
"customInterval": "day"
},
"expiryPolicy": {
"mode": "rolling",
"timeZone": "example",
"rules": [
{
"label": "example",
"transactionStart": "example",
"transactionEnd": "example",
"expiryMonthDay": "example"
}
]
},
"introductoryOffer": {
"enabled": false,
"audience": "new_members_only",
"type": "free_first_period"
},
"pricingOptions": [
{
"optionId": "example",
"label": "example",
"automaticRenewal": "none",
"minimumTermCycles": 1,
"_id": "507f1f77bcf86cd799439011",
"price": {
"amount": 25,
"currency": "gbp"
},
"expiration": {
"interval": "year",
"intervalCount": 1,
"customInterval": "day"
},
"introductoryOffer": {
"enabled": false,
"requiresAdminReview": false,
"audience": "new_members_only",
"type": "free_first_period"
}
}
],
"pass": {
"issueOnPurchase": true,
"template": "507f1f77bcf86cd799439011",
"sendEmail": true
},
"lifecycle": {
"cancellationAction": "deactivate",
"refundAction": "revoke",
"paymentFailureAction": "do_nothing",
"gracePeriodDays": 7
}
}
}

Response Fields​

FieldTypeDescriptionAttributes
successboolean
messagestring
dataobject
Show child attributes
  • _id: string — RemyPass record _id
  • createdAt: string (date-time) — created At
  • updatedAt: string (date-time) — updated At
  • name: string — name
  • description: string — description
  • benefits: string — benefits
  • active: boolean — active
  • group: string — Related RemyPass record _id
  • sortOrder: number — sort Order
  • price: object
    Show child attributes
    • amount: number — Money in minor currency units
    • currency: string — currency
  • expiration: object
    Show child attributes
    • interval: day, week, month, year, lifetime, custom — interval
    • intervalCount: number — interval Count
    • customInterval: day, week, month, year — custom Interval
  • expiryPolicy: object
    Show child attributes
    • mode: rolling, scheduled — mode
    • timeZone: string — time Zone
    • rules: array of object — rules
      Show child attributes
      • label: string — label
      • transactionStart: string — transaction Start
      • transactionEnd: string — transaction End
      • expiryMonthDay: string — expiry Month Day
  • introductoryOffer: object
    Show child attributes
    • enabled: boolean — enabled
    • audience: new_members_only — audience
    • type: free_first_period — type
  • pricingOptions: array of object — pricing Options
    Show child attributes
    • optionId: string — option Id
    • label: string — label
    • automaticRenewal: required, none — automatic Renewal
    • minimumTermCycles: number — minimum Term Cycles
    • _id: string — Related RemyPass record _id
    • price: object
      Show child attributes
      • amount: number — Money in minor currency units
      • currency: string — currency
    • expiration: object
      Show child attributes
      • interval: day, week, month, year, lifetime, custom — interval
      • intervalCount: number — interval Count
      • customInterval: day, week, month, year — custom Interval
    • introductoryOffer: object
      Show child attributes
      • enabled: boolean — enabled
      • requiresAdminReview: boolean — requires Admin Review
      • audience: new_members_only — audience
      • type: free_first_period — type
  • pass: object
    Show child attributes
    • issueOnPurchase: boolean — issue On Purchase
    • template: string — Related RemyPass record _id
    • sendEmail: boolean — send Email
  • lifecycle: object
    Show child attributes
    • cancellationAction: do_nothing, deactivate, expire, revoke — cancellation Action
    • refundAction: do_nothing, deactivate, expire, revoke — refund Action
    • paymentFailureAction: do_nothing, deactivate, expire, revoke — payment Failure Action
    • gracePeriodDays: number — grace Period Days