API Documentation | Provision Broker

The broker instance endpoint allows you to provision a broker given its ip, port, and certificate. Creating a new broker is not available on SaaS installs.

Fields

_cid string
The primary key
"a406-n291781"
A string containing a provision_broker cid
_cert string
Current certificate of the broker.
"-----BEGIN CERTIFICATE-----\nMIIFGDCCBACgAwIBAgICEHkwDQYJKoZIhvcNAQELBQAwgbUxCzAJBgNVBAYTAlVT\nMREwDwYDVQQIEwhNYXJ5bGFuZDEPMA0GA1UEBxMGRnVsdG9uMRswGQYDVQQKExJD\naXJjb251cyBEZXYsIEluYy4xFTATBgNVBAsTDENpcmNvbnVzIERldjErMCkGA1UE\nAxMiQ2lyY29udXMgRGV2IENlcnRpZmljYXRlIEF1dGhvcml0eTEhMB8GCSqGSIb3\nDQEJARYSY2FkZXZAY2lyY29udXMubmV0MB4XDTE0MTIxOTE1MTk0MloXDTE1MTIy\nMDE1MTk0MlowXDELMAkGA1UEBhMCVVMxETAPBgNVBAgMCE1hcnlsYW5kMREwDwYD\nVQQKDAhDaXJjb251czEnMCUGA1UEAwweYTQwNi1uMjkxNzgxLm5vaXQuY2lyY29u\ndXMubmV0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqTEDTDNd0z2L\nwxdxw4AHSgyyIZRFgzMZjmcNY/S3hpYFvQHpNnRilJUAYgj8EMhrJjYyoHyh1dNQ\nnzRNMuRz2GyDXbQE4O/m+IubFhZ1Ej+CgJqlZ/y1flAGIAiDmjMqS+n2yrUmCExI\nnkaXspQEK2YhyqT//XGmyGMj6rV1JgdWGcrJNHcIDqkoGm+KmLJTcA8vlBd78mcS\nDNjKAadTXqSi7X787rkxXHYKt8WaKB7evCuXBaVlAHiIpPuibbyYyGcgExLV1IcY\nd5FeR8OgnGMylpbLdHvlQpDJ3VI0WWVkWLWZ2rXkgDxBGtjvUhvZWfyVqT0cCgqp\n4bNawJsauQIDAQABo4IBiDCCAYQwCQYDVR0TBAIwADARBglghkgBhvhCAQEEBAMC\nBsAwCwYDVR0PBAQDAgSwMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjAs\nBglghkgBhvhCAQ0EHxYdT3BlblNTTCBHZW5lcmF0ZWQgQ2VydGlmaWNhdGUwHQYD\nVR0OBBYEFBgbYbbQm7OW2IgQLu3RkjbH9Yo9MIHqBgNVHSMEgeIwgd+AFMsQAVzu\n3oj/Ds4T5H5/a/OCQccKoYG7pIG4MIG1MQswCQYDVQQGEwJVUzERMA8GA1UECBMI\nTWFyeWxhbmQxDzANBgNVBAcTBkZ1bHRvbjEbMBkGA1UEChMSQ2lyY29udXMgRGV2\nLCBJbmMuMRUwEwYDVQQLEwxDaXJjb251cyBEZXYxKzApBgNVBAMTIkNpcmNvbnVz\nIERldiBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkxITAfBgkqhkiG9w0BCQEWEmNhZGV2\nQGNpcmNvbnVzLm5ldIIJAJqIrCvZQxVYMA0GCSqGSIb3DQEBCwUAA4IBAQAmJQ9x\n7g1Uf/Jd4CY85EH0kWsChSz/hlPeRwm6Ek31wCC6LJdjlzXm6DPgVegGH7af5rYD\nK8FVgdtlKY5tI3b6tuKSVL9zedRbTLZ5s8HmjCvGhkY6VugjuGHownx8u+mnoBy6\n+4/fvRcT69MUxIScKwF0RUCoPvv/4Lu/qsg6+KxM5sxnYOWkMfN2vgEpO83eotQn\ncTCHLSPapGGrlvBk2jCwgM389mgd2Xu0uguoBQvdXcz63azkDJQfGVaL/c9A0B7T\ny8Yq/x78N4l6wvBgNZyu6NkkY0UZ5NKX/ZjIJRxVnx9XqrPE/kYbxaU1yHyRXrQH\nYzRYxHoUrJaSqbnL\n-----END CERTIFICATE-----"
A string containing freeform text
_stratcons array
List of stratcons for the broker
An array
object (zero or more times)
Individual stratcon
An object
cn string
CN of stratcon
A string containing freeform text
host string
Host of stratcon
A string containing freeform text
port string
Port of stratcon
A string containing freeform text
cluster_id number
Add the broker to an existing cluster.
A number containing an integer greater than or equal to zero
csr string
CSR of the broker.
"-----BEGIN CERTIFICATE REQUEST-----\nMIICsjCCAZoCAQAwbTELMAkGA1UEBhMCVVMxETAPBgNVBAgMCE1hcnlsYW5kMQ8w\nDQYDVQQHDAZGdWx0b24xETAPBgNVBAoMCENpcmNvbnVzMScwJQYDVQQDDB5hNDA2\nLW4yOTE3ODEubm9pdC5jaXJjb251cy5uZXQwggEiMA0GCSqGSIb3DQEBAQUAA4IB\nDwAwggEKAoIBAQCpMQNMM13TPYvDF3HDgAdKDLIhlEWDMxmOZw1j9LeGlgW9Aek2\ndGKUlQBiCPwQyGsmNjKgfKHV01CfNE0y5HPYbINdtATg7+b4i5sWFnUSP4KAmqVn\n/LV+UAYgCIOaMypL6fbKtSYITEieRpeylAQrZiHKpP/9cabIYyPqtXUmB1YZysk0\ndwgOqSgab4qYslNwDy+UF3vyZxIM2MoBp1NepKLtfvzuuTFcdgq3xZooHt68K5cF\npWUAeIik+6JtvJjIZyATEtXUhxh3kV5Hw6CcYzKWlst0e+VCkMndUjRZZWRYtZna\nteSAPEEa2O9SG9lZ/JWpPRwKCqnhs1rAmxq5AgMBAAGgADANBgkqhkiG9w0BAQUF\nAAOCAQEAipdJ25cuO4jj4295p7i6gJImOwfUZcbBzWLbkCJKwfWTkkYx5E6hIcHq\nX84WqmgLXAMJde7NtXE2y7T0LmfiLo1ofIiaJsPgc3JdTorGzYoPyTVg5XMROnX6\n7fs73enEB+VSsPmgGb1TXx+kKKzRyHMkvptyfLcJVmW2cbDdy97j0IlisA2MEtUk\nxA0UvwFvcxza6AKO6fyIzqtxvOHwWo4SEHuIWbFG/J1vc+ojgiPa8VV/7N1f6MB6\nK1lGjqhL/cQUJdEXjYnZzxsv5sqn13S7nFitgvrhDp6YhC2dB2D+5TbyP2V3SHfM\nmrWqlmmxcmAEHgBByb7K5k2n2PC7Rg==\n-----END CERTIFICATE REQUEST-----"
A string containing freeform text
external_host string
Public facing name for the broker.
A string containing freeform text
external_port string
Public facing port for the broker.
A string containing freeform text
ipaddress string
IP address of the broker.
"192.168.1.1"
A string containing freeform text
latitude string
Latitude for the broker.
A string containing freeform text
longitude string
Longitude for the broker.
A string containing freeform text
noit_name string
Optional name for broker.
A string containing freeform text
port string
Port for the broker.
"43191"
A string containing freeform text
prefer_reverse_connection boolean
Prefer a reverse connection.
Either true or false
rebuild boolean
Is a rebuild of checks to be performed on this broker?
Either true or false
tags array
Tags to associate with the broker.
An array
string (zero or more times)
Tag.
A string containing freeform text

