Hi Hassan,
If you are using custom SSL Certificates you could adopt the following methods to set the path to the PEM file :
1.) Within the SDK
This option would require modifying the SDK the
Cient.php code. When using this approach, ideally the path parameter could be passed into the SDK.
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, TRUE); curl_setopt($ch, CURLOPT_CAINFO, "/path/to/cacert.pem");
2.) using the php.ini fileYou would have to add this to the php.ini file :
curl.cainfo=/path/to/cacert.pem
For more detailed information Refer to this in our
Github-PHP-SDK-IssueCould you verify if the certificate is valid if you are using the option 2 specified above
Hi Hassan,
The reason you are getting that error is because your application is of type "Public" and we make sure that all the RingCentral Applications of type Public implement the Authorization Code Flow mandatorily.
Kindly take a look at our demo in PHP here :
https://github.com/grokify/ringcentral-demos-oauth/tree/master/phpFor further information on Authorization Flow, please refer to our documentation here :
https://developer.ringcentral.com/api-docs/latest/index.html#!#AuthorizationCodeFlowLet us know if you are able to get it working. Thanks.
If you're using an OAuth 2.0 request using the OAuth 2.0 you need to provide the correct grant_type while making a call
Please note, application created with different platform type will have different grant_type.
If your application is public then most of the case the grant_type will be Authorization code where you need to login using your user ID and password. It will be launching a browser window to make a call to an authorization URL implementing a 3-legged (Authorization Flow) auth in you PHP code. Also for the issue you are facing, you also need to check the SSL certificate you are using.
RingCentral JavaScript SDK has methods to handle the authorization code grant flows.
I get error Fatal error: Uncaught Exception: Response has unsuccessful status in C:xampp3htdocs
ingcentralvendor
ingcentral
ingcentral-phpsrcHttpClient.php:44 Stack trace: #0 C:xampp3htdocs
ingcentralvendor
ingcentral
ingcentral-phpsrcPlatformPlatform.php(310): RingCentralSDKHttpClient->send(Object(GuzzleHttpPsr7Request)) #1 C:xampp3htdocs
ingcentralvendor
ingcentral
ingcentral-phpsrcPlatformPlatform.php(434): RingCentralSDKPlatformPlatform->sendRequest(Object(GuzzleHttpPsr7Request), Array) #2 C:xampp3htdocs
ingcentralvendor
ingcentral
ingcentral-phpsrcPlatformPlatform.php(212): RingCentralSDKPlatformPlatform->requestToken('/restapi/oauth/...', Array) #3 C:xampp3htdocs
ingcentralindex.php(16): RingCentralSDKPlatformPlatform->login(Array, '101', 'XXXXXXXXX') #4 {main} Next RingCentralSDKHttpApiException: Unauthorized for this grant type in C:xampp3htdocs
ingcentralvendor
ingcentral
ingcentral-phpsrcHttpClient.php:52 Stack trace: #0 C:xampp3htdocs
ingcentralve in C:xampp3htdocs
ingcentralvendor
ingcentral
ingcentral-phpsrcHttpClient.php on line 52
You have to provide better background info. Just those traces do not help me help you.
- Some code where you implement login
- Platform environment (sandbox or production)
- App client id or authentication grant type
Also, check and clean your traces before posting to avoid posting sensitive information. I have to edit your question to XXX out your login password!