---
updatedAt: 2026-04-07T00:05:45.000Z
agentTools:
  projectIndex: https://docs.pelcro.com/llms.txt
---

# Memberships

Manage group subscriptions for enterprises, schools, and organizations with centralized billing and member access control.

## Overview

Memberships let you offer group subscriptions where one owner pays for multiple members. The owner handles all billing and controls who has access. Members share the same entitlements as the owner but never see invoices or payment details.

When the owner cancels or their subscription expires, all members immediately lose access.

***

## How It Works

1. **Owner subscribes** - A customer purchases a membership plan with a specified number of seats
2. **Owner adds members** - The owner invites people by email, or configures automatic access by IP address or email domain
3. **Members get access** - Invited members register or log in to activate their access

**Example:** A university library purchases a 500-seat subscription. They configure their campus IP range (128.112.0.0/16) for automatic access. Students on campus get access without logging in. The library can also invite specific researchers by email for off-campus access.

***

## API Endpoints

| Method   | Endpoint                                                 | Description                                                  |
| -------- | -------------------------------------------------------- | ------------------------------------------------------------ |
| `GET`    | [List members](https://docs.pelcro.com/reference/api-core-list-memberships)            | Retrieve a paginated list of membership records              |
| `POST`   | [Create member](https://docs.pelcro.com/reference/api-core-create-membership)          | Add an existing customer as a member of a group subscription |
| `POST`   | [Invite member](https://docs.pelcro.com/reference/api-core-invite-member)              | Send an email invitation to join a group subscription        |
| `GET`    | [Get member](https://docs.pelcro.com/reference/api-core-get-membership)                | Retrieve details for a specific membership                   |
| `PUT`    | [Update member](https://docs.pelcro.com/reference/api-core-update-membership)          | Update a membership record (address)                         |
| `DELETE` | [Delete member](https://docs.pelcro.com/reference/api-core-delete-membership)          | Remove a member from a group subscription                    |
| `POST`   | [IP authorization](https://docs.pelcro.com/reference/api-core-member-ip-authorization) | Check if an IP address has membership access                 |

***

## Important Behaviors

* **Soft delete**: Removing a member soft-deletes the record and frees up a seat for another member.
* **Pending activation**: If a pending invitation exists for a customer's email, the create endpoint activates it instead of creating a new record (returns `200` instead of `201`).
* **Seat capacity**: Adding or inviting members is subject to the subscription's `member_seat_capacity` limit.
* **Address ownership**: The `address_id` must belong to the member's customer.
* **Expand behavior**: The `subscription` field returns an integer (subscription\_id) by default. Pass `expand=subscription` to get the full object. Same for `user`/`user_id`.

***

## Member Statuses

| Status    | What It Means                                                 |
| --------- | ------------------------------------------------------------- |
| `pending` | Invitation sent, waiting for the member to register or log in |
| `active`  | Member has access to the subscription's entitlements          |

***

## Membership Object

| Attribute         | Type            | Description                                                                 |
| ----------------- | --------------- | --------------------------------------------------------------------------- |
| `id`              | integer         | Unique identifier for the membership                                        |
| `user_id`         | integer\|null   | ID of the member. Null for pending invitations. (expandable)                |
| `subscription`    | integer\|object | Subscription ID by default. Full object when `expand=subscription` is used. |
| `subscription_id` | integer         | ID of the parent subscription (always integer)                              |
| `site_id`         | integer         | ID of the site                                                              |
| `address_id`      | integer         | ID of the member's address. Returns 0 when not set.                         |
| `status`          | string          | Membership status: `pending` or `active`                                    |
| `created_at`      | integer         | Unix timestamp of creation                                                  |
| `updated_at`      | integer         | Unix timestamp of last update                                               |

# Sub pages

* [List members](https://docs.pelcro.com/reference/api-core-list-memberships.md)
* [Create member](https://docs.pelcro.com/reference/api-core-create-membership.md)
* [Invite member](https://docs.pelcro.com/reference/api-core-invite-member.md)
* [Get member](https://docs.pelcro.com/reference/api-core-get-membership.md)
* [Update member](https://docs.pelcro.com/reference/api-core-update-membership.md)
* [Delete member](https://docs.pelcro.com/reference/api-core-delete-membership.md)
* [IP authorization](https://docs.pelcro.com/reference/api-core-member-ip-authorization.md)

# Sibling pages

* [Overview](https://docs.pelcro.com/reference/api-core-intro.md)
* [Pagination](https://docs.pelcro.com/reference/api-core-pagination-limits.md)
* [Rate limits](https://docs.pelcro.com/reference/api-core-rate-limits.md)
* [Errors](https://docs.pelcro.com/reference/api-core-errors.md)
* [Sorting and filtering](https://docs.pelcro.com/reference/api-core-filtering-and-sorting.md)
* [Expanding relationships](https://docs.pelcro.com/reference/api-core-expanding-relationships.md)
* [Account](https://docs.pelcro.com/reference/api-core-account.md)
* [Analytics](https://docs.pelcro.com/reference/api-core-analytics.md)
* [Addresses](https://docs.pelcro.com/reference/api-core-addresses.md)
* [Bills](https://docs.pelcro.com/reference/api-core-bills.md)
* [Campaigns](https://docs.pelcro.com/reference/api-core-campaigns.md)
* [Charges](https://docs.pelcro.com/reference/api-core-charges.md)
* [Coupons](https://docs.pelcro.com/reference/api-core-coupons.md)
* [Customers](https://docs.pelcro.com/reference/api-core-customers.md)
* [E-commerce](https://docs.pelcro.com/reference/api-core-ecommerce.md)
* [Exports](https://docs.pelcro.com/reference/api-core-export.md)
* [Invoices](https://docs.pelcro.com/reference/api-core-invoice.md)
* [Newsletters](https://docs.pelcro.com/reference/api-core-newsletters.md)
* [Organizations](https://docs.pelcro.com/reference/api-core-organizations.md)
* [Payment Methods](https://docs.pelcro.com/reference/api-core-source.md)
* [Plans](https://docs.pelcro.com/reference/api-core-plan.md)
* [Products](https://docs.pelcro.com/reference/api-core-product.md)
* [Refunds](https://docs.pelcro.com/reference/api-core-refunds.md)
* [Sites](https://docs.pelcro.com/reference/api-core-sites.md)
* [Subscriptions](https://docs.pelcro.com/reference/api-core-subscription.md)
* [Vendors](https://docs.pelcro.com/reference/api-core-vendors.md)
* [Webhooks](https://docs.pelcro.com/reference/api-core-webhook.md)