Build integrations with Appstle Memberships using our REST API. This guide covers authentication, common workflows, and the key endpoints you'll need.
For direct API access, pass the merchant's API key in the request header:
X-API-Key: <merchant-api-key>Merchants create and manage API keys from the Appstle Memberships admin dashboard under Settings → API Key Management. Each key is scoped to a single Shopify store.
ℹ️ Note: Direct API access requires an active API plan. Contact support@appstle.com for pricing.
If you're building a product that integrates with Appstle Memberships (CRM, helpdesk, email platform, automation tool), you can apply for a Partner Key:
X-API-Key: <merchant-api-key>
X-App-Key: <your-partner-key>X-API-Key— The merchant's API key (generated in Appstle and entered in your integration settings)X-App-Key— Your partner key, provisioned by Appstle — the same key for all merchants using your integration
Partner integrations bypass the paid plan requirement. To apply, email partners@appstle.com.
https://membership-admin.appstle.comAll external endpoints are prefixed with /api/external/v2/.
Retrieve all active membership contracts for a customer:
curl -X GET "https://membership-admin.appstle.com/api/external/v2/membership-contracts?shop=your-store.myshopify.com&customerId=12345" \
-H "X-API-Key: YOUR_API_KEY"Response:
{
"content": [
{
"id": 1001,
"status": "ACTIVE",
"membershipPlanName": "Gold Member",
"nextBillingDate": "2026-03-01",
"billingCycleType": "MONTHLY",
"startDate": "2026-01-01",
"endDate": null
}
],
"totalElements": 1
}A common use case — verify membership before granting access to gated content or discounts:
curl -X GET "https://membership-admin.appstle.com/api/external/v2/membership-status?shop=your-store.myshopify.com&customerId=12345" \
-H "X-API-Key: YOUR_API_KEY"Retrieve full details for a specific membership contract:
curl -X GET "https://membership-admin.appstle.com/api/external/v2/membership-contracts/{contractId}?shop=your-store.myshopify.com" \
-H "X-API-Key: YOUR_API_KEY"Retrieve all available membership plans for a store:
curl -X GET "https://membership-admin.appstle.com/api/external/v2/membership-plans?shop=your-store.myshopify.com" \
-H "X-API-Key: YOUR_API_KEY"Cancel a customer's membership programmatically:
curl -X POST "https://membership-admin.appstle.com/api/external/v2/membership-contracts/{contractId}/cancel?shop=your-store.myshopify.com" \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"reason": "Customer requested cancellation via support ticket"}'Pause a membership for a customer:
curl -X POST "https://membership-admin.appstle.com/api/external/v2/membership-contracts/{contractId}/pause?shop=your-store.myshopify.com" \
-H "X-API-Key: YOUR_API_KEY"Reactivate a paused membership:
curl -X POST "https://membership-admin.appstle.com/api/external/v2/membership-contracts/{contractId}/resume?shop=your-store.myshopify.com" \
-H "X-API-Key: YOUR_API_KEY"See the full Admin API Reference for the complete list of endpoints, request parameters, and response schemas.
Help agents verify and manage memberships while handling support tickets:
- Look up member status by customer ID from the Shopify customer context
- Display active plan, billing date, and status in the agent sidebar
- Cancel, pause, or update memberships directly from the helpdesk with a single API call
- Log actions back to Appstle for audit trail
Sync membership data for lifecycle automations:
- Use Webhooks to receive real-time membership events (
membership.created,membership.cancelled, etc.) - Enrich customer profiles with membership tier, plan name, and next billing date
- Trigger flows based on events:
membership.billing-failure→ "Update your payment method" dunning sequencemembership.cancelled→ Win-back offer sequencemembership.created→ Welcome onboarding sequencemembership.expired→ Re-engagement campaign
Control access to content, pages, or products based on active membership:
- On page load, call the membership status endpoint via server-side API
- Check
status === "ACTIVE"and verify the plan includes access to the requested resource - Gate or unlock accordingly — redirect non-members to the plan selection page
- Cache membership status per session to avoid rate limits
Pull membership data for reporting:
- Use the membership contracts list endpoint with pagination to export all contracts
- Filter by
statusto track active vs. churned members - Use
nextBillingDateandbillingCycleTypefor MRR/ARR projections - Combine with webhook events to track churn events in real time
API requests are rate-limited per store. If you receive a 429 Too Many Requests response, implement exponential backoff before retrying.
All responses use standard HTTP status codes:
| Status Code | Meaning |
|---|---|
200 | Success |
201 | Created |
400 | Bad Request — invalid parameters |
401 | Unauthorized — invalid or missing API key |
403 | Forbidden — key lacks permission |
404 | Not Found |
429 | Too Many Requests — rate limit exceeded |
500 | Server Error |
Building a product that integrates with Appstle Memberships? Apply for a Partner Key to enable seamless merchant integrations without requiring paid API plans.
Email partners@appstle.com with your company name, product description, and expected API volume.
- Full API Reference: Admin APIs · Customer Portal APIs
- Webhooks: Real-time event notifications
- Shopify Flow: No-code automation
- Support: support@appstle.com
- Partners: partners@appstle.com