Validate ElectronJS login and create session¶
Summary¶
Source repository:
jef-systems/jef-one-backendSource SHA:
9a074aa1fac1d7b8aa9d21ef4e59d441715d21fdSource run id:
28401005310Module:
OneLambda function:
jef-one-validate-electronjs-login-and-create-sessionHTTP method:
POSTInvocation mode:
asyncPackage mode:
no-packageAPI category:
One Complex No Package Async POST APIsAPI path:
/jef-one-validate-electronjs-login-and-create-sessionEndpoint URL:
https://mfr670zvsh.execute-api.ap-southeast-1.amazonaws.com/prod/jef-one-validate-electronjs-login-and-create-sessionDocumentation scope:
lambda-complex-no-packages
Async Confirmation Rule¶
This write API is documented as an async accepted request, not final write success. Use the corresponding GET API to confirm the final state.
Description¶
ElectronJS desktop-specific durable auth login. Accepts a frontend-generated session_id, records a processing session first, validates the Electron application allow-list, then asynchronously validates login and updates the same session to verified or failed.
API Gateway Response¶
{
"status_code": 202,
"message": "This endpoint returns 202 when the request is accepted. The Lambda function continues processing asynchronously."
}
Payload Example¶
{
"session_id": "8d4e7d32-2f6f-4d13-9b8e-0f4e98ef0001",
"entity_number": "1108",
"application_name": "jef-electronjs-template",
"employee_number": "11108",
"password": "pass1234"
}
Payload Schema¶
{
"root": {
"type": "M",
"required": true,
"attributes": {
"session_id": {
"type": "S",
"required": true,
"regex": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
},
"entity_number": {
"type": "S",
"required": true,
"regex": "^[0-9]{4}$"
},
"application_name": {
"type": "S",
"required": true,
"regex": "^[A-Za-z0-9 .,'_-]{1,120}$"
},
"employee_number": {
"type": "S",
"required": true,
"regex": "^[0-9]{5}$"
},
"password": {
"type": "S",
"required": true,
"regex": "^.{1,120}$"
}
}
}
}
Response Schema¶
{
"root": {
"type": "M",
"required": true,
"attributes": {
"is_accepted": {
"type": "BOOL",
"required": true
},
"is_valid": {
"type": "BOOL",
"required": true
},
"can_continue": {
"type": "BOOL",
"required": true
},
"session_saved": {
"type": "BOOL",
"required": true
},
"session_active": {
"type": "BOOL",
"required": true
},
"is_active": {
"type": "BOOL",
"required": true
},
"message": {
"type": "S",
"required": true
},
"operation": {
"type": "S",
"required": true
},
"status_code": {
"type": "N",
"required": true
},
"entity_number": {
"type": "S",
"required": false
},
"application_name": {
"type": "S",
"required": false
},
"employee_number": {
"type": "S",
"required": false
},
"application_credential_id": {
"type": "S",
"required": false
},
"application_id": {
"type": "S",
"required": false
},
"employee_id": {
"type": "S",
"required": false
},
"entity_id": {
"type": "S",
"required": false
},
"main_parent_key_name": {
"type": "S",
"required": false
},
"main_parent_key_value": {
"type": "S",
"required": false
},
"entity_credential_id": {
"type": "S",
"required": false
},
"display_name": {
"type": "S",
"required": false
},
"session_id": {
"type": "S",
"required": false
},
"status": {
"type": "S",
"required": false
},
"expires_at": {
"type": "S",
"required": false
},
"created": {
"type": "S",
"required": false
},
"updated": {
"type": "S",
"required": false
},
"verified_at": {
"type": "S",
"required": false
},
"failure_code": {
"type": "S",
"required": false
},
"failure_reason": {
"type": "S",
"required": false
}
}
}
}
Request Payload¶
{
"session_id": "8d4e7d32-2f6f-4d13-9b8e-0f4e98ef0001",
"entity_number": "1108",
"application_name": "jef-electronjs-template",
"employee_number": "11108",
"password": "pass1234"
}
CMD curl¶
curl -X POST "https://mfr670zvsh.execute-api.ap-southeast-1.amazonaws.com/prod/jef-one-validate-electronjs-login-and-create-session" \
-H "Content-Type: application/json" \
--data-raw '{"session_id":"8d4e7d32-2f6f-4d13-9b8e-0f4e98ef0001","entity_number":"1108","application_name":"jef-electronjs-template","employee_number":"11108","password":"pass1234"}'
PowerShell curl¶
curl.exe -X POST "https://mfr670zvsh.execute-api.ap-southeast-1.amazonaws.com/prod/jef-one-validate-electronjs-login-and-create-session" `
-H "Content-Type: application/json" `
--data-raw '{"session_id":"8d4e7d32-2f6f-4d13-9b8e-0f4e98ef0001","entity_number":"1108","application_name":"jef-electronjs-template","employee_number":"11108","password":"pass1234"}'