There are always multiple ways to achieve these types of use-cases, but here is how I would approach this situation...
Use the
RingCentral JS SDK in your Website's Client, and pre-populate with your authenticated user's phone number:
// Initialize the SDK var sdk = new RingCentral.SDK({ server: 'https://platform.ringcentral.com', appKey: 'yourAppKey', appSecret: 'yourAppSecret' }); // Assign the RingCentral Platform Singleton var platform = sdk.platform(); // Example function to implement ad-hoc style token managament // Authenticate to RingCentral and make a phone call using supplied number function preformattedRingOut(endUserPhoneNumber) { if(!endUserPhoneNumber) { // Error handling for this sanity check } // Authenticate and ringout platform.login({ username: '<REPLACE_WITH_PHONE_NUMBER>', // Number of destination user account or admin<br> extension: '', // leave blank if direct number is used<br> password: '<REPLACE_WITH_ASSOCIATED_ACCOUNT_PASSWORD>'<br> })<br> .post('/account/~/extension/~/ringout', {<br> from: {phoneNumber: String(endUserPhoneNumber)},<br> to: {phoneNumber: String(<REPLACE_WITH_DESTINATION_NUMBER)}, callerId: {phoneNumber: 'endUserPhoneNumber'}, // optional, playPrompt: false // optional<br> .then(function(ajax) {<br> // Application logging<br> })<br> .catch(function(e) {<br> alert(e.message || 'Server cannot authorize user');<br> });<br>} You can find a more comprehensive example of using RingOut with the RingCentral JS SDK here: <a href="https://github.com/ringcentral/ringcentral-js#making-telephony-calls">https://github.com/ringcentral/ringcentral-js#making-telephony-calls</a>