SAP Gigya

Version: 1.2.3

Gigya offers a customer identity management platform for managing profiles, preference, opt-in and consent settings.

Connect SAP Gigya with LogicHub

  1. Navigate to Automations > Integrations.
  2. Search for SAP Gigya.
  3. Click Details, then the + icon. Enter the required information in the following fields.
    • Label: Enter a connection name.
    • Reference Values: Define variables here to templatize integration connections and actions. For example, you can use https://www.{{hostname}}.com where, hostname is a variable defined in this input. For more information on how to add data, see 'Add Data' Input Type for Integrations.
    • Verify SSL: Select option to verify connecting server's SSL certificate (Default is Verify SSL Certificate).
    • Remote Agent: Run this integration using the LogicHub Remote Agent.
    • API Key: API key for SAP Gigya
    • User Key: User key for SAP Gigya
    • Secret Key: Secret key for SAP Gigya
    • Data Center (Optional): Select Gigya Data Center US/Europe/Australia/Russia/China in case your site has been set up to use a Gigya's data center other than the 'US'. (Default is 'US' Data Center).
  4. After you've entered all the details, click Connect.

Actions for SAP Gigya

Check Login ID Availability

Checks whether a certain login identifier (username/email) is available. A login identifier is available if it is unique in this user management system.

Input Field

Choose a connection that you have previously created and then fill in the necessary information in the following input fields to complete the connection.

Input Name

Description

Required

Login ID

Select column that contains Login ID to check.

Required

Output

A JSON object containing multiple rows of result:

  • has_error: True/False
  • error: message/null
  • other keys of the API response
{
  "has_error": false,
  "error": null,
  "isAvailable": true,
  "statusCode": 200,
  "errorCode": 0,
  "statusReason": "OK",
  "callId": "b39f31533bb74b96a7cf662afa552155",
  "time": "2015-03-22T11:42:25.943Z"
}

Get Account Info

Gets account data for the specified user.

Input Field

Choose a connection that you have previously created and then fill in the necessary information in the following input fields to complete the connection.

Input Name

Description

Required

UID

Select a column that contains the unique ID of the user. One UID or Registration Token should be provided.

Required

Registration Token

Select column that contains the regToken. Please note that the regToken you receive from Gigya is valid for only one hour. One UID or Registration Token should be provided.

Required

Include Fields

A comma-separated list of fields to include in the response. The possible values are: identities-active, identities-all, identities-global, loginIDs, emails, profile, data, password, isLockedOut, lastLoginLocation, regSource, irank, rba, subscriptions, userInfo, preferences, groups. (Default value is profile,data,subscriptions).

Optional

Extra Profile Fields

A comma-separated list of additional social profile fields to retrieve. The current valid values are: languages, address, phones, education, educationLevel, honors, publications, patents, certifications, professionalHeadline, bio, industry, specialities, work, skills, religion, politicalView, interestedIn, relationshipStatus, hometown, favorites, followersCount, followingCount, username, name, locale, verified, timezone, likes, samlData.

Optional

Output

