- Company Management
  - post addCompany
  - post deleteCompany
  - get findCompanyByNameLike
  - get getCompany
  - get listAllCompanies
  - get listChildCompanies
  - get listCompaniesByPerson
  - get listCountries
  - get listTimezones
  - put updateCompanyPut
  - post updateCompanyPost
- Label Management
  - post deleteLabelByInterfaceDeviceAndId
  - post deleteLabelByInterfaceDeviceAndLabel
  - post deleteLabelByMakoAndId
  - post deleteLabelByMakoAndLabel
  - post deleteLabelBySiteAndId
  - post deleteLabelsForSite
  - get getLabelByInterfaceDeviceAndLabel
  - get getLabelByMakoAndLabel
  - get getLabelBySiteAndLabel
  - get getLabelsByInterfaceDevice
  - get getLabelsByMako
  - get getLabelsBySite
  - post putLabelForInterfaceDevice
  - post putLabelForMako
  - post putLabelForSite
  - post putLabelsForInterfaceDevice
  - post putLabelsForMako
  - post putLabelsForSite
- Mako Management
  - post addLicence
  - post addMako
  - post addMakoFromTemplate
  - post applyCompanyLicensesToMako
  - post applyCompanyLicensesToMakoByMakoTemplate
  - post deleteMako
  - get findMakosByNameLike
  - get getAvailableEnterpriseTemplates
  - get getAvailableEnterpriseTemplatesWithoutInherited
  - get getInterfacesForMako
  - get getMako
  - get getMakoByMac
  - get getSubscribedEnterpriseTemplates
  - get listMakoModels
  - get listMakos
  - post subscribeEnterpriseTemplate
  - post unsubscribeEnterpriseTemplate
  - put updateMakoPut
  - post updateMakoPost
- Metadata Management
  - post deleteMetadataByCompanyAndId
  - post deleteMetadataByCompanyAndKey
  - post deleteMetadataByMakoAndId
  - post deleteMetadataByMakoAndKey
  - post deleteMetadataBySiteAndId
  - post deleteMetadataBySiteAndKey
  - get getMetadataByCompany
  - get getMetadataByCompanyAndKey
  - get getMetadataByMako
  - get getMetadataByMakoAndKey
  - get getMetadataBySite
  - get getMetadataBySiteAndKey
  - post putMetadataForCompany
  - post putMetadataForMako
  - post putMetadataForSite
  - post putMetadataListForCompany
  - post putMetadataListForMako
  - post putMetadataListForSite
- User Management
  - post addPerson
  - post deletePerson
  - get getPerson
  - get getPersonByUsername
  - get listPeople
- Site Management
  - post addSite
  - post assignMakoToSite
  - post deleteSite
  - get findSitesByNameLike
  - get getSite
  - get listSites
  - put updateSitePut
  - post updateSitePost
- VPN Cloud Management
  - get getAvailableVpnClouds
  - get getVpnCloudMemberships
  - get getVpnConfigByMako
  - post addMakoToVpnCloud
  - post removeMakoFromVpnCloud
  - put updateVpnConfig
- Diagnostics
  - get getIpsecStatusByMako
  - get getVpnCloudConnectionsDiagnostic
  - get getVpnCloudRoutingTableByMako
  - get rebobotByMako
  - get restartInterfaceByMako
  - get restartIpsecByMako
  - get restartSwitchPortByMako
  - get restartVpnCloudByMako
- Mako Status
  - get getMakoDeviceState
  - get getMakoDeviceStateByCompany
  - get getMakoDeviceStateByCompanyAndChildren
  - get getMakoDeviceStateBySite
  - get getMakoOnlineStatus
  - get getMakoOnlineStatusByCompany
  - get getMakoOnlineStatusByCompanyAndChildren
  - get getMakoOnlineStatusBySite
  - get getMakoStatus
  - get getMakoStatusByCompany
  - get getMakoStatusByCompanyAndChildren
  - get getMakoStatusBySite
- Authentication
  - post auth

API docs by Redocly

# Mako API (1.0)

Download OpenAPI specification:Download

License: Commercial License

# Company Management

Provides ability to manage Companies

## addCompany

Add a new company under a parent company

##### Request Body schema: application/json

name required | string Company name
required | object (AddressDto) Address
phoneNumber required | string Phone number
faxNumber | string Fax number
supportEmail required | string Support email
salesEmail required | string Sales email
accountsEmail required | string Accounts email
parentCompanyId required | string <uuid> Parent company ID
companyType required | string Enum: "CUSTOMER" "RESELLER" Company type

### Responses

/config/v1/addCompany

### Request samples

- Payload

Content type
application/json
`
{

- "parentCompanyId": "5f10c94d-af26-479f-a705-aa2a85d778ea",
- "companyType": "RESELLER",
- "name": "Example Company name",
- "address":
  {
  - "address1": "1355",
  - "address2": "N McLean Blvd",
  - "suburb": "Suburb",
  - "city": "Elgin",
  - "state": "Illinois",
  - "postOrZipCode": "60123",
  - "country": "US",
  - "timezone": "America/Chicago"
  },
- "phoneNumber": "+18008514691",
- "faxNumber": "+18008514691",
- "supportEmail": "support@supported.com",
- "salesEmail": "sales@supported.com",
- "accountsEmail": "accounts@supported.com"

}`

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "name": "Example Company name",
  - "address":
    {
    - "address1": "1355",
    - "address2": "N McLean Blvd",
    - "suburb": "Suburb",
    - "city": "Elgin",
    - "state": "Illinois",
    - "postOrZipCode": "60123",
    - "country": "US",
    - "timezone": "America/Chicago"
    },
  - "phoneNumber": "+18008514691",
  - "faxNumber": "+18008514691",
  - "supportEmail": "support@supported.com",
  - "salesEmail": "sales@supported.com",
  - "accountsEmail": "accounts@supported.com",
  - "id": "61000d29-3f6e-405a-a764-9666766a6d13"
  }

}`

## deleteCompany

Delete company

##### path Parameters

id required | string <uuid> Example: ac68adfc-6d80-4e43-947a-66070e244fee

### Responses

/config/v1/deleteCompany/{id}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK"

}`

## findCompanyByNameLike

Find company with a matching name

##### query Parameters

companyName required | string Example: companyName=test Company name to search for (partial match)

### Responses

/config/v1/findCompanyByNameLike

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "id": "ac68adfc-6d80-4e43-947a-66070e244fee",
    - "name": "Test Company"
    },
  - {
    - "id": "6aa6ddc6-23f1-411b-baf8-7a4d5256b9f4",
    - "name": "Other Company"
    }
  ]

}`

## getCompany

Get company by ID

##### path Parameters

id required | string <uuid> Example: ac68adfc-6d80-4e43-947a-66070e244fee Company ID

### Responses

/config/v1/getCompany/{id}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "name": "Example Company name",
  - "address":
    {
    - "address1": "1355",
    - "address2": "N McLean Blvd",
    - "city": "Elgin",
    - "state": "Illinois",
    - "postOrZipCode": "60123",
    - "country": "US",
    - "timezone": "America/Chicago"
    },
  - "phoneNumber": "+18008514691",
  - "faxNumber": "+18008514691",
  - "supportEmail": "support@supported.com",
  - "salesEmail": "sales@supported.com",
  - "accountsEmail": "accounts@supported.com",
  - "id": "61000d29-3f6e-405a-a764-9666766a6d13"
  }

}`

## listAllCompanies

List all companies

### Responses

/config/v1/listAllCompanies

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "name": "Example Company name",
    - "address":
      {
      - "address1": "1355",
      - "address2": "N McLean Blvd",
      - "city": "Elgin",
      - "state": "Illinois",
      - "postOrZipCode": "60123",
      - "country": "US",
      - "timezone": "America/Chicago"
      },
    - "phoneNumber": "+18008514691",
    - "supportEmail": "support@supported.com",
    - "salesEmail": "sales@supported.com",
    - "accountsEmail": "accounts@supported.com",
    - "id": "61000d29-3f6e-405a-a764-9666766a6d13"
    }
  ]

}`

## listChildCompanies

Get child companies by parent company id

##### path Parameters

companyId required | string <uuid> Example: ac68adfc-6d80-4e43-947a-66070e244fee

### Responses

/config/v1/listChildCompanies/{companyId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "id": "ac68adfc-6d80-4e43-947a-66070e244fee",
    - "name": "Test Company"
    }
  ]

}`

## listCompaniesByPerson

Get companies for person

##### path Parameters

personId required | string <uuid> Example: ac68adfc-6d80-4e43-947a-66070e244fee

### Responses

/config/v1/listCompaniesByPerson/{personId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "id": "ac68adfc-6d80-4e43-947a-66070e244fee",
    - "name": "Test Company"
    }
  ]

}`

## listCountries

List countries

### Responses

/config/v1/listCountries

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "abbreviate": "AL",
    - "name": "Albania",
    - "currency": "USD"
    },
  - {
    - "abbreviate": "AS",
    - "name": "American Samoa",
    - "currency": "USD"
    }
  ]

}`

## listTimezones

List timezones by country

##### path Parameters

abbr required | string Example: PL

### Responses

/config/v1/listTimezones/{abbr}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "zoneId": "America/Anchorage",
    - "name": "Alaska Standard Time",
    - "region": "United States"
    },
  - {
    - "zoneId": "America/Chicago",
    - "name": "Central Time",
    - "region": "USA"
    }
  ]

}`

## updateCompanyPut

Update Company details

##### path Parameters

companyId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

##### Request Body schema: application/json

status | string Enum: "OK" "FAILED"
| object (CompanyDto)
| object (ErrorDto)

### Responses

/config/v1/updateCompany/{companyId}

### Request samples

- Payload

Content type
application/json
`
{

- "name": "Example Company name",
- "address":
  {
  - "address1": "1355",
  - "address2": "N McLean Blvd",
  - "suburb": "Suburb",
  - "city": "Elgin",
  - "state": "Illinois",
  - "postOrZipCode": "IL 60123",
  - "country": "US",
  - "timezone": "America/Chicago"
  },
- "phoneNumber": "+18008514691",
- "faxNumber": "+18008514691",
- "supportEmail": "support@makonetworks.com",
- "salesEmail": "sales@makonetworks.com",
- "accountsEmail": "accounts@makonetworks.com"

}`

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "name": "Example Company name",
  - "address":
    {
    - "address1": "1355",
    - "address2": "N McLean Blvd",
    - "city": "Elgin",
    - "state": "Illinois",
    - "postOrZipCode": "60123",
    - "country": "US",
    - "timezone": "America/Chicago"
    },
  - "phoneNumber": "+18008514691",
  - "faxNumber": "+18008514691",
  - "supportEmail": "support@supported.com",
  - "salesEmail": "sales@supported.com",
  - "accountsEmail": "accounts@supported.com",
  - "id": "61000d29-3f6e-405a-a764-9666766a6d13"
  }

}`

## updateCompanyPost

Update Company details

##### path Parameters

companyId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

##### Request Body schema: application/json

status | string Enum: "OK" "FAILED"
| object (CompanyDto)
| object (ErrorDto)

### Responses

/config/v1/updateCompany/{companyId}

### Request samples

- Payload

