This s a documentation page for our shiny new REST API - you weren't meant to find it. This API isn't ready for public use yet. We're chopping and changing it a LOT as we grow it. So if you build something that uses it then it's very likely to break in a future update. Don't say you weren't warned!
URL: | https://api.kashflow.com/v2/roles |
Method(s): | get, post, put, delete |
Response Formats: | JSON, XML |
Description: | This method allows you to retrieve, create, update and delete roles. The individual resource is identified by the role number. So /roles/123 would return the role with number 123. Similarly a PUT to that URL would update role 123. |
Parameters
Name | Type | Description |
---|---|---|
Number | Numeric | Company specific number assigned to role |
Name | String | Name of role |
Permissions | Collection | List of permissions that belong to the role |
Description | String | Description of the role |
UserNames | Collection | List of user names that belong to the role |
UserCount | Numeric | Number of user names that belong to this role |
IsAdmin | Boolean | Flag indicating whether the user is admin or not. True indicates user is admin. |
GET Operation
To get list of roles –URL : /roles
Example response for GET of role list
[{
"Description": "role with full access on all features",
"IsAdmin": false,
"UserCount": 0,
"Permissions": [],
"Number": 12,
"Name": "Full Access",
"UserNames": []
}, {
"Description": "role with full access on projects",
"IsAdmin": false,
"UserCount": 0,
"Permissions": ["ViewProject","CreateProject","UpdateProject","DeleteProject"],
"Number": 13,
"Name": "Projects only (full access)",
"UserNames": []
}, {
"Description": "role with full access on quotes",
"IsAdmin": false,
"UserCount": 0,
"Permissions": ["ViewQuote","CreateQuote","UpdateQuote","DeleteQuote"],
"Number": 14,
"Name": "Quotes only (full access)",
"UserNames": []
}, {
"Description": "role with readonly access on projects and quotes",
"IsAdmin": false,
"UserCount": 0,
"Permissions": ["ViewQuote","ViewProject"],
"Number": 15,
"Name": "Projects & Quotes (read only)",
"UserNames": []
}, {
"Description": "role with read and create permissions on quotes an",
"IsAdmin": false,
"UserCount": 0,
"Permissions": [],
"Number": 16,
"Name": "Projects & Quotes (read/create only) ",
"UserNames": []
}]
To get details of a particular role –
URL : /roles/{number}
Example response for GET of role
{
"Description": "role with readonly access on projects and quotes",
"IsAdmin": false,
"UserCount": 0,
"Permissions": ["ViewQuote","ViewProject"],
"Number": 15,
"Name": "Projects & Quotes (read only)",
"UserNames": []
}
POST Operation
To create role with the given role data –URL : /roles
Example request for POST of role
{
"Description": "role with readonly access on projects and quotes",
"Permissions": ["ViewQuote","ViewProject"],
"Name": "Projects & Quotes (read only)"
}
PUT Operation
To update role details for the specified role –URL : /roles/{number}
{number} in the URL should be replaced with the number of the role to be updated.
Example request for PUT of role
{
"Description": "role with readonly access on projects and quotes",
"Permissions": ["ViewQuote","ViewProject"],
"Number": 15,
"Name": "Projects & Quotes (read only)"
}
DELETE Operation
Deletes the role with the number provided in the URL –URL : /roles/{number}