---
title: "Register (COPY)"
method: POST
path: "/customers (COPY)"
---

# Register (COPY)

`POST /customers (COPY)`

## Request

- Base URL: `https://mediastoreapi-sandbox.cleeng.com`
- URL: `https://mediastoreapi-sandbox.cleeng.com/customers (COPY)`
- Auth: none required

Use `/customers` endpoint to register user. After registration customer is related with your account and you will see him in Cleeng Dashboard > Customer Accounts. Customers are recognized in Cleeng by `customerId`, which is encoded in <<glossary:JWT>>. <br>

> 🚧 Important
> 
> It is recommended that customerIP is passed as it is required for correct price calculation because tax rate depends on the country. If customerIP is NOT given, the price will be calculated for request source IP address.
> 
> Please note that when using Cleeng Merchant, customerIP should be available for the purpose of proper tax calculation in the US and Canada. It is recommended that customerIP is passed in the register, [login](https://developers.cleeng.com/reference/login) and [create order](https://developers.cleeng.com/reference/create-order) methods.

## Request body

- object
  - `email` string, required: The email address of the customer (valid RFC2822 email address)
  - `password` string, required: The password of the customer. String containing at least one letter and one digit or special character (!@#$%^&), length - 8-80 characters
  - `offerId` string, required: ID of Cleeng offer. The first letter defines the type of offer, then 9 numbers occurs, underscore and country code, e.g. S565568989_US. Required conditionally, when publisherId is not given
  - `publisherId` string, required: ID of publisher. Consist of 9 digits. Required conditionally, when offerId is not given
  - `locale` string, required: Language and text formatting of customer. You can fetch it using /locales. A list of supported values can be found [HERE](https://developers.cleeng.com/docs/supported-features#supported-currencies-and-locale)
  - `country` string, required: 2-letter customer country code (ISO 3166 country code - without 'UK')
  - `currency` string, required: Customer currency. A list of supported values can be found [HERE](https://developers.cleeng.com/docs/supported-features#supported-currencies-and-locale)
  - `firstName` string: Customer first name (1-50 characters)
  - `lastName` string: Customer last name (1-50 characters)
  - `externalId` string: Customer's external ID. Can be used to integrate with external systems. Has to be unique to the publisher
  - `externalData` string: Custom data in JSON format
  - `customerIP` string: Customer IP address. This field is used for geo restrictions (stored as last user IP)
  - `captchaValue` string: To integrate Google reCAPTCHA go [HERE](https://developers.cleeng.com/docs/fraud-prevention-solution-with-google-recaptcha)

## Response `200`

200

- object
  - `responseData` object
    - `jwt` string
    - `refreshToken` string
    - `customerToken` string
    - `customerId` integer
  - `errors` unknown[]
    - unknown

## Other responses

- `400`: 400
- `422`: 422
- `429`: 429
- `500`: 500

## Changes

- **2026-11-03** `b4b65aa4f14c`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/cleeng/apis/mediastore-api/changes/customers%20%28COPY%29/post.md)

---

[API](https://skmtc.dev/cleeng/apis/mediastore-api.md) - [All operations](https://skmtc.dev/cleeng/apis/mediastore-api/llms.txt) - [OpenAPI document](https://skmtc.dev/cleeng/apis/mediastore-api/revisions/b4b65aa4f14c?raw)
