Modules
...
Creator Module
Journey Builder

Realm Creation

13min

Main endpoint to use

Use Backops URL

  1. For Shared Production: https://backops-go.onboardings.co
  2. For Shared Preproduction: https://backops-go-preproduction.signzy.app

Key Notes:

  1. For Dedicated: Infra will provide the endpoint while setting it up.
  2. For Create application API, Auth token will be provided by GO Tech lead.
  3. Keep the realm name same across for both preproduction and production environments
  4. For every API x-encrypted is needed in header and keep it same across all for decryption purposes.

Encryption/Decryption Tool

Reach out to support for the tool access

Why is this tool required: You will get encrypted response in 1st 3 Apis

Click on Decrypt with x-encrypted key for decrypting and the same with encryption.

  1. Create an application
  2. Application Login
  3. Create DashboardUser(This is for Admin dashboard)

Key Notes:

  • Save every API response inthe file for further references
  • Do Not Retry API Calls Upon Error
  • If the initial API call results in an error, refrain from retrying with the same inputs (e.g., username, email). Continuous retries will lead to duplicate errors since the system treats the data as already processed.

1.Create a Realm

API Endpoint: {MainEndpoint}/API/applications

Sample curl (Shared Production)

curl --location 'https://backops-go-preproduction.signzy.app/api/applications' \ --header 'Content-Type: application/json' \ --header 'x-encrypted: RuMg2NhxJJcNt9FsnUMvcA7S9SHB/3a+uSOzc2OEjEIt4j/JZ5nMNMavk/W7mmritUGEbYs3WDT4D5jkN6EHnIMs8UYN/mqpLgfdsdiF6O+/RrU7oOSkw/ZsryACfHtpxHt4UiMbTs6Ost6b5bEtws6W6Xx4MnzTsV9fifbbr44grbvefdvNq3nsCBdEkxOdwscwevercHdLXYUizZ0X4WJ+2N70FToQ2sOAxbT7pS/y8gVx+qIDzW4TnFnEfd/sfi/3GUJr9MGdRTpgsKCah5yy3UtVC4JzKsrzCk32MfvShl1PveLiIXEn+6fTTpIoLwWyQ==' \ --header 'Authorization: <<Auth token to be provided by Tech Lead>>' \ --data '{ "name": "", // Any relevant name of for superuser "username": "", //Unique username for Admin Dashboard "password": "", //Unique password for Admin Dashboard "email": "",//unique non-signzy email address for Admin Dashboard "realm": "" //unique realm name which is the most important part }'

Headers Required:

Authorization: Token provided by Workflow Tech Lead.

x-encrypted: Session value used for decryption.

Steps:

  1. Use the provided Authorization token and ensure that the x-encrypted session is consistent across all API calls.
  2. Execute the API to create a new realm.

Request Body: {

   "name": "", // Any relevant name of for superuser

   "username": "", //Unique username for backops

   "password": "", //Unique password for backops

   "email": "",//unique non-signzy email address for backops

   "realm": "",//unique realm name which is the most important part.

}

Response Decrypting Steps:

  1. Decrypt the response using the provided Encryption Description Tool.
  2. Extract the “id” from the decrypted response. This serves as the Realm ID and will be used in subsequent API calls.

Sample Response after decryption:   

