Мій профіль

Базова адреса для функцій роботи з даним розділом /profile/.

Функції цього розділу дозволяють отримати інформацію про контрагента, а також керувати налаштуваннями клієнтських програм.

Попередня перевірка валідності даних інтервальної націнки

POST /profile/preference/extra/pre_check/interval

Приклад body запиту:

{
  "from": 10,
  "to": null,
  "value": 10
}

Повертає:

JSON-відповідь із статусом успіху або невдачі.

Приклад коректної відповіді:

{
  "success": true,
  "message": None
}

Приклад відповіді-попередження:

{
  "success": true,
  "overlap_interval_uuids": ["BAC20706EF7C454C8CC5B313EBA1FDA0"],
  "message": "Переданий інтервал перетинається з чинним інтервалом 0 – ∞ грн (10%). Старі межі будуть автоматично змінені."
}

Приклад відповіді з помилкою:

{
  "success": false,
  "message": "Некоректні дані інтервалу."
}

Попередня перевірка валідності даних націнки по бренду

POST /profile/preference/extra/pre_check/brand
query name:Ім’я бренду. Коли воно передане - перевіряється редагування націнки

Приклад body запиту:

{
  "name": "MOTUL",
  "value": 10
}

Повертає:

JSON-відповідь із статусом успіху або невдачі.

Приклад коректної відповіді:

{
  "success": true,
  "message": None
}

Приклад відповіді-попередження:

{
  "success": true,
  "message": "Для бренду [MOTUL] зміниться націнка з 10 на 15."
}

Приклад відповіді з помилкою:

{
  "success": false,
  "message": "Бренд із націнкою уже існує."
}

Додати інтервальну націнку

POST /profile/preference/extra/interval

Приклад body запиту:

{
  "from": 1.20,
  "to": 10,
  "value": 10
}

Приклад відповіді:

{
  "success": true,
  "extra": {
    "from": 1.2,
    "to": 10.0,
    "value": 10,
    "uuid": "ACED6BF0EC2B4176989801A93583BED8"
  }
}

Додати націнку по бренду

POST /profile/preference/extra/brand

Приклад body запиту:

{
  "name": "MOTUL",
  "value": 10
}

Приклад відповіді:

{
  "success": true,
  "extra": {
    "name": "MOTUL",
    "value": 10
  }
}

Список пов’язаних контрагентів (включаючи поточного контрагента), котрий містить тільки контрагентів з перекидкою платежів

GET /profile/payment_clients
Query Parameters:
 
  • clients_as – формат данних про клієнта

Можливі варіанти: obj, arr. За замовчуванням: obj.

Приклад відповіді:

{
  "clients": {
    "812D000C2999A7E611E576524555E66A": {
      "name": "Контрагент [000000000]",
      "code": "000000000",
    },
    "81C4005056AC66D611E838D4191D8B36": {
      "name": "Контрагент [000000000]",
      "code": "000000000",
    }
  }
}

Список пов’язаних контрагентів (включно з поточним), виключаючи контрагентів з перекидкою платежів

GET /profile/bound_clients
Query Parameters:
 
  • clients_as – Формат даних про клієнта, який повертається. Можливі варіанти obj, arr. За замовчуванням, obj.
  • is_sleeping – Повертаємо сплячих клієнтів (поточного і всіх пов’язаних). Беремо до уваги, тільки якщо all=0. Можливі варіанти: 1, 0 (true, false). За замовчуванням, 0.
  • not_blocked – Повертаємо незаблокованих клієнтів (поточного і всіх пов’язаних). Беремо до уваги, тільки якщо all=0. Можливі варіанти: 1, 0 (true, false). За замовчуванням, 0.

Приклад відповіді:

{
  "clients": {
    "812D000C2999A7E611E576524555E66A": {
      "name": "Контрагент [000000000]",
      "code": "000000000",
      "f": 1,
      "default_warehouse": {
        "uuid": "81EE005056AC66D6H3828H58E79EBACF9",
        "name": "Дніпро"
      },
      "contract_uuid": "92E4005056BAA48611xxx029410150D10",
      "statuses": [],
      "main_client": true
    },
    "81C4005056AC66D611E838D4191D8B36": {
      "name": "Контрагент [000000000]",
      "code": "000000000",
      "f": 1,
      "default_warehouse": {
        "uuid": "81EE005056AC66D632178828H58E79EBACF9",
        "name": "Луцьк"
      },
      "contract_uuid": "92E4005056BAA48611xxx029410150D10",
      "statuses": [],
      "main_client": false,
      "sleeping": false
    }
  }
}

