# Authentication Domain Controller Resource

The API allows you to list, view, edit and create authentication domains.

### GET /authentication-domains

Returns list of authentication domains filtered by specified query parameters.

Request Parameters
name | type | description
--- | --- | ---
direction | query |
filter | query |
hypervisor-manager | query |
nameLike | query |
orderBy | query |
page | query |
size | query |

Response Body
media type | data type | description
--- | --- | ---
application/json | array of AuthenticationDomainDetails (JSON) | list of authentication domains filtered by specified query parameters

#### Example

##### Request

    GET /authentication-domains
    Content-Type: */*
    Accept: application/json

    ...

##### Response

    HTTP/1.1 200 OK
    Content-Type: application/json

    [ { } ]

### POST /authentication-domains

Create authentication domain.

Request Body
media type | data type | description
--- | --- | ---
application/json | AuthenticationDomainRequest (JSON) | specify details for new authentication domain

Response Body
media type | data type | description
--- | --- | ---
application/json | AuthenticationDomainDetails (JSON) | details of newly created authentication domain

#### Example

##### Request

    POST /authentication-domains
    Content-Type: application/json
    Accept: application/json

    { }

##### Response

    HTTP/1.1 201 Created
    Content-Type: application/json

    { }

### DELETE /authentication-domains/{guid}

Remove authentication domain.

Request Parameters
name | type | description
--- | --- | ---
guid | path | specify local unique identifier for authentication domain (use by vProtect)

#### Example

##### Request

    DELETE /authentication-domains/{guid}
    Content-Type: */*

    ...

##### Response

    HTTP/1.1 204 No Content

### GET /authentication-domains/{guid}

Get a single authentication domain.

Request Parameters
name | type | description
--- | --- | ---
guid | path | specify local unique identifier for authentication domain (use by vProtect)

Response Body
media type | data type | description
--- | --- | ---
application/json | AuthenticationDomainDetails (JSON) | authentication domain details

#### Example

##### Request

    GET /authentication-domains/{guid}
    Content-Type: */*
    Accept: application/json

    ...

##### Response

    HTTP/1.1 200 OK
    Content-Type: application/json

    { }

### PUT /authentication-domains/{guid}

Change authentication domain details.

Request Parameters
name | type | description
--- | --- | ---
guid | path | specify local unique identifier for authentication domain (use by vProtect)

Request Body
media type | data type | description
--- | --- | ---
application/json | AuthenticationDomainUpdate (JSON) | specify authentication domain details to update

Response Body
media type | data type | description
--- | --- | ---
application/json | AuthenticationDomainDetails (JSON) | updated details of authentication domain

#### Example

##### Request

    PUT /authentication-domains/{guid}
    Content-Type: application/json
    Accept: application/json

    { }

##### Response

    HTTP/1.1 204 No Content
    Content-Type: application/json

    { }

### PUT /authentication-domains/{guid}/password

Change password for specified authentication domain.

Request Parameters
name | type | description
--- | --- | ---
guid | path | specify local unique identifier for authentication domain (use by vProtect)

Request Body
media type | data type | description
--- | --- | ---
application/json | StringDTO (JSON) | specify new password

#### Example

##### Request

    PUT /authentication-domains/{guid}/password
    Content-Type: application/json

    { }

##### Response

    HTTP/1.1 204 No Content

### PUT /authentication-domains/{hvmGuid}/{authDomainGuid}/used-for-auth

Request Parameters
name | type | description
--- | --- | ---
authDomainGuid | path |
hvmGuid | path |

Response Body
media type | data type | description
--- | --- | ---
application/json | object (JSON) |

#### Example

##### Request

    PUT /authentication-domains/{hvmGuid}/{authDomainGuid}/used-for-auth
    Content-Type: */*
    Accept: application/json

    ...

##### Response

    HTTP/1.1 204 No Content
    Content-Type: application/json

    ...