Director

A Director is responsible for balancing requests among a group of Backends. In addition to simply balancing, Directors can be configured to attempt retrying failed requests. Additionally, Directors have a quorum setting which can be used to determine when the Director as a whole is considered "up", in order to prevent "server whack-a-mole" following an outage as servers come back up. Only directors created via the API can be modified via the API. Directors known as "autodirectors" that are created automatically when load balancing groups of servers together cannot be modified or retrieved via the API.

Data model

backendsarrayList of backends associated to a director.
capacityintegerUnused.
commentstringA freeform descriptive note.
namestringName for the Director.
quorumintegerThe percentage of capacity that needs to be up for a director to be considered up. 0 to 100. [Default 75]
retriesintegerHow many backends to search if it fails. [Default 5]
shieldstringSelected POP to serve as a shield for the backends. Defaults to null meaning no origin shielding if not set. Refer to the POPs API endpoint to get a list of available POPs used for shielding.
typeintegerWhat type of load balance group to use. [Default 1]
created_atstringDate and time in ISO 8601 format. Read-only.
deleted_atstringDate and time in ISO 8601 format. Read-only.
service_idstringAlphanumeric string identifying the service. Read-only.
updated_atstringDate and time in ISO 8601 format. Read-only.
versionintegerInteger identifying a service version. Read-only.

Endpoints

List directors

GET/service/service_id/version/version_id/director

Create a director

POST/service/service_id/version/version_id/director

Get a director

GET/service/service_id/version/version_id/director/director_name

Update a director

PUT/service/service_id/version/version_id/director/director_name

Delete a director

DELETE/service/service_id/version/version_id/director/director_name