Интеграция

Автоматизация бизнес-процессов с помощью API-интеграции позволяет упростить работу, сэкономить время и средства, а также обрабатывать большое количество заказов.

Мы предоставляем бесплатную и открытую реализацию обмена данными. Вам остается лишь выбрать подходящее решение и сделать простую настройку API на своей стороне.

Для доступа к API необходимо пройти процедуру регистрации на сайте Good Delivery и получить ключ в личном кабинете.

Выполнить предварительный расчёт нового отправления. Ответ содержит данные всех доступных тарифов в используемых траспортных кампаниях. Если тариф не найден, то в ответе будет присутствовать пустое поле. Если траспортная кампания не найдена, то в ответе будет присутствовать пустое поле.

URL:https://gooddelivery.ru/api/v1.0/calcorder

Данные для запроса:


    {
        "ID":       "string($uuid)"
        "from*":    "string"
        "to*":      "string"
        "TC*":      "string($text)"
        "width*":   "string($cm)"
        "heigth*":  "string($cm)"
        "length*":  "string($cm)"
        "weight*":  "string($kg)"
        "Date":     "string($date-time)"
    }

    


    {
        "ID":       "d290f1ee-6c54-4b01-90e6-d701748f0851",
        "from":     "2457",
        "to":       "1247",
        "TC":       "1",
        "width":    "25",
        "heigth":   "25",
        "length":   "25",
        "weight":   "2.25",
        "Date":     "2020-08-29T09:12:33"
    }

Успешный ответ:

    {
        "ID":   "d290f1ee-6c54-4b01-90e6-d701748f0851",
        "Date": "2016-08-29T09:12:33.001Z"
    }
Возможные ошибки:

        "400":	"Bad input parameter [from]"
        "401":	"Bad input parameter [to]"
        "402":	"Bad input parameter [TC]"
        "403":	"Bad input parameter [width]"
        "404":	"Bad input parameter [height]"
        "405":	"Bad input parameter [length]"
        "406":	"Bad input parameter [weight]"
        "500":	"Internal error"                            
    

Создать новое отправление

URL:https://gooddelivery.ru/api/v1.0/neworder

Данные для запроса:

    {
    "ID":	"string($uuid)",
    "from*":	"string",
    "to*":	"string",
    "TC*":	"string($text)",
    "tariff*":	"string",
    "width*":	"string($cm)",
    "heigth*":	"string($cm)",
    "length*":	"string($cm)",
    "weight*":	"string($kg)",
    "date":	"string($date-time)",

        "sender"	{
            "id*":	"string",
            "name*":	"string",
            "email":	"string",
            "phone*":	"string",
            "address*":	"string",
            "companyName":	"string",
            "companyINN":	"string",
            "comment":	"string"
        },

        "recipient"	{
            "id":	"string",
            "name*":	"string",
            "email":	"string",
            "phone*":	"string",
            "address*":	"string",
            "companyName":	"string",
            "companyINN":	"string",
            "region":	"string",
            "postindex":	"string",
                "passport":	{
                    "series":	"string",
                    "number":	"string",
                    "issue":"string",
                    "organization":	"string"
                }
        }
    } 

    
    

{
    "ID": "d290f1ee-6c54-4b01-90e6-d701748f0851",
    "from": "2457",
    "to": "1247",
    "TC": "1",
    "tariff": "10",
    "width": "25",
    "heigth": "25",
    "length": "25",
    "weight": "2.25",
    "date": "2016-08-29T09:12:33",
        "sender": {
            "id": "d290f1ee-6c54-4b01-90e6",
            "name": "Ivanov Ivan",
            "email": "ivanov@gmail.com",
            "phone": "+7(111)111-11-11",
            "address": "Moscow, White str. 11 fl. 11",
            "companyName": "Ivanov LTD",
            "companyINN": 123456789,
            "comment": "urgent shipment"
        },
        "recipient": {
            "id": "d290f1ee-6c54-4b01-90e6",
            "name": "Petrov Peter",
            "email": "petrov@gmail.com",
            "phone": "+7(222)111-11-11",
            "address": "Moscow, White str. 11 fl. 11",
            "companyName": "Petrov LTD",
            "companyINN": 12345678911,
            "region": "Moscow",
            "postindex": 123456,
            "passport": {
            "series": 5008,
            "number": 124587,
            "issue": "2019-03-12",
            "organization": "OVD of Moscow"
            }
        }
    }

Успешный ответ:
    {
        "ID": "d290f1ee-6c54-4b01-90e6-d701748f0851",
        "Date": "2016-08-29T09:12:33.001Z"
    }
                            
Возможные ошибки:

        "400":	"Bad input parameter [from]"
        "401":	"Bad input parameter [to]"
        "402":	"Bad input parameter [TC]"
        "403":	"Bad input parameter [width]"
        "404":	"Bad input parameter [height]"
        "405":	"Bad input parameter [length]"
        "406":	"Bad input parameter [weight]"
        "500":	"Internal error"                            
    

