@paulsmith so DF supports "service definitions" which are swagger.io definitions, you can easily try them via editor.swagger.io ..
DF also generates those in background for all non-custom service types and the "API Docs" are actually a github.com/swagger-api/swagger-ui based on those.
Swagger also has github.com/swagger-api/swagger-codegen/ which can generate an SDK for dozens of languages based on the same definitions. Basically the SDK does all the JSON parsing for you has function calls for every API endpoint. You will simply operate on language-specific objects then, e.g. a
TObject, and set the attributes, then pass it into the API function.
( Go to the editor.swagger.io and click "Generate Client" if you dont wanna do it locally)
But the bummer: There is no Delphi codegen-template yet..so to leverage the swagger-codegen power for Delphi, one would need to do this github.com/swagger-api/swagger-codegen/wiki/Building-your-own-Templates
And to finally get back to your "question": Check
TRESTResponseDataSetAdapter for getting the data into a table.
For User creation, I dont have Delphi code, but some PHP snippets which should give you the idea.
(sorry for all those links not being clickable but I always see "..new users can only have 2 links in post" when saving )