Content type
application/json
`
{

- "name": "Example Company name",
- "address":
  {
  - "address1": "1355",
  - "address2": "N McLean Blvd",
  - "suburb": "Suburb",
  - "city": "Elgin",
  - "state": "Illinois",
  - "postOrZipCode": "IL 60123",
  - "country": "US",
  - "timezone": "America/Chicago"
  },
- "phoneNumber": "+18008514691",
- "faxNumber": "+18008514691",
- "supportEmail": "support@makonetworks.com",
- "salesEmail": "sales@makonetworks.com",
- "accountsEmail": "accounts@makonetworks.com"

}`

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "name": "Example Company name",
  - "address":
    {
    - "address1": "1355",
    - "address2": "N McLean Blvd",
    - "city": "Elgin",
    - "state": "Illinois",
    - "postOrZipCode": "60123",
    - "country": "US",
    - "timezone": "America/Chicago"
    },
  - "phoneNumber": "+18008514691",
  - "faxNumber": "+18008514691",
  - "supportEmail": "support@supported.com",
  - "salesEmail": "sales@supported.com",
  - "accountsEmail": "accounts@supported.com",
  - "id": "61000d29-3f6e-405a-a764-9666766a6d13"
  }

}`

# Label Management

Provides ability to manage labels on all types of entities

## deleteLabelByInterfaceDeviceAndId

Delete Label by Id for Ethernet Interface.

##### path Parameters

interfaceDeviceId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13
labelId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/config/v1/deleteLabelByInterfaceDeviceAndId/{interfaceDeviceId}/{labelId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK"

}`

## deleteLabelByInterfaceDeviceAndLabel

Delete Label by Interface Device Id and Label for InterfaceDevice.

##### path Parameters

interfaceDeviceId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13
label required | string Example: someLabel

### Responses

/config/v1/deleteLabelByInterfaceDeviceAndLabel/{interfaceDeviceId}/{label}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK"

}`

## deleteLabelByMakoAndId

Delete Label by Id for Mako Device.

##### path Parameters

makoId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13
labelId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/config/v1/deleteLabelByMakoAndId/{makoId}/{labelId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK"

}`

## deleteLabelByMakoAndLabel

Delete Label by Label for Mako Device.

##### path Parameters

makoId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13
label required | string Example: someLabel

### Responses

/config/v1/deleteLabelByMakoAndLabel/{makoId}/{label}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK"

}`

## deleteLabelBySiteAndId

Delete Label by Id for Site.

##### path Parameters

siteId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13
labelId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/config/v1/deleteLabelBySiteAndId/{siteId}/{labelId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK"

}`

## deleteLabelsForSite

Delete Label by Label for Site.

##### path Parameters

siteId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13
label required | string Example: someLabel

### Responses

/config/v1/deleteLabelBySiteAndLabel/{siteId}/{label}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK"

}`

## getLabelByInterfaceDeviceAndLabel

Find Ethernet Interface Label by Ethernet Interface UUID and label.

##### path Parameters

interfaceDeviceId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13
label required | string Example: someLabel

### Responses

/config/v1/getLabelByInterfaceDeviceAndLabel/{interfaceDeviceId}/{label}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "id": "3a62cac6-d5b8-43fe-8cb4-c0747cc0c289",
  - "label": "value1"
  }

}`

## getLabelByMakoAndLabel

Find Mako Device Label by mako UUID and label.

##### path Parameters

makoId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13
label required | string Example: someLabel

### Responses

/config/v1/getLabelByMakoAndLabel/{makoId}/{label}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "id": "3a62cac6-d5b8-43fe-8cb4-c0747cc0c289",
  - "label": "value1"
  }

}`

## getLabelBySiteAndLabel

Find Site Label by Site UUID and label.

##### path Parameters

siteId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13
label required | string Example: someLabel

### Responses

/config/v1/getLabelBySiteAndLabel/{siteId}/{label}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "id": "3a62cac6-d5b8-43fe-8cb4-c0747cc0c289",
  - "label": "value1"
  }

}`

## getLabelsByInterfaceDevice

Find Ethernet Interface Labels by Ethernet Interface UUID.

##### path Parameters

interfaceDeviceId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/config/v1/getLabelsByInterfaceDevice/{interfaceDeviceId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "id": "b6664af0-fc44-40b6-9d12-38e624903628",
    - "label": "value3"
    },
  - {
    - "id": "d9e1da23-bc40-4669-9d09-b7dfcc3d7498",
    - "label": "value4"
    },
  - {
    - "id": "3a62cac6-d5b8-43fe-8cb4-c0747cc0c289",
    - "label": "value1"
    },
  - {
    - "id": "1a859379-1048-430c-a474-f777b39cddfe",
    - "label": "value2"
    }
  ]

}`

## getLabelsByMako

Find Mako Device Labels by Mako Device UUID.

##### path Parameters

makoId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/config/v1/getLabelsByMako/{makoId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "id": "b6664af0-fc44-40b6-9d12-38e624903628",
    - "label": "value3"
    },
  - {
    - "id": "d9e1da23-bc40-4669-9d09-b7dfcc3d7498",
    - "label": "value4"
    },
  - {
    - "id": "3a62cac6-d5b8-43fe-8cb4-c0747cc0c289",
    - "label": "value1"
    },
  - {
    - "id": "1a859379-1048-430c-a474-f777b39cddfe",
    - "label": "value2"
    }
  ]

}`

## getLabelsBySite

Find Site Labels by Site UUID.

##### path Parameters

siteId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/config/v1/getLabelsBySite/{siteId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "id": "b6664af0-fc44-40b6-9d12-38e624903628",
    - "label": "value3"
    },
  - {
    - "id": "d9e1da23-bc40-4669-9d09-b7dfcc3d7498",
    - "label": "value4"
    },
  - {
    - "id": "3a62cac6-d5b8-43fe-8cb4-c0747cc0c289",
    - "label": "value1"
    },
  - {
    - "id": "1a859379-1048-430c-a474-f777b39cddfe",
    - "label": "value2"
    }
  ]

}`

## putLabelForInterfaceDevice

Put Label for InterfaceDevice.

##### path Parameters

interfaceDeviceId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

##### Request Body schema: application/json

id | string <uuid>
label | string

### Responses

/config/v1/putLabelForInterfaceDevice/{interfaceDeviceId}

### Request samples

- Payload

Content type
application/json
`
{

- "label": "someVal"

}`

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "id": "5683018e-4274-46b1-8a1b-4bb4d3fd3760",
  - "label": "someVal"
  }

}`

## putLabelForMako

Put Label for Mako Device.

##### path Parameters

makoId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

##### Request Body schema: application/json

id | string <uuid>
label | string

### Responses

/config/v1/putLabelForMako/{makoId}

### Request samples

- Payload

Content type
application/json
`
{

- "label": "someVal"

}`

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "id": "5683018e-4274-46b1-8a1b-4bb4d3fd3760",
  - "label": "someVal"
  }

}`

## putLabelForSite

Put Label for Site.

##### path Parameters

siteId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

##### Request Body schema: application/json

id | string <uuid>
label | string

### Responses

/config/v1/putLabelForSite/{siteId}

### Request samples

- Payload

Content type
application/json
`
{

- "label": "someVal"

}`

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "id": "5683018e-4274-46b1-8a1b-4bb4d3fd3760",
  - "label": "someVal"
  }

}`

## putLabelsForInterfaceDevice

Put Labels for Ethernet Interface.

##### path Parameters

interfaceDeviceId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

##### Request Body schema: application/json

Array

id | string <uuid>
label | string

### Responses

/config/v1/putLabelsForInterfaceDevice/{interfaceDeviceId}

### Request samples

- Payload

Content type
application/json
`
[

- {
  - "label": "someVal"
  },
- {
  - "label": "someVal2"
  }

]`

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "id": "5683018e-4274-46b1-8a1b-4bb4d3fd3760",
    - "label": "someVal"
    },
  - {
    - "id": "5683018e-4274-46b1-8a1b-4bb4d3fd3760",
    - "label": "someVa2l"
    }
  ]

}`

## putLabelsForMako

Put Labels for Mako Device.

##### path Parameters

makoId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

##### Request Body schema: application/json

Array

id | string <uuid>
label | string

### Responses

/config/v1/putLabelsForMako/{makoId}

### Request samples

- Payload

Content type
application/json
`
[

- {
  - "label": "someVal"
  },
- {
  - "label": "someVal2"
  }

]`

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "id": "5683018e-4274-46b1-8a1b-4bb4d3fd3760",
    - "label": "someVal"
    },
  - {
    - "id": "5683018e-4274-46b1-8a1b-4bb4d3fd3760",
    - "label": "someVa2l"
    }
  ]

}`

## putLabelsForSite

Put Labels for Site.

##### path Parameters

siteId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

##### Request Body schema: application/json

Array

id | string <uuid>
label | string

### Responses

/config/v1/putLabelsForSite/{siteId}

### Request samples

- Payload

Content type
application/json
`
[

- {
  - "label": "someVal"
  },
- {
  - "label": "someVal2"
  }

]`

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "id": "5683018e-4274-46b1-8a1b-4bb4d3fd3760",
    - "label": "someVal"
    },
  - {
    - "id": "5683018e-4274-46b1-8a1b-4bb4d3fd3760",
    - "label": "someVa2l"
    }
  ]

}`

# Mako Management

Provides ability to manage Mako devices

## addLicence

Add a licence code

##### Request Body schema: application/json

makoId required | string <uuid> Mako ID to add licence for
licenceCode required | string Licence code

### Responses

/config/v1/addLicence

### Request samples

- Payload

Content type
application/json
`
{

- "makoId": "7741327b-a91d-4c7c-a80b-2b9482c93826",
- "licenceCode": "string"

}`

### Response samples

- default

Content type
application/json
`
{

- "status": "OK"

}`

## addMako

Add Mako

##### Request Body schema: application/json

companyId required | string <uuid> Mako parent company ID
name required | string Mako name (department name)
required | object (AddressDto) Address
phoneNumber required | string Phone number
faxNumber | string Fax number
makoModel | string Mako hardware model, e.g. "Mako-6500M"
identification | string Mako identification/MAC address
siteId | string <uuid> Site ID
customSiteId | string Custom site ID (reference) to assign to a newly created site for the Mako (if siteId is not provided)
customSiteName | string Custom site name to assign to a newly created site for the Mako (if siteId is not provided)

### Responses

/config/v1/addMako

### Request samples

- Payload

Content type
application/json
Example
Create a Mako using hardware model and put it into an existing site

Create a Mako using hardware model and put it into an existing site

`
{

- "companyId": "06d0dee3-ee0a-4cac-af90-09c1a89d0bd4",
- "siteId": "a8e2c248-36e4-430d-99cb-8e8b4550b668",
- "name": "Mako Test",
- "address":
  {
  - "address1": "1355",
  - "address2": "N McLean Blvd",
  - "suburb": "Suburb",
  - "city": "Elgin",
  - "state": "Illinois",
  - "postOrZipCode": " IL 60123",
  - "country": "US",
  - "timezone": "America/Chicago",
  - "latitude": 42.06,
  - "longitude": -88.31
  },
- "phoneNumber": "+18008514691",
- "faxNumber": "+18008514691",
- "makoModel": "Mako 6500-M"

}`

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "name": "Example Router",
  - "id": "4860d36b-cff0-4d08-9e3e-1c189341c88b",
  - "cpeId": "4860d36b-cff0-4d08-9e3e-1c189341c88b",
  - "companyId": "ec0ef4e0-72ea-473d-9078-cfd44443e86d",
  - "companyName": "Example Company",
  - "identification": "30:1A:01:02:03:04",
  - "siteId": "c6345e2e-aadc-461a-854f-06d28c43dfd0",
  - "siteName": "London",
  - "siteReference": "example-lab-20",
  - "makoType": "ROUTER",
  - "hardware": "Mako 6600-M-W1-LTE"
  }

}`