A JSON object containing multiple rows of result:

  • has_error: True/False
  • error: message/null
  • other keys of the API response
{
  "has_error": false,
  "error": null,
  "UID": "_gid_30A3XVJciH95WE*******7ee3MY+lUAtpVxvUWNseU=",
  "UIDSignature": "HHPLo/TC7KobjnGB7JflcWvAXfg=",
  "signatureTimestamp": "1412516469",
  "loginProvider": "facebook",
  "isRegistered": true,
  "isActive": true,
  "isVerified": true,
  "iRank": 57.3400,
  "loginIDs": {
    "emails": [],
    "unverifiedEmails": []
  },
  "emails": {
    "verified": [
      "*******@gmail.com"
    ],
    "unverified": []
  },
  "socialProviders": "facebook,site",
  "profile": {
    "firstName": "Pinky",
    "lastName": "Ray",
    "photoURL": "https://graph.facebook.com/v2.0/1020445*******25770/picture?type=large",
    "thumbnailURL": "https://graph.facebook.com/v2.0/102*******0325770/picture?type=square",
    "birthYear": 1980,
    "birthMonth": 4,
    "birthDay": 22,
    "profileURL": "https://www.facebook.com/app_scoped_user_id/1020*******25770/",
    "city": "Athens, Greece",
    "gender": "m",
    "age": 34,
    "email": "*******@gmail.com",
    "samlData": {}
  },
  "identities": [
    {
      "provider": "facebook",
      "providerUID": "10204456750325770",
      "isLoginIdentity": true,
      "photoURL": "https://graph.facebook.com/v2.0/1020*******5770/picture?type=large",
      "thumbnailURL": "https://graph.facebook.com/v2.0/102*******5770/picture?type=square",
      "firstName": "Pinky",
      "lastName": "Ray",
      "gender": "m",
      "age": "34",
      "birthDay": "22",
      "birthMonth": "4",
      "birthYear": "1980",
      "email": "*******@gmail.com",
      "city": "Athens, Greece",
      "profileURL": "https://www.facebook.com/app_scoped_user_id/1020*******770/",
      "proxiedEmail": "",
      "allowsLogin": true,
      "isExpiredSession": false,
      "lastUpdated": "2014-10-05T13:35:14.039Z",
      "lastUpdatedTimestamp": 1412516114039,
      "oldestDataUpdated": "2014-10-05T13:35:13.421Z",
      "oldestDataUpdatedTimestamp": 1412516113421
    },
    {
      "provider": "site",
      "providerUID": "_gid_30A3XVJciH*******+lUAtpVxvUWNseU=",
      "isLoginIdentity": false,
      "allowsLogin": false,
      "isExpiredSession": false,
      "lastUpdated": "2014-10-05T13:39:53.455Z",
      "lastUpdatedTimestamp": 1412516393455,
      "oldestDataUpdated": "2014-10-05T13:39:53.455Z",
      "oldestDataUpdatedTimestamp": 1412516393455
    }
  ],
  "data": {
    "hair": "blonde"
  },
  "password": {},
  "created": "2014-09-27T23:47:41.527Z",
  "createdTimestamp": 1411861661527,
  "lastLogin": "2014-10-05T13:35:13.437Z",
  "lastLoginTimestamp": 1412516113437,
  "lastUpdated": "2014-10-05T13:39:53.455Z",
  "lastUpdatedTimestamp": 1412516393455,
  "oldestDataUpdated": "2014-10-05T13:35:13.421Z",
  "oldestDataUpdatedTimestamp": 1412516113421,
  "registered": "2014-09-27T23:47:41.59Z",
  "registeredTimestamp": 1411861661590,
  "verified": "2014-09-27T23:47:41.543Z",
  "verifiedTimestamp": 1411861661543,
  "regSource": "",
  "lastLoginLocation": {
    "country": "IL",
    "coordinates": {
      "lat": 31.5,
      "lon": 34.75
    }
  },
  "rbaPolicy": {
    "riskPolicy": "low",
    "riskPolicyLocked": false
  },
  "statusCode": 200,
  "errorCode": 0,
  "statusReason": "OK",
  "callId": "e6f891ac17f24810bee6eb533524a152",
  "time": "2015-03-22T11:42:25.943Z"
}

Set Account Info

Sets account data into a user's account.

Input Field

Choose a connection that you have previously created and then fill in the necessary information in the following input fields to complete the connection.

Input Name

Description

Required

UID

Select a column that contains the unique ID of the user. One UID or Registration Token should be provided.

Registration Token

Select column that contains the regToken. Please note that the regToken you receive from Gigya is valid for only one hour. One UID or Registration Token should be provided.

Old Password

Select column that contains the old password to be changed.

Optional

Security Override

Select option True/False to perform the action with security override. When set to True, the action does not require the Old Password input field to be set.

Optional

New Password

Select the column that contains the new password to replace the old one.

Optional

Set Random Password

Select option True/False to set a random system generated password instead of selecting a column that contains the new password. A random password is generated using 8 characters from [a-zA-Z] and 4 digits from [0-9].

Optional

Mute Webhooks

Select option True/False to the mute triggering of the Webhooks as a result of executing this action. (Default is False).

Optional

RBA

Jinja-templated RBA policy input to set RBA policy of the specified user. Available properties include: riskPolicy - Determines the rule set from the defined rules. Sets configured in accounts.rba. setPolicy or one of the default policies. riskPolicyLocked - Determines whether the user can change their own riskPolicy. If true, only an admin can change the user's riskPolicy. Example: {"riskPolicy": "{{risk_policy_string}}", "riskPolicyLocked": true}

Optional

Is Active

Jinja-templated text containing the boolean to whether to allow disabling the account (true/false). Example: {{isActive}}

Optional

Output

A JSON object containing multiple rows of result:

  • has_error: True/False
  • error: message/null
  • other keys of the API response
{
  "has_error": false,
  "error": null,
  "statusCode": 200,
  "errorCode": 0,
  "statusReason": "OK",
  "callId": "ddb3f8e144c84cb5b1bc5f010bddab2b",
  "time": "2015-03-22T11:42:25.943Z"
}

Logout User

Logs out the specified user from your site across all devices and terminates any active sessions and revokes any active OIDC refresh tokens. This method does not disconnect the user from the social providers, the user's site account remains associated with any connected social accounts, even when logged out. When the user logs in again, full access to all the previously connected providers is restored, i.e. the association remains.

Input Field

Choose a connection that you have previously created and then fill in the necessary information in the following input fields to complete the connection.

Input Name

Description

Required

UID

Select column that contains the unique ID of the user to logout of your site.

Required

Output

A JSON object containing multiple rows of result:

  • has_error: True/False
  • error: message/null
  • other keys of the API response
{
  "has_error": false,
  "error": null,
  "connectedProviders": "facebook,site",
  "UID": "17704c1dxxxXXXXxXXxXxXXXxx3126c47",
  "logoutActiveSession": true,
  "statusCode": 200,
  "errorCode": 0,
  "statusReason": "OK",
  "callId": "15aae327c7874d10ab39e12bec1ff2a2",
  "time": "2017-11-05T09:48:21.968Z"
}

Get RBA Policy

Gets the RBA (Risk-Based Authentication) policy for a site or master site of a group. If the requested API key belongs to a child site of a site-group, the Parent's policy is returned. If there is no existing custom policy currently specified, the default policy is returned.

Input Field

Choose a connection that you have previously created to complete the connection.

Output

A JSON object containing multiple rows of result:

  • has_error: True/False
  • error: message/null
  • other keys of the API response
{
  "has_error": false,
  "error": null,
  "policy": {
  "commonRules": [
    {
      "action": {
        "scope": [
          "account"
        ],
        "type": "captcha"
      },
      "rootFactor": {
        "type": "failedLogins",
        "scope": [
          "account"
        ],
        "threshold": 1,
        "resetInterval": 60
      },
      "description": "captcha",
      "enabled": false
    },
    {
      "action": {
        "duration": 60,
        "scope": [
          "account"
        ],
        "type": "lockout"
      },
      "rootFactor": {
        "type": "failedLogins",
        "scope": [
          "account"
        ],
        "threshold": 3,
        "resetInterval": 60
      },
      "description": "account lockout",
      "enabled": true
    },
    {
      "action": {
        "duration": 60,
        "scope": [
          "ip"
        ],
        "type": "lockout"
      },
      "rootFactor": {
        "type": "failedLogins",
        "scope": [
          "IP"
        ],
        "threshold": 5,
        "resetInterval": 60
      },
      "description": "IP lockout",
      "enabled": true
    },
    {
      "action": {
        "authLevel": 20,
        "challenge": "none",
        "type": "TFA"
      },
      "rootFactor": {
        "type": "alwaysChallenge"
      },
      "description": null,
      "enabled": true
    }
  ],
  "rulesSets": [
    {
      "id": "_off",
      "description": "This policy represents a policy without any validations",
      "enabled": true,
      "rules": []
    }
  ],
  "defaultPolicy": "_off",
  "allowOverrideMode": "no"
},
  "statusCode": 200,
  "errorCode": 0,
  "statusReason": "OK",
  "callId": "0580b6b3e66f4481a76c73d485d0bd5b",
  "time": "2016-10-31T14:54:22.729Z"
}

