Укажите несколько областей в API PayPal RequestPermission

Глядя на API RequestPermissions, он говорит, что область действия должна быть строкой. Однако мне не удалось выяснить, как указать более одной области (в частности, EXPRESS_CHECKOUT и REFUND). Разделенные запятыми, точки с запятой и даже использование синтаксиса списка NVP не работали. Образец CURL будет принята с благодарностью.

Пример через запятую...

curl -s --insecure -H 
"X-PAYPAL-SECURITY-USERID: API_USERNAME" 
-H "X-PAYPAL-SECURITY-PASSWORD: API_PASSWORD" 
-H "X-PAYPAL-SECURITY-SIGNATURE: API_SIGNATURE" 
-H "X-PAYPAL-REQUEST-DATA-FORMAT: NV" 
-H "X-PAYPAL-RESPONSE-DATA-FORMAT: NV" 
-H "X-PAYPAL-APPLICATION-ID: APP-80W284485P519543T" 
https://svcs.sandbox.paypal.com/Permissions/RequestPermissions -d 
"requestEnvelope.errorLanguage=en_US&scope=EXPRESS_CHECKOUT,REFUND&callback=http://my/callback"

Когда я делаю этот запрос, я получаю обратно "Недопустимая область действия параметра запроса со значением EXPRESS_CHECKOUT,REFUND"

2 ответа

Решение

Хорошо. Нашел ответ случайно. Переменные области действия должны быть установлены с использованием "scope(0)=SCOPE_1&scope(1)=SCOPE_2..."

Итак, запрос cURL будет выглядеть так...

curl -s --insecure -H 
"X-PAYPAL-SECURITY-USERID: API_USERNAME" 
-H "X-PAYPAL-SECURITY-PASSWORD: API_PASSWORD" 
-H "X-PAYPAL-SECURITY-SIGNATURE: API_SIGNATURE" 
-H "X-PAYPAL-REQUEST-DATA-FORMAT: NV" 
-H "X-PAYPAL-RESPONSE-DATA-FORMAT: NV" 
-H "X-PAYPAL-APPLICATION-ID: APP-80W284485P519543T" 
https://svcs.sandbox.paypal.com/Permissions/RequestPermissions -d 
"requestEnvelope.errorLanguage=en_US&scope(0)=EXPRESS_CHECKOUT&scope(1)=REFUND&callback=http://my/callback"

Если вы используете их JSON API, область действия может быть массивом.

Другие вопросы по тегам