## addMakoFromTemplate

Add Mako from template (copy Mako)

##### Request Body schema: application/json

name | string Mako name (department name)
id | string <uuid> Mako unique identifier
cpeId | string <uuid> Mako unique identifier - same as id
companyId | string <uuid> Mako parent company ID
companyName | string Mako parent company name
identification | string Mako identification/MAC address
siteId | string <uuid> Site ID
siteName | string Site name
siteReference | string Site Reference
makoType | string Mako type
hardware | string Mako hardware
firmware | string Mako firmware

### Responses

/config/v1/addMakoFromTemplate

### Request samples

- Payload

Content type
application/json
Example
Add Mako from template and put it into an existing site

Add Mako from template and put it into an existing site

`
{

- "companyId": "06d0dee3-ee0a-4cac-af90-09c1a89d0bd4",
- "siteId": "9c2be5a2-8c7a-4289-bf58-c12da8edc447",
- "name": "Example Mako",
- "address":
  {
  - "address1": "Some Address",
  - "country": "PL",
  - "timezone": "Europe/Warsaw"
  },
- "phoneNumber": "1240912491724912412",
- "templateId": "2a8e4a67-d97e-42f4-b757-071cfdc4f5e7",
- "copyDhcpLeases": false,
- "copyInternetPasswords": false,
- "snatMapping":
  [
  - {
    - "cloud": "My Test Cloud",
    - "mapping":
      {
      - "LAN 1": "10.1.1.0/27"
      }
    },
  - {
    - "cloud": "My Other Cloud",
    - "mapping":
      {
      - "LAN 1": "1.2.0.0/255.255.0.0",
      - "LAN 2": "192.168.99.0/27"
      }
    }
  ]

}`

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "name": "Example Router",
  - "id": "4860d36b-cff0-4d08-9e3e-1c189341c88b",
  - "cpeId": "4860d36b-cff0-4d08-9e3e-1c189341c88b",
  - "companyId": "ec0ef4e0-72ea-473d-9078-cfd44443e86d",
  - "companyName": "Example Company",
  - "identification": "30:1A:01:02:03:04",
  - "siteId": "c6345e2e-aadc-461a-854f-06d28c43dfd0",
  - "siteName": "London",
  - "siteReference": "example-lab-20",
  - "makoType": "ROUTER",
  - "hardware": "Mako 6600-M-W1-LTE"
  }

}`

## applyCompanyLicensesToMako

Apply licenses from company license pool to mako

##### path Parameters

Mako Id required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/config/v1/applyCompanyLicensesToMako/{makoId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK"

}`

## applyCompanyLicensesToMakoByMakoTemplate

Apply licenses from company license pool to mako for exactly the same license groups as active licenses in the mako template

##### path Parameters

Mako Id required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13
Mako template Id required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/config/v1/applyCompanyLicensesToMakoByMakoTemplate/{makoId}/{makoTemplateId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK"

}`

## deleteMako

Delete mako

##### path Parameters

makoId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/config/v1/deleteMako/{makoId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK"

}`

## findMakosByNameLike

Find Mako by name (partial match). Optionally provide a companyId to find Makos only in a specific company

##### query Parameters

companyId | string <uuid> Example: companyId=06d0dee3-ee0a-4cac-af90-09c1a89d0bd4
name required | string Example: name=office

### Responses

/config/v1/findMakosByNameLike

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "name": "Example Switch",
    - "id": "d53772cd-bb01-44a1-b218-8db3c5685085",
    - "cpeId": "d53772cd-bb01-44a1-b218-8db3c5685085",
    - "companyId": "ec0ef4e0-72ea-473d-9078-cfd44443e86d",
    - "companyName": "Example Company",
    - "identification": "4C:13:01:02:03:04",
    - "siteId": "c6345e2e-aadc-461a-854f-06d28c43dfd0",
    - "siteName": "London",
    - "siteReference": "example-lab-20",
    - "makoType": "MANAGED_SWITCH",
    - "hardware": "Mako 1008-SW/P",
    - "firmware": "FSW1255"
    },
  - {
    - "name": "Example Router",
    - "id": "4860d36b-cff0-4d08-9e3e-1c189341c88b",
    - "cpeId": "4860d36b-cff0-4d08-9e3e-1c189341c88b",
    - "companyId": "ec0ef4e0-72ea-473d-9078-cfd44443e86d",
    - "companyName": "Example Company",
    - "identification": "30:1A:01:02:03:04",
    - "siteId": "c6345e2e-aadc-461a-854f-06d28c43dfd0",
    - "siteName": "London",
    - "siteReference": "example-lab-20",
    - "makoType": "ROUTER",
    - "hardware": "Mako 6600-M-W1-LTE",
    - "firmware": "F6583"
    },
  - {
    - "name": "Example AP",
    - "id": "2981a0fc-98ae-430f-887e-e25f17e419fb",
    - "cpeId": "2981a0fc-98ae-430f-887e-e25f17e419fb",
    - "companyId": "ec0ef4e0-72ea-473d-9078-cfd44443e86d",
    - "companyName": "Example Company",
    - "identification": "30:1A:04:05:06:07",
    - "siteId": "c6345e2e-aadc-461a-854f-06d28c43dfd0",
    - "siteName": "London",
    - "siteReference": "example-lab-20",
    - "makoType": "ACCESS_POINT",
    - "hardware": "Mako 4600",
    - "firmware": "F6583"
    }
  ]

}`

## getAvailableEnterpriseTemplates

Get a list of Enterprise Templates (including inherited) the Mako can be assigned to

##### path Parameters

Mako Id required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/config/v1/getAvailableEnterpriseTemplates/{makoId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    - "name": "Example Template",
    - "pciTemplate": true,
    - "companyId": "06d0dee3-ee0a-4cac-af90-09c1a89d0bd4",
    - "companyName": "Example Company"
    }
  ]

}`

## getAvailableEnterpriseTemplatesWithoutInherited

Get a list of Enterprise Templates (not including inherited) the Mako can be assigned to

##### path Parameters

Mako Id required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/config/v1/getAvailableNotInheritedEnterpriseTemplates/{makoId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    - "name": "Example Template",
    - "pciTemplate": true,
    - "companyId": "06d0dee3-ee0a-4cac-af90-09c1a89d0bd4",
    - "companyName": "Example Company"
    }
  ]

}`

## getInterfacesForMako

Get a list of Interfaces for Mako.

##### path Parameters

Mako Id required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/config/v1/getInterfacesForMako/{makoId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "id": "837b77df-0292-48a9-945a-67a80425d0cd",
    - "normalizedName": "cell1",
    - "description": "External",
    - "external": true,
    - "subnet": "0.0.0.0/32",
    - "priority": 0
    },
  - {
    - "id": "3c6e8b21-b822-4b7a-9327-1b73e7c3ff67",
    - "normalizedName": "cell2",
    - "description": "External",
    - "external": true,
    - "subnet": "0.0.0.0/32",
    - "priority": 0
    },
  - {
    - "id": "1d492797-d8e6-458d-8f7a-b9325e5b2c41",
    - "normalizedName": "lan1",
    - "description": "LAN 1",
    - "external": false,
    - "subnet": "10.40.1.0/24"
    },
  - {
    - "id": "bbc1bc45-8240-4048-a510-1b5e09263a60",
    - "normalizedName": "lan2",
    - "description": "LAN 2",
    - "external": false,
    - "subnet": "10.40.2.0/24"
    },
  - {
    - "id": "afff9967-d56c-4a85-9eaa-085714321ca9",
    - "normalizedName": "lan3",
    - "description": "LAN 3",
    - "external": false,
    - "subnet": "192.168.25.0/24"
    },
  - {
    - "id": "e0129591-8a69-497d-aae7-5be5daecd3f2",
    - "normalizedName": "lan4",
    - "description": "LAN 4",
    - "external": false,
    - "subnet": "192.168.4.0/24"
    },
  - {
    - "id": "a770a7e1-10b4-4917-a61f-012b227f6b9f",
    - "normalizedName": "vlan8",
    - "description": "VoIP",
    - "external": false,
    - "vlanId": 8,
    - "subnet": "10.33.8.0/24"
    },
  - {
    - "id": "05497368-b403-4399-868b-3f7e9cdc1ac3",
    - "normalizedName": "wan1",
    - "description": "External",
    - "external": true,
    - "subnet": "140.228.68.0/24",
    - "priority": 1
    },
  - {
    - "id": "e6532a46-9460-46f0-8fb4-71ad607d3ca9",
    - "normalizedName": "wlan0",
    - "description": "Office Wi-Fi",
    - "external": false,
    - "ssid": "Office Wi-Fi",
    - "subnet": "10.45.54.0/24"
    },
  - {
    - "id": "7b880316-9ba3-4807-9ab0-fef0de9d4db6",
    - "normalizedName": "wlan0_1",
    - "description": "Guest Wi-Fi",
    - "external": false,
    - "ssid": "Guest Wi-Fi"
    }
  ]

}`

## getMako

Get mako by ID

##### path Parameters

id required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/config/v1/getMako/{id}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "name": "Example Router",
  - "id": "4860d36b-cff0-4d08-9e3e-1c189341c88b",
  - "cpeId": "4860d36b-cff0-4d08-9e3e-1c189341c88b",
  - "companyId": "ec0ef4e0-72ea-473d-9078-cfd44443e86d",
  - "companyName": "Example Company",
  - "identification": "30:1A:01:02:03:04",
  - "siteId": "c6345e2e-aadc-461a-854f-06d28c43dfd0",
  - "siteName": "London",
  - "siteReference": "example-lab-20",
  - "makoType": "ROUTER",
  - "hardware": "Mako 6600-M-W1-LTE",
  - "firmware": "F6583"
  }

}`

## getMakoByMac

Get Mako by MAC address

##### path Parameters

macAddress required | string Example: 10:30:22:33:11:44

### Responses

/config/v1/getMakoByMac/{macAddress}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "name": "Example Router",
  - "id": "4860d36b-cff0-4d08-9e3e-1c189341c88b",
  - "cpeId": "4860d36b-cff0-4d08-9e3e-1c189341c88b",
  - "companyId": "ec0ef4e0-72ea-473d-9078-cfd44443e86d",
  - "companyName": "Example Company",
  - "identification": "30:1A:01:02:03:04",
  - "siteId": "c6345e2e-aadc-461a-854f-06d28c43dfd0",
  - "siteName": "London",
  - "siteReference": "example-lab-20",
  - "makoType": "ROUTER",
  - "hardware": "Mako 6600-M-W1-LTE",
  - "firmware": "F6583"
  }

}`

## getSubscribedEnterpriseTemplates

Get a list of Enterprise Templates the Mako is assigned to

##### path Parameters

Mako Id required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/config/v1/getSubscribedEnterpriseTemplates/{makoId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    - "name": "Example Template",
    - "pciTemplate": true,
    - "companyId": "06d0dee3-ee0a-4cac-af90-09c1a89d0bd4",
    - "companyName": "Example Company"
    }
  ]

}`

## listMakoModels

List Mako Models

### Responses

/config/v1/listMakoModels

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "name": "Mako 6600-M",
    - "types":
      [
      - "ROUTER"
      ]
    },
  - {
    - "name": "Mako 4600",
    - "types":
      [
      - "ACCESS_POINT",
      - "ROUTER"
      ]
    }
  ]

}`

## listMakos

List Makos for company

##### path Parameters

companyId required | string <uuid>

### Responses

