Announcing the Saviynt Knowledge Exchange unifying the Saviynt forums, documentation, training,
and more in a single search tool across platforms. Read the announcement here.

Google Analytics - Saviynt Published Connector

Brian
New Contributor II
New Contributor II

Regarding the Saviynt published connector for Google Analytics, which is found on the forums rather than the docs site:

https://forums.saviynt.com/t5/community-sourced-integrations/google-analytics-integration-guide/ta-p...

I had to download and import the Connection package, since GoogleApps(REST) type is not present.  When importing the package the ImportAccountEntJSON is readable from the import but the ConnectionJSON is encrypted and cannot be read/modified in the REST Questionnaire - I could not find Saviynt documentation on how this ConnectionJSON should be set up as I've been unsuccessful so far.

As a side note, the Google userLinks endpoints that are in this connector appear to have been deprecated by Google in 2023 so this connector will need modified in addition to figuring out the connection (found here https://developers.google.com/analytics/devguides/config/admin/v1/changelog#2023-02-24_access_bindin...)

Does anyone have any tips for setting the ConnectionJSON for Google Analytics?

1 REPLY 1

Falcon
Saviynt Employee
Saviynt Employee

Try this out

{
  "authentications": {
    "userAuth": {
      "authType": "Jwt",
      "httpParamsName": "assertion",
      "jwtConfig": {
        "jwtHeader": {
          "alg": "RS256",
          "typ": "JWT"
        },
        "jwtPayload": {
          "iss": "@ISSUER@",
          "sub": "@SUBJECT@",
          "aud": "@AUDIENCE@",
          "scope": "https://www.googleapis.com/auth/analytics.readonly"
        },
        "signedAlgorithm": "RS256",
        "key": "@KEY@",
        "jwtExpiryDuration": 3500
      },
      "url": "https://oauth2.googleapis.com/token",
      "httpMethod": "POST",
      "httpParams": {
        "grant_type": "urn:ietf:params:oauth:grant-type:jwt-bearer",
        "assertion": "@ASSERTION@"
      },
      "httpHeaders": {
        "Content-Type": "application/x-www-form-urlencoded"
      },
      "retryFailureStatusCode": [
        401,
        500,
        400
      ],
      "authError": [
        "SESSION_NOT_VALID",
        "AuthenticationFailed",
        "ExpiredJwtException",
        "401 Unauthorized",
        "401",
        "You couldn't be authenticated"
      ],
      "errorPath": "code",
      "maxRefreshTryCount": 5,
      "tokenResponsePath": "access_token",
      "tokenType": "Bearer",
      "accessToken": "XXXXXXXX"
    }
  }
}