Listeners

Listener determines server connection mode (proxy, gateway, transparent, bastion) as well as its specifics.

Data structures

ListenerModel
Parameter Type Description
blocked bool  
case_insensitivity bool Disable case sensitivity in the username string when connecting over this listener. Available when protocol == ssh
id string Read only
listen_interface string Required if mode == gateway || transparent
listen_ip IPv4 Required if mode == proxy || bastion
listen_port int Required if mode == proxy || bastion
mode string {bastion, gateway, proxy, system, transparent, unix} Required
name string Required
protocol string{checkout, citrixsf, http, ica, modbus, mysql, oracle, rdp, ssh, system, tcp, tds, telnet, tn3270, tn5250, vnc} Required
reason string  
prompt string  
rdp ListenerRDPAttributes Required if protocol == rdp
ssh ListenerSSHAttributes Required if protocol == ssh
tls ListenerTLSAttributes  
ListenerRDPAttributes
Parameter Type Description
common_name string required if secproto in (tls, nla) and tls_private_key == null
security string{std, tls, nla} required
std_private_key PEM
  • write only
  • required if secproto == std
  • pass null to generate
tls_private_key PEM
  • write only
  • required if secproto in (tls, nla)
  • pass null to generate
tls_certificate PEM Read only
legacy_ciphers bool, null  
std_public_key PEM Read only
ListenerSSHAttributes
Parameter Type Description
private_key PEM
  • write only
  • required
public_key PEM Read only
legacy_ciphers bool, null  
ListenerTLSAttributes
Parameter Type Description
common_name string required if use_tls and tls_private_key == null
use_tls bool  
legacy_ciphers bool, null  
tls_certificate PEM Read only
tls_private_key PEM
  • write only
  • required if use_tls
  • pass null to generate
ListenerSafeAssignment
Parameter Type Description
listener_id int
  • write only
  • required
listener   Read only
      id int  
      name string  

Creating a listener

Request

Method
POST
Path
/api/system/listeners
Headers
Content-Type: Application/JSON
Body
ListenerModel

Possible Response

Status
201 CREATED
Headers
Content-Type: Application/JSON
Body
ListenerModel
Description Object successfully created. Resultant object’s attributes are included in response body.

Possible Response

Status
400 BAD REQUEST
Headers
Content-Type: Application/JSON
Body
ValidationErrors
Description Validation didn’t pass.

Retrieving listeners list

Request

Method
GET
Path
/api/system/listeners

Note

Results pagination

Every GET request, which returns a collection of objects can be optionally paginated. To achieve it add a pagination parameter to the request path:

/api/system/objects?page=3&page_size=10
Pagination parameters
page int
page_size int

Possible Response

Status
200 OK
Headers
Content-Type: Application/JSON
Body
[
        ListenerModel,
        ...
]

Retrieving a listener

Request

Method
GET
Path
/api/system/listeners/:listener_id

Possible Response

Status
200 OK
Headers
Content-Type: Application/JSON
Body
ListenerModel

Possible Response

Status
404 NOT FOUND
Description No listener with given id.

Modifying a listener

Request

Method
PUT, PATCH
Path
/api/system/listeners/:listener_id

Possible Response

Status
200 OK
Headers
Content-Type: Application/JSON
Body
ListenerModel

Possible Response

Status
400 BAD REQUEST
Headers
Content-Type: Application/JSON
Body
ListenerModel

Possible Response

Status
404 NOT FOUND
Description No listener with given id.

Deleting a listener

Request

Method
DELETE
Path
/api/system/listeners/:listener_id

Possible Response

Status
204 NO CONTENT

Possible Response

Status
404 NOT FOUND
Description Object with specified identifier was not found.

Retrieving users allowed to manage given listener

Request

Method
GET
Path
/api/system/listeners/:listener_id/granted_users

Note

Results pagination

Every GET request, which returns a collection of objects can be optionally paginated. To achieve it add a pagination parameter to the request path:

/api/system/objects?page=3&page_size=10
Pagination parameters
page int
page_size int

Possible Response

Status
200 OK
Headers
Content-Type: Application/JSON
Body
[
        {
                'name': 'username',
                'id': :id
        } , ...
]

Granting management privileges

Request

Method
POST
Path
/api/system/listeners/:listener_id/granted_users
Body
{
        ''user_id'': :user_id
}

Possible Response

Status
201 CREATED

Revoking management privileges

Request

Method
DELETE
Path
/api/system/listeners/:listener_id/granted_users/:user_id

Possible Response

Status
204 NO CONTENT

Possible Response

Status
404 NOT FOUND

Retrieving listener-safe assignments list

Request

Method
GET
Path
/api/system/listeners

Note

Results pagination

Every GET request, which returns a collection of objects can be optionally paginated. To achieve it add a pagination parameter to the request path:

/api/system/objects?page=3&page_size=10
Pagination parameters
page int
page_size int

Possible Response

Status
200 OK
Headers
Content-Type: Application/JSON
Body
[
        ListenerSafeAssignmentModel,
        ...
]

Creating a listener-safe assignment

Request

Method
POST
Path
/api/system/safes/:safe_id/listeners
Body
ListenerSafeAssignmentModel

Possible Response

Status
201 CREATED
Headers
Content-Type: Application/JSON
Body
ListenerSafeAssignmentModel

Possible Response

Status
400 BAD REQUEST
Headers
Content-Type: Application/JSON
Body ValidationErrors

Possible Response

Status
404 NOT FOUND

Deleting a listener-safe assignment

Request

Method
DELETE
Path
/api/system/safes/:safe_id/listeners/:listener_id

Possible Response

Status
204 NO CONTENT

Possible Response

Status
404 NOT FOUND