/config/v1/listMakos/{companyId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "name": "Example Switch",
    - "id": "d53772cd-bb01-44a1-b218-8db3c5685085",
    - "cpeId": "d53772cd-bb01-44a1-b218-8db3c5685085",
    - "companyId": "ec0ef4e0-72ea-473d-9078-cfd44443e86d",
    - "companyName": "Example Company",
    - "identification": "4C:13:01:02:03:04",
    - "siteId": "c6345e2e-aadc-461a-854f-06d28c43dfd0",
    - "siteName": "London",
    - "siteReference": "example-lab-20",
    - "makoType": "MANAGED_SWITCH",
    - "hardware": "Mako 1008-SW/P",
    - "firmware": "FSW1255"
    },
  - {
    - "name": "Example Router",
    - "id": "4860d36b-cff0-4d08-9e3e-1c189341c88b",
    - "cpeId": "4860d36b-cff0-4d08-9e3e-1c189341c88b",
    - "companyId": "ec0ef4e0-72ea-473d-9078-cfd44443e86d",
    - "companyName": "Example Company",
    - "identification": "30:1A:01:02:03:04",
    - "siteId": "c6345e2e-aadc-461a-854f-06d28c43dfd0",
    - "siteName": "London",
    - "siteReference": "example-lab-20",
    - "makoType": "ROUTER",
    - "hardware": "Mako 6600-M-W1-LTE",
    - "firmware": "F6583"
    },
  - {
    - "name": "Example AP",
    - "id": "2981a0fc-98ae-430f-887e-e25f17e419fb",
    - "cpeId": "2981a0fc-98ae-430f-887e-e25f17e419fb",
    - "companyId": "ec0ef4e0-72ea-473d-9078-cfd44443e86d",
    - "companyName": "Example Company",
    - "identification": "30:1A:04:05:06:07",
    - "siteId": "c6345e2e-aadc-461a-854f-06d28c43dfd0",
    - "siteName": "London",
    - "siteReference": "example-lab-20",
    - "makoType": "ACCESS_POINT",
    - "hardware": "Mako 4600",
    - "firmware": "F6583"
    }
  ]

}`

## subscribeEnterpriseTemplate

Subscribe Mako to Enterprise Template

##### Request Body schema: application/json

enterpriseTemplateId required | string <uuid> Enterprise Template Id
makoId required | string <uuid> Mako Id

### Responses

/config/v1/subscribeEnterpriseTemplate

### Request samples

- Payload

Content type
application/json
`
{

- "makoId": "06d0dee3-ee0a-4cac-af90-09c1a89d0bd4",
- "enterpriseTemplateId": "61000d29-3f6e-405a-a764-9666766a6d13"

}`

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "id": "61000d29-3f6e-405a-a764-9666766a6d13",
    - "name": "Example Template",
    - "pciTemplate": true,
    - "companyId": "06d0dee3-ee0a-4cac-af90-09c1a89d0bd4",
    - "companyName": "Example Company"
    }
  ]

}`

## unsubscribeEnterpriseTemplate

Unsubscribe Mako from Enterprise Template

##### Request Body schema: application/json

enterpriseTemplateId required | string <uuid> Enterprise Template Id
makoId required | string <uuid> Mako Id

### Responses

/config/v1/unsubscribeEnterpriseTemplate

### Request samples

- Payload

Content type
application/json
`
{

- "makoId": "06d0dee3-ee0a-4cac-af90-09c1a89d0bd4",
- "enterpriseTemplateId": "61000d29-3f6e-405a-a764-9666766a6d13"

}`

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "id": "61000d29-3f6e-405a-a764-9666766a6d13",
    - "name": "Example Template",
    - "pciTemplate": true,
    - "companyId": "06d0dee3-ee0a-4cac-af90-09c1a89d0bd4",
    - "companyName": "Example Company"
    }
  ]

}`

## updateMakoPut

Update Mako details

##### path Parameters

makoId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

##### Request Body schema: application/json

name | string Mako name (department name)

### Responses

/config/v1/updateMako/{makoId}

### Request samples

- Payload

Content type
application/json
`
{

- "name": "Example Mako"

}`

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "id": "61000d29-3f6e-405a-a764-9666766a6d13",
  - "name": "Example Mako",
  - "companyId": "06d0dee3-ee0a-4cac-af90-09c1a89d0bd4",
  - "companyName": "Example Company",
  - "siteId": "06d0dee3-ee0a-4cac-af90-09c1a89d0bd4",
  - "siteName": "Example Site",
  - "identification": "10:20:30:44:11:22"
  }

}`

## updateMakoPost

Update Mako details

##### path Parameters

makoId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

##### Request Body schema: application/json

name | string Mako name (department name)

### Responses

/config/v1/updateMako/{makoId}

### Request samples

- Payload

Content type
application/json
`
{

- "name": "Example Mako"

}`

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "id": "61000d29-3f6e-405a-a764-9666766a6d13",
  - "name": "Example Mako",
  - "companyId": "06d0dee3-ee0a-4cac-af90-09c1a89d0bd4",
  - "companyName": "Example Company",
  - "siteId": "06d0dee3-ee0a-4cac-af90-09c1a89d0bd4",
  - "siteName": "Example Site",
  - "identification": "10:20:30:44:11:22"
  }

}`

# Metadata Management

Provides ability to manage metadata on all types of entities

## deleteMetadataByCompanyAndId

Delete Metadata by metadata Id.

##### path Parameters

companyId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13
metadataId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/config/v1/deleteMetadataByCompanyAndId/{companyId}/{metadataId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK"

}`

## deleteMetadataByCompanyAndKey

Delete Metadata by Company Id and Key.

##### path Parameters

companyId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13
key required | string Example: someKey

### Responses

/config/v1/deleteMetadataByCompanyAndKey/{companyId}/{key}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK"

}`

## deleteMetadataByMakoAndId

Delete Metadata by Metadata Id.

##### path Parameters

makoId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13
metadataId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/config/v1/deleteMetadataByMakoAndId/{makoId}/{metadataId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK"

}`

## deleteMetadataByMakoAndKey

Delete Metadata by Mako Id and Key.

##### path Parameters

makoId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13
key required | string Example: someKey

### Responses

/config/v1/deleteMetadataByMakoAndKey/{makoId}/{key}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK"

}`

## deleteMetadataBySiteAndId

Delete Metadata by Metadata Id.

##### path Parameters

siteId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13
metadataId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/config/v1/deleteMetadataBySiteAndId/{siteId}/{metadataId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK"

}`

## deleteMetadataBySiteAndKey

Delete Metadata by Key for site.

##### path Parameters

siteId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13
key required | string Example: someKey

### Responses

/config/v1/deleteMetadataBySiteAndKey/{siteId}/{key}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK"

}`

## getMetadataByCompany

Find Company Metadata by Company UUID.

##### path Parameters

companyId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/config/v1/getMetadataByCompany/{companyId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "id": "b6664af0-fc44-40b6-9d12-38e624903628",
    - "key": "mkn3",
    - "value": "value3"
    },
  - {
    - "id": "d9e1da23-bc40-4669-9d09-b7dfcc3d7498",
    - "key": "mkn4",
    - "value": "value4"
    },
  - {
    - "id": "3a62cac6-d5b8-43fe-8cb4-c0747cc0c289",
    - "key": "mkn1",
    - "value": "value1"
    },
  - {
    - "id": "1a859379-1048-430c-a474-f777b39cddfe",
    - "key": "mkn2",
    - "value": "value2"
    }
  ]

}`

## getMetadataByCompanyAndKey

Find Company Metadata by Company UUID and key.

##### path Parameters

companyId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13
key required | string Example: someKey

### Responses

/config/v1/getMetadataByCompanyAndKey/{companyId}/{key}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "id": "3a62cac6-d5b8-43fe-8cb4-c0747cc0c289",
  - "key": "mkn1",
  - "value": "value1"
  }

}`

## getMetadataByMako

Find Mako Device Metadata by Mako Device UUID.

##### path Parameters

makoId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/config/v1/getMetadataByMako/{makoId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "id": "b6664af0-fc44-40b6-9d12-38e624903628",
    - "key": "mkn3",
    - "value": "value3"
    },
  - {
    - "id": "d9e1da23-bc40-4669-9d09-b7dfcc3d7498",
    - "key": "mkn4",
    - "value": "value4"
    },
  - {
    - "id": "3a62cac6-d5b8-43fe-8cb4-c0747cc0c289",
    - "key": "mkn1",
    - "value": "value1"
    },
  - {
    - "id": "1a859379-1048-430c-a474-f777b39cddfe",
    - "key": "mkn2",
    - "value": "value2"
    }
  ]

}`

## getMetadataByMakoAndKey

Find Mako Device Metadata by mako UUID and key.

##### path Parameters

makoId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13
key required | string Example: someKey

### Responses

/config/v1/getMetadataByMakoAndKey/{makoId}/{key}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "id": "3a62cac6-d5b8-43fe-8cb4-c0747cc0c289",
  - "key": "mkn1",
  - "value": "value1"
  }

}`

## getMetadataBySite

Find Site Metadata by site UUID.

##### path Parameters

siteId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/config/v1/getMetadataBySite/{siteId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "id": "b6664af0-fc44-40b6-9d12-38e624903628",
    - "key": "mkn3",
    - "value": "value3"
    },
  - {
    - "id": "d9e1da23-bc40-4669-9d09-b7dfcc3d7498",
    - "key": "mkn4",
    - "value": "value4"
    },
  - {
    - "id": "3a62cac6-d5b8-43fe-8cb4-c0747cc0c289",
    - "key": "mkn1",
    - "value": "value1"
    },
  - {
    - "id": "1a859379-1048-430c-a474-f777b39cddfe",
    - "key": "mkn2",
    - "value": "value2"
    }
  ]

}`

## getMetadataBySiteAndKey

Find Site Metadata by site UUID and key.

##### path Parameters

siteId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13
key required | string Example: someKey

### Responses

/config/v1/getMetadataBySiteAndKey/{siteId}/{key}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "id": "3a62cac6-d5b8-43fe-8cb4-c0747cc0c289",
  - "key": "mkn1",
  - "value": "value1"
  }

}`

## putMetadataForCompany

Put Metadata for Company.

##### path Parameters

companyId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

##### Request Body schema: application/json

id | string <uuid>
key | string
value | string

### Responses

/config/v1/putMetadataForCompany/{companyId}

### Request samples

- Payload

Content type
application/json
`
{

- "key": "mkn5",
- "value": "someVal"

}`

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "id": "5683018e-4274-46b1-8a1b-4bb4d3fd3760",
  - "key": "mkn5",
  - "value": "someVal"
  }

}`

## putMetadataForMako

Put Metadata for Mako Device.

##### path Parameters

makoId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

##### Request Body schema: application/json

id | string <uuid>
key | string
value | string

### Responses

/config/v1/putMetadataForMako/{makoId}

### Request samples

- Payload

Content type
application/json
`
{

- "key": "mkn5",
- "value": "someVal"

}`

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "id": "5683018e-4274-46b1-8a1b-4bb4d3fd3760",
  - "key": "mkn5",
  - "value": "someVal"
  }

}`

## putMetadataForSite

Put Metadata for site.

##### path Parameters

siteId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

##### Request Body schema: application/json

id | string <uuid>
key | string
value | string

### Responses

/config/v1/putMetadataForSite/{siteId}

### Request samples

- Payload

Content type
application/json
`
{

- "key": "mkn5",
- "value": "someVal"

}`

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "id": "5683018e-4274-46b1-8a1b-4bb4d3fd3760",
  - "key": "mkn5",
  - "value": "someVal"
  }

}`

## putMetadataListForCompany