RBA Unlock

Unlocks either the specified user's account or the specified IP, depending upon which option is chosen.

Input Field

Choose a connection that you have previously created and then fill in the necessary information in the following input fields to complete the connection.

Input Name

Description

Required

API Key

Select column that contains the API key of the site (or site-group) that contains the user or IP address to unlock.

Required

Login ID

Select column that contains the loginID of the user whose account is to be unlocked (email or username; dependent upon schema). One of UID/IP/Login ID should be provided.

Required

UID

Select column that contains the UID of the user whose account is to be unlocked. One of UID/IP/Login ID should be provided.

Required

IP

Select column that contains the IP address to unlock. One of UID/IP/Login ID should be provided.

Required

Output

A JSON object containing multiple rows of result:

  • has_error: True/False
  • error: message/null
  • other keys of the API response
{
  "has_error": false,
  "error": null,
  "statusCode": 200,
  "errorCode": 0,
  "statusReason": "OK",
  "callId": "3353d2fbac894289977c102298df60d1",
  "time": "2015-03-22T11:42:25.943Z"
}

Error Result Sample

Error result sample for any of the above actions.

{
  "has_error": true,
  "error": "Error Code: 400002. Error Message: Required parameter is missing",
  "errorCode": 400002,
  "errorDetails": "<error_details>",
  "errorMessage": "Required parameter is missing"
}

Account Search

Account Search.

Input Field

Choose a connection that you have previously created and then fill in the necessary information in the following input fields to complete the connection.

Input Name

Description

Required

Query

Jinja-templated text containing the an SQL-like query specifying the data to retrieve. Example: {{query}}

Required

QuerySig

Jinja-templated text containing an HMAC_SHA1 signature proving that the search call is in fact coming from your client application, in order to prevent fraud.

Optional

Expiring Time

Jinja-templated text containing the GMT time when the signature, provided in the UIDSig parameter, should expire. The expected format is the Unix time format including milliseconds (i.e., the number of seconds since Jan. 1st 1970 * 1000).

Optional

Output

JSON containing the following items:

Account Login

Account Login.

Input Field

Choose a connection that you have previously created and then fill in the necessary information in the following input fields to complete the connection.

Input Name

Description

Required

Login ID

Jinja-templated text containing the login ID. Example: {{login_id}}

Required

Password

Jinja-templated text containing the password.

Required

Captcha Token

Jinja-templated text containing the captcha token.

Optional

Output

JSON containing the following items:

{
  "statusCode": 200,
  "statusReason": "OK",
  "objectsCount": 300,
  "has_error": false,
  "errorCode": 0,
  "results": [
    {
      "profile": {
        "contactName": "HANNAH"
      }
    },
    {
      "profile": {
        "contactName": "FERNARD"
      }
    },
    {
      "profile": {
        "contactName": "KERRY"
      }
    },
    {
      "profile": {
        "contactName": "RANDY"
      }
    }
  ],
  "error": null,
  "callId": "a86fd33d98224e0daa3a47521272b4e5",
  "totalCount": 11586878,
  "time": "2022-06-24T05:04:06.359Z",
  "apiVersion": 2
}

Release Notes

  • v1.2.3 - Added Is Active optional field to Set Account Info action.
  • v1.2.1 - Added 2 new actions: Account Search and Account login.

Did this page help you?
© 2017-2021 LogicHub®. All Rights Reserved.