SAP Gigya
Version: 2.0.0
Gigya offers a customer identity management platform for managing profiles, preference, opt-in and consent settings.
Connect SAP Gigya with LogicHub
- Navigate to Automations > Integrations.
- Search for SAP Gigya.
- 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).
- 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
v2.0.0
- Updated architecture to support IO via filesystemv1.2.3
- AddedIs Active
optional field toSet Account Info
action.v1.2.1
- Added 2 new actions:Account Search
andAccount login
.
Updated about 1 year ago