Получить полный набор данных о отправлении

URL:https://gooddelivery.ru/api/v1.0/getorder

Данные для запроса:

    {
    "ID":	"string($uuid)",
    } 

    

{
    "ID": "d290f1ee-6c54-4b01-90e6-d701748f0851",
    }
                            

Успешный ответ:
    {
    "ID": "d290f1ee-6c54-4b01-90e6-d701748f0851",
    "from": "2457",
    "to": "1247",
    "TC": "1",
    "tariff": "10",
    "width": "25",
    "heigth": "25",
    "length": "25",
    "weight": "2.25",
    "date": "2016-08-29T09:12:33",
        "sender": {
            "id": "d290f1ee-6c54-4b01-90e6",
            "name": "Ivanov Ivan",
            "email": "ivanov@gmail.com",
            "phone": "+7(111)111-11-11",
            "address": "Moscow, White str. 11 fl. 11",
            "companyName": "Ivanov LTD",
            "companyINN": 123456789,
            "comment": "urgent shipment"
        },
        "recipient": {
            "id": "d290f1ee-6c54-4b01-90e6",
            "name": "Petrov Peter",
            "email": "petrov@gmail.com",
            "phone": "+7(222)111-11-11",
            "address": "Moscow, White str. 11 fl. 11",
            "companyName": "Petrov LTD",
            "companyINN": 12345678911,
            "region": "Moscow",
            "postindex": 123456,
            "passport": {
            "series": 5008,
            "number": 124587,
            "issue": "2019-03-12",
            "organization": "OVD of Moscow"
            }
        }
    }
Возможные ошибки:

        "400":	"Bad input parameter [ID]"
        "401":	"Non-existent ID [UUID correct and not Found]"
        "500":	"Internal error"                            
    

Получить текщий статус отправления.

URL:https://gooddelivery.ru/api/v1.0/statusorder

Данные для запроса:

    {
    "ID":	"string($uuid)",
    } 

    
    

{
    "ID": "d290f1ee-6c54-4b01-90e6-d701748f0851",
    }
                            

Успешный ответ:
    {
    "ID": "d290f1ee-6c54-4b01-90e6-d701748f0851",
    "from": "2457",
    "to": "1247",
    "TC": "1",
    "tariff": "10",
    "date": "2016-08-29T09:12:33",
        "status": {
        "cost": 1000,
        "currency": "RUB",
        "deliveryStatus": "Pending in TC",
        "comment": null
        }
    }
                            
Возможные ошибки:

        "400":	"Bad input parameter [ID]"
        "401":	"Non-existent ID [UUID correct and not Found]"
        "402":	"TC not respond"
        "500":	"Internal error"                            
    

Редактирвоание данных отправления. Возможность редактирования зависит от статуса отправления.

URL:https://gooddelivery.ru/api/v1.0/editorder

Данные для запроса:

    {
    "ID":	"string($uuid)",
    } 

    
    

{
    "ID":	"string($uuid)",
    "from*":	"string",
    "to*":	"string",
    "TC*":	"string($text)",
    "tariff*":	"string",
    "width*":	"string($cm)",
    "heigth*":	"string($cm)",
    "length*":	"string($cm)",
    "weight*":	"string($kg)",
    "date":	"string($date-time)",

        "sender"	{
            "id*":	"string",
            "name*":	"string",
            "email":	"string",
            "phone*":	"string",
            "address*":	"string",
            "companyName":	"string",
            "companyINN":	"string",
            "comment":	"string"
        },

        "recipient"	{
            "id":	"string",
            "name*":	"string",
            "email":	"string",
            "phone*":	"string",
            "address*":	"string",
            "companyName":	"string",
            "companyINN":	"string",
            "region":	"string",
            "postindex":	"string",
                "passport":	{
                    "series":	"string",
                    "number":	"string",
                    "issue":"string",
                    "organization":	"string"
                }
        }
    }
                            

Успешный ответ:
    {
    "ID": "d290f1ee-6c54-4b01-90e6-d701748f0851",
    "from": "2457",
    "to": "1247",
    "TC": "1",
    "tariff": "10",
    "width": "25",
    "heigth": "25",
    "length": "25",
    "weight": "2.25",
    "date": "2016-08-29T09:12:33",
        "sender": {
            "id": "d290f1ee-6c54-4b01-90e6",
            "name": "Ivanov Ivan",
            "email": "ivanov@gmail.com",
            "phone": "+7(111)111-11-11",
            "address": "Moscow, White str. 11 fl. 11",
            "companyName": "Ivanov LTD",
            "companyINN": 123456789,
            "comment": "urgent shipment"
        },
        "recipient": {
            "id": "d290f1ee-6c54-4b01-90e6",
            "name": "Petrov Peter",
            "email": "petrov@gmail.com",
            "phone": "+7(222)111-11-11",
            "address": "Moscow, White str. 11 fl. 11",
            "companyName": "Petrov LTD",
            "companyINN": 12345678911,
            "region": "Moscow",
            "postindex": 123456,
            "passport": {
            "series": 5008,
            "number": 124587,
            "issue": "2019-03-12",
            "organization": "OVD of Moscow"
            }
        }
    }
                            