Отримати налаштування клієнтського додатку за логіном користувача

GET /profile/preference

Приклад відповіді:

{
  "meta": {
    "version": "0.0.1"
  },
  "settings": {
    "name_1": "value 1",
    "name_2": "value 2"
  }
}

Отримати налаштування розсилок

GET /profile/mailing

Приклад відповіді:

{
  "mailing": [
    {
      "uuid": "0000000C0000A7E611E5C72C1C000000",
      "name": "Рассылка прайса",
      "emails": "email1@mail.ua"
    },
    {
      "uuid": "0000000C0000A7E611E5C72C1C000000",
      "name": "Товаро транспортные док.",
      "emails": "email_2@mail.ua, email_3@mail.ua"
    }
  ]
}

Зберегти налаштування розсилок

POST /profile/mailing

Приклад запиту:

{
  "mailing_configs": [
    {
      "config": "0000000C0000A7E611E5C72C1C000001",
      "mails": "email1@mail.ua"
    },
    {
      "config": "0000000C0000A7E611E5C72C1C000000",
      "mails": "email_2@mail.ua, email_3@mail.ua"
    }
  ]
}

Попередження

Підтримку старого формату запиту буде повністю припинено 01.09.2026

Старий формат запиту:

{
  "0000000C0000A7E611E5C72C1C000000": "email1@mail.ua",
  "0000000C0000A7E611E5C72C1C000000": "email_2@mail.ua, email_3@mail.ua"
}

Історія пошуку

GET /profile/history
Параметр Опис
filter Вказує, які типи записів повертати з історії. Може приймати значення vin, phrase or all. За замовчуванням: all.
direction Напрямок сортування, записи сортуються по даті. Може бути asc или desc. За замовчуванням: desc
per_page Кількість записів, які повертаються за одну видачу. За замовчуванням, 30.
page Сторінка видачі.

Приклад відповіді:

{
  "history": [
    {
      "car_model": "",
      "is_vin": false,
      "searched_at": "2019-01-22T12:45:28Z",
      "search_string": "motul омыватель",
      "not_found": false
    },
    {
      "car_model": "",
      "is_vin": false,
      "searched_at": "2019-01-21T17:55:39Z",
      "search_string": "motul обыватель",
      "not_found": true
    },
    {
      "car_model": "",
      "is_vin": false,
      "searched_at": "2019-01-21T15:57:46Z",
      "search_string": "415039310",
      "not_found": false
    },
    {
      "searched_at": "2019-01-18T08:13:57Z",
      "is_vin": true,
      "not_found": false,
      "search_string": "w0l0zcf3551081282",
      "car_model": "OPEL, VECTRA-C"
    },
  ]
}
Ключ Опис
searched_at Дата і час пошуку.
search_string Пошуковий рядок
is_vin Ознака, що це був пошуковий запит по VIN коду авто.
car_model Марка і модель авто
not_found Пошук не повернув результатів

Попередження

Зверніть увагу, що ключ not_found є застарілим! Його буде видалено найближчим часом.

Список телефонів поточного контрагента

GET /profile/phones

Приклад відповіді:

{
    "phones": [
        {
            "uuid": "81C9005056AC66D611E86F98812AA907",
            "name": "Контрагент [000024497]",
            "phone": "+380 (63) 293-11-72"
        },
        {
            "uuid": "81C9005056AC66D611E86F98812AA908",
            "name": "Контрагент [000025448]",
            "phone": "+380 (50) 111-22-23"
        }
    ]
}

Переключитись на пов’язаного контрагента

POST /profile/masq
Query Parameters:
 
  • client_uuid – ID пов’язаного контрагента

У випадку успіху поверне 200 OK і відповідь:

{
   "success": true,
}

Список завантажених документів

GET /profile/docs

Приклад відповіді:

{
  "docs": [
    {
      "filename": "мой паспорт.jpg",
      "updated_at": "2020-06-01T15:00:41+00:00",
      "uuid": "8173005056A44C2211EAA3FF8322ED11"
    },
    {
      "filename": "мой код.jpg",
      "updated_at": "2020-06-02T11:18:50+00:00",
      "uuid": "8173005056A44C2211EAA4A9AFDE342F"
    }
  ]
}

Попередження

Зверніть увагу, що даний метод є застарілим! Його буде видалено найближчим часом.

Завантажити документ

POST /profile/docs

Дані профілю