Put Metadata List for Company.

##### path Parameters

companyId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

##### Request Body schema: application/json

Array

id | string <uuid>
key | string
value | string

### Responses

/config/v1/putMetadataListForCompany/{companyId}

### Request samples

- Payload

Content type
application/json
`"[{\t\"key\": \"mkn5\", \t\"value\": \"someVal\"}, {\t\"key\": \"mkn6\", \t\"value\": \"someVal2\"}, ]"`

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "key": "mkn5",
    - "value": "someVal"
    },
  - {
    - "key": "mkn6",
    - "value": "someVal2"
    }
  ]

}`

## putMetadataListForMako

Put Metadata List for Mako Device.

##### path Parameters

makoId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

##### Request Body schema: application/json

id | string <uuid>
key | string
value | string

### Responses

/config/v1/putMetadataListForMako/{makoId}

### Request samples

- Payload

Content type
application/json
`
[

- {
  - "key": "mkn5",
  - "value": "someVal"
  },
- {
  - "key": "mkn6",
  - "value": "someVal2"
  }

]`

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "key": "mkn5",
    - "value": "someVal"
    },
  - {
    - "key": "mkn6",
    - "value": "someVal2"
    }
  ]

}`

## putMetadataListForSite

Put Metadata List for site.

##### path Parameters

siteId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

##### Request Body schema: application/json

Array

id | string <uuid>
key | string
value | string

### Responses

/config/v1/putMetadataListForSite/{siteId}

### Request samples

- Payload

Content type
application/json
`
[

- {
  - "key": "mkn5",
  - "value": "someVal"
  },
- {
  - "key": "mkn6",
  - "value": "someVal2"
  }

]`

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "key": "mkn5",
    - "value": "someVal"
    },
  - {
    - "key": "mkn6",
    - "value": "someVal2"
    }
  ]

}`

# User Management

Provides ability to manage users

## addPerson

Add a new person

##### Request Body schema: application/json

companyId required | string <uuid> User company ID
userType required | string Enum: "Configure Client" "Diagnostics Client" "Full Reseller" "Reports Client" "Reports Only Reseller" "VPN User" User type
templateScope required | string Enum: "COMPANY_INHERIT" "COMPANY_NO_INHERIT" "COMPANY_CHILDREN" Template scope
firstName required | string First name
lastName required | string Last name
username required | string^[a-z0-9-.@]*$ Username
email required | string Email
allowLogin required | boolean Whether to allow user to log in
required | object (AddressDto) Address
phoneNumber | string Phone number
faxNumber | string Fax number

### Responses

/config/v1/addPerson

### Request samples

- Payload

Content type
application/json
`
{

- "companyId": "ae696d15-d9d8-4694-b1be-de6a8dd14f18",
- "userType": "Full Reseller",
- "templateScope": "COMPANY_NO_INHERIT",
- "firstName": "Jane",
- "lastName": "Smith",
- "username": "testuser2",
- "email": "testuser2@makonetworks.com",
- "allowLogin": true,
- "address":
  {
  - "address1": "1355",
  - "address2": "N McLean Blvd",
  - "suburb": "Suburb",
  - "city": "Elgin",
  - "state": "Illinois",
  - "postOrZipCode": " IL 60123",
  - "country": "US",
  - "timezone": "America/Chicago",
  - "latitude": 42.06,
  - "longitude": -88.31
  },
- "phoneNumber": "123423423"

}`

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "id": "f0afc736-88cb-4780-a306-99082a7e1576",
  - "firstName": "Jane",
  - "lastName": "Smith",
  - "username": "testuser",
  - "email": "testuser@makonetworks.com"
  }

}`

## deletePerson

Delete person

##### path Parameters

personId required | string <uuid>

### Responses

/config/v1/deletePerson/{personId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK"

}`

## getPerson

Get person by ID

##### path Parameters

id required | string <uuid> Example: f0afc736-88cb-4780-a306-99082a7e1576

### Responses

/config/v1/getPerson/{id}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "id": "f0afc736-88cb-4780-a306-99082a7e1576",
  - "firstName": "Jane",
  - "lastName": "Smith",
  - "username": "testuser",
  - "email": "testuser@makonetworks.com"
  }

}`

## getPersonByUsername

Get person by username

##### path Parameters

username required | string Example: testuser Username

### Responses

/config/v1/getPersonByUsername/{username}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "id": "f0afc736-88cb-4780-a306-99082a7e1576",
  - "firstName": "Jane",
  - "lastName": "Smith",
  - "username": "testuser",
  - "email": "testuser@makonetworks.com"
  }

}`

## listPeople

List people for a company

##### path Parameters

companyId required | string <uuid> Example: ae696d15-d9d8-4694-b1be-de6a8dd14f18 Company ID

### Responses

/config/v1/listPeople/{companyId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "id": "f0afc736-88cb-4780-a306-99082a7e1576",
    - "firstName": "Jane",
    - "lastName": "Smith",
    - "username": "testuser",
    - "email": "testuser@makonetworks.com"
    }
  ]

}`

# Site Management

Provides ability to manage Sites

## addSite

Add Site

##### Request Body schema: application/json

companyId required | string <uuid> Parent company ID
name required | string Name
reference | string Reference
latitude | number <double> Latitude
longitude | number <double> Longitude
required | object (AddressDto) Address
phoneNumber required | string Phone number
faxNumber | string Fax number

### Responses

/config/v1/addSite

### Request samples

- Payload

Content type
application/json

Create a Site

`
{

- "companyId": "06d0dee3-ee0a-4cac-af90-09c1a89d0bd4",
- "name": "Example Site",
- "reference": "Some Reference",
- "address":
  {
  - "address1": "1355",
  - "address2": "N McLean Blvd",
  - "suburb": "Suburb",
  - "city": "Elgin",
  - "state": "Illinois",
  - "postOrZipCode": " IL 60123",
  - "country": "US",
  - "timezone": "America/Chicago"
  },
- "phoneNumber": "+18008514691",
- "faxNumber": "+18008514691",
- "latitude": 42.06,
- "longitude": -88.31

}`

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "id": "26202f37-8b99-493a-a6a1-8f79540ae5fa",
  - "name": "Example Site"
  }

}`

## assignMakoToSite

Assign Mako to Site

##### Request Body schema: application/json

siteId required | string <uuid> Site ID
makoId required | string <uuid> Mako ID

### Responses

/config/v1/assignMakoToSite

### Request samples

- Payload

Content type
application/json

Assign a Mako to Site

`
{

- "siteId": "06d0dee3-ee0a-4cac-af90-09c1a89d0bd4",
- "makoId": "61000d29-3f6e-405a-a764-9666766a6d13"

}`

### Response samples

- default

Content type
application/json
`
{

- "status": "OK"

}`

## deleteSite

Delete Site

##### path Parameters

siteId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/config/v1/deleteSite/{siteId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK"

}`

## findSitesByNameLike

Find Site by name (partial match). Optionally provide a companyId to find Sites only in a specific company

##### query Parameters

companyId | string <uuid> Example: companyId=06d0dee3-ee0a-4cac-af90-09c1a89d0bd4
name required | string Example: name=office

### Responses

/config/v1/findSitesByNameLike

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "name": "London",
    - "reference": "example-lab-20",
    - "address":
      {
      - "address1": "123 Some Street",
      - "address2": "First Floor",
      - "suburb": "",
      - "city": "London",
      - "state": "",
      - "postOrZipCode": "123456",
      - "country": "UK",
      - "timezone": "Europe/London"
      },
    - "phoneNumber": "12345678",
    - "latitude": 51.503,
    - "longitude": 0.003,
    - "id": "c6345e2e-aadc-461a-854f-06d28c43dfd0",
    - "companyId": "ec0ef4e0-72ea-473d-9078-cfd44443e86d",
    - "companyName": "Example Company"
    }
  ]

}`

## getSite

Get Site by ID

##### path Parameters

id required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/config/v1/getSite/{id}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "name": "London",
  - "reference": "example-lab-20",
  - "address":
    {
    - "address1": "123 Some Street",
    - "address2": "First Floor",
    - "suburb": "",
    - "city": "London",
    - "state": "",
    - "postOrZipCode": "123456",
    - "country": "UK",
    - "timezone": "Europe/London"
    },
  - "phoneNumber": "12345678",
  - "latitude": 51.503,
  - "longitude": 0.003,
  - "id": "c6345e2e-aadc-461a-854f-06d28c43dfd0",
  - "companyId": "ec0ef4e0-72ea-473d-9078-cfd44443e86d",
  - "companyName": "Example Company"
  }

}`

## listSites

List Sites for company

##### path Parameters

companyId required | string <uuid>

### Responses

/config/v1/listSitesByCompany/{companyId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "name": "London",
    - "reference": "example-lab-20",
    - "address":
      {
      - "address1": "123 Some Street",
      - "address2": "First Floor",
      - "suburb": "",
      - "city": "London",
      - "state": "",
      - "postOrZipCode": "123456",
      - "country": "UK",
      - "timezone": "Europe/London"
      },
    - "phoneNumber": "12345678",
    - "latitude": 51.503,
    - "longitude": 0.003,
    - "id": "c6345e2e-aadc-461a-854f-06d28c43dfd0",
    - "companyId": "ec0ef4e0-72ea-473d-9078-cfd44443e86d",
    - "companyName": "Example Company"
    }
  ]

}`

## updateSitePut

Update Site details

##### path Parameters

siteId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

##### Request Body schema: application/json

name | string Site name
reference | string Reference
| object (AddressDto) Address
phoneNumber | string Phone number
faxNumber | string Fax number
latitude | number <double> Latitude
longitude | number <double> Longitude

### Responses

/config/v1/updateSite/{siteId}

### Request samples

- Payload

Content type
application/json
`
{

- "name": "Example Site",
- "reference": "Some Reference",
- "address":
  {
  - "address1": "1355",
  - "address2": "N McLean Blvd",
  - "suburb": "Suburb",
  - "city": "Elgin",
  - "state": "Illinois",
  - "postOrZipCode": "IL 60123",
  - "country": "US",
  - "timezone": "America/Chicago"
  },
- "phoneNumber": "+18008514691",
- "faxNumber": "+18008514691",
- "latitude": 42.06,
- "longitude": -88.31

}`

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "name": "Example name",
  - "reference": "Example reference",
  - "address":
    {
    - "address1": "1355",
    - "address2": "N McLean Blvd",
    - "suburb": "Suburb",
    - "city": "Elgin",
    - "state": "Illinois",
    - "postOrZipCode": "IL 60123",
    - "country": "US",
    - "timezone": "America/Chicago"
    },
  - "phoneNumber": "+18008514691",
  - "faxNumber": "+18008514691",
  - "latitude": 42.06,
  - "longitude": -88.31,
  - "id": "61000d29-3f6e-405a-a764-9666766a6d13",
  - "companyId": "61000d29-3f6e-405a-a764-9666766a6d13",
  - "companyName": "Example Company"
  }

}`

## updateSitePost

Update Site details

##### path Parameters

siteId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

##### Request Body schema: application/json

name | string Site name
reference | string Reference
| object (AddressDto) Address
phoneNumber | string Phone number
faxNumber | string Fax number
latitude | number <double> Latitude
longitude | number <double> Longitude

### Responses

/config/v1/updateSite/{siteId}

### Request samples

- Payload

