Query for Supported Queries
dshanske opened this issue · 11 comments
Separating this from #1.
Proposing that the config query contain a property called q that shows what commands the endpoint will respond to.
Micropub for WordPress actually does do this now.
I think this is a great idea and plan to add support for this in both my abode software and Indigenous for iOS.
I'm not sure about the property name, q (although matching the query parameter) seems a little vague. Maybe we call it queries?
Because that I think this is great. I would expect that the value would be an array of strings and each of the strings would be query to the ?q= values that are supported?
For example my site would return
{
"other": "stuff",
"queries": [
"source",
"syndicate-to",
"category",
"contact"
]
}
Does that look right and is that how you are doing it, @dshanske ?
I think I am using q
Basically to match the query
That makes sense. Does that rest of it match?
Essentially strings that match what gets entered into ?q=
That is exactly it.
Drupal supports this too now, see swentel/indieweb#373
In a way, returning 'config' in the 'q' array seems a bit redundant no ?
Also, I think you an add 'geo' now too (unless that's added differently)
This is supported in my Micropub server and can be seen in https://www-api.jvt.me/micropub?q=config
I think it would be useful to document the behavior if there is no q
list in the response. Specifically: if a server does not return which queries it supports, a client should still call e.g. q=source
or q=category
or any other query it wants to try. If the client gets an error or empty JSON when trying a query, it knows that query is not supported anyway.
This query is supported by Indiekit.