Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Deletion of the POST '/api/{api}/deliveries' endpoint - 2.0 #17

Open
hpnog opened this issue Mar 17, 2022 · 5 comments
Open

Deletion of the POST '/api/{api}/deliveries' endpoint - 2.0 #17

hpnog opened this issue Mar 17, 2022 · 5 comments
Assignees

Comments

@hpnog
Copy link

hpnog commented Mar 17, 2022

Hello, @Retrospected!
I'm opening this issue as I can see #15 is already closed 🙂
As mentioned in that issue, Picnic did indeed drop the POST /api/{api}/deliveries endpoint. I also see that you successfully replaced such call with the suggested /api/{api}/deliveries/summary. Thank you for that! 💯

That said, Picnic has experienced since several calls to the POST /api/{api}/deliveries endpoint, which now return a 404 NOT FOUND, as the endpoint is no longer there. As a result, we also see that this app keeps calling the login endpoint as a result, in a quite small interval 😕
These seem to be older versions of this app, attempting to call the old endpoint.

As such, we'd like to ask if it is possible to accelerate the roll-out of this app to be sure that no clients use a version with a dropped endpoint. I this possible?

Suggestions

Not directly related to the issue above, but I'd like to leave you with a suggestion:

In other to help pinpoint issues, we'd like to suggest that you include the following headers in your calls to Picnic's backend systems:

x-picnic-agent:10100;2.3.0
x-picnic-did:open.app.picnic.homey

And the following fields in the login endpoint:

  "client_id": 10100,
  "device_id":"open.app.picnic.homey"

This would help debug possible issues in the future 🙂

@Retrospected
Copy link
Owner

Hey @hpnog, thanks for reaching out!

I've rolled out the new version of the app more than a week ago, however I noticed that the majority of the users haven't updated it yet. I came to the understanding that the removal of the following permission has lead to the fact that auto-update now is disabled for all users.

"homey:manager:speech-input"

I reached out to Athom today to see if they can somehow force the update regardless, since i merely removed a permission.

As for your suggestion, I will add the headers to the requests soon to make your debugging life easier. The client_id/x-picnic-agent value of 10100 is specific to this Homey app right? Or is it related to individual installations?

Sorry for any inconvenience this may have caused :)

@maximoei
Copy link

Thanks for responding and following up so quickly! The agent value is for the Homey app indeed, can be the same for all installations

@Retrospected
Copy link
Owner

I've added the header X-Picnic-Agent: 10100; 2.3.0 to the requests towards the back-end, but it returns:

{"error":{"code":"BAD_REQUEST","message":" 2.3.0 is not recognized as a three-part Picnic version number","details":{}}}

When i remove my app version (; 2.3.0) it works fine. Let me know what you want me to do!

@Retrospected Retrospected self-assigned this Mar 25, 2022
@hpnog
Copy link
Author

hpnog commented Apr 15, 2022

I've added the header X-Picnic-Agent: 10100; 2.3.0 to the requests towards the back-end, but it returns:

{"error":{"code":"BAD_REQUEST","message":" 2.3.0 is not recognized as a three-part Picnic version number","details":{}}}

When i remove my app version (; 2.3.0) it works fine. Let me know what you want me to do!

Hey @Retrospected!
Apologies for the late reply here.

I noticed that the example you're providing has a space between ; and the version.
Did you attempt to call our endpoint without it?

@Retrospected
Copy link
Owner

I've added the header X-Picnic-Agent: 10100; 2.3.0 to the requests towards the back-end, but it returns:
{"error":{"code":"BAD_REQUEST","message":" 2.3.0 is not recognized as a three-part Picnic version number","details":{}}}
When i remove my app version (; 2.3.0) it works fine. Let me know what you want me to do!

Hey @Retrospected! Apologies for the late reply here.

I noticed that the example you're providing has a space between ; and the version. Did you attempt to call our endpoint without it?

Yes I tried that as well, but that gives a different error:

{"error":{"code":"BAD_REQUEST","message":"Client type unknown for client ID '1'","details":{}}}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants