Asosiy qismga o'tish

Dasturchilar uchun API

Dasturchilar uchun API hujjatlari. API yordamida WorkPanni o'z dasturingiz yoki saytingiz bilan integratsiya qilishingiz mumkin

Yangilangan

«WorkPan» API chaqiriladigan metodlar to’plamini o’z ichiga oladi.

API orqali ma’lumotlar bazasiga kirish huquqini olib, «WorkPan»ni istalgan ilova bilan integratsiya qilishingiz mumkin.

Barcha so’rovlarga miqdoriy cheklov qo’llanadi: sekundiga 8 tadan ortiq so’rov yuborib bo’lmaydi.

APIdan foydalanishdan avval uni yoqib, token kalitini generatsiya qilish kerak — buni boshqaruv panelining «Modullar» bo’limida bajarish mumkin. Shundan so’ng APIga yuboriladigan barcha so’rovlar shu token parametrini o’z ichiga olishi shart.

So’rovlarni GET|POST metodi bilan yuborish mumkin.

Barcha javoblar JSON formatida qaytariladi.

URL: — bu sizning tizimingiz joylashgan manzil, masalan https://_SIZNING_LOGININGIZ_.workpan.com.

Ushbu darsda quyidagi ma’lumotlarga ega DEMO-tizimdan foydalanamiz

URL:
https://demo.workpan.com
token:
wt3sctw89sl

Mundarija:

1-bo’lim: Buyurtma holatini olish

So’rov tavsifi:
Metod /api/order-status/
token (required) (string) token
id (required) (integer) Buyurtma raqami
Javob tavsifi:
Kalit Turi Tavsif
status (boolean) So’rov holati: TRUE|FALSE
data (object) Ma’lumotlar obyekti

data obyekti haqida batafsil ma’lumot.

Kalit Tavsif
id Buyurtma kaliti
contacts_id Kontakt kaliti
contacts_name Kontakt nomi
global_sid Holat kaliti
global_status_name Holatning to'liq tavsifi
global_status_name_sm Holatning qisqa tavsifi
global_status_class Holat klassi: ('none','warning','success','important','info','inverse')
global_status_type Holat turi: (1 = kutish, 2 = ochiq, 3 = ishda, 4 = muvaffaqiyat, 5 = xato, 6 = yopiq)
gid Qurilma turi kaliti
g_name Qurilma turi
bid Brend kaliti
b_name Brend
models_id Model kaliti
m_name Model
imei Qurilma IMEI si
bt_data Nosozlik tavsifi
nt_data Buyurtmaga izoh
discount_name Chegirma
sumPrice Xizmatlar summasi
sumDiscount Chegirma summasi
sumTotal Yakuniy summa
repairs Ta'mir turlari obyektlari massivi:

  • orders_repairs_id — ta'mir tiketi
  • products_rosters_id — ta'mir turi kaliti
  • products_rosters_name — nomi
  • price — narxi
details Butlovchi qismlar obyektlari massivi:

  • orders_details_id — xarid tiketi
  • details_rosters_id — detal kaliti
  • details_rosters_name — nomi
  • price — narxi

So’rov namunasi:

<?php
$url = 'https://demo.workpan.com/api/order-status/';
$token = 'wt3sctw89sl'; // Namunaviy token, uni shaxsiy kabinetdan olish mumkin
$id = 10; // Namunaviy buyurtma kaliti
$postData = array(
    'token' => $token,
    'id' => $id
);
$post = http_build_query($postData);

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
$response = curl_exec($ch);
curl_close($ch);

// Ma'lumotlarni chiqarish
$obj = json_decode($response);
var_dump($obj);

Javob namunasi:

{
    "data": {
        "id": "10",
        "contacts_id": "23",
        "contacts_name": "Мария",
        "global_sid": "27",
        "global_status_name": "Выдан с ремонтом",
        "global_status_name_sm": "Выдан с ремонтом",
        "global_status_class": "info",
        "global_status_type": "4",
        "gid": "2",
        "g_name": "Планшет",
        "bid": "1",
        "b_name": "3Q",
        "models_id": "17",
        "m_name": "3Q Q-pad MT0729D",
        "imei": null,
        "bt_data": "После попадания воды планшет не включается, так же разбит дисплей",
        "nt_data": null,
        "discount_name": null,
        "sumPrice": "7500.00",
        "sumDiscount": "0.00",
        "sumTotal": "7500.00",
        "repairs": [
            {
                "orders_repairs_id": "34",
                "products_rosters_id": "1",
                "products_rosters_name": "Диагностика",
                "price": "0"
            },
            {
                "orders_repairs_id": "35",
                "products_rosters_id": "2",
                "products_rosters_name": "Чистка после попадания воды",
                "price": "1500"
            },
            {
                "orders_repairs_id": "36",
                "products_rosters_id": "85",
                "products_rosters_name": "Замена модуля (стекло, тачскрин и дисплей)",
                "price": "1500"
            }
        ],
        "details": [
            {
                "orders_details_id": "5",
                "details_rosters_id": "48",
                "details_rosters_name": "Модуль (стекло, тачскрин и дисплей)",
                "price": "4500"
            }
        ]
    },
    "status": true
}

2-bo’lim: Barcha buyurtmalar ID sini olish

So’rov tavsifi:
Metod /api/get-orders-ids/
token (required) (string) token
page (integer) Sahifa raqami
create_date_start (integer) Buyurtma yaratilgan sana, boshlanish (UNIXTIMESTAMP)
create_date_end (integer) Buyurtma yaratilgan sana, tugash (UNIXTIMESTAMP)
Javob tavsifi:
Kalit Turi Tavsif
paginator (object) So’rov bo’yicha sahifalash ma’lumotlari obyekti
items (object) Buyurtmalar ID si — keyinchalik to’liq ma’lumot olish uchun

Javob namunasi:

{
  "paginator": {
    "pageCount": 2,
    "itemCountPerPage": 10,
    "first": 1,
    "current": 1,
    "last": 2,
    "next": 2,
    "pagesInRange": {
      "1": 1,
      "2": 2
    },
    "firstPageInRange": 1,
    "lastPageInRange": 2,
    "currentItemCount": 10,
    "totalItemCount": 11,
    "firstItemNumber": 1,
    "lastItemNumber": 10
  },
  "items": [
    "1",
    "2",
    "9",
    "22",
    "29",
    "30",
    "31",
    "32",
    "33",
    "34"
  ]
}

3-bo’lim: ID bo’yicha buyurtma ma’lumotlarini olish

