Skip to content

Commit

Permalink
31.0.0
Browse files Browse the repository at this point in the history
  • Loading branch information
PureCloud Jenkins committed Jan 19, 2021
1 parent ed81265 commit 77db0b9
Show file tree
Hide file tree
Showing 212 changed files with 2,764 additions and 1,837 deletions.
33 changes: 3 additions & 30 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ title: Platform API Client SDK - Go

A Go package to interface with the Genesys Cloud Platform API. View the documentation on the [pkg.go.dev](https://pkg.go.dev/github.com/MyPureCloud/platform-client-sdk-go/platformclientv2). Browse the source code on [Github](https://github.com/MyPureCloud/platform-client-sdk-go).

Latest version: 30.0.0 [![GitHub release](https://img.shields.io/github/release/mypurecloud/platform-client-sdk-go.svg)]()
Latest version: 31.0.0 [![GitHub release](https://img.shields.io/github/release/mypurecloud/platform-client-sdk-go.svg)]()
[![Release Notes Badge](https://developer.mypurecloud.com/images/sdk-release-notes.png)](releaseNotes.md)

## Golang Version Dependency
Expand Down Expand Up @@ -51,7 +51,7 @@ When creating configuration instances, they must be used when creating new API i

```go
// Create new config
config := platformclientv2.NewConfiguration()
config := NewConfiguration()

// Create API instance using config
usersAPI := platformclientv2.NewUsersApiWithConfig(config)
Expand All @@ -67,7 +67,7 @@ config.BasePath = "https://api.mypurecloud.jp"

#### Setting the access token

If using a grant other than client credentials and code authorization, the access token can be set manually:
If using a grant other than client credentials, the access token can be set manually:

```go
config.AccessToken = "anaccesstokenobtainedmanuallyfromanoauthgrant"
Expand All @@ -94,33 +94,6 @@ if err != nil {
}
```

#### Authorization Code Grant

* The app is authenticating as a human, the [Authorization Code Grant](https://developer.mypurecloud.com/api/rest/authorization/use-authorization-code.html)
* The app is served via a web server
* There is server-side code that will be making API requests

Use the `AuthorizeCodeGrant` function on the client to make a request to Genesys Cloud to exchange the client id, client secret and authorization code for an access token. If no error was returned, the configuration instance is now authorized and can begin making API requests.

```go
authData, err := config.AuthorizeCodeGrant(clientId, clientSecret, authCode, redirectUri)
if err != nil {
panic(err)
}
```

By default the SDK will transparently request a new access token when it expires. If multiple threads are running 1 thread will request a new token, other threads will wait a maximum of 10 seconds for the token refresh to complete, this time can be overriden with the _RefreshTokenWaitTime_ field of the _Configuration_ struct.
If you wish to apply the refresh logic yourself, set `ShouldRefreshAccessToken` to false and store the refresh token. The `ExpiresIn` member of the `authData` struct can be used to preemptively request a new token. Use `RefreshAuthorizationCodeGrant` to request a new token when necessary

```go
config.ShouldRefreshAccessToken = false
// When token expires
authData, err := config.RefreshAuthorizationCodeGrant(clientId, clientSecret, authData.RefreshToken)
if err != nil {
panic(err)
}
```

### Making Requests

Once the SDK is authorized, API requests can be made. Each function on the API instance returns three values, or just the latter two if the resource does not return any value (e.g. a DELETE operation):
Expand Down
33 changes: 3 additions & 30 deletions docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ title: Platform API Client SDK - Go

A Go package to interface with the Genesys Cloud Platform API. View the documentation on the [pkg.go.dev](https://pkg.go.dev/github.com/MyPureCloud/platform-client-sdk-go/platformclientv2). Browse the source code on [Github](https://github.com/MyPureCloud/platform-client-sdk-go).

Latest version: 30.0.0 [![GitHub release](https://img.shields.io/github/release/mypurecloud/platform-client-sdk-go.svg)]()
Latest version: 31.0.0 [![GitHub release](https://img.shields.io/github/release/mypurecloud/platform-client-sdk-go.svg)]()
[![Release Notes Badge](https://developer.mypurecloud.com/images/sdk-release-notes.png)](releaseNotes.md)

## Golang Version Dependency
Expand Down Expand Up @@ -51,7 +51,7 @@ When creating configuration instances, they must be used when creating new API i

```go
// Create new config
config := platformclientv2.NewConfiguration()
config := NewConfiguration()

// Create API instance using config
usersAPI := platformclientv2.NewUsersApiWithConfig(config)
Expand All @@ -67,7 +67,7 @@ config.BasePath = "https://api.mypurecloud.jp"

#### Setting the access token

If using a grant other than client credentials and code authorization, the access token can be set manually:
If using a grant other than client credentials, the access token can be set manually:

```go
config.AccessToken = "anaccesstokenobtainedmanuallyfromanoauthgrant"
Expand All @@ -94,33 +94,6 @@ if err != nil {
}
```

#### Authorization Code Grant

* The app is authenticating as a human, the [Authorization Code Grant](https://developer.mypurecloud.com/api/rest/authorization/use-authorization-code.html)
* The app is served via a web server
* There is server-side code that will be making API requests

Use the `AuthorizeCodeGrant` function on the client to make a request to Genesys Cloud to exchange the client id, client secret and authorization code for an access token. If no error was returned, the configuration instance is now authorized and can begin making API requests.

```go
authData, err := config.AuthorizeCodeGrant(clientId, clientSecret, authCode, redirectUri)
if err != nil {
panic(err)
}
```

By default the SDK will transparently request a new access token when it expires. If multiple threads are running 1 thread will request a new token, other threads will wait a maximum of 10 seconds for the token refresh to complete, this time can be overriden with the _RefreshTokenWaitTime_ field of the _Configuration_ struct.
If you wish to apply the refresh logic yourself, set `ShouldRefreshAccessToken` to false and store the refresh token. The `ExpiresIn` member of the `authData` struct can be used to preemptively request a new token. Use `RefreshAuthorizationCodeGrant` to request a new token when necessary

```go
config.ShouldRefreshAccessToken = false
// When token expires
authData, err := config.RefreshAuthorizationCodeGrant(clientId, clientSecret, authData.RefreshToken)
if err != nil {
panic(err)
}
```

### Making Requests

Once the SDK is authorized, API requests can be made. Each function on the API instance returns three values, or just the latter two if the resource does not return any value (e.g. a DELETE operation):
Expand Down
220 changes: 154 additions & 66 deletions docs/releaseNotes.md
Original file line number Diff line number Diff line change
@@ -1,112 +1,200 @@
Platform API version: 4417
Platform API version: 4430


# Major Changes (1 change)
# Major Changes (66 changes)

**POST /api/v2/analytics/transcripts/aggregates/query** (1 change)
**EntityListing** (5 changes)

* Tag Quality was removed
* Property pageSize was removed
* Property pageNumber was removed
* Property total was removed
* Property pageCount was removed
* Property entities was changed from DataTableImportJob[] to object[]

**UserAggregateQueryPredicate** (3 changes)

# Minor Changes (39 changes)
* Enum value organizationPresenceId was removed from property dimension
* Enum value routingStatus was removed from property dimension
* Enum value systemPresence was removed from property dimension

**/api/v2/conversations/calls/{conversationId}/participants/{participantId}/coach** (2 changes)
**UserAggregationQuery** (3 changes)

* Enum value organizationPresenceId was removed from property groupBy
* Enum value routingStatus was removed from property groupBy
* Enum value systemPresence was removed from property groupBy

**ConversationAggregationQuery** (2 changes)

* Enum value oInteracting was removed from property metrics
* Enum value oWaiting was removed from property metrics

**ConversationAggregationView** (2 changes)

* Enum value oInteracting was removed from property target
* Enum value oWaiting was removed from property target

**ConversationDetailQueryPredicate** (1 change)

* Enum value mediaStatsMinConversationRFactor was removed from property dimension

**MediaEndpointStatDetailQueryPredicate** (2 changes)

* Enum value minMos was removed from property dimension
* Enum value minRFactor was removed from property dimension

**SegmentDetailQueryPredicate** (43 changes)

* Enum value addressOther was removed from property dimension
* Enum value addressSelf was removed from property dimension
* Enum value agentRank was removed from property dimension
* Enum value agentScore was removed from property dimension
* Enum value audioMuted was removed from property dimension
* Enum value callbackUserName was removed from property dimension
* Enum value cobrowseRole was removed from property dimension
* Enum value cobrowseRoomId was removed from property dimension
* Enum value destinationSessionId was removed from property dimension
* Enum value dispositionAnalyzer was removed from property dimension
* Enum value dispositionName was removed from property dimension
* Enum value endingLanguage was removed from property dimension
* Enum value entryReason was removed from property dimension
* Enum value entryType was removed from property dimension
* Enum value flowOutcomeEndTimestamp was removed from property dimension
* Enum value flowOutcomeStartTimestamp was removed from property dimension
* Enum value flowType was removed from property dimension
* Enum value issuedCallback was removed from property dimension
* Enum value journeyActionMapVersion was removed from property dimension
* Enum value journeyCustomerSessionIdType was removed from property dimension
* Enum value journeySegmentScope was removed from property dimension
* Enum value mediaBridgeId was removed from property dimension
* Enum value participantId was removed from property dimension
* Enum value peerId was removed from property dimension
* Enum value proposedAgentId was removed from property dimension
* Enum value q850ResponseCode was removed from property dimension
* Enum value requestedRoutingUserId was removed from property dimension
* Enum value roomId was removed from property dimension
* Enum value screenShareAddressSelf was removed from property dimension
* Enum value screenShareRoomId was removed from property dimension
* Enum value selectedAgentId was removed from property dimension
* Enum value selectedAgentRank was removed from property dimension
* Enum value sessionId was removed from property dimension
* Enum value sharingScreen was removed from property dimension
* Enum value skipEnabled was removed from property dimension
* Enum value sourceConversationId was removed from property dimension
* Enum value sourceSessionId was removed from property dimension
* Enum value startingLanguage was removed from property dimension
* Enum value timeoutSeconds was removed from property dimension
* Enum value videoAddressSelf was removed from property dimension
* Enum value videoMuted was removed from property dimension
* Enum value videoRoomId was removed from property dimension
* Enum value wrapUpTag was removed from property dimension

**SurveyDetailQueryPredicate** (1 change)

* Enum value surveyFormName was removed from property dimension

**EvaluationAggregateQueryPredicate** (1 change)

* Enum value rescind was removed from property dimension

**EvaluationAggregationQuery** (1 change)

* Enum value rescind was removed from property groupBy

**FlowAggregationQuery** (1 change)

* Enum value oFlow was removed from property metrics

**FlowAggregationView** (1 change)

* Enum value oFlow was removed from property target


# Minor Changes (28 changes)

**/api/v2/workforcemanagement/businessunits/{businessUnitId}/weeks/{weekId}/schedules/{scheduleId}/history/agents/{agentId}** (2 changes)

* Path was added
* Operation POST was added
* Operation GET was added

**AuditQueryExecutionStatusResponse** (1 change)
**/api/v2/journey/segments/{segmentId}** (4 changes)

* Enum value Outbound was added to property serviceName
* Path was added
* Operation GET was added
* Operation DELETE was added
* Operation PATCH was added

**AuditLogMessage** (14 changes)
**/api/v2/journey/segments** (3 changes)

* Enum value Outbound was added to property serviceName
* Enum value Export was added to property action
* Enum value Append was added to property action
* Enum value Recycle was added to property action
* Enum value AttemptLimits was added to property entityType
* Enum value CallableTimeSet was added to property entityType
* Enum value Campaign was added to property entityType
* Enum value CampaignRule was added to property entityType
* Enum value Sequence was added to property entityType
* Enum value ContactList was added to property entityType
* Enum value ContactListFilter was added to property entityType
* Enum value DNCList was added to property entityType
* Enum value CallAnalysisResponseSet was added to property entityType
* Enum value RuleSet was added to property entityType
* Path was added
* Operation GET was added
* Operation POST was added

**AuditQueryEntity** (13 changes)
**ViewFilter** (4 changes)

* Enum value AttemptLimits was added to property name
* Enum value CallableTimeSet was added to property name
* Enum value Campaign was added to property name
* Enum value CampaignRule was added to property name
* Enum value Sequence was added to property name
* Enum value ContactList was added to property name
* Enum value ContactListFilter was added to property name
* Enum value DNCList was added to property name
* Enum value CallAnalysisResponseSet was added to property name
* Enum value RuleSet was added to property name
* Enum value Export was added to property actions
* Enum value Append was added to property actions
* Enum value Recycle was added to property actions
* Optional property journeyActionMapIds was added
* Optional property journeyOutcomeIds was added
* Optional property journeySegmentIds was added
* Optional property journeyActionMapTypes was added

**AuditQueryService** (1 change)
**Context** (1 change)

* Enum value Outbound was added to property name
* Model was added

**AuditQueryRequest** (1 change)
**ContextPattern** (1 change)

* Enum value Outbound was added to property serviceName
* Model was added

**AuditRealtimeQueryRequest** (1 change)
**Criteria** (1 change)

* Enum value Outbound was added to property serviceName
* Model was added

**FlowAggregateQueryPredicate** (1 change)
**EntityTypeCriteria** (1 change)

* Enum value reoffered was added to property dimension
* Model was added

**FlowAggregationQuery** (1 change)
**Journey** (1 change)

* Model was added

* Enum value reoffered was added to property groupBy
**JourneyPattern** (1 change)

**ConversationDetailQueryPredicate** (1 change)
* Model was added

**BuAgentScheduleHistoryChange** (1 change)

* Enum value conversationStart was added to property dimension
* Model was added

**ParticipantMetrics** (1 change)
**BuAgentScheduleHistoryChangeMetadata** (1 change)

* Model was added

**ConversationAggregateQueryPredicate** (1 change)
**BuAgentScheduleHistoryDeletedChange** (1 change)

* Enum value reoffered was added to property dimension
* Model was added

**ConversationAggregationQuery** (1 change)
**BuAgentScheduleHistoryDroppedChange** (1 change)

* Enum value reoffered was added to property groupBy
* Model was added

**BuAgentScheduleHistoryResponse** (1 change)

# Point Changes (5 changes)
* Model was added

**GET /api/v2/flows/{flowId}/versions/{versionId}/configuration** (1 change)
**JourneySegment** (1 change)

* Description was changed for parameter deleted
* Model was added

**GET /api/v2/flows/{flowId}/versions/{versionId}** (1 change)
**PatchSegment** (1 change)

* Description was changed for parameter deleted
* Model was added

**GET /api/v2/flows/{flowId}/latestconfiguration** (1 change)
**ScimPhoneNumber** (1 change)

* Description was changed for parameter deleted
* Enum value ringcentral was added to property type

**GET /api/v2/flows/{flowId}** (1 change)
**SegmentListing** (1 change)

* Description was changed for parameter deleted
* Model was added

**GET /api/v2/flows/{flowId}/versions** (1 change)

* Description was changed for parameter deleted
# Point Changes (0 changes)
Loading

0 comments on commit 77db0b9

Please sign in to comment.