My API requests to the on-demand service APIs are being rejected as status 400, bad requests.
There appears to be two flavors of the PHP SDK:
- aemmobile-sdk-for-php - This contains the SDK, and recipes
- aemmobile-api-examples - This contains a different version of the SDK, and numerous demos
First, I'm able to use my ClientID on https://aex.aemmobile.adobe.com and obtain my Device ID and Device Token.

Next, I plug those values combined with the returned AEM Mobile On-Demand services form from Adobe in the configure.php:

After which, I can successfully run the demos - I can get my access token, create articles, assemble and upload articles, add to collections, etc... Seemingly things are working perfectly.
When I look the output from the PHP script, things seem in order:

However, when I debug that network call through a proxy, I'm seeing different values (X's below are hiding values)
device_id | AEBE7800FAXXXXXXXXXXD36080XXXXXXXXXX87A038F41C292080XXXXXXXXXXC8 |
client_id | ProjectCentral12 |
client_secret | 814506d8-XXXX-XXXX-XXXX-XXXXXXXXXXXX |
First, the client ID doesn't match - I'm not even sure where this "ProjectCentral12" is coming from.
Next, the device ID's UUID is in a different form.
Finally, the client secret does not match my UUID.
What's confusing about this, is that when I curl to test the API using my assigned values, I get http status 400, bad request.
However, when I use these values from above, the API call works.
So, my question is:
- Why are my own values not accepted?
- What format is the device ID supposed to be in?