Content type
application/json
`
{

- "name": "Example Site",
- "reference": "Some Reference",
- "address":
  {
  - "address1": "1355",
  - "address2": "N McLean Blvd",
  - "suburb": "Suburb",
  - "city": "Elgin",
  - "state": "Illinois",
  - "postOrZipCode": "IL 60123",
  - "country": "US",
  - "timezone": "America/Chicago"
  },
- "phoneNumber": "+18008514691",
- "faxNumber": "+18008514691",
- "latitude": 42.06,
- "longitude": -88.31

}`

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "name": "Example name",
  - "reference": "Example reference",
  - "address":
    {
    - "address1": "1355",
    - "address2": "N McLean Blvd",
    - "suburb": "Suburb",
    - "city": "Elgin",
    - "state": "Illinois",
    - "postOrZipCode": "IL 60123",
    - "country": "US",
    - "timezone": "America/Chicago"
    },
  - "phoneNumber": "+18008514691",
  - "faxNumber": "+18008514691",
  - "latitude": 42.06,
  - "longitude": -88.31,
  - "id": "61000d29-3f6e-405a-a764-9666766a6d13",
  - "companyId": "61000d29-3f6e-405a-a764-9666766a6d13",
  - "companyName": "Example Company"
  }

}`

# VPN Cloud Management

Provides ability to manage VPN Clouds

## getAvailableVpnClouds

Get VPN Clouds the Mako can be a member of

##### path Parameters

Mako Id required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/config/v1/getAvailableVpnClouds/{makoId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    - "name": "Example VPN Cloud",
    - "companyName": "Example Company"
    }
  ]

}`

## getVpnCloudMemberships

Get VPN Clouds the Mako is a member of

##### path Parameters

Mako Id required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/config/v1/getVpnCloudMemberships/{makoId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    - "name": "Example VPN Cloud",
    - "companyName": "Example Company"
    }
  ]

}`

## getVpnConfigByMako

Get Mako Configuration for VPN Cloud

##### path Parameters

Mako Id required | string <uuid> Example: 06d0dee3-ee0a-4cac-af90-09c1a89d0bd4
VPN Cloud Id required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/config/v1/getVpnConfigByMako/{makoId}/forCloud/{cloudId}

### Response samples

- default

Content type
application/json

One interface with custom configuration, and one with default

`
{

- "status": "OK",
- "body":
  [
  - {
    - "cloud":
      {
      - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      - "name": "Example VPN Cloud",
      - "companyName": "Example Company"
      },
    - "cipherSuite": "Automatic",
    - "interfaceConfiguration":
      [
      - {
        - "interfaceDevice":
          {
          - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
          - "name": "LAN 1",
          - "network": "192.168.48.0/24"
          },
        - "direction": "IN",
        - "snat": "LEGACY",
        - "weight": 10
        },
      - {
        - "configurationDisabled": true,
        - "interfaceDevice":
          {
          - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
          - "name": "LAN 2",
          - "network": "192.168.49.0/24"
          }
        }
      ]
    }
  ]

}`

## addMakoToVpnCloud

Add Mako to VPN Cloud

##### Request Body schema: application/json

vpnCloudId required | string <uuid> VPN Cloud Id
makoId required | string <uuid> Mako Id

### Responses

/config/v1/joinVpnCloudByMako

### Request samples

- Payload

Content type
application/json
`
{

- "makoId": "06d0dee3-ee0a-4cac-af90-09c1a89d0bd4",
- "vpnCloudId": "61000d29-3f6e-405a-a764-9666766a6d13"

}`

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "cloud":
    {
    - "id": "1fa427f4-d932-4d2f-96b8-071606ae0f0f",
    - "name": "Example VPN Cloud",
    - "companyName": "Example Company"
    },
  - "cipherSuite": "Automatic",
  - "interfaceConfiguration":
    [
    - {
      - "configurationDisabled": true,
      - "interfaceDevice":
        {
        - "id": "8b333eb5-0564-4688-a6fc-c69cbd623014",
        - "name": "LAN 1",
        - "network": "192.168.48.0/24"
        }
      },
    - {
      - "configurationDisabled": true,
      - "interfaceDevice":
        {
        - "id": "b831c2e7-333d-43b6-b65c-3ae610914ab9",
        - "name": "LAN 2",
        - "network": "192.168.49.0/24"
        }
      }
    ]
  }

}`

## removeMakoFromVpnCloud

Remove Mako from VPN Cloud

##### Request Body schema: application/json

vpnCloudId required | string <uuid> VPN Cloud Id
makoId required | string <uuid> Mako Id

### Responses

/config/v1/leaveVpnCloudByMako

### Request samples

- Payload

Content type
application/json
`
{

- "makoId": "06d0dee3-ee0a-4cac-af90-09c1a89d0bd4",
- "vpnCloudId": "61000d29-3f6e-405a-a764-9666766a6d13"

}`

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "id": "61000d29-3f6e-405a-a764-9666766a6d13",
    - "name": "Example VPN Cloud",
    - "companyName": "Example Company"
    }
  ]

}`

## updateVpnConfig

Update Mako Configuration for VPN Cloud

##### Request Body schema: application/json

| object (VpnCloudDto) VPN Cloud
cipherSuite | string Enum: "Automatic" "ECDHE_ECDSA_AES128_GCM" "ECDHE_ECDSA_AES256_GCM" "ECDHE_ECDSA_CHACHA20_POLY1305" "ECDHE_ECDSA_AES128_CTR" "ECDHE_ECDSA_AES256_CTR" Cipher Suite
| Array of objects (VpnNodeInterfaceDto) Interface Configuration
vpnCloudId required | string <uuid> VPN Cloud Id
makoId required | string <uuid> Mako Id

### Responses

/config/v1/updateVpnConfig

### Request samples

- Payload

Content type
application/json
`
{

- "makoId": "06d0dee3-ee0a-4cac-af90-09c1a89d0bd4",
- "vpnCloudId": "61000d29-3f6e-405a-a764-9666766a6d13",
- "cipherSuite": "ECDHE_ECDSA_AES128_GCM",
- "interfaceConfiguration":
  [
  - {
    - "interfaceDeviceId": "3ed4d999-6df1-4acf-8bb8-555119f76a99",
    - "weight": 40,
    - "snat": "LEGACY",
    - "direction": "IN"
    },
  - {
    - "interfaceDeviceId": "5f10c94d-af26-479f-a705-aa2a85d778ea",
    - "configurationDisabled": true
    }
  ]

}`

### Response samples

- default

Content type
application/json

One interface with custom configuration, and one with default

`
{

- "status": "OK",
- "body":
  [
  - {
    - "cloud":
      {
      - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      - "name": "Example VPN Cloud",
      - "companyName": "Example Company"
      },
    - "cipherSuite": "Automatic",
    - "interfaceConfiguration":
      [
      - {
        - "interfaceDevice":
          {
          - "id": "3ed4d999-6df1-4acf-8bb8-555119f76a99",
          - "name": "LAN 1",
          - "network": "192.168.48.0/24"
          },
        - "direction": "IN",
        - "snat": "LEGACY",
        - "weight": 10
        },
      - {
        - "configurationDisabled": true,
        - "interfaceDevice":
          {
          - "id": "5f10c94d-af26-479f-a705-aa2a85d778ea",
          - "name": "LAN 2",
          - "network": "192.168.49.0/24"
          }
        }
      ]
    }
  ]

}`

# Diagnostics

Provides ability to run diagnostic queries on Mako Devices

## getIpsecStatusByMako

Get IPsec tunnel status for this Mako Device

##### path Parameters

makoId required | string <uuid> Example: ac68adfc-6d80-4e43-947a-66070e244fee Mako ID

### Responses

/diagnostics/v1/getIpsecStatusByMako/{makoId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "vpns":
    [
    - {
      - "id": "tun425",
      - "child-id": "tun425",
      - "up": true,
      - "local-nw": "192.168.31.0/255.255.255.0",
      - "remote-nw": "10.0.207.0/255.255.255.0",
      - "peer-address": "114.0.0.206",
      - "bytes-in": 14400,
      - "packets-in": 240,
      - "last-in-ts": 2,
      - "bytes-out": 21120,
      - "packets-out": 240,
      - "last-out-ts": 2,
      - "ciphersuite": "AES_CBC_128/HMAC_SHA1_96/MODP_1024",
      - "uptime": 12303
      },
    - {
      - "id": "tun423",
      - "child-id": "tun423",
      - "up": false,
      - "local-nw": "10.210.8.0/255.255.255.0",
      - "remote-nw": "10.0.207.0/255.255.255.0",
      - "peer-address": "114.0.0.206",
      - "tasks-queued": 1,
      - "uptime": 282636
      }
    ]
  }

}`

## getVpnCloudConnectionsDiagnostic

Get VPN Cloud Connections diagnostic information for this Mako Device

##### path Parameters

makoId required | string <uuid> Example: ac68adfc-6d80-4e43-947a-66070e244fee Mako ID

### Responses

/diagnostics/v1/getVpnCloudConnectionsByMako/{makoId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "vpns":
    [
    - {
      - "name": "Example Home",
      - "dev": "vpn-028c546b",
      - "cn": "CN=028c546b-0000-4eb4-0000-cde4869c469c",
      - "connections":
        [
        - {
          - "vpn-name": "Example Home",
          - "peer-cn": "CN=66691985-0000-49fe-0000-fe9ce195739d",
          - "subid": 0,
          - "up": false,
          - "connection-id": 321345,
          - "local-state": "UNREGISTERED_0",
          - "peer-state": "UNREGISTERED_0",
          - "address": ":2112",
          - "peer-type": "temp",
          - "latency": -1,
          - "recv-packets": 0,
          - "recv-bytes": 0,
          - "sent-packets": 0,
          - "sent-bytes": 0,
          - "lost-packets": 0,
          - "error-packets": 0,
          - "delay-packets": 0,
          - "uptime": 2687676
          },
        - {
          - "vpn-name": "Example Home",
          - "peer-cn": "CN=40436eef-0000-4750-0000-d6f7331ab490",
          - "subid": 0,
          - "up": false,
          - "connection-id": 321344,
          - "local-state": "HELLO_1",
          - "peer-state": "UNREGISTERED_0",
          - "address": "115.0.0.234:2112",
          - "peer-type": "temp",
          - "latency": -1,
          - "recv-packets": 0,
          - "recv-bytes": 0,
          - "sent-packets": 42194,
          - "sent-bytes": 0,
          - "lost-packets": 0,
          - "error-packets": 0,
          - "delay-packets": 0,
          - "uptime": 5076586
          },
        - {
          - "vpn-name": "Example Home",
          - "peer-cn": "CN=4860d36b-0000-4d08-0000-1c189341c88b",
          - "subid": 0,
          - "up": true,
          - "connection-id": 321341,
          - "local-state": "REGISTERED",
          - "peer-state": "REGISTERED",
          - "address": "140.0.0.139:2112",
          - "peer-type": "known-peer",
          - "latency": 271,
          - "recv-packets": 7935,
          - "recv-bytes": 3547218,
          - "sent-packets": 7786,
          - "sent-bytes": 771357,
          - "lost-packets": 0,
          - "error-packets": 0,
          - "delay-packets": 0,
          - "uptime": 88595
          }
        ]
      },
    - {
      - "name": "7600 Test Cloud",
      - "dev": "vpn-4048bb01",
      - "cn": "CN=4048bb01-0000-4f12-0000-c7518de12303",
      - "connections": [ ]
      }
    ]
  }

}`

## getVpnCloudRoutingTableByMako

Get VPN Cloud Routing Tables for all VPN Clouds on this Mako Device

##### path Parameters

makoId required | string <uuid> Example: ac68adfc-6d80-4e43-947a-66070e244fee Mako ID

### Responses

/diagnostics/v1/getVpnCloudRoutingTableByMako/{makoId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "vpns":
    [
    - {
      - "name": "Example Home",
      - "dev": "vpn-028c546b",
      - "cn": "CN=028c546b-0000-4eb4-0000-cde4869c469c",
      - "ipv4-size": 5,
      - "ipv4-buckets": 8863,
      - "ipv4-table-hint":
        [
        - 8,
        - 12,
        - 16,
        - 24
        ],
      - "ipv6-size": 0,
      - "ipv6-buckets": 257,
      - "ipv6-table-hint": [ ],
      - "ipv4":
        [
        - {
          - "network": "10.0.0.0/8",
          - "weight": 10,
          - "connection-id": 321341,
          - "up": true,
          - "peer":
            {
            - "cn": "CN=4860d36b-0000-4d08-0000-1c189341c88b",
            - "subid": 0,
            - "address": "140.0.0.139:2112"
            }
          },
        - {
          - "network": "10.210.8.0/24",
          - "weight": 10,
          - "connection-id": 0
          },
        - {
          - "network": "10.33.1.0/24",
          - "weight": 10,
          - "connection-id": 321341,
          - "up": true,
          - "peer":
            {
            - "cn": "CN=4860d36b-0000-4d08-0000-1c189341c88b",
            - "subid": 0,
            - "address": "140.0.0.139:2112"
            }
          },
        - {
          - "network": "192.168.0.0/16",
          - "weight": 10,
          - "connection-id": 321341,
          - "up": true,
          - "peer":
            {
            - "cn": "CN=4860d36b-0000-4d08-0000-1c189341c88b",
            - "subid": 0,
            - "address": "140.0.0.139:2112"
            }
          },
        - {
          - "network": "172.16.0.0/12",
          - "weight": 10,
          - "connection-id": 321341,
          - "up": true,
          - "peer":
            {
            - "cn": "CN=4860d36b-0000-4d08-0000-1c189341c88b",
            - "subid": 0,
            - "address": "140.0.0.139:2112"
            }
          }
        ],
      - "ipv6": [ ]
      },
    - {
      - "name": "7600 Test Cloud",
      - "dev": "vpn-4048bb01",
      - "cn": "CN=4048bb01-0000-4f12-0000-c7518de12303",
      - "ipv4-size": 1,
      - "ipv4-buckets": 8863,
      - "ipv4-table-hint":
        [
        - 24
        ],
      - "ipv6-size": 0,
      - "ipv6-buckets": 257,
      - "ipv6-table-hint": [ ],
      - "ipv4":
        [
        - {
          - "network": "172.25.1.0/24",
          - "weight": 10,
          - "connection-id": 0
          }
        ],
      - "ipv6": [ ]
      }
    ]
  }

}`

