---
seo:
  description: >-
    Customer accounts and auth for ENAD storefronts: signup, login, email
    verification, password reset, JWT sessions, profiles, orders, carts,
    wishlists, and…
sidebar:
  label: Overview
title: Customers API
---
Customer accounts and auth for ENAD storefronts: signup, login, email verification, password reset, JWT sessions, profiles, orders, carts, wishlists, and organisation (B2B) accounts, at `https://customers.enad.io`.
## When to use it
It powers the "my account" pages of a storefront. A customer signs up or logs in through the storefront, receives an access and refresh token, and then reads and updates their own profile, orders, carts, and wishlists with that session. It is not for catalog management: products are managed through the Management API (https://docs.enad.io/management/management-api) and read by shoppers over the Product Search API (https://docs.enad.io/storefront/graphql).
## Authentication
Two schemes, used together on carts, wishlists, and customer-group prices:
- **App API key** — server-to-server requests such as login, signup, order lookups, organisation creation, and file uploads send the app's key in the `api-key` header.
- **Customer JWT** — requests on behalf of a logged-in customer send the token issued at login as `Authorization: Bearer <token>`; access tokens are short-lived (one hour by default) and renewed with the refresh token.
All routes are prefixed with `/api/v1/{app_id}/`.

Version 1.0

Base URL: `//customers.enad.io`

## Auth

- [`POST /api/v1/{app_id}/auth/change-password`](/storefront/customers-api/reference/auth/post-api-v1-app-id-auth-change-password) — Change password.
- [`POST /api/v1/{app_id}/auth/login`](/storefront/customers-api/reference/auth/post-api-v1-app-id-auth-login) — Login user.
- [`POST /api/v1/{app_id}/auth/refresh`](/storefront/customers-api/reference/auth/post-api-v1-app-id-auth-refresh) — Refresh token.
- [`POST /api/v1/{app_id}/auth/reset-password`](/storefront/customers-api/reference/auth/post-api-v1-app-id-auth-reset-password) — Create password reset link.
- [`POST /api/v1/{app_id}/auth/signup`](/storefront/customers-api/reference/auth/post-api-v1-app-id-auth-signup) — Register new user.
- [`POST /api/v1/{app_id}/auth/verify-email`](/storefront/customers-api/reference/auth/post-api-v1-app-id-auth-verify-email) — Create email verification link.
- [`POST /api/v1/{app_id}/auth/verify-email-token`](/storefront/customers-api/reference/auth/post-api-v1-app-id-auth-verify-email-token) — Verify email.

## Users

- [`POST /api/v1/{app_id}/lookup/user`](/storefront/customers-api/reference/users/post-api-v1-app-id-lookup-user) — Lookup user by email.
- [`DELETE /api/v1/{app_id}/user`](/storefront/customers-api/reference/users/delete-api-v1-app-id-user) — Delete current user.
- [`GET /api/v1/{app_id}/user`](/storefront/customers-api/reference/users/get-api-v1-app-id-user) — Gets the user from the token.
- [`PATCH /api/v1/{app_id}/user`](/storefront/customers-api/reference/users/patch-api-v1-app-id-user) — Updates the user information.
- [`GET /api/v1/{app_id}/users/{user_id}`](/storefront/customers-api/reference/users/get-api-v1-app-id-users-user-id) — Get user by ID.
- [`PATCH /api/v1/{app_id}/users/{user_id}`](/storefront/customers-api/reference/users/patch-api-v1-app-id-users-user-id) — Update user by ID.

## Organisations

- [`GET /api/v1/{app_id}/lookup/organisations/{organisation-number}`](/storefront/customers-api/reference/organisations/get-api-v1-app-id-lookup-organisations-organisation-number) — Get organisation by organisation number.
- [`GET /api/v1/{app_id}/organisations`](/storefront/customers-api/reference/organisations/get-api-v1-app-id-organisations) — List organisations.
- [`POST /api/v1/{app_id}/organisations`](/storefront/customers-api/reference/organisations/post-api-v1-app-id-organisations) — Register new organisation.
- [`DELETE /api/v1/{app_id}/organisations/{id}`](/storefront/customers-api/reference/organisations/delete-api-v1-app-id-organisations-id) — Delete organisation.
- [`GET /api/v1/{app_id}/organisations/{id}`](/storefront/customers-api/reference/organisations/get-api-v1-app-id-organisations-id) — Get organisation.
- [`PATCH /api/v1/{app_id}/organisations/{id}`](/storefront/customers-api/reference/organisations/patch-api-v1-app-id-organisations-id) — Patch organisation.
- [`GET /api/v1/{app_id}/organisations/{id}/tree`](/storefront/customers-api/reference/organisations/get-api-v1-app-id-organisations-id-tree) — Get organisation tree.
- [`GET /api/v1/{app_id}/organisations/{id}/users`](/storefront/customers-api/reference/organisations/get-api-v1-app-id-organisations-id-users) — List users for an organisation.
- [`POST /api/v1/{app_id}/organisations/{id}/users`](/storefront/customers-api/reference/organisations/post-api-v1-app-id-organisations-id-users) — Add user to organisation.
- [`DELETE /api/v1/{app_id}/organisations/{id}/users/{user_id}`](/storefront/customers-api/reference/organisations/delete-api-v1-app-id-organisations-id-users-user-id) — Remove user from organisation.

## Orders

- [`GET /api/v1/{app_id}/lookup/orders`](/storefront/customers-api/reference/orders/get-api-v1-app-id-lookup-orders) — List all orders for an app.
- [`GET /api/v1/{app_id}/lookup/orders/{id}`](/storefront/customers-api/reference/orders/get-api-v1-app-id-lookup-orders-id) — Get order by ID for an app.
- [`GET /api/v1/{app_id}/lookup/orders/reference/{reference}`](/storefront/customers-api/reference/orders/get-api-v1-app-id-lookup-orders-reference-reference) — Get order by reference for an app.
- [`GET /api/v1/{app_id}/orders`](/storefront/customers-api/reference/orders/get-api-v1-app-id-orders) — List orders for authenticated user.
- [`GET /api/v1/{app_id}/orders/{id}`](/storefront/customers-api/reference/orders/get-api-v1-app-id-orders-id) — Get order by ID for authenticated user.
- [`GET /api/v1/{app_id}/orders/reference/{reference}`](/storefront/customers-api/reference/orders/get-api-v1-app-id-orders-reference-reference) — Get order by reference for authenticated user.

## Cart

- [`GET /api/v1/{app_id}/carts`](/storefront/customers-api/reference/cart/get-api-v1-app-id-carts) — List saved carts for authenticated user.
- [`POST /api/v1/{app_id}/carts`](/storefront/customers-api/reference/cart/post-api-v1-app-id-carts) — Save a new cart reference.
- [`DELETE /api/v1/{app_id}/carts/{id}`](/storefront/customers-api/reference/cart/delete-api-v1-app-id-carts-id) — Delete a saved cart.

## Wishlist

- [`GET /api/v1/{app_id}/shared/wishlists/{token}`](/storefront/customers-api/reference/wishlist/get-api-v1-app-id-shared-wishlists-token) — Get shared wishlist (paginated).
- [`GET /api/v1/{app_id}/wishlists`](/storefront/customers-api/reference/wishlist/get-api-v1-app-id-wishlists) — List wishlists for authenticated user.
- [`POST /api/v1/{app_id}/wishlists`](/storefront/customers-api/reference/wishlist/post-api-v1-app-id-wishlists) — Create a new wishlist.
- [`DELETE /api/v1/{app_id}/wishlists/{id}`](/storefront/customers-api/reference/wishlist/delete-api-v1-app-id-wishlists-id) — Delete wishlist.
- [`GET /api/v1/{app_id}/wishlists/{id}`](/storefront/customers-api/reference/wishlist/get-api-v1-app-id-wishlists-id) — Get a particular wishlist with items.
- [`PATCH /api/v1/{app_id}/wishlists/{id}`](/storefront/customers-api/reference/wishlist/patch-api-v1-app-id-wishlists-id) — Update wishlist.
- [`DELETE /api/v1/{app_id}/wishlists/{id}/items`](/storefront/customers-api/reference/wishlist/delete-api-v1-app-id-wishlists-id-items) — Remove items from wishlist.
- [`POST /api/v1/{app_id}/wishlists/{id}/items`](/storefront/customers-api/reference/wishlist/post-api-v1-app-id-wishlists-id-items) — Add items to wishlist.
- [`POST /api/v1/{app_id}/wishlists/{id}/share`](/storefront/customers-api/reference/wishlist/post-api-v1-app-id-wishlists-id-share) — Create or get share token for wishlist.
- [`DELETE /api/v1/{app_id}/wishlists/{id}/share/{token}`](/storefront/customers-api/reference/wishlist/delete-api-v1-app-id-wishlists-id-share-token) — Revoke wishlist share token.

## Files

- [`DELETE /api/v1/{app_id}/files/{file_id}`](/storefront/customers-api/reference/files/delete-api-v1-app-id-files-file-id) — Delete a file.
- [`PATCH /api/v1/{app_id}/files/{file_id}`](/storefront/customers-api/reference/files/patch-api-v1-app-id-files-file-id) — Patch file metadata.
- [`POST /api/v1/{app_id}/files/upload`](/storefront/customers-api/reference/files/post-api-v1-app-id-files-upload) — Upload a file.

## Attributes

- [`GET /api/v1/{app_id}/attributes`](/storefront/customers-api/reference/attributes/get-api-v1-app-id-attributes) — List attributes for an application.
- [`GET /api/v1/{app_id}/attributes/{attribute_id}`](/storefront/customers-api/reference/attributes/get-api-v1-app-id-attributes-attribute-id) — Get a single attribute.
- [`DELETE /api/v1/{app_id}/organisations/{organisation_id}/attributes/{attribute_id}`](/storefront/customers-api/reference/attributes/delete-api-v1-app-id-organisations-organisation-id-attributes-attribute-id) — Remove attribute relationship from an organisation.
- [`POST /api/v1/{app_id}/organisations/{organisation_id}/attributes/{attribute_id}`](/storefront/customers-api/reference/attributes/post-api-v1-app-id-organisations-organisation-id-attributes-attribute-id) — Add attribute relationship to an organisation.
- [`DELETE /api/v1/{app_id}/users/{user_id}/attributes/{attribute_id}`](/storefront/customers-api/reference/attributes/delete-api-v1-app-id-users-user-id-attributes-attribute-id) — Remove attribute relationship from a user.
- [`POST /api/v1/{app_id}/users/{user_id}/attributes/{attribute_id}`](/storefront/customers-api/reference/attributes/post-api-v1-app-id-users-user-id-attributes-attribute-id) — Add attribute relationship to a user.

## Customer Groups

- [`GET /api/v1/{app_id}/customer-groups/{customer_group_slug}`](/storefront/customers-api/reference/customer-groups/get-api-v1-app-id-customer-groups-customer-group-slug) — Get customer group by slug.
- [`GET /api/v1/{app_id}/customer-groups/store-groups/{store_group_id}/markets/{market_id}/prices`](/storefront/customers-api/reference/customer-groups/get-api-v1-app-id-customer-groups-store-groups-store-group-id-markets-market-id-prices) — Get customer groups with paginated prices for a user or organisation.
