# Memberstack

Memberstack is a platform that enables developers to add user authentication, payments, and member management to their websites without writing backend code.

- **Category:** security & identity tools
- **Auth:** API_KEY
- **Composio Managed App Available?** N/A
- **Tools:** 8
- **Triggers:** 0
- **Slug:** `MEMBERSTACK`
- **Version:** 20260223_00

## Tools

### Create Member

**Slug:** `MEMBERSTACK_CREATE_MEMBER`

Tool to create a new member in your application. Use after gathering email, password, optional plans, custom fields, metadata, and redirect.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `json` | object | No | Arbitrary JSON data for the member (replaces existing JSON). |
| `email` | string | Yes | The member's unique email address |
| `plans` | array | No | Array of free plan objects to assign to the member on creation. |
| `metaData` | object | No | Metadata for the member (replaces existing metadata). |
| `password` | string | Yes | The member's password |
| `customFields` | object | No | Custom fields for the member (replaces existing fields). |
| `loginRedirect` | string | No | URL path to redirect to after login |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Member

**Slug:** `MEMBERSTACK_DELETE_MEMBER`

Tool to permanently delete a member from your application. Use after confirming you no longer need the member's data and have the member ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The ID of the member to delete. |
| `deleteStripeCustomer` | boolean | No | Whether to delete the associated Stripe customer. Defaults to false. |
| `cancelStripeSubscriptions` | boolean | No | Whether to cancel the associated Stripe subscriptions. Defaults to false. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Member

**Slug:** `MEMBERSTACK_GET_MEMBER`

Tool to retrieve a specific member by ID or email. Use when you need to fetch member profile details for a given identifier (ID or email). Example: "Get member mem_sb_12345".

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id_or_email` | string | Yes | The member's ID (starting with 'mem_') or URL-encoded email address. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Data Tables

**Slug:** `MEMBERSTACK_LIST_DATA_TABLES`

Tool to retrieve all data tables in your Memberstack application. Returns table metadata including keys, field definitions, and access control rules.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Members

**Slug:** `MEMBERSTACK_LIST_MEMBERS`

Tool to retrieve a paginated list of all members in your application. Use when you need to iterate through members with cursor-based pagination.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `after` | integer | No | The endCursor after which to start listing members |
| `limit` | integer | No | Maximum number of members to return (max 200) |
| `order` | string ("ASC" | "DESC") | No | Sort order for members (ASC or DESC) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Plans

**Slug:** `MEMBERSTACK_LIST_PLANS`

Tool to list all available membership plans. Use when you need to retrieve plan IDs and details before assigning or comparing plans.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove Free Plan

**Slug:** `MEMBERSTACK_REMOVE_FREE_PLAN`

Tool to remove a free plan from an existing member. Use after confirming the member's subscription status. Example: "Remove free plan pln_sb_67890 from member mem_sb_12345".

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | Member ID (starts with 'mem_'). |
| `planId` | string | Yes | Free plan ID (starts with 'pln_'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Member

**Slug:** `MEMBERSTACK_UPDATE_MEMBER`

Tool to update an existing member's information. Use when you have a member ID and need to modify their email, customFields, metaData, JSON data, or loginRedirect.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | Member ID (starts with 'mem_') |
| `json` | object | No | Arbitrary JSON object to replace existing data |
| `email` | string | No | New email address for the member |
| `metaData` | object | No | Object of metadata to replace existing ones |
| `customFields` | object | No | Object of custom fields to replace existing ones |
| `loginRedirect` | string | No | URL path to redirect to after login |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