## rebobotByMako

Reboots this Mako Device

##### path Parameters

makoId required | string <uuid> Example: ac68adfc-6d80-4e43-947a-66070e244fee Mako ID

### Responses

/diagnostics/v1/rebootByMako/{makoId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body": "OK"

}`

## restartInterfaceByMako

Restarts an interface on an AP/Gateway

##### path Parameters

makoId required | string <uuid> Example: ac68adfc-6d80-4e43-947a-66070e244fee Mako ID
inf required | string Example: lan1 Interface

### Responses

/diagnostics/v1/restartInterfaceByMako/{makoId}/{inf}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body": "OK"

}`

## restartIpsecByMako

Restarts IPsec subsystem on this Mako Device

##### path Parameters

makoId required | string <uuid> Example: ac68adfc-6d80-4e43-947a-66070e244fee Mako ID

### Responses

/diagnostics/v1/restartIpsecByMako/{makoId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body": "OK"

}`

## restartSwitchPortByMako

Restarts this switch port on a Managed Switch

##### path Parameters

makoId required | string <uuid> Example: ac68adfc-6d80-4e43-947a-66070e244fee Mako ID
port required | string Example: 20 Switch Port

### Responses

/diagnostics/v1/restartSwitchPortByMako/{makoId}/{port}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body": "OK"

}`

## restartVpnCloudByMako

Restarts VPN Cloud subsystem on this Mako Device

##### path Parameters

makoId required | string <uuid> Example: ac68adfc-6d80-4e43-947a-66070e244fee Mako ID

### Responses

/diagnostics/v1/restartVpnCloudByMako/{makoId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body": "OK"

}`

# Mako Status

Provides ability to view the status of Mako devices

## getMakoDeviceState

Retrieve the state of a Mako device

##### path Parameters

makoId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/status/v1/getMakoDeviceState/{makoId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "cpeId": "61000d29-3f6e-405a-a764-9666766a6d13",
  - "state": "json"
  }

}`

## getMakoDeviceStateByCompany

Retrieve the state of all Mako devices owned by the company

##### path Parameters

companyId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/status/v1/getMakoDeviceStateByCompany/{companyId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "cpeId": "4860d36b-cff0-4d08-9e3e-1c189341c88b",
    - "state":
      {
      - "id": "4860d36b-cff0-4d08-9e3e-1c189341c88b",
      - "wans":
        [
        - {
          - "ip": "140.228.12.34",
          - "phy": "wan1",
          - "link": "1000Mb/s Full Duplex",
          - "name": "wan1",
          - "type": "eth",
          - "noArp": false,
          - "stable": true,
          - "subnet": "140.228.12.0/24",
          - "weight": 1,
          - "bestWan": true,
          - "gateway": "140.228.12.1",
          - "alwaysOn": true,
          - "description": "Ethernet",
          - "highLatency": false,
          - "defaultRoute": true,
          - "layer2Active": true,
          - "layer3Active": true,
          - "failoverDelay": 10,
          - "upstreamSpeed": 1000000,
          - "highPacketLoss": false,
          - "signalStrength": -1,
          - "downstreamSpeed": 1000000,
          - "absoluteThreshold": false,
          - "transitionTimestamp": "2025-05-27T17:33:20.358+0000",
          - "authenticationFailure": false
          }
        ],
      - "error": false,
      - "makoId": "30:1A:01:02:03:04",
      - "master": true,
      - "version": 1,
      - "lanports":
        [
        - {
          - "phy": "lan1",
          - "name": "lan1",
          - "stable": false,
          - "monitored": false,
          - "layer2Active": false
          },
        - {
          - "phy": "lan2",
          - "name": "lan2",
          - "stable": false,
          - "monitored": false,
          - "layer2Active": false
          },
        - {
          - "phy": "lan3",
          - "name": "lan3",
          - "stable": false,
          - "monitored": false,
          - "layer2Active": false
          },
        - {
          - "phy": "lan4",
          - "name": "lan4",
          - "stable": true,
          - "monitored": false,
          - "layer2Active": true,
          - "transitionTimestamp": "2025-05-27T17:33:18.399+0000"
          },
        - {
          - "phy": "sfp1",
          - "name": "sfp1",
          - "stable": true,
          - "monitored": false,
          - "layer2Active": true,
          - "transitionTimestamp": "2025-05-27T17:33:14.405+0000"
          },
        - {
          - "phy": "wlan0",
          - "name": "wlan0",
          - "stable": true,
          - "monitored": false,
          - "layer2Active": true,
          - "transitionTimestamp": "2025-05-27T17:33:42.970+0000"
          }
        ],
      - "noBestWan": false,
      - "forceBackup": false,
      - "startupCount": 1,
      - "bootTimestamp": "2025-05-27T17:33:00.413+0000",
      - "configVersion": -1,
      - "debugFirmware": false,
      - "mvpnTunnelsUp": 5,
      - "failoverWeight": 1,
      - "ipsecTunnelsUp": 3,
      - "firmwareVersion": "C6600-F6583-13",
      - "mvpnTunnelsDown": 1,
      - "recordTimestamp": "2025-06-12T02:42:58.761+0000",
      - "ipsecTunnelsDown": 0,
      - "applicationStartTimestamp": "2025-05-27T17:33:04.361+0000",
      - "failoverTransitionTimestamp": "2025-05-27T17:33:36.677+0000",
      - "defaultRouteTransitionTimestamp": "2025-05-27T17:33:36.678+0000"
      }
    }
  ]

}`

## getMakoDeviceStateByCompanyAndChildren

Retrieve the state of all Mako devices owned by the company and its subsidiaries

##### path Parameters

companyId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/status/v1/getMakoDeviceStateByCompanyAndChildren/{companyId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "cpeId": "4860d36b-cff0-4d08-9e3e-1c189341c88b",
    - "state":
      {
      - "id": "4860d36b-cff0-4d08-9e3e-1c189341c88b",
      - "wans":
        [
        - {
          - "ip": "140.228.12.34",
          - "phy": "wan1",
          - "link": "1000Mb/s Full Duplex",
          - "name": "wan1",
          - "type": "eth",
          - "noArp": false,
          - "stable": true,
          - "subnet": "140.228.12.0/24",
          - "weight": 1,
          - "bestWan": true,
          - "gateway": "140.228.12.1",
          - "alwaysOn": true,
          - "description": "Ethernet",
          - "highLatency": false,
          - "defaultRoute": true,
          - "layer2Active": true,
          - "layer3Active": true,
          - "failoverDelay": 10,
          - "upstreamSpeed": 1000000,
          - "highPacketLoss": false,
          - "signalStrength": -1,
          - "downstreamSpeed": 1000000,
          - "absoluteThreshold": false,
          - "transitionTimestamp": "2025-05-27T17:33:20.358+0000",
          - "authenticationFailure": false
          }
        ],
      - "error": false,
      - "makoId": "30:1A:01:02:03:04",
      - "master": true,
      - "version": 1,
      - "lanports":
        [
        - {
          - "phy": "lan1",
          - "name": "lan1",
          - "stable": false,
          - "monitored": false,
          - "layer2Active": false
          },
        - {
          - "phy": "lan2",
          - "name": "lan2",
          - "stable": false,
          - "monitored": false,
          - "layer2Active": false
          },
        - {
          - "phy": "lan3",
          - "name": "lan3",
          - "stable": false,
          - "monitored": false,
          - "layer2Active": false
          },
        - {
          - "phy": "lan4",
          - "name": "lan4",
          - "stable": true,
          - "monitored": false,
          - "layer2Active": true,
          - "transitionTimestamp": "2025-05-27T17:33:18.399+0000"
          },
        - {
          - "phy": "sfp1",
          - "name": "sfp1",
          - "stable": true,
          - "monitored": false,
          - "layer2Active": true,
          - "transitionTimestamp": "2025-05-27T17:33:14.405+0000"
          },
        - {
          - "phy": "wlan0",
          - "name": "wlan0",
          - "stable": true,
          - "monitored": false,
          - "layer2Active": true,
          - "transitionTimestamp": "2025-05-27T17:33:42.970+0000"
          }
        ],
      - "noBestWan": false,
      - "forceBackup": false,
      - "startupCount": 1,
      - "bootTimestamp": "2025-05-27T17:33:00.413+0000",
      - "configVersion": -1,
      - "debugFirmware": false,
      - "mvpnTunnelsUp": 5,
      - "failoverWeight": 1,
      - "ipsecTunnelsUp": 3,
      - "firmwareVersion": "C6600-F6583-13",
      - "mvpnTunnelsDown": 1,
      - "recordTimestamp": "2025-06-12T02:42:58.761+0000",
      - "ipsecTunnelsDown": 0,
      - "applicationStartTimestamp": "2025-05-27T17:33:04.361+0000",
      - "failoverTransitionTimestamp": "2025-05-27T17:33:36.677+0000",
      - "defaultRouteTransitionTimestamp": "2025-05-27T17:33:36.678+0000"
      }
    }
  ]

}`

