There's a few small mistakes in this: "allowing you to abitrary key/value pairs", "restrict the possible values you can take" (should be "they"?), "via in the API". You might be doing this already but when I'm writing docs I find it useful to read my docs in a different format from that I'm writing them in, to find errors like this. So I write in Vim, save, build the docs locally, open the HTML file in Firefox and read it. (This also helps to catch Sphinx formatting errors early, which a lot of people seem to commit unfixed.)