Get allowed playstore applications by entity number¶
Summary¶
Source repository:
jef-systems/jef-playstore-backendSource SHA:
eb793550a12d9e11927e529c3cd85e40d94c5421Source run id:
29434262589Module:
PlaystoreLambda function:
jef-playstore-get-allowed-applications-by-entity-numberHTTP method:
GETInvocation mode:
syncPackage mode:
no-packageAPI category:
Playstore Complex Sync No Package GET APIsAPI path:
/playstore/complex-sync-no-packages/jef-playstore-get-allowed-applications-by-entity-numberEndpoint URL:
https://api.jefoffice.com/playstore/complex-sync-no-packages/jef-playstore-get-allowed-applications-by-entity-numberDocumentation 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¶
GET endpoint that resolves an entity_number and returns the JEF Playstore applications allowed for that entity.
Payload Example¶
{
"entity_number": "1513"
}
Payload Schema¶
{
"root": {
"type": "M",
"required": true,
"attributes": {
"entity_number": {
"type": "S",
"required": true,
"regex": "^\\d{4}$"
}
}
},
"notes": [
"Input is received from GET query parameters, not a JSON request body.",
"entity_number must contain exactly four decimal digits.",
"entity_number is resolved through jef-playstore-entities/get-by-entity-number."
]
}
Response Schema¶
{
"root": {
"type": "M",
"required": true,
"attributes": {
"is_accepted": {
"type": "BOOL",
"required": true
},
"exists": {
"type": "BOOL",
"required": true
},
"applications_allowed": {
"type": "BOOL",
"required": true
},
"ok": {
"type": "BOOL",
"required": false
},
"retryable": {
"type": "BOOL",
"required": false
},
"repair_required": {
"type": "BOOL",
"required": false
},
"message_type": {
"type": "S",
"required": true
},
"message": {
"type": "S",
"required": true
},
"operation": {
"type": "S",
"required": true
},
"status_code": {
"type": "N",
"required": true
},
"entity_number": {
"type": "S",
"required": false
},
"entity_id": {
"type": "S",
"required": false
},
"domain_id": {
"type": "S",
"required": false
},
"domain_id_source": {
"type": "S",
"required": false
},
"entity_lookup_source": {
"type": "S",
"required": false
},
"allowed_application_lookup_source": {
"type": "S",
"required": false
},
"allowed_application_record_count": {
"type": "N",
"required": false
},
"latest_allowed_application_record_count": {
"type": "N",
"required": false
},
"allowed_application_count": {
"type": "N",
"required": true
},
"applications": {
"type": "L",
"required": true,
"items": {
"type": "M",
"attributes": {
"application_id": {
"type": "S",
"required": true
},
"domain_id": {
"type": "S",
"required": true
},
"package_name": {
"type": "S",
"required": true
},
"name": {
"type": "S",
"required": true
},
"version": {
"type": "S",
"required": true
},
"version_code": {
"type": "N",
"required": false
},
"is_mobile": {
"type": "BOOL",
"required": true
},
"apk_s3_uri": {
"type": "S",
"required": false
},
"apk_cloudfront_url": {
"type": "S",
"required": false
},
"apk_object_key": {
"type": "S",
"required": false
},
"apk_sha256": {
"type": "S",
"required": false
},
"signing_certificate_sha256": {
"type": "S",
"required": false
},
"apk_size_bytes": {
"type": "N",
"required": false
},
"build_type": {
"type": "S",
"required": false
},
"source_sha": {
"type": "S",
"required": false
},
"created": {
"type": "S",
"required": true
},
"updated": {
"type": "S",
"required": true
},
"allowed_application_id": {
"type": "S",
"required": false
},
"is_allowed": {
"type": "BOOL",
"required": false
},
"allowed_created": {
"type": "S",
"required": false
},
"allowed_updated": {
"type": "S",
"required": false
}
}
}
},
"entity": {
"type": "M",
"required": false
},
"warnings": {
"type": "L",
"required": false
},
"failure_code": {
"type": "S",
"required": false
},
"failure_reason": {
"type": "S",
"required": false
},
"matches": {
"type": "L",
"required": false
},
"match_count": {
"type": "N",
"required": false
},
"missing_application_ids": {
"type": "L",
"required": false
},
"domain_mismatches": {
"type": "L",
"required": false
},
"candidate_domain_ids": {
"type": "L",
"required": false
},
"invalid_application_domain_ids": {
"type": "L",
"required": false
}
}
},
"notes": [
"A 200 empty result means the entity exists, has a valid domain_id, and has no currently allowed applications.",
"If entity.domain_id is missing/invalid, the function derives it only when all allowed applications share one valid domain_id.",
"A 409 entity_domain_id_missing_or_invalid means the entity data must be repaired or fallback derivation was unsafe.",
"A 409 duplicate_entity_number means entity_number authorization is ambiguous and must be repaired.",
"A 409 allowed_application_target_missing means an allowed relation points to a missing application.",
"A 409 application_domain_mismatch means an allowed relation crosses entity/application domains.",
"Allowed-application authorization is separate from live APK verification; Android must use the latest-version endpoint before installation."
]
}
CMD curl¶
curl.exe -X GET "https://api.jefoffice.com/playstore/complex-sync-no-packages/jef-playstore-get-allowed-applications-by-entity-number"
PowerShell curl¶
curl.exe -X GET "https://api.jefoffice.com/playstore/complex-sync-no-packages/jef-playstore-get-allowed-applications-by-entity-number"