Configure a Connected App

Playvox's Salesforce integration will act as a connected app. Connected apps request access to REST API resources on behalf of the client application. For a connected app to request access, it must be integrated with your org’s REST API using the OAuth 2.0 protocol. OAuth 2.0 is an open protocol that authorizes secure data sharing between applications through the exchange of tokens.

OAuth Authorization Flow

OAuth authorization flows grant Playvox's Salesforce integration client app restricted access to REST API resources on a resource server. In general, the flows consist of three main steps:

  • To initiate an authorization flow, Playvox's Salesforce connected app, on behalf of a client app, requests access to a REST API resource.
  • In response, an authorizing server grants access tokens to the connected app.
  • A resource server validates these access tokens and approves access to the protected REST API resource.

In Salesforce terminology, Playvox acts as an independent software vendor (ISV) who built a Connected App to integrate with Salesforce's API. The Connected App implements the required OAuth flows and knows about the Playvox callback URL.

Once installed in a Salesforce org it serves as a gateway to get valid OAuth authorization codes and then using those codes gives access to pull Salesforce data from the API of that organization.

The image below describes how the Playvox connected App is installed in the customer Salesforce org.

Token Policy

To prevent the Playvox's Salesforce integration token from becoming invalid in the future, you can update the Refresh Token Policy for the Playvox's connected app in Salesforce.

The Refresh Token Policy determines whether Salesforce users can continue to use an OAuth-enabled app without having to reauthorize whenever the access token expires.

You can set the Refresh Token Policy so that the token is used indefinitely unless revoked by the user or a Salesforce admin.

  1. Sign in to Salesforce and select Setup
  2. Navigate to Apps > Apps Manager
  3. Next to the Playvox application, select Manage
  4. Click on Edit Policies, then next to the Refresh Token Policy select Refresh token is valid until revoked
  5. Click Save

The Playvox's Salesforce integration relies upon an OAuth connection to maintain the sync between the two applications. On occasion, it may be necessary to re-authorize the connection should the token associated with the integration become invalid.

If a token does become invalid an error log will be tracked in the integration's log.

Requirements

API access must be enabled on your Salesforce account in order for Playvox to be able to pull data from your cases and display them in your Playvox site.

Your Salesforce administrator controls your profile and its permissions. Here is a way in which your access can be enabled. Choose one and you'll be good to go.

In order to enable API Access in Salesforce by Permission Set:

  1. Go to Manage Users and click Permission Sets.

2. Select the Permission Set you're updating.

3. Go to System and click System Permissions.

4. Click Edit.

5. Check the API Enabled box.

Playvox will require access to the Describe Global resource which lists the available objects and their metadata for your organization’s data. In addition, it provides the organization encoding, as well as the maximum batch size permitted in queries.

curl https://yourInstance.salesforce.com/services/data/v37.0/sobjects/ -H "Authorization: Bearer token"

Playvox store and protect those authorization codes on our end using an additional layer of encryption, which are then only available to the Salesforce connector created in the Playvox site.

Objects Used

Playvox will pull on-demand information for the next Salesforce objects:

Case:

Date fields

Created Date

Closed Date

Last Modified Date

System Modstamp

Last Viewed Date

Last Referenced Date

Root fields

Created Date

Owner ID

Case ID

Deleted

Case Number

Contact ID

Account ID

Asset ID

Source ID

Parent Case ID

Name

Email Address

Phone

Company

Case Type

Status

Case Reason

Case Origin

Subject

Priority

Description

Closed

Closed Date

Escalated

Created By ID

Last Modified Date

Last Modified By ID

System Modstamp

Last Viewed Date

Last Referenced Date

Engineering Req Number

SLA Violation

Product

Potential Liability

Reference fields

Contact

Account

Asset

Source

Parent

Owner

CreatedBy

LastModifiedBy

Custom fields

Event:

Date fields

Created Date

Due Date Time

Due Date Only

Start Date Time

End Date Time

Last Modified Date

System Modstamp

Recurrence Start

Recurrence End

Reminder Date/Time

Root fields

Created Date

Assigned To ID

Activity ID

Name ID

Related To ID

Subject

Location

All-Day Event

Due Date Time

Due Date Only

Duration

Start Date Time

End Date Time

Description

Account ID

Private

Show Time As

Deleted

Is Child

Is Group Event

Group Event Type

Created By ID

Last Modified Date

Last Modified By ID

System Modstamp

Archived

Recurrence Activity ID

Create Recurring Series of Events

Recurrence Start

Recurrence End

Recurrence Time Zone

Recurrence Type

Recurrence Interval

Recurrence Day of Week Mask

Recurrence Day of Month

Recurrence Instance

Recurrence Month of Year

Reminder Date/Time

Reminder Set

Event Subtype

Reference fields

Who

What

Account

Owner

CreatedBy

LastModifiedBy

Custom fields

Task:

Date fields

Created Date

Due Date Only

Last Modified Date

System Modstamp

Reminder Date/Time

Recurrence Start

Recurrence End

Reference fields

Who

What

Owner

Account

CreatedBy

LastModifiedBy

Root fields

Assigned To ID

Activity ID

Name ID

Related To ID

Subject

Due Date Only

Status

Priority

High Priority

Description

Deleted

Account ID

Closed

Created By ID

Last Modified Date

Last Modified By ID

System Modstamp

Archived

Call Duration

Call Type

Call Result

Call Object Identifier

Reminder Date/Time

Reminder Set

Recurrence Activity ID

Create Recurring Series of Tasks

Recurrence Start

Recurrence End

Recurrence Time Zone

Recurrence Type

Recurrence Interval

Recurrence Day of Week Mask

Recurrence Day of Month

Recurrence Instance

Recurrence Month of Year

Repeat This Task

Task Subtype

Custom fields

Timeout Policy

For portal users, the timeout for queries is 20 seconds.

Last Edited: 24.06.20

Did this answer your question?