Клиенты
Клиенты связаны с подписками. Они могут быть созданы либо вместе с подпиской через API подписки, либо через API следующим образом (смотрите ниже).
Создание клиента
Отправьте POST запрос на https://api.overpay.io/customers со следующими параметрами:
| Параметр | Тип | Описание | 
|---|---|---|
| first_name | string | Имя покупателя. | 
| last_name | string | Фамилия покупателя. | 
| address | string | Адрес покупателя. | 
| city | string | Город покупателя. | 
| country | string | Страна покупателя в ISO 3166-1 alpha-2 формате. | 
| zip | string | Почтовый индекс покупателя. Для country=US, формат почтового индекса должен иметь вид NNNNN или NNNNN-NNNN | 
| state | string | Штат / область / регион покупателя (состоит из двух букв), только если страна адреса для выставления счёта USилиCA | 
| phone | string | Номер телефона покупателя. | 
| email * обязательный | string | Адрес электронной почты покупателя. | 
| ip * обязательный | string | IP-адрес устройства покупателя. | 
| external_id | string (255) | Идентификатор покупателя в системе торговца. | 
Если права доступа и параметры верны, Overpay вернет 201 код состояния HTTP и данные нового клиента. Иначе, Overpay вернет 422 код состояния HTTP и сообщение об ошибке.
Пример верного запроса на создание клиента
curl https://api.overpay.io/customers \
  -X POST -u shop_id:secret_key \
  -H "Content-Type: application/json" \
  -d \
'{
  "first_name":"John",
  "last_name":"Doe",
  "address":"1st Street",
  "country":"US",
  "city":"Denver",
  "zip":"92006",
  "state":"CO",
  "phone":"+1-555-555-5555",
  "email":"customer@example.com",
  "ip":"127.0.0.1"
}'
Пример ответа на запрос на создание клиента
{
  "id":"cst_7aee5afb954c7ef7",
  "first_name":"John",
  "last_name":"Doe",
  "address":"1st Street",
  "country":"US",
  "city":"Denver",
  "zip":"92006",
  "state":"CO",
  "phone":"+1-555-555-5555",
  "email":"customer@example.com",
  "ip":"127.0.0.1"
}
Пример запроса создания клиента, когда параметр неверен или не передан
curl https://api.overpay.io/customers \
  -X POST -u shop_id:secret_key \
  -H "Content-Type: application/json" \
  -d \
'{
  "city":"Denver",
  "zip":"92006",
  "state":"CO",
  "phone":"+1-555-555-5555",
  "email":"customer@example.com"
}'
Пример ответа на запрос создания клиента, когда параметр неверен или не передан
{
  "message": "Ip address is invalid. Ip can't be blank",
  "errors": {
    "ip": [
      "address is invalid",
      "can't be blank"
    ]
  }
}
Просмотр информации о клиенте
Для просмотра информации о клиентах отправьте GET запрос на https://api.overpay.io/customers/:customer_id, где customer_id - идентификатор клиента. 
Если клиент с таким ID существует, система вернет 200 код состояния и информацию о нем.
Пример запроса на информацию о клиенте с ID cst_7aee5afb954c7ef7 и ответа на него
curl -u shop_id:secret \
  https://api.overpay.io/customers/cst_7aee5afb954c7ef7
Пример ответа
{
  "id":"cst_7aee5afb954c7ef7",
  "first_name":"John",
  "last_name":"Doe",
  "address":"1st Street",
  "country":"US",
  "city":"Denver",
  "zip":"92006",
  "state":"CO",
  "phone":"+1-555-555-5555",
  "email":"customer@example.com",
  "ip":"127.0.0.1"
}
Просмотр информации о всех клиентах
Для просмотра информации о списке всех клиентов отправьте GET запрос на https://api.overpay.io/customers. 
Если клиенты имеются, Overpay вернет 200 код состояния и массив клиентов.
Пример запроса на получение списка клиентов
curl -u shop_id:secret \
  https://api.overpay.io/customers
Пример ответа
[
  {"id":"cst_5ca4fab9dfc7fcbf","first_name":"John","last_name":"Doe","address":"1st Street","country":"US","city":"Denver","zip":"92006","state":"CO","phone":"+1-555-555-5555","email":"customer@example.com","ip":"127.0.0.1"},
  {"id":"cst_9f65045c1f4c3676","first_name":"Mark","last_name":"Dow","address":"2nd Street","country":"US","city":"Denver","zip":"90006","state":"CO","phone":"+1-551-548-5547","email":"customer.mark@example.com","ip":"10.10.0.4"}
]