## getMakoDeviceStateBySite

Retrieve the state of all Mako devices at a site

##### path Parameters

siteId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/status/v1/getMakoDeviceStateBySite/{siteId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "cpeId": "4860d36b-cff0-4d08-9e3e-1c189341c88b",
  - "state":
    {
    - "id": "4860d36b-cff0-4d08-9e3e-1c189341c88b",
    - "wans":
      [
      - {
        - "ip": "140.228.12.34",
        - "phy": "wan1",
        - "link": "1000Mb/s Full Duplex",
        - "name": "wan1",
        - "type": "eth",
        - "noArp": false,
        - "stable": true,
        - "subnet": "140.228.12.0/24",
        - "weight": 1,
        - "bestWan": true,
        - "gateway": "140.228.12.1",
        - "alwaysOn": true,
        - "description": "Ethernet",
        - "highLatency": false,
        - "defaultRoute": true,
        - "layer2Active": true,
        - "layer3Active": true,
        - "failoverDelay": 10,
        - "upstreamSpeed": 1000000,
        - "highPacketLoss": false,
        - "signalStrength": -1,
        - "downstreamSpeed": 1000000,
        - "absoluteThreshold": false,
        - "transitionTimestamp": "2025-05-27T17:33:20.358+0000",
        - "authenticationFailure": false
        }
      ],
    - "error": false,
    - "makoId": "30:1A:01:02:03:04",
    - "master": true,
    - "version": 1,
    - "lanports":
      [
      - {
        - "phy": "lan1",
        - "name": "lan1",
        - "stable": false,
        - "monitored": false,
        - "layer2Active": false
        },
      - {
        - "phy": "lan2",
        - "name": "lan2",
        - "stable": false,
        - "monitored": false,
        - "layer2Active": false
        },
      - {
        - "phy": "lan3",
        - "name": "lan3",
        - "stable": false,
        - "monitored": false,
        - "layer2Active": false
        },
      - {
        - "phy": "lan4",
        - "name": "lan4",
        - "stable": true,
        - "monitored": false,
        - "layer2Active": true,
        - "transitionTimestamp": "2025-05-27T17:33:18.399+0000"
        },
      - {
        - "phy": "sfp1",
        - "name": "sfp1",
        - "stable": true,
        - "monitored": false,
        - "layer2Active": true,
        - "transitionTimestamp": "2025-05-27T17:33:14.405+0000"
        },
      - {
        - "phy": "wlan0",
        - "name": "wlan0",
        - "stable": true,
        - "monitored": false,
        - "layer2Active": true,
        - "transitionTimestamp": "2025-05-27T17:33:42.970+0000"
        }
      ],
    - "noBestWan": false,
    - "forceBackup": false,
    - "startupCount": 1,
    - "bootTimestamp": "2025-05-27T17:33:00.413+0000",
    - "configVersion": -1,
    - "debugFirmware": false,
    - "mvpnTunnelsUp": 5,
    - "failoverWeight": 1,
    - "ipsecTunnelsUp": 3,
    - "firmwareVersion": "C6600-F6583-13",
    - "mvpnTunnelsDown": 1,
    - "recordTimestamp": "2025-06-12T02:42:58.761+0000",
    - "ipsecTunnelsDown": 0,
    - "applicationStartTimestamp": "2025-05-27T17:33:04.361+0000",
    - "failoverTransitionTimestamp": "2025-05-27T17:33:36.677+0000",
    - "defaultRouteTransitionTimestamp": "2025-05-27T17:33:36.678+0000"
    }
  }

}`

## getMakoOnlineStatus

Retrieve the online status of a Mako device

##### path Parameters

makoId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/status/v1/getMakoOnlineStatus/{makoId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "cpeId": "2981a0fc-98ae-430f-887e-e25f17e419fb",
  - "status": "ONLINE",
  - "statusTimestamp": "2025-02-19T21:27:14+0000"
  }

}`

## getMakoOnlineStatusByCompany

Retrieve the online status of all Mako devices owned by the company

##### path Parameters

companyId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/status/v1/getMakoOnlineStatusByCompany/{companyId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "cpeId": "2981a0fc-98ae-430f-887e-e25f17e419fb",
    - "status": "ONLINE",
    - "statusTimestamp": "2025-02-19T21:27:14+0000"
    },
  - {
    - "cpeId": "d53772cd-bb01-44a1-b218-8db3c5685085",
    - "status": "ONLINE",
    - "statusTimestamp": "2025-04-16T23:59:52+0000"
    },
  - {
    - "cpeId": "4860d36b-cff0-4d08-9e3e-1c189341c88b",
    - "status": "ONLINE",
    - "statusTimestamp": "2024-10-21T16:14:02+0000"
    }
  ]

}`

## getMakoOnlineStatusByCompanyAndChildren

Retrieve the online status of all Mako devices owned by the company and its subsidiaries

##### path Parameters

companyId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/status/v1/getMakoOnlineStatusByCompanyAndChildren/{companyId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "cpeId": "2981a0fc-98ae-430f-887e-e25f17e419fb",
    - "status": "ONLINE",
    - "statusTimestamp": "2025-02-19T21:27:14+0000"
    },
  - {
    - "cpeId": "d53772cd-bb01-44a1-b218-8db3c5685085",
    - "status": "ONLINE",
    - "statusTimestamp": "2025-04-16T23:59:52+0000"
    },
  - {
    - "cpeId": "4860d36b-cff0-4d08-9e3e-1c189341c88b",
    - "status": "ONLINE",
    - "statusTimestamp": "2024-10-21T16:14:02+0000"
    }
  ]

}`

## getMakoOnlineStatusBySite

Retrieve the online status of all Mako devices at a site

##### path Parameters

siteId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/status/v1/getMakoOnlineStatusBySite/{siteId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "cpeId": "2981a0fc-98ae-430f-887e-e25f17e419fb",
    - "status": "ONLINE",
    - "statusTimestamp": "2025-02-19T21:27:14+0000"
    },
  - {
    - "cpeId": "d53772cd-bb01-44a1-b218-8db3c5685085",
    - "status": "ONLINE",
    - "statusTimestamp": "2025-04-16T23:59:52+0000"
    },
  - {
    - "cpeId": "4860d36b-cff0-4d08-9e3e-1c189341c88b",
    - "status": "ONLINE",
    - "statusTimestamp": "2024-10-21T16:14:02+0000"
    }
  ]

}`

## getMakoStatus

Retrieve the status of a Mako device

##### path Parameters

makoId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/status/v1/getMakoStatus/{makoId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  {
  - "cpeId": "4860d36b-cff0-4d08-9e3e-1c189341c88b",
  - "status": "ONLINE",
  - "statusTimestamp": "2024-10-21T16:14:02+0000",
  - "contactDate": "2025-06-13T00:53:25+0000",
  - "contactIpAddress": "140.228.12.34",
  - "wanIpAddress": "140.228.12.34"
  }

}`

## getMakoStatusByCompany

Retrieve the status of all Mako devices owned by the company

##### path Parameters

companyId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/status/v1/getMakoStatusByCompany/{companyId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "cpeId": "2981a0fc-98ae-430f-887e-e25f17e419fb",
    - "status": "ONLINE",
    - "statusTimestamp": "2025-02-19T21:27:14+0000",
    - "contactDate": "2025-06-13T00:53:25+0000",
    - "contactIpAddress": "140.228.12.34",
    - "wanIpAddress": "10.33.1.106"
    },
  - {
    - "cpeId": "d53772cd-bb01-44a1-b218-8db3c5685085",
    - "status": "ONLINE",
    - "statusTimestamp": "2025-04-16T23:59:52+0000",
    - "contactDate": "2025-06-13T00:53:25+0000",
    - "contactIpAddress": "140.228.12.34",
    - "wanIpAddress": "10.33.1.39"
    },
  - {
    - "cpeId": "4860d36b-cff0-4d08-9e3e-1c189341c88b",
    - "status": "ONLINE",
    - "statusTimestamp": "2024-10-21T16:14:02+0000",
    - "contactDate": "2025-06-13T00:53:25+0000",
    - "contactIpAddress": "140.228.12.34",
    - "wanIpAddress": "140.228.12.34"
    }
  ]

}`

## getMakoStatusByCompanyAndChildren

Retrieve the status of all Mako devices owned by the company and its subsidiaries

##### path Parameters

companyId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/status/v1/getMakoStatusByCompanyAndChildren/{companyId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "cpeId": "2981a0fc-98ae-430f-887e-e25f17e419fb",
    - "status": "ONLINE",
    - "statusTimestamp": "2025-02-19T21:27:14+0000",
    - "contactDate": "2025-06-13T00:53:25+0000",
    - "contactIpAddress": "140.228.12.34",
    - "wanIpAddress": "10.33.1.106"
    },
  - {
    - "cpeId": "d53772cd-bb01-44a1-b218-8db3c5685085",
    - "status": "ONLINE",
    - "statusTimestamp": "2025-04-16T23:59:52+0000",
    - "contactDate": "2025-06-13T00:53:25+0000",
    - "contactIpAddress": "140.228.12.34",
    - "wanIpAddress": "10.33.1.39"
    },
  - {
    - "cpeId": "4860d36b-cff0-4d08-9e3e-1c189341c88b",
    - "status": "ONLINE",
    - "statusTimestamp": "2024-10-21T16:14:02+0000",
    - "contactDate": "2025-06-13T00:53:25+0000",
    - "contactIpAddress": "140.228.12.34",
    - "wanIpAddress": "140.228.12.34"
    }
  ]

}`

## getMakoStatusBySite

Retrieve the status of all Mako devices at a site

##### path Parameters

siteId required | string <uuid> Example: 61000d29-3f6e-405a-a764-9666766a6d13

### Responses

/status/v1/getMakoStatusBySite/{siteId}

### Response samples

- default

Content type
application/json
`
{

- "status": "OK",
- "body":
  [
  - {
    - "cpeId": "2981a0fc-98ae-430f-887e-e25f17e419fb",
    - "status": "ONLINE",
    - "statusTimestamp": "2025-02-19T21:27:14+0000",
    - "contactDate": "2025-06-13T00:53:25+0000",
    - "contactIpAddress": "140.228.12.34",
    - "wanIpAddress": "10.33.1.106"
    },
  - {
    - "cpeId": "d53772cd-bb01-44a1-b218-8db3c5685085",
    - "status": "ONLINE",
    - "statusTimestamp": "2025-04-16T23:59:52+0000",
    - "contactDate": "2025-06-13T00:53:25+0000",
    - "contactIpAddress": "140.228.12.34",
    - "wanIpAddress": "10.33.1.39"
    },
  - {
    - "cpeId": "4860d36b-cff0-4d08-9e3e-1c189341c88b",
    - "status": "ONLINE",
    - "statusTimestamp": "2024-10-21T16:14:02+0000",
    - "contactDate": "2025-06-13T00:53:25+0000",
    - "contactIpAddress": "140.228.12.34",
    - "wanIpAddress": "140.228.12.34"
    }
  ]

}`

# Authentication

API Authentication

## auth

Authenticate the user and retrieve authentication token. Post form params as application/x-www-form-urlencoded

##### query Parameters

client_id required | string Example: client_id=test.api.12nn7 Client ID
client_secret required | string Example: client_secret=2j38nd2c43 Client secret

### Responses

/auth/v1/auth

### Response samples

- default

Content type
application/json
`
{

- "access_token": "YUMCABTl0kzM",
- "token_type": "Bearer",
- "expires_in": 14400

}`