Syncd API
Billing Rates
Billing must be enabled in order to use the billing rates interface. You can check if billing is enabled using the Account Information interface (account / billing-settings / enable-billing
). Administrators can enable billing from Syncd's web interface via Settings / Billing.
Billing Managers can view, create, update and delete billing rates. Other users can view billing rates if they are assigned the "View billing rates" user right (see the User Information interface).
Billing rates can be "shared" or "custom". Shared rates can be assigned to multiple users and/or jobs, while custom rates are assigned to only one user or job. Shared rates can be changed to custom rates, and vice versa.
Show
Request
GET /billing_rates/#{billing_rate-id}.xml
Response
Status: 200 OK <billing-rate> <id type="integer">2268</id> <name>Development</name> <rate type="decimal">95.5</rate> <shared type="boolean">true</shared> <currency>USD</currency> <!-- if include=timestamps --> <created-at type="datetime">2007-08-16T20:49:05Z</created-at> <updated-at type="datetime">2008-07-12T13:30:38Z</updated-at> <!-- end --> </billing-rate>
List
Request
All billing rates:
GET /billing_rates.xml
All shared billing rates:
GET /billing_rates/shared.xml
All custom billing rates:
GET /billing_rates/custom.xml
Optional parameters
Specify start
and end
to request a specific range of items. For example:
GET /billing_rates.xml?start=1&end=4
Response
Status: 200 OK <billing-rates type="array"> <billing-rate> ... </billing-rate> ... </billing-rates>
Create
Request
POST /billing_rates.xml
Include the following data with your request:
<billing_rate> <!-- name (required, unique, max-length=30) --> <name>Development</name> <!-- rate (required decimal) --> <rate>95.50</rate> <!-- shared (optional boolean, default=true) --> <shared>true</shared> <!-- currency code (optional, default=default currency for account) --> <currency>USD</currency> </billing_rate>
Response
Status: 201 Created <billing-rate> <id type="integer">#{new-billing_rate-id}</id> <name>Development</name> <rate type="decimal">95.5</rate> <shared type="boolean">true</shared> <currency>USD</currency> </billing-rate>
Update
Request
PUT /billing_rates/#{billing_rate-id}.xml
Include ANY of the following data with your request:
<billing_rate> <name>Development</name> <rate>95.5</rate> <shared>true</shared> <currency>USD</currency> </billing_rate>
Response
Status: 200 OK
Delete
An assigned billing rate can not be deleted. Please delete any associated billing assignments beforehand (see the billing assignments interface to find and delete these assignments).
Request
DELETE /billing_rates/#{billing_rate-id}.xml
Response
Status: 200 OK