...
The API is currently deployed to the following locations. More will follow. The API documentation will expose project specific properties so you need to log in to see it. Please see 1353155958 dRofus REST API#Authentication section below for how to connect with your dRofus username and password.
URL | Swagger Gui | Swagger JSON | Note |
---|---|---|---|
https://api-no.drofus.com | use for db2.nosyko.no projects | ||
https://api-eu.drofus.com | |||
https://api-ca.drofus.com | |||
https://api-us.drofus.com | |||
https://api-au.drofus.com/ |
Authentication
Bearer
API generally supports OAauth2 standard Bearer tokens. Registration process of OAuth2 client is currently manual, please reach out to support@drofus.com and we can provide needed information. Please send us the desired redirect_uri(s) (and if desired, post_logout_redirect_uri(s)).
For testing purpose, HTTP Basic authentication can also be used. However, it should be avoided for production applications.
API-key
API supports reading data using "API-key". This This access mode intended to be used by a person for reading ad-hoc data and/or recurring API-calls such as dashboards, PowerQuery (Excel, PoweBI), etc.
Keys can be generated as described here: Power Query#3.-Credentials/Login A generated key will reflect the logged in user and the project
Remarks using API-key
It only supports reading operations
An API-key is valid for a single project. A user may generate multiple API-keys for accessing different project. Generating API-Key twice for the same project will result in same key.
API-keys belong to a single user and are confidential, thus should not be shared
API-key does not intended to be used for machine-to-machine communication and should not be used as such
Technical description
One should send API-key with each HTTP request as standard Authorization header with Reference
scheme
...
We model our query-syntax on the OData standard, but currently only support a small subset of it.
Argument | Description | Sample | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
$select | A comma-separated list of columns to return. 'id' will always be returned | $select=name,architect_no | ||||||||||||||||||
$orderby | A comma-separated list of columns to sort by. Sorting direction can be specified using asc or desc. Default is asc. If no orderby is specified, the result is sorted by id | $orderby=name,architect_no desc, | ||||||||||||||||||
$filter | Used to restrict which rows are returned. A column can have a criteria to filter by. The value for filter can be quoted to handle embedded spaces and strings. Currently only 'and' can be used to combine multiple filters. Operators:
| $filter=created gt '2019-1-1' $filter=name in ('kitchen', 'office') $filter=id in (1001, 1003, 1005) $filter=contains(name,'kitch') | ||||||||||||||||||
$top | Max number of rows to return. Default is 10000. If more data is available than is returned, the result will contain a RFC5988 header value | $top=123 | ||||||||||||||||||
$skip | How many rows to skip on result-set. Default is 0. Can be combined with $top to implement paging | $skip=100 |
Full API documentation
The Api is described in a standard format, called Open API (formerly known as Swagger)
The basic general documentation for our API will be found under 'swagger/default/swagger.json'. But since our database is highly confiburable, a version with all database-specific files in the schemas are available under 'swagger/v1/swagger.json', but requires logon.
RFC5988
Rfc5988 is an internet standard for navigating between pages in result-sets. Essentially it looks like this, and contains the full link for additonal data in the response headers:
Code Block | ||
---|---|---|
| ||
<http://localhost/api/database/01/rooms?$skip=1&$top=1>; rel=\"next\"> |
Examples
Examples of how to use the API:
...