GET /profile/me
Query Parameters:
 
  • clients_as – Формат даних про пов’язаних клієнтів, який повертається. Можливі варіанти: obj, arr. За замовчуванням, obj.

Приклад відповіді:

{
  "bound_clients": {
    "81ED005056AC66D611EA474924EF8Dxxx": {
      "code": "0000000",
      "contract_uuid": "00000000000000000000000000000000",
      "f": 1,
      "name": "ДАГ | Геннадій  Cергійович (м. Луцьк)"
    }
  },
  "payment_clients": {
    "81ED005056AC66D611EA474924EF8Dxxx": {
      "code": "0000000",
      "contract_uuid": "00000000000000000000000000000000",
      "f": 1,
      "name": "ДАГ | Геннадій  Cергійович (м. Луцьк)"
    }
  },
  "city_name": "Луцьк",
  "city_uuid": "00000000000000000000000000000000",
  "code": "0000000",
  "created_at": "2019-04-23T00:00:00Z",
  "currency_name": "ГРН",
  "currency_uuid": "A358000C2947F7AE11E23F5617780xxx",
  "docs_status": {
    "label": "Проверен",
    "uuid": "00000000000000000000000000000000"
  },
  "f": 0,
  "is_verified": True,
  "masq": False,
  "name": "ДАГ | Геннадій  Cергійович (м. Луцьк)",
  "payment_clients": {},
  "region_name": "Волинська область",
  "region_uuid": "00000000000000000000000000000000",
  "registration_at": "2019-04-23T00:00:00Z",
  "uuid": "00000000000000000000000000000000",
  "warehouse_name": "Луцьк",
  "warehouse_uuid": "00000000000000000000000000000000",
  "default_warehouse": {
    "uuid": "00000000000000000000000000000000",
    "name": "Луцьк"
  },
  "contract_uuid": "00000000000000000000000000000000",
  "is_main_login": true,
  "services": {
    "chat": false,
    "image_recognition": false
  }
}

Попередження

Зверніть увагу, що ключі warehouse_name та warehouse_uuid є застарілими! 31.11.2023 їх буде видалено.

Редагувати інтервальну націнку

PUT /profile/preference/extra/interval/(string: interval_uuid)

Приклад body запиту:

{
  "from": 10,
  "to": null,
  "value": 10
}

Приклад відповіді:

{
  "success": true,
  "extra": {
    "from": 10.0,
    "to": null,
    "value": 10,
    "uuid": "ACED6BF0EC2B4176989801A93583BED8"
  }
}

Видалення інтервальної націнки

DELETE /profile/preference/extra/interval/(string: interval_uuid)

Повертає:

JSON-відповідь із статусом успіху або невдачі.

Приклад коректної відповіді (при успішному видаленні):

{
  "success": true
}

Приклад відповіді з помилкою:

{
  "success": false,
  "message": "Запис націнки не знайдено"
}

Редагувати націнку по бренду

PUT /profile/preference/extra/brand/(string: brand_name)

Приклад body запиту:

{
  "value": 10
}

Приклад відповіді:

{
  "success": true,
  "extra": {
    "name": "MOTUL",
    "value": 10
  }
}

Видалення націнки по бренду

DELETE /profile/preference/extra/brand/(string: brand_name)

Повертає:

JSON-відповідь із статусом успіху або невдачі.

Приклад коректної відповіді (при успішному видаленні):

{
  "success": true
}

Приклад відповіді з помилкою:

{
  "success": false,
  "message": "Запис націнки не знайдено"
}

Оновити налаштування додатку за ключем

POST /profile/settings/(string: app_name)/update

Отримати налаштування клієнтського додатку

GET /profile/settings/(string: app_name)
Query Parameters:
 
  • app_name – Назва додатку

Приклад відповіді:

{
  "meta": {
    "version": "0.0.1"
  },
  "settings": {
    "name_1": "value 1",
    "name_2": "value 2"
  }
}

Створити або оновити налаштування клієнтського додатку

POST /profile/settings/(string: app_name)
Query Parameters:
 
  • app_name – Назва додатку
  • version – Версія додатку (Опціонально)
  • settings – Валідний JSON-рядок з налаштуваннями (не більше 2000 символів)

Приклад відповіді:

{
  "success": true,
  "meta": {...},
  "settings": {..}
}

Видалити налаштування клієнтського додатку

DELETE /profile/settings/(string: app_name)

Приклад відповіді:

{
  "success": true,
  "message": "Настройка успешно удалена."
}