Create desktop installer URL¶
Summary¶
Source repository:
jef-systems/jef-desktop-store-backendSource SHA:
677bee5aec55a92eea33efdcc4d8a5ee1b83e2c6Source run id:
32513999072Module:
Desktop-storeLambda function:
jef-desktop-store-generate-latest-application-download-urlHTTP method:
GETInvocation mode:
syncPackage mode:
no-packageAPI category:
Desktop-store Complex Sync No Package GET APIsAPI path:
/desktop-store/complex-sync-no-packages/jef-desktop-store-generate-latest-application-download-urlEndpoint URL:
https://api.jefoffice.com/desktop-store/complex-sync-no-packages/jef-desktop-store-generate-latest-application-download-urlDocumentation scope:
lambda-complex-sync-no-packages
Synchronous Lambda Complex Rule¶
This API is documented as a synchronous Lambda complex no-package API. API Gateway waits for the Lambda result and returns the final Lambda response.
Description¶
Authorizes one application, verifies its immutable S3 release, and returns a short-lived installer URL with integrity metadata.
Payload Example¶
{
"session_id": "00000000-0000-4000-8000-000000000000",
"application_name": "jef-accounting"
}
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}-4[0-9a-fA-F]{3}-[89aAbB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$"
},
"application_name": {
"type": "S",
"required": true,
"regex": "^[A-Za-z0-9 .,'_-]{1,120}$"
}
}
}
}
Response Schema¶
{
"root": {
"type": "M",
"required": true,
"additional_properties": false,
"attributes": {
"is_accepted": {
"type": "BOOL",
"required": true
},
"is_valid": {
"type": "BOOL",
"required": true
},
"can_continue": {
"type": "BOOL",
"required": true
},
"message_type": {
"type": "S",
"required": true
},
"message": {
"type": "S",
"required": true
},
"next_action": {
"type": "S",
"required": true
},
"operation": {
"type": "S",
"required": true
},
"status_code": {
"type": "N",
"required": true,
"integer": true
},
"application_name": {
"type": "S",
"required": true
},
"version": {
"type": "S",
"required": true,
"regex": "^[0-9]+\\.[0-9]+\\.[0-9]+$"
},
"installer_file_name": {
"type": "S",
"required": true,
"regex": "^[A-Za-z0-9 ._-]{1,180}\\.exe$"
},
"size_bytes": {
"type": "N",
"required": true,
"integer": true,
"minimum": 1
},
"sha256": {
"type": "S",
"required": true,
"regex": "^[0-9a-f]{64}$"
},
"release_id": {
"type": "S",
"required": true,
"regex": "^[0-9a-f]{64}$"
},
"url": {
"type": "S",
"required": true
},
"expires_at": {
"type": "S",
"required": true
},
"download_created": {
"type": "S",
"required": true
}
}
}
}
CMD curl¶
curl.exe -X GET "https://api.jefoffice.com/desktop-store/complex-sync-no-packages/jef-desktop-store-generate-latest-application-download-url"
PowerShell curl¶
curl.exe -X GET "https://api.jefoffice.com/desktop-store/complex-sync-no-packages/jef-desktop-store-generate-latest-application-download-url"