Example

Fetching Details

Fetching the details for a broker is as easy as performing a GET on the broker cid (CN)

GET /provision_broker/a406-n291781.noit.circonus.net
{"_stratcons":[{"cn":"stratcon1.dev.circonus.net","host":"stratcon1.dev.circonus.net","port":"43191"}],"rebuild":false,"_cid":"a406-n291781","_status":"unprovisioned","ipaddress":"192.168.1.1","noit_name":"a406-n291781","csr":"<CSR Contents>","port":"43191","_cert":"<Certificate Contents>"}

The response tells us that:

Provisioning A new Broker Details

Provisioning broker is as easy as performing a POST on the broker cid (CN) with the relevant information

POST /provision_broker/
{"name":"a406-n29178","cn":"a406-n29178.noit.circonus.net","latitude":"42.35","tags":["tag:one","tag:two"],"ipaddress":"192.168.1.1","prefer_reverse_connection":"true","csr":"<CSR Contents>","port":"43191","longitude":"89.35"}

You can optionally pass latitude, longitude, prefer_reverse_connection and noit_name parameters.

Creating a new broker is not available on SaaS (Software As A Service) installs

Updating an existing Broker

PUT /provision_broker/a406-n29178.noit.circonus.net
{"name":"a406-n29178","rebuild":true,"tags":["tag:one","tag:two"],"latitude":"42.35","prefer_reverse_connection":"true","ipaddress":"192.168.1.1","csr":"<CSR Contents>","port":"43191","longitude":"89.35"}

rebuild parameter tells the system to mark this broker for reconsitute. The broker must be in active status to issue a rebuild.

Changing the IP address puts will notify systems that the IP has changed and clear any alerts associated with the old IP

Passing an empty list to the "tags" parameter will erase all tags on the broker. Passing a non-empty list will add tags to any tags already existing for the broker.