1b.app
Скопійоване посилання -

json запит дією передати бізнес процес в API

намагаюся написати апі запит джойсон
виходить так
{"id":"3589","phonenumber":"0994259117","api_key":xxxxxxxxxx"}
https://prnt.sc/urtvw6
а сервер хоче частину параметрів масиву
{"id":"3589", "params": {"phonenumber": "0994259117", "api_key": "xxxxxxxx"}}
Як це можна зробити?
Оригінальне питання доступне на версії: ru

Відповіді:

Спробуйте прописати через слеш /
Тобто. спочатку ви вказуєте перший параметр, допустимо це id в одному полі, щоб вказати вкладеність номера телефону вкажіть в наступне поле id/phonenumber та id/api_key
без конкретного прикладу використання у дії точніше сказати не можу.
02.10.2020, 15:34
Оригінальний коментар доступний на версії: ru

такий параметр просто не потрапляє у запит
http://prntscr.com/urw4ml
https://adapter.crm-onebox.com/admin/shop/workflow/14/procedure/15/?status=0
та помилку у коментар пише
http://prntscr.com/urw69g
02.10.2020, 15:51
Оригінальний коментар доступний на версії: ru


Мироненко Дмитро
Клієнт писав/ла:
такий параметр просто не потрапляє в запит і помилку в коментар пише http://prntscr. .com/urw69g
вибачте, я подумав, що ви передаєте не поля процесу, а поля в кастомному блоці нижче http://i.imgur.com/yMnmEXy.png
там якраз є те, що потрібно
02.10.2020, 15:56
Оригінальний коментар доступний на версії: ru

http://prntscr.com/ury3w1
пісня...
якщо [requestUrl] та [request] скласти в адресному рядку браузера, то отримуємо потрібний результат
http://prntscr.com/ury65l
але чомусь через дію "передати бізнес-процес в API" відповіді немає?
02.10.2020, 17:22
Оригінальний коментар доступний на версії: ru

Спробуйте також посмикати в налаштуваннях дії "Використовуваний метод авторизації", наприклад, Basic
або в заголовки щось перенести з урл-адреси "Додаткові заголовки запиту (вкажіть кілька через крапку з комою)"

Мироненко Дмитро
Клієнт писав/ла:
але чомусь через дію "передати бізнес-процес в API" відповіді немає?
я так зрозумів у вас відповіді в коментарі повинні підвантажитися? спробуйте в інше поле записати...
Дуже багато залежить від самого АПІ в яке стукаємо, тому складно щось конкретне підказати.
02.10.2020, 17:35
Оригінальний коментар доступний на версії: ru

та й з опрацюванням відповіді ви явно щось намудрили http://i.imgur.com/UIEMBI7.png
02.10.2020, 17:42
Оригінальний коментар доступний на версії: ru


Щербатих Іван Олександрович Співробітник написав:
та й з опрацюванням відповіді ви явно щось намудрили http://i.imgur.com/UIEMBI7.png

якщо я бачу таку відповідь весь час
http://prntscr.com/urzl72
його і намагаюся обробити
02.10.2020, 18:33
Оригінальний коментар доступний на версії: ru

я можу змінити кодування запиту?
і реально подивитись що відсилає бокс можна на якомусь сервісі?
02.10.2020, 21:51
Оригінальний коментар доступний на версії: ru

Якщо не помиляюсь, то для JSON за замовчуванням кодування UTF-8. Поміняти насправді можливості немає.
А логи ви і так бачите, а саме, що відправляється https://prnt.sc/ury3w1
Що ви маєте на увазі під сервісом? Ви ж надсилаєте запит на конкретний ресурс, а саме в https://blackbox.net.ua/ - ось там можливо і є логи того, що заходить.
05.10.2020, 12:29
Оригінальний коментар доступний на версії: ru


Мироненко Дмитро
Клієнт писав/ла:
пісня...
якщо [requestUrl] та [request] скласти в адресному рядку браузера, то отримуємо потрібний результат


У нас та сама ситуація. У браузері все ок, відповідь правильна і кількість запитів зменшується на 1. А через бокс ніяк https://i.imgur.com/CcPUncE.png/
Підкажіть, будь ласка, ви знайшли спосіб отримати правильну відповідь через бокс?
14.01.2021, 16:31
Оригінальний коментар доступний на версії: ru

як написати параметри – так.

по логах навіть все правильно виходить із запитом
Проте, сайт все одно дає помилку.
15.01.2021, 12:50
Оригінальний коментар доступний на версії: ru


Мироненко Дмитро
Клієнт писав/ла:
як написати параметри – так.
по логах навіть все правильно виходить із запитом
Проте, сайт все одно дає помилку.

Спасибі за відповідь.
Шкода, що поки що не налаштували ((
З прописуванням параметрів теж розібралися, хоч і трохи інакше. Залишилося зрозуміти, чому безпосередньо працює, а через бокс немає.
15.01.2021, 12:58
Оригінальний коментар доступний на версії: ru


Мироненко Дмитро

З дією, що обговорюється в завданні, продовжую потихеньку боротися, а поки що налаштувала іншим способом отримання інформації. Ділюсь :-)
Спочатку за допомогою дії "Записати значення в додаткове поле" та змінних я створила параметри запиту включаючи "data=". https://i.imgur.com/usbSLle.png/
Текст такий:
data=%7B%22id%22%3A%22{|$orderid|}%22%2C%22params%22%3A%7B%22phonenumber%22%3A%22{|$clientphone|}%22%2C%22api_key %22%3A%22YourApiKey%22%2C%22name%22%3A%22{|$clientfio|}%22%7D%7D
У тексті вже вставлені змінні номери замовлення, телефону та фіо клієнта, а текст YourApiKey (замилений на скріншоті) потрібно замінити на ключ апі в чистому вигляді (без лапок і дужок). І уважно з пробілами у запиті. З зайвими пробілами (наприклад навколо ключа) у мене у відповідь приходила та сама 101 помилка.
Потім у дію "Виконати GET запит з параметрами" в GET URL написала http://blackbox.net.ua/api/, а в GET Параметри - змінну для додаткового поля замовлення, яке вставляла запит дією вище. Знак питання між URL та параметрами бокс вставляє сам, тому його не писала ніде. Текст відповіді у додатковому полі замовлення, тільки в інше https://i.imgur.com/S3R4d7p.png/
І останнє, якщо потрібно, перенаправила замовлення на спеціальний етап для випадків із клієнтами у чорному списку. У дії "Змінити бізнес-процес та етап залежно від значень полів" перевірила додаткове поле замовлення з відповіддю на наявність у тексті відповіді слова data, т.к. у разі помилки чи відсутності клієнта у списку масиву data у відповіді немає.
https://i.imgur.com/JXBjoPW.png/
Якщо потрібно подивитися повну відповідь, можна вивести додаткове поле в інтерфейс замовлення або відкрити історію замовлення.
Можливості з обробки відповіді при такому методі значно вужчі, але працює і вже хоч якась автоматизація :-)
з.и.: є у мене підозри, що стандартна дія "Передати бізнес-процес в API" теж у запит вставляє знак питання або щось ще між URL і параметрами, через це і помилка. Щоб перевірити, потрібно в URL вставити тільки "http://blackbox.net.ua/api/", і зробити так щоб параметри були у вигляді "data={...}". А ось як це зробити я так і не вигадала.
15.01.2021, 18:02
Оригінальний коментар доступний на версії: ru

Будь ласка, приєднуйтесь до діалогу. Якщо вам є що сказати – будь ласка, напишіть коментар. Для входу потрібний мобільний телефон та смс-код для ідентифікації. Увійти та написати коментар