{ "id": "673347sdfg560abcynfgxyz",//RealmID or ApplicationID "name": "Superuser name", "username": "", "email": "[email protected]", "realm": "Realmname", "profileSettings": { "timeZoneValue": "Asia/Kolkata", "dateFormat": "DD/MM/YYYY", "timeFormat": "HH:mm:ss" }, "rmConfigs": { "dockerLogin": { "username": "clientnameabc", "password": "welbcm@2020", "latestAPK": "" }, "latestApkUrl": "", "latestVersion": "", "forceUpdate": false, "assignmentStrategy": { "rmBucketSize": 100, "primaryAssignmentStrategy": { "field": "branchcode" }, "secondaryAssignmentStrategy": "random" } }, "rmMetaData": { "loginMethod": "pwb", "namespace": "RRB6", "status": [ { "tags": [ "new", "draft" ], "_id": "5e622ahdjbjl8978385ge02b117", "isDefaultStatus": true, "showAppId": true, "trashCan": true, "statusLabel": "Incomplete" }, { "tags": [ "inactive" ], "_id": "6166hcjc798y8bbv894n806e", "isDefaultStatus": true, "showAppId": true, "trashCan": true, "statusLabel": "Inactive " }, { "tags": [ "draft" ], "_id": "5e627fudfh78070bhbjb2342b117", "isDefaultStatus": true, "showAppId": true, "trashCan": true, "statusLabel": "Draft " }, { "tags": [ "pending" ], "_id": "5e6227bh879hjkh4b116", "isDefaultStatus": false, "isWasted": true, "showAppId": true, "statusLabel": "Inprocess " }, { "tags": [ "reject" ], "_id": "5e627879jbjbhjb567502b115", "isDefaultStatus": false, "showAppId": true, "isWasted": true, "statusLabel": "Rejected " }, { "tags": [ "accept" ], "_id": "5e6229779s8bbdfjk4114", "isDefaultStatus": false, "isWasted": true, "showAppId": true, "statusLabel": "Accepted " } ], "sections": [ { "fields": [ { "variable": "name", "displayText": "Customer Name", "type": "inputText", "isRequired": true, "pattern": "^[A-Za-z\\s]{1,}[\\.]{0,1}[A-Za-z\\s]{0,}$" }, { "variable": "email", "displayText": "Email", "type": "inputEmail", "isRequired": false }, { "variable": "mobile", "displayText": "Mobile", "type": "inputNumber", "isRequired": true, "pattern": "^[1-9]{1}[0-9]{9}$", "maxLength": 10 }, { "variable": "flowId", "displayText": "Select the flow", "type": "dropdown", "hint": "Select flow", "options": [], "isRequired": true } ], "_id": "5ecbs98f809wr3hjk43e820c", "sectionType": "newOnboarding" } ], "themeMeta": { "logo": <persist link>, "colorPrimary": "800020", "textColor": "800020" }, "launchAppBtnLabel": "Create Onboarding", "managerFields": [], "dashboardDescription": "RR Dashboard", "allApplicationStatus": { "isWasted": true, "trashCan": false, "showAppId": true, "label": "All Applications", "bucketLabelColor": "#5897b6", "bucketBGColor": "#ccb4df" }, "noForceChangePassword": false, "drawerMenu": [], "launchDisplayName": "Create Onboarding screen", "allApplicationBucket": { "isWasted": true, "trashCan": false, "showAppId": true, "label": "All Applications" } }, "vcipPatronId": "67879weg08vds6e28xx", "author": "tausif", "patronUid": "67323kjwglnjkvds002288cxx", "contractingId": "67330eu8fq089vw32421bxx", "patronUsername": "G6_ADMxx", "esignPatronUid": "67334we078p9uwvd6b9xx", "esignPatronUsername": "GO6_ADMxx", "contractingUsername": "GO_ADMxx", "vcipPatronUsername": "GOB6_ADMxx", "isRMAssisted": false}}

2. Super User Realm Login:

API Endpoint:

{MainEndpoint}/api/applications/login

Steps:

  1. Use the username,password created in the Step 1

Sample curl for shared preproduction:

curl --location 'https://backops-go-preproduction.signzy.app/api/applications/login' \ --header 'Content-Type: application/json' \ --header 'X-Encrypted: RuMg2NhxJJcNt9FsnUMvcA7S9SHB/3a+uSOzc2OEjEIt4j/JZ5nMNMavk/W7mmritUGEbYs3WDT4D5jkN6EHnIMs8UYN/mqpLOp4YsC6h4u2MmCC/miF6O+/RrU7oOSkw/ZsryACfHtpxHt4UiMbTs6Ost6b5bEtws6W6duohvudsnuobhvwev09weuv9weviw09divbddLXYUizsdxcfyg7892sOAxbT7pS/y8gVx+qIDzW4TnFnEfd/sfi/3GUJr9MGdRTpgsKCahsdfghjxcfvgb6789vShl1PveLiIXEn+6fTTpIoLwWyQ==' \ --data '{ "username": "", "password": "" }'

Response after Decrypting:

  1. Extract the id from the response. This id acts as the Auth Token for further authenticated API calls

Sample Response:

{ { "userId": "67341b0db2d660701c94e3e6",//RealmID "id": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiI2NzM0MWIwZGIyZDY2MDcwMWM5NGUzZTYiLCJpYXQiOjE3MzE0NjgwOTIsImV4cCI6MTczMjY3NzY5Mn0.XTidzAXoTe9nuIsZPXlJY2dkp-RBrGXH-6or7oUCxx", //This serves as the auth token for the rest of the APIs "ttl": 1209600, "creationDate": "2024-11-13T03:21:32.885Z" } }

3. Create Dashboard Creators:

API Endpoint:

{MainEndpoint}/api/applications/{{applicationId}}/dashboardcreators

Steps:

  1. Replace {{applicationId}} with the ApplicationId (Realm ID) obtained in Step 1.
  2. In the Authorization use the id extracted from login api (2nd Step) and paste it here.
  3. Execute the API to create dashboard creators within the specified realm.

Sample Curl:

curl --location 'https://backops-go-preproduction.signzy.app/api/applications/{applicationId}/dashboardcreators' \ --header 'Content-Type: application/json' \ --header 'Authorization: <<Auth from Login API>>' \ --header 'X-Encrypted: RuMg2NhxJJcNt9FsnUMvcA7S9SHB/3a+uSOzc2OEjEIt4j/JZ5nMNMavk/W7mmritUGEbYs3WDT4D5jkN6EHnIMs8UYN/mqpLOp4YsC6h4u2MmCC/miF6O+/RrU7oOSkw/ZsryACfHtpxHt4UiMbTs6Ost6b5bEtws6W6Xx4WRQ9fghjkbnmvbnmcvbnyuivbnqPi3EcHdLN70FToQ2sOAxbT7pS/y8gVx+qIDzW4TnFnEfd/sfi/3GUJr9MGdRTpdfghCah5yy3UtVC4JzKsrzCk32MfvShl1PveLiIXEn+6fTTpIoLwWyQxxx' \ --data '{ "name": "", //SuperDashboard Name "username": "", //Admin Dashboard Login Username already used in 1st API "password": "", //Admin Dashboard Login Password already used in 1st API "email": "", //Unique email being used in 1st api "realm": "", //Realm name to be consistent "mobile": "",//Required "isAdmin": "true" //This should be present as it is dont change }'

Sample Response:

{ { "id": "67341baab2d660446994exyz", "name": "Generxyz", "username": "Generic_awqeew", "email": "[email protected]", "realm": "GenericFwewe", "mobile": "9692851xxx", "applicationId": "67341b0dcfvgbh780701c94e3xx", "isAdmin": true, "roleId": "superAdmin" } }

4. Create Backops Super User

API Endpoint:

{MainEndpoint}/api/applications/{{Application_Id}}/backopsusers

Steps:

  1. Replace {{Application_Id}} with the ApplicationId obtained in Step 1.
  2. Use the Authorization token received from Application Login API in Steps 2.
  3. Execute the API to create super backops users for the realm.

Sample curl for shared preproduction:

curl --location 'https://backops-go-preproduction.signzy.app/api/applications/{applicationId}/backopsusers' \ --header 'Content-Type: application/json' \ --header 'Authorization: <<Auth from Login API>>' \ --header 'X-Encrypted: RuMg2NhxJJcNt9FsnUMvcA7S9SHB/3a+uSOzc2OEjEIt4j/JZ5nMNMavk/W7mmritUGEbYs3WDT4D5jkN6EHnIMs8UYN/mqvbnm6h4u2MmCC/miF6O+/RrU7oOSkw/ZsryACfHtpdxcfvg67896b5bcHdLXYUizxcfvg56789Q2sOAxbT7pS/y8gVxfghjn4TnFnEfd/sfi/3GUJr9MGdRTpgsKCah5yy3UtVC4JzKsrzCk32MfvShl1PveLiIXEn+6fTTpIoLwWyQ==' \ --data '{ "name": "",//Super backops name "username": "", //Super Backops Login username "password": "",//Super Backops Login Password "email": "",//Unique email being used in 1st api "realm": "",//Realm name to be consistent "mobile": "",//Required "managerToggle": "false" //Keep it as it is. }'

Sample Response:

{ { "id": "67341c58b2d6601a4494e3xx", "name": "Genexxx", "username": "Generic_Baxkxxx", "email": "[email protected]", "mobile": "9692851xx", "realm": "PNBGenericxx", "applicationId": "67341b0db2d660701c94exxx", "managerToggle": "false", "last5Passwords": [ "$2b$10$tmkcUmzxcghj60tut.KpyrNUAVWzXf2QpLzHEyxNGNSDo90Ee" ], "lastUpdatedAt": 1731468376012, "assignment": { "count": 0, "actionTaken": 0 } }

Sample postman collection for shared preproduction:

Updated 16 Jan 2025
Did this page help you?