Intervals API Resource:

person

The base URL for this resource is located at
https://api.myintervals.com/person/

For accessing and updating information about people. Only administrators may create, update or delete user accounts.

Collection

Allowed HTTP Methods
MethodGroup Access
GETAdministrator, Manager, Resource
Allowed Filters
Filter NameRequired?ExpectsDefaultDescription
localid no integer1 Restricts the list based on a person's "localid," which is the number that appears associated with the person in the Intervals application.
username no string Limits the list to people whose usernames match the search string.
email no string Limits the list to people whose emails match the search string.
firstname no string Limits the list to people whose first names match the search string.
lastname no string Limits the list to people whose last names match the search string.
excludegroupids no integer1 Excludes people from the list who fall in the group IDs submitted.
projectid no integer1 Limits the list to people who have access to the project IDs submitted.
clientid no integer1 Limits the list to people who are associated with the ID of this client.
projectclientid no integer1 Limits the list to people who have access to projects that belong to the client IDs submitted.
search no string Limits the list to people who match the search string. Searches firstname, lastname, client, username, notes and contact info.
active no boolean Limits the list to people who are either active or inactive.
groupid no integer Limits the list to people who are in the group of the ID submitted.
allprojects no boolean Limits the list to people who should be added to all future projects.
restricttasks no boolean Limits the list to people who are restricted to only tasks to which they own or have been assigned.
offset no integer Return people starting from the nth person.
limit no integer 10 Sets a limit to the amount of people 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 /person/

To filter the list based on certain parameters:

GET /person/?restricttasks={value}

Note: You can string together multiple filters.

Member

Allowed HTTP Methods
MethodGroup Access
GETAdministrator, Manager, Resource
DELETEAdministrator
POSTAdministrator
PUTAdministrator
Settable Fields for PUT and POST Requests
Field NameRequired?ExpectsDefaultDescription
clientid no integer This ID of the client this person is associated with.
title no string (255)
firstname yes string (65)
lastname no string (85)
allprojects no boolean f If 'Yes', this person will be added to the project team for all future projects. It does not grant access to existing projects.
notes no html A short description for this person.
private yes boolean t Whether this person's contact information is visible to resource- and executive-level users.
active yes boolean t Whether the person is active or inactive.
username no string (255) For users that can log in, the username they will log in with. To remove a person's ability to log in, set this field to blank.
password no string (30) For users that can log in, the password they will log in with.
email no string (255) REQUIRED for adding a new person who can log in. Otherwise, edit a person's contact information using the personcontact resource.
groupid no integer REQUIRED for adding a person who can log in.

string (xxx) indicates a string with a maximum length of xxx characters.

Response Fields

The fields below are returned in GET responses. Boolean values are "t" / "f" strings. Numeric IDs and floats are returned as strings. Nullable fields may be JSON null.

Response Fields
Field NameNullableDescription
id no Unique identifier for the person
localid no Human-readable local ID shown in the Person app UI
clientid yes ID of the associated client for client contacts (empty for team members)
title yes Job title (Admin/Manager only)
firstname no First name
lastname no Last name
primaryaccount no Whether this person is the primary account holder ("t"/"f")
notes yes Person notes (may contain HTML) (Admin/Manager only)
allprojects no Whether the person is on all projects ("t"/"f") (Admin/Manager only)
active no Whether the person is active ("t") or inactive ("f")
private no Whether contact info is private from Resource users ("t"/"f") (Admin/Manager only)
tips no Whether in-app tips are enabled ("t"/"f")
username yes Login username (Admin/Manager only)
groupid yes ID of the user's group/role
group yes Group/role name (e.g. Administrator, Manager)
client yes Name of the associated client (empty when not a client contact)
numlogins no Total number of logins (often a string in JSON) (Admin/Manager only)
lastlogin yes Last login timestamp (may include fractional seconds) (Admin/Manager only)
timezone yes IANA timezone name (Admin/Manager only)
timezone_offset yes Human-readable timezone label from account settings (not a numeric UTC offset) (Admin/Manager only)
restricttasks no Whether the person is restricted to only their own tasks ("t"/"f") (Admin/Manager only)
clientlocalid yes Client local ID when linked to a client (empty otherwise)
calendarorientation no Calendar display preference code (often a string in JSON)
editordisabled no "0" when the rich text editor is enabled, non-zero when disabled (often a string in JSON)
email yes Email address (May be omitted depending on role or response shape)
hourlyrate yes Default hourly rate (Admin only; may be omitted)
cancomment no Whether the person can add comments ("t"/"f") (Admin/Manager only; may be omitted)

When retrieving a collection (GET /person/), the response envelope includes: personid (authenticated user's ID), status ("OK"), code (200), listcount (total matching records before limit/offset), and person (array of result objects). Defaults, no cap on limit, and how to paginate using listcount are described in the API Introduction (Pagination).

Examples

To retrieve one member resource:

GET /person/{id}/

Assuming no errors, the server will respond with 200 OK and the object requested.

To delete a particular member resource:

DELETE /person/{id}/

Assuming no errors, the server will respond with 200 OK.

To create a new member resource:

POST /person/
{
    "firstname": value,
    "private": value,
    "active": 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 /person/{id}/
{
    "firstname": value,
    "groupid": value
}

Assuming no errors, the server will respond with 202 Accepted and the entire element. This will allow you to verify the field values.

Start tracking time today

Join 5,000+ companies spending their time wisely with Intervals.

Try Intervals free