diff --git a/doc/build/html/_sources/restapi.txt b/doc/build/html/_sources/restapi.txt new file mode 100644 index 0000000000000000000000000000000000000000..42b799839e3d338dc61a945167a716a4d54cb5e5 --- /dev/null +++ b/doc/build/html/_sources/restapi.txt @@ -0,0 +1,186 @@ +========== + REST API +========== + +Get transactions +---------------- + +.. http:get:: /transaction + + Get all transactions + + **Example request** + + .. code-block:: http + + GET /transaction HTTP/1.1 + Host: accounting.example + Accept: application/json + + + **Example response** + + .. code-block:: http + + HTTP/1.1 200 OK + Content-Type: application/json + + { + "transactions": [ + { + "__type__": "Transaction", + "date": "2010-01-01", + "id": "Ids can be anything", + "metadata": {}, + "payee": "Kindly T. Donor", + "postings": [ + { + "__type__": "Posting", + "account": "Income:Foo:Donation", + "amount": { + "__type__": "Amount", + "amount": "-100", + "symbol": "$" + }, + "metadata": { + "Invoice": "Projects/Foo/Invoices/Invoice20100101.pdf" + } + }, + { + "__type__": "Posting", + "account": "Assets:Checking", + "amount": { + "__type__": "Amount", + "amount": "100", + "symbol": "$" + }, + "metadata": {} + } + ] + }, + { + "__type__": "Transaction", + "date": "2011-03-15", + "id": "but mind you if they collide.", + "metadata": {}, + "payee": "Another J. Donor", + "postings": [ + { + "__type__": "Posting", + "account": "Income:Foo:Donation", + "amount": { + "__type__": "Amount", + "amount": "-400", + "symbol": "$" + }, + "metadata": { + "Approval": "Projects/Foo/earmark-record.txt" + } + }, + { + "__type__": "Posting", + "account": "Assets:Checking", + "amount": { + "__type__": "Amount", + "amount": "400", + "symbol": "$" + }, + "metadata": {} + } + ] + }, + ] + } + +Add transactions +---------------- + +.. http:post:: /transaction + + :jsonparam array transactions: A list of Transaction objects to add. + + **Example request** + + .. code-block:: http + + POST /transaction HTTP/1.1 + Host: accounting.example + Content-Type: application/json + Accept: application/json + + { + "transactions": [ + { + "__type__": "Transaction", + "date": "2010-01-01", + "id": "Ids can be anything", + "metadata": {}, + "payee": "Kindly T. Donor", + "postings": [ + { + "__type__": "Posting", + "account": "Income:Foo:Donation", + "amount": { + "__type__": "Amount", + "amount": "-100", + "symbol": "$" + }, + "metadata": { + "Invoice": "Projects/Foo/Invoices/Invoice20100101.pdf" + } + }, + { + "__type__": "Posting", + "account": "Assets:Checking", + "amount": { + "__type__": "Amount", + "amount": "100", + "symbol": "$" + }, + "metadata": {} + } + ] + }, + ] + } + + **Example response** + + .. code-block:: http + + HTTP/1.1 200 OK + Content-Type: application/json + + { + "status": "OK", + "transaction_ids": [ + "Ids can be anything" + ] + } + + +Delete a transaction +-------------------- + +.. http:delete:: /transaction/ + + Delete the transaction with ID :data:`transaction_id`. + + **Example request** + + .. code-block:: http + + DELETE /transaction/123456 HTTP/1.1 + Host: accounting.example + Accept: application/json + + **Example response** + + .. code-block:: http + + HTTP/1.1 200 OK + Content-Type: application/json + + { + "status": "OK" + }