You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@matthew-white thanks for the report - are these URL syntax characters allowed and supported identifiers in Central, Collect, and Enketo? It sounds like they are but will be helpful to know what to expect when testing.
Yes, the ODK XForms spec allows form IDs and submission instance IDs to be arbitrary strings. In practice, form IDs vary a lot, while instance IDs sent from Collect and Enketo follow a specific pattern.
Software and hardware versions
pyodk v0.3.0, Python v3.11.3
Problem description
When using a form ID in a URL, pyODK doesn't encode all the characters I'd expect it to. For example, when I run the following:
I see that a request is sent to /v1/projects/1/forms/x/y/draft, not /v1/projects/1/forms/x%2Fy/draft.
It seems to me like pyODK encodes many characters, but doesn't encode the following URL syntax characters:
; / ? : @ & = + $ , #
I didn't look at how pyODK uses submission instance IDs in URLs, but those also need to be encoded.
The text was updated successfully, but these errors were encountered: