The Paronicon API was built to give you full control over the application as a whole as if you didn’t even have the Front-End available to you. It has the flexibility and expandability to allow for full consumption of P2 in any language you see fit. This document will outline some of the details of the API as well as how it should be used.
Every response from P2 will be wrapped in a <paronicon> node. This is the parent node and will always be present when communicating with P2. Inside there, will be two parent nodes:
Request – This node will mirror the request you provided via URL in XML mode as well as contain the time the query was submitted.
Response – This is where the response to the provided request will be housed.
When utilizing the Paronicon2 API there are several results codes that can be returned. They are listed below:
200 – Success
401 – Not logged in
402 – Invalid Server
404 – Invalid Method
405 – Invalid Token
406 – Invalid Credentials
407 – Invalid Parameters
408 – Insufficient Privileges
409 – Internal Timeout
500 – Unexpected Error
Each one of these error codes has the ability to contain an errorHelp node and an errorDescription node that will contain details of exactly what went wrong and how you can correct it. Be prepared to consume those. There is an example below:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
<paronicon> <request> <params> <method>authUser</method> </params> <timestamp>1345836506</timestamp> </request> <response responseCode="407"> <error> <errorType>Invalid Parameters</errorType> <errorDescription>The values supplied are incomplete or in the wrong format.</errorDescription> <errorHelp> <requiredParam>method</requiredParam> <requiredParam>token</requiredParam> <requiredParam>user</requiredParam> <requiredParam>password</requiredParam> </errorHelp> </error> </response> </paronicon>
With this section of the response available, troubleshooting becomes a bit easier as you will know where you went wrong and what values were incorrect.