mirror of
https://github.com/netbox-community/netbox.git
synced 2024-05-10 07:54:54 +00:00
31 lines
1.0 KiB
Markdown
31 lines
1.0 KiB
Markdown
# REST API Authentication
|
|
|
|
The NetBox REST API primarily employs token-based authentication. For convenience, cookie-based authentication can also be used when navigating the browsable API.
|
|
|
|
{!docs/models/users/token.md!}
|
|
|
|
## Authenticating to the API
|
|
|
|
An authentication token is attached to a request by setting the `Authorization` header to the string `Token` followed by a space and the user's token:
|
|
|
|
```
|
|
$ curl -H "Authorization: Token $TOKEN" \
|
|
-H "Accept: application/json; indent=4" \
|
|
http://netbox/api/dcim/sites/
|
|
{
|
|
"count": 10,
|
|
"next": null,
|
|
"previous": null,
|
|
"results": [...]
|
|
}
|
|
```
|
|
|
|
A token is not required for read-only operations which have been exempted from permissions enforcement (using the [`EXEMPT_VIEW_PERMISSIONS`](../../configuration/optional-settings/#exempt_view_permissions) configuration parameter). However, if a token _is_ required but not present in a request, the API will return a 403 (Forbidden) response:
|
|
|
|
```
|
|
$ curl http://netbox/api/dcim/sites/
|
|
{
|
|
"detail": "Authentication credentials were not provided."
|
|
}
|
|
```
|