Departments

List

Get a list of all Departments.

Model & Relations

Namespace

App\Department

Relations

Relation Key Type Relation Field(s)
Roles roles Has many roles.department_id

Definition

GET /api/departments

Example Request

$client = new GuzzleHttp\Client(['base_uri' => 'https://{tenant}.intratool.de']);
$response = $client->request('GET', '/api/departments', [
    'headers' => ['Authorization' => "Bearer {accessToken}"]
]);

Example Response

[
  {
    "id": 2,
    "name": "Usergroup-1",
    "created_at": "2019-01-21 13:54:19",
    "updated_at": "2019-01-21 13:54:19",
    "deleted_at": null,
    "roles": [
      {
        "id": 2,
        "name": "Usergroup-1",
        "department_id": 2
      }
    ]
  },
  {
    "id": 3,
    "name": "Usergroup-2",
    "created_at": "2019-01-21 13:54:24",
    "updated_at": "2019-01-21 13:54:24",
    "deleted_at": null,
    "roles": [
      {
        "id": 3,
        "name": "Usergroup-2",
        "department_id": 3
      }
    ]
  }
]

Get

Get a single Department by id.

Definition

GET /api/departments/{id}

Example Request

$client = new GuzzleHttp\Client(['base_uri' => 'https://{tenant}.intratool.de']);
$response = $client->request('GET', '/api/departments/2', [
     'headers' => ['Authorization' => "Bearer {accessToken}"]
 ]);

Example Response

{
  "id": 2,
  "name": "Usergroup-1",
  "created_at": "2019-01-21 13:54:19",
  "updated_at": "2019-01-21 13:54:19",
  "deleted_at": null,
  "roles": [
    {
      "id": 2,
      "name": "Usergroup-1",
      "department_id": 2
    }
  ]
}

Create

Create a new Department.

Definition

POST /api/departments

Request Keys

Key Type Default Description
name * string - Name of the Department

Keys with * are required.

Note

The request can fail if the maximum Number of Departments is already reached.

Example Request

$client = new GuzzleHttp\Client(['base_uri' => 'https://{tenant}.intratool.de']);
$response = $client->request('POST', '/api/departments', [
     'headers' => ['Authorization' => "Bearer {accessToken}"],
     'json' => [
         'name' => 'Usergroup-3'
     ]
 ]);

Example Response

{
  "status": "success",
  "data": {
    "name": "Usergroup-3",
    "created_at": "2019-01-21 13:54:34",
    "updated_at": "2019-01-21 13:54:34",
    "id": 4
  }
}

Update

Update an existing Department by id.

Definition

PUT /api/departments/{id}

Request Keys

Key Type Description
name string Name of the Department

Example Request

$client = new GuzzleHttp\Client(['base_uri' => 'https://{tenant}.intratool.de']);
$response = $client->request('PUT', '/api/departments/4', [
     'headers' => ['Authorization' => "Bearer {accessToken}"],
     'json' => [
         'name' => 'Usergroup3',
     ]
 ]);

Example Response

{
  "status": "success",
  "data": {
    "id": 4,
    "name": "Usergroup3",
    "created_at": "2019-01-21 13:54:34",
    "updated_at": "2019-01-21 14:05:42",
    "deleted_at": null
  }
}

Delete

Delete an existing Department by id.

Definition

DELETE /api/departments/{id}

Example Request

$client = new GuzzleHttp\Client(['base_uri' => 'https://{tenant}.intratool.de']);
$response = $client->request('DELETE', '/api/departments/4', [
     'headers' => ['Authorization' => "Bearer {accessToken}"]
 ]);

Example Response

{
  "status": "success",
  "data": []
}
Last Updated: 10/14/2019