So’rov tavsifi:
Metod /api/get-order-by-id/
token (required) (string) token
id (required) (integer) Buyurtma raqami
Javob tavsifi:
Kalit Turi Tavsif
id (integer) Buyurtma ID si
contacts_id (integer) Kontakt/mijoz ID si (to’liq ma’lumot uchun tegishli bo’limga qarang)
models_id (integer) Model ID si
models_name (string) Model nomi
models_gadgets_id (integer) Qurilma turi ID si
models_gadgets_name (string) Qurilma turi nomi
models_brands_id (integer) Brend ID si
models_brands_name (string) Brend nomi
services_id (integer) Servis markazi ID si
create_uid (integer) Buyurtmani yaratgan foydalanuvchi ID si (ma’lumot uchun tegishli bo’limga qarang)
create_date (datetime) Buyurtma yaratilgan sana
create_date_u (integer) Buyurtma yaratilgan sana (UNIXTIMESTAMP)
priority (integer) Buyurtma ustuvorligi (1, 2, 3)
isService (boolean) Qurilma qayerda (0 => mijozda, 1 => servis markazida)
isWarranty (boolean) Kafolatli buyurtmami? (0 => yo'q, 1 => ha)
isClose (boolean) Buyurtma yopilganmi? (0 => yo'q, tahrirlash mumkin, 1 => ha, yopiq)
bug_tid (integer) Nosozlik tavsifi kaliti (to’liq ma’lumot uchun tegishli bo’limga qarang)
note_tid (integer) Buyurtmaga izoh (to’liq ma’lumot uchun tegishli bo’limga qarang)
color_rid (integer) Qurilma rangi (to’liq ma’lumot uchun tegishli bo’limga qarang)
discount_rid (integer) Buyurtma bo’yicha chegirma (to’liq ma’lumot uchun tegishli bo’limga qarang)
discount_type (integer) Chegirma turi (1 => ishga, 2 => hammasiga)
oriented (integer) Kelishilgan summa
imei (string) Qurilmaning seriya raqami
cond (string) Holati
appearance (string) Tashqi ko’rinishi
complete (string) Butlanmasi
global_sid (integer) Buyurtmaning global holati (to’liq ma’lumot uchun tegishli bo’limga qarang)
client_sid (integer) Mijoz holati (to’liq ma’lumot uchun tegishli bo’limga qarang)
acceptance_sid (integer) Qabul holati (to’liq ma’lumot uchun tegishli bo’limga qarang)
detail_sid (integer) Detallar holati (to’liq ma’lumot uchun tegishli bo’limga qarang)
repair_sid (integer) Ta’mirlar holati (to’liq ma’lumot uchun tegishli bo’limga qarang)
delivery_sid (integer) Topshirish holati (to’liq ma’lumot uchun tegishli bo’limga qarang)
acceptance_uid (integer) Qurilmani qabul qilgan xodim ID si (to’liq ma’lumot uchun tegishli bo’limga qarang)
acceptance_date (datetime) Qabul sanasi
acceptance_date_u (integer) Qabul sanasi (UNIXTIMESTAMP)
delivery_uid (integer) Qurilmani topshirgan foydalanuvchi ID si (to’liq ma’lumot uchun tegishli bo’limga qarang)
delivery_date (datetime) Topshirish sanasi
delivery_date_u (integer) Topshirish sanasi (UNIXTIMESTAMP)
delivery_type (integer) Topshirish turi (1 => ta'mir bilan, 2 => ta'mirsiz)
expect_date (date) Kutilayotgan topshirish sanasi
expect_date_u (integer) Kutilayotgan topshirish sanasi (UNIXTIMESTAMP)
sumPrice (float) Barcha xizmatlar summasi
sumDiscount (float) Chegirma summasi
sumTotal (float) Yakuniy summa (xizmatlar summasi minus chegirma)
sumExpense (float) Xarajatlar summasi
sumPaid (float) To’langan
sumIncome (string) Foyda
guarantee_rid (string) Kafolat kaliti ID si (to’liq ma’lumot uchun tegishli bo’limga qarang)

Javob namunasi:

{
  "id": "31",
  "contacts_id": "23",
  "models_id": "1928",
  "models_name": "Apple iPhone 2G",
  "models_gadgets_id": "1",
  "models_gadgets_name": "Apple",
  "models_brands_id": "5",
  "models_brands_name": "Телефон",
  "services_id": "2",
  "create_uid": "1",
  "create_date": "2018-07-05 16:30:55",
  "create_date_u": "1530790255",
  "priority": "2",
  "isService": "1",
  "isWarranty": "0",
  "isClose": "0",
  "bug_tid": "10",
  "note_tid": null,
  "color_rid": "107",
  "discount_rid": null,
  "discount_type": null,
  "oriented": "0",
  "imei": "",
  "cond": "Б/У",
  "appearance": "Потертости,Царапины",
  "complete": "Без упаковки,Без флешки,Без СЗУ,Без аккумлятора",
  "global_sid": "14",
  "client_sid": "7",
  "acceptance_sid": "10",
  "detail_sid": "14",
  "repair_sid": "21",
  "delivery_sid": null,
  "acceptance_uid": "1",
  "acceptance_date": "2019-01-19 14:36:40",
  "acceptance_date_u": "1547890600",
  "delivery_uid": null,
  "delivery_date": null,
  "delivery_date_u": null,
  "delivery_type": null,
  "expect_date": "2019-03-11",
  "expect_date_u": "1552244400",
  "sumPrice": "1000.00",
  "sumDiscount": "0.00",
  "sumTotal": "1000.00",
  "sumExpense": "0.00",
  "sumPaid": "1000.00",
  "sumIncome": "1000.00",
  "guarantee_rid": null
}

4-bo’lim: ID bo’yicha kontakt ma’lumotlarini olish

So’rov tavsifi:
Metod /api/get-contact-by-id/
token (required) (string) token
id (required) (integer) Kontakt raqami
Javob tavsifi:
Kalit Turi Tavsif
id (integer) Kontakt ID si
name (string) Nomi
create_users_id (integer) Kontaktni yaratgan foydalanuvchi
date_create (datetime) Yaratilgan sana
date_create_u (integer) Yaratilgan sana (UNIXTIMESTAMP)
date_update (datetime) Yangilangan sana
date_update_u (integer) Yangilangan sana (UNIXTIMESTAMP)
types (string) Kontakt turi (ENUM('client','organization','provider'))
status (integer) Holati
update_users_id (integer) Kontaktni yangilagan foydalanuvchi ID si
communications (object) Kontakt bilan aloqa ma’lumotlari massivi (telefon, sayt, manzil va boshqalar)

Javob namunasi:

{
  "id": "23",
  "name": "Мария",
  "create_users_id": "1",
  "date_create": "2018-06-11 18:38:11",
  "date_create_u": "1528724291",
  "date_update": "2019-03-29 16:44:23",
  "date_update_u": "1553859863",
  "types": "client",
  "status": "1",
  "update_users_id": "1",
  "communications": [
    {
      "rosters_id": "1",
      "rosters_name": "Телефон",
      "rosters_type_id": "17",
      "rosters_type_name": "Мобильный",
      "data": "78124987856"
    },
    {
      "rosters_id": "1",
      "rosters_name": "Телефон",
      "rosters_type_id": "16",
      "rosters_type_name": "Рабочий",
      "data": "7495123456"
    }
  ]
}

5-bo’lim: ID bo’yicha holat ma’lumotlarini olish

So’rov tavsifi:
Metod /api/get-status-by-id/
token (required) (string) token
id (required) (integer) Holat ID si
Javob tavsifi:
Kalit Turi Tavsif
id (integer) Holat ID si
name (string) Nomi
name_small (string) Qisqa nomi
status_groups_id (integer) Holat guruhi ID si
status_groups_name (string) Holat guruhi nomi
class (string) class ENUM('none','warning','success','important','info','inverse')
class_i (integer) class integer
type (string) type ENUM(kutish, ochiq, ishda, muvaffaqiyat, xato, yopiq)
type_i (integer) type integer

Javob namunasi:

{
  "id": "14",
  "name": "Требуется назначить закупщика",
  "name_small": "Тр. назначить закупщика",
  "status_groups_id": "4",
  "status_groups_name": "Запчасти",
  "class": "warning",
  "class_i": "2",
  "type": "ожидание",
  "type_i": "1"
}

6-bo’lim: ID bo’yicha xodim ma’lumotlarini olish

So’rov tavsifi:
Metod /api/get-user-by-id/
token (required) (string) token
id (required) (integer) Xodim ID si
Javob tavsifi:
Kalit Turi Tavsif
id (integer) Xodim ID si
name (string) Ismi
lastname (string) Familiyasi

Javob namunasi:

{
  "id": "1",
  "create_date": "2018-04-18 19:11:42",
  "create_date_u": "1524060702",
  "create_uid": "1",
  "name": "Иван",
  "lastname": "Иванов",
  "patronymic": null,
  "login": "ivanov123",
  "auths_groups_id": "1",
  "isAdmin": "1",
  "services_id": "1",
  "status_id": "50",
  "rosters_posts_id": "1",
  "date_birth": "1989-01-01",
  "date_birth_u": "614372400",
  "note": null,
  "career_start": "2018-02-01",
  "career_end": null,
  "communications": [
    {
      "rosters_id": "1",
      "rosters_name": "Телефон",
      "rosters_type_id": null,
      "rosters_type_name": null,
      "data": "+749512346"
    },
    {
      "rosters_id": "3",
      "rosters_name": "E-mail",
      "rosters_type_id": null,
      "rosters_type_name": null,
      "data": "[email protected]"
    },
    {
      "rosters_id": "12",
      "rosters_name": "Мессенджер",
      "rosters_type_id": null,
      "rosters_type_name": null,
      "data": "skype_name"
    }
  ]
}

7-bo’lim: ID bo’yicha matn ma’lumotlarini olish (_tid bilan tugaydigan maydonlar)

So’rov tavsifi:
Metod /api/get-text-by-id/
token (required) (string) token
id (required) (integer) Kerakli yozuv ID si | yuqoridagi so’rovlardagi _tid maydonlari
Javob tavsifi:
Kalit Turi Tavsif
id (integer) ID
data (string) Ma’lumot

Javob namunasi:

{
  "id": "15",
  "data": "Не заряжается"
}

8-bo’lim: ID bo’yicha ma’lumotnomadan ma’lumot olish (_rid bilan tugaydigan maydonlar)

So’rov tavsifi:
Metod /api/get-roster-by-id/
token (required) (string) token
id (required) (integer) Kerakli yozuv ID si | yuqoridagi so’rovlardagi _rid maydonlari
Javob tavsifi:
Kalit Turi Tavsif
id (integer) ID
name (string) Nomi

Javob namunasi:

{
  "id": "15",
  "name": "Банковские реквизиты"
}

← Barcha bo'limlar