Возможные ошибки:

    "400":	"Bad input parameter [from]"
    "401":	"Bad input parameter [to]"
    "402":	"Bad input parameter [TC]"
    "403":	"Bad input parameter [width]"
    "404":	"Bad input parameter [height]"
    "405":	"Bad input parameter [length]"
    "406":	"Bad input parameter [weight]"
    "500":	"Internal error"
    "501":	"The current status of the shipment does not allow changing its settings"
    "502":	"The shipment change has been delayed by the transport company"
    

Отменить формирование отправления.

URL:https://gooddelivery.ru/api/v1.0/cancelorder

Данные для запроса:

    {
    "ID":	"string($uuid)",
    } 

    
    

{
    "ID": "d290f1ee-6c54-4b01-90e6-d701748f0851",
    }
                            

Успешный ответ:
    {
    "ID": "d290f1ee-6c54-4b01-90e6-d701748f0851",
    "date": "2016-08-29T09:12:33.001Z",
    "status": "cancelled"
    }
                            
Возможные ошибки:

        "400":	"Bad input parameter [ID]"
        "401":	"Non-existent ID [UUID correct and not Found]"
        "402":	"TC not respond"
        "500":	"Internal error"                            
    

Авторизация клиента по API. Возможные режимы: debug и production. Полученный после успешной авторизации токен необходимо передавать прикаждом запросе в заголовке. Имя заголовка GD_TOKEN_HEADER.

URL:https://gooddelivery.ru/api/v1.0/auth

Данные для запроса:

    {
    "ID": "string",
    "key": "string",
    "mode": "string"
    } 

    
    

{
    "ID": "d41d8cd98f00b204e9800998ecf8427e",
    "key": "99754106633f94d350db34d548d6091a",
    "mode": "debug"
    }
                            

Успешный ответ:
    {
    "ID": "d41d8cd98f00b204e9800998ecf8427e",
    "token": "d290f1ee-6c54-4b01-90e6-d701748f0851",
    "mode": "debug"
    }
                            
Возможные ошибки:

        "400":	"Bad input parameter [ID]"
        "401":	"Bad input parameter [key]"
        "402":	"Bad input parameter [mode]"
        "500":	"Internal error" 
        "501":  "Access denied" 
        "502":  "Account suspended"                          
    

Параллельное отслеживание обращений по API. Возможный вариант использования: имитация установки вебхука на все типы запросов. Подойдёт для использования с CRM, Discord, Slack и прочими сервисами.

URL:https://gooddelivery.ru/api/v1.0/tracking

Данные для запроса:

    {
    "ID": "string",
    "key": "string",
    "URL": "string"
    } 

    
    

{
    "ID": "d41d8cd98f00b204e9800998ecf8427e",
    "key": "99754106633f94d350db34d548d6091a",
    "URL": "https://test_url_for_tracking.com"
    }
                            

Успешный ответ:
    {
    "URL": "https://test_url_for_tracking.com"
    "status": "accepted"
    }
                            
Возможные ошибки:

        "400":	"Bad input parameter [ID]"
        "401":	"Bad input parameter [key]"
        "402":	"Bad input parameter [URL]"
        "500":	"Internal error" 
        "501":  "URL is not available" 
        "502":  "Timout is too large"                          
    

Получить список доступных транспортных компаний. Номер компании передаётся в параметр TC при работе с отправлениями.

URL:https://gooddelivery.ru/api/v1.0/gettclist

Данные для запроса:

    {
    "null": "null"
    } 
    
    

{
    "null": "null"
    }
                            

Успешный ответ:
{
    "TCList": [
        {
            "ID": "1",
            "Name": "CDEK"
        },
        {
            "ID": "2",
            "Name": "Почта России"
        },
        {
            "ID": "3",
            "Name": "Деловые линии"
        },
        {
            "ID": "4",
            "Name": "Boxberry"
        },
        {
            "ID": "5",
            "Name": "PickPoint"
        },
        {
            "ID": "3",
            "Name": "Сбер"
        }    
    ]
    }
Возможные ошибки:

        "500":	"Internal error" 
        "501":  "TCList is not available"" 
    

Получить состояние шлюза SDEK.

URL:https://gooddelivery.ru/api/v1.0/getSDEKstat

Данные для запроса:

    {
    "null": "null"
    } 
    
    

{
    "null": "null"
    }
                            

Успешный ответ:
{
    "SDEKstat": [
        {
            "key": "respond",
            "value": "OK"
        },
        {
            "key": "services",
            "value": "OK"
        },
        {
            "key": "timeout",
            "value": "400"
        },
        {
            "key": "version",
            "value": "json"
        },
    ]
    }
Возможные ошибки:

        "500":	"Internal error" 
        "501":  "SDEK relay is not available""