Mako API (1.0)

Download OpenAPI specification:Download

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

Request samples

Content type
application/json
{
  • "parentCompanyId": "5f10c94d-af26-479f-a705-aa2a85d778ea",
  • "companyType": "RESELLER",
  • "name": "Example Company name",
  • "address": {
    },
  • "phoneNumber": "+18008514691",
  • "faxNumber": "+18008514691",
  • "supportEmail": "support@supported.com",
  • "salesEmail": "sales@supported.com",
  • "accountsEmail": "accounts@supported.com"
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

deleteCompany

Delete company

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

Responses

Response samples

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

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

getCompany

Get company by ID

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

Company ID

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

listAllCompanies

List all companies

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

listChildCompanies

Get child companies by parent company id

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

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

listCompaniesByPerson

Get companies for person

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

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

listCountries

List countries

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

listTimezones

List timezones by country

path Parameters
abbr
required
string
Example: PL

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

updateCompany

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

Request samples

Content type
application/json
{
  • "name": "Example Company name",
  • "address": {
    },
  • "phoneNumber": "+18008514691",
  • "faxNumber": "+18008514691",
  • "supportEmail": "support@makonetworks.com",
  • "salesEmail": "sales@makonetworks.com",
  • "accountsEmail": "accounts@makonetworks.com"
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

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

Response samples

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

Response samples

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

Response samples

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

Response samples

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

Response samples

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

Response samples

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

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

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

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

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

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

getLabelsByInterfaceDevice

Find Ethernet Interface Labels by Ethernet Interface UUID.

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

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

getLabelsByMako

Find Mako Device Labels by Mako Device UUID.

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

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

getLabelsBySite

Find Site Labels by Site UUID.

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

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

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

Request samples

Content type
application/json
{
  • "label": "someVal"
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

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

Request samples

Content type
application/json
{
  • "label": "someVal"
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

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

Request samples

Content type
application/json
{
  • "label": "someVal"
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

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

Request samples

Content type
application/json
[
  • {
    },
  • {
    }
]

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

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

Request samples

Content type
application/json
[
  • {
    },
  • {
    }
]

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

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

Request samples

Content type
application/json
[
  • {
    },
  • {
    }
]

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

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

Request samples

Content type
application/json
{
  • "makoId": "7741327b-a91d-4c7c-a80b-2b9482c93826",
  • "licenceCode": "string"
}

Response samples

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

Request samples

Content type
application/json
Example

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": {
    },
  • "phoneNumber": "+18008514691",
  • "faxNumber": "+18008514691",
  • "makoModel": "Mako 6500-M"
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

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

Request samples

Content type
application/json
Example

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": {
    },
  • "phoneNumber": "1240912491724912412",
  • "templateId": "2a8e4a67-d97e-42f4-b757-071cfdc4f5e7",
  • "copyDhcpLeases": false,
  • "copyInternetPasswords": false,
  • "snatMapping": [
    ]
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

applyCompanyLicensesToMako

Apply licenses from company license pool to mako

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

Responses

Response samples

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

Response samples

Content type
application/json
{
  • "status": "OK"
}

deleteMako

Delete mako

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

Responses

Response samples

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

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

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

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

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

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

getInterfacesForMako

Get a list of Interfaces for Mako.

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

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

getMako

Get mako by ID

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

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

getMakoByMac

Get Mako by MAC address

path Parameters
macAddress
required
string
Example: 10:30:22:33:11:44

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

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

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

listMakos

List Makos for company

path Parameters
companyId
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

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

Request samples

Content type
application/json
{
  • "makoId": "06d0dee3-ee0a-4cac-af90-09c1a89d0bd4",
  • "enterpriseTemplateId": "61000d29-3f6e-405a-a764-9666766a6d13"
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

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

Request samples

Content type
application/json
{
  • "makoId": "06d0dee3-ee0a-4cac-af90-09c1a89d0bd4",
  • "enterpriseTemplateId": "61000d29-3f6e-405a-a764-9666766a6d13"
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

updateMako

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

Request samples

Content type
application/json
{
  • "name": "Example Mako"
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

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

Response samples

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

Response samples

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

Response samples

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

Response samples

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

Response samples

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

Response samples

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

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

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

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

getMetadataByMako

Find Mako Device Metadata by Mako Device UUID.

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

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

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

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

getMetadataBySite

Find Site Metadata by site UUID.

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

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

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

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

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

Request samples

Content type
application/json
{
  • "key": "mkn5",
  • "value": "someVal"
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

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

Request samples

Content type
application/json
{
  • "key": "mkn5",
  • "value": "someVal"
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

putMetadataForSite_1

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

Request samples

Content type
application/json
{
  • "key": "mkn5",
  • "value": "someVal"
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

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

Request samples

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

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

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

Request samples

Content type
application/json
[
  • {
    },
  • {
    }
]

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

putMetadataForSite

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

Request samples

Content type
application/json
[
  • {
    },
  • {
    }
]

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

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

Request samples

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": {
    },
  • "phoneNumber": "123423423"
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

deletePerson

Delete person

path Parameters
personId
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "status": "OK"
}

getPerson

Get person by ID

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

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

getPersonByUsername

Get person by username

path Parameters
username
required
string
Example: testuser

Username

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

listPeople

List people for a company

path Parameters
companyId
required
string <uuid>
Example: ae696d15-d9d8-4694-b1be-de6a8dd14f18

Company ID

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

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

Request samples

Content type
application/json

Create a Site

{
  • "companyId": "06d0dee3-ee0a-4cac-af90-09c1a89d0bd4",
  • "name": "Example Site",
  • "reference": "Some Reference",
  • "address": {
    },
  • "phoneNumber": "+18008514691",
  • "faxNumber": "+18008514691",
  • "latitude": 42.06,
  • "longitude": -88.31
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

assignMakoToSite

Assign Mako to Site

Request Body schema: application/json
siteId
required
string <uuid>

Site ID

makoId
required
string <uuid>

Mako ID

Responses

Request samples

Content type
application/json

Assign a Mako to Site

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

Response samples

Content type
application/json
{
  • "status": "OK"
}

deleteSite

Delete Site

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

Responses

Response samples

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

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

getSite

Get Site by ID

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

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

listSites

List Sites for company

path Parameters
companyId
required
string <uuid>

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

updateSite

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

Request samples

Content type
application/json
{
  • "name": "Example Site",
  • "reference": "Some Reference",
  • "address": {
    },
  • "phoneNumber": "+18008514691",
  • "faxNumber": "+18008514691",
  • "latitude": 42.06,
  • "longitude": -88.31
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

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

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

getVpnCloudMemberships

Get VPN Clouds the Mako is a member of

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

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

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

Response samples

Content type
application/json

One interface with custom configuration, and one with default

{
  • "status": "OK",
  • "body": [
    ]
}

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

Request samples

Content type
application/json
{
  • "makoId": "06d0dee3-ee0a-4cac-af90-09c1a89d0bd4",
  • "vpnCloudId": "61000d29-3f6e-405a-a764-9666766a6d13"
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

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

Request samples

Content type
application/json
{
  • "makoId": "06d0dee3-ee0a-4cac-af90-09c1a89d0bd4",
  • "vpnCloudId": "61000d29-3f6e-405a-a764-9666766a6d13"
}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

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

Request samples

Content type
application/json
{
  • "makoId": "06d0dee3-ee0a-4cac-af90-09c1a89d0bd4",
  • "vpnCloudId": "61000d29-3f6e-405a-a764-9666766a6d13",
  • "cipherSuite": "ECDHE_ECDSA_AES128_GCM",
  • "interfaceConfiguration": [
    ]
}

Response samples

Content type
application/json

One interface with custom configuration, and one with default

{
  • "status": "OK",
  • "body": [
    ]
}

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

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

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

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

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

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

rebobotByMako

Reboots this Mako Device

path Parameters
makoId
required
string <uuid>
Example: ac68adfc-6d80-4e43-947a-66070e244fee

Mako ID

Responses

Response samples

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

Response samples

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

Response samples

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

Response samples

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

Response samples

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

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

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

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

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

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

getMakoDeviceStateBySite

Retrieve the state of all Mako devices at a site

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

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

getMakoOnlineStatus

Retrieve the online status of a Mako device

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

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

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

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

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

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

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

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

getMakoStatus

Retrieve the status of a Mako device

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

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": {
    }
}

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

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

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

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

getMakoStatusBySite

Retrieve the status of all Mako devices at a site

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

Responses

Response samples

Content type
application/json
{
  • "status": "OK",
  • "body": [
    ]
}

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

Response samples

Content type
application/json
{
  • "access_token": "YUMCABTl0kzM",
  • "token_type": "Bearer",
  • "expires_in": 14400
}