Intervals API Resource: expense
The base URL for this resource is located at
https://api.myintervals.com/expense/
Collection
Allowed HTTP Methods | |
---|---|
Method | Group Access |
GET | Administrator, Manager, Executive |
Allowed Filters | ||||
---|---|---|---|---|
Filter Name | Required? | Expects | Default | Description |
projectid | no | integer1 | Limits the list to expenses belonging to the projects with the ID(s) passed. | |
personid | no | integer1 | Limits the list to expenses added by the persons with the ID passed. | |
clientid | no | integer1 | Limits the list to expenses belonging to a project belonging to the clients with the ID passed. | |
managerid | no | integer1 | Limits the list to expenses belonging to a project managed by the persons with the ID passed. | |
datebegin | no | date | Limits the list to expenses having a date on or after the date passed. | |
dateend | no | date | Limits the list to expenses having a date on or before the date passed. | |
date | no | date | Limits the list to expenses having the date passed. | |
sortfield | no | string | date | Sort the list by any of the following fields: id, projectid, date, expense, fee, note, personid, project, client, and person |
sortdir | no | string | DESC | Sets the sort direction of the returned list. Must be either "ASC" or "DESC". |
offset | no | integer | Return expenses starting from the nth expense. | |
limit | no | integer | 10 | Sets a limit to the amount of expenses returned in the response. |
1 Indicates that multiple values are allowed, in CSV format (e.g. "3,5,11,19").
2 This field accepts HTML, but certain HTML elements may be stripped out.
Examples
To retrieve the entire list of this resource:
GET /expense/
To filter the list based on certain parameters:
GET /expense/?personid={value}
Note: You can string together multiple filters.
Member
Allowed HTTP Methods | |
---|---|
Method | Group Access |
GET | Administrator, Manager, Executive |
DELETE | Administrator |
POST | Administrator, Manager |
PUT | Administrator, Manager |
Settable Fields for PUT and POST Requests | ||||
---|---|---|---|---|
Field Name | Required? | Expects | Default | Description |
projectid | yes | integer | ||
personid | no | integer | Set the person for the expense. If omitted, it defaults to the current person who is saving the expense. | |
date | yes | date | The date that the expense was incurred. | |
expense | yes | double | The amount of the expense is what the expense cost the company. Executive users do not see this value. | |
fee | yes | double | This is what you are charging the client. If you are marking up the expense, the fee should be greater than the expense value. If you are not marking up the expense, this should be the same as the expense value. | |
note | no | string (255) | The description of the expense. |
string (xxx) indicates a string with a maximum length of xxx characters.
Examples
To retrieve one member resource:
GET /expense/{id}/
Assuming no errors, the server will respond with 200 OK and the object requested.
To delete a particular member resource:
DELETE /expense/{id}/
Assuming no errors, the server will respond with 200 OK.
To create a new member resource:
POST /expense/
{ "projectid": value, "date": value, "expense": value, "fee": value }
Assuming no errors, the server will respond with 201 Created and the newly-created element. This will allow you to get the id of the item you just created and verify the field values. Note: Only required fields were listed here. The entire list of possible fields is above.
To update a member resource:
PUT /expense/{id}/
{ "fee": value, "note": value }
Assuming no errors, the server will respond with 202 Accepted and the entire element. This will allow you to verify the field values.
Intervals API
This documentation is meant to serve as an introduction to getting started with the API.
Documentation
Resources
- client
- contactdescriptor
- contacttype
- document
- expense
- group
- invoice
- invoiceitem
- invoicenote
- invoiceterm
- me
- milestone
- milestonenote
- module
- payment
- paymenttype
- person
- personcontact
- project
- projectlabel
- projectmodule
- projectnote
- projectteam
- projectworktype
- quota
- request
- task
- tasklistfilter
- tasknote
- taskpriority
- taskstatus
- time
- timer
- worktype
API Support
Looking for help?
» Contact our support team.