Version 1.66.0 to 1.66.0-beta.0


Summary of Changes

265 - New

195 - Updated

1186 - Total Endpoints

856 - Total Paths



Added

[ wirelessController ]

regulatoryDomain

Docs

Generate the regulatory domain package

Operation ID: generateOrganizationWirelessControllerRegulatoryDomainPackage

PATH /organizations/{organizationId}/wirelessController/regulatoryDomain/package/generate

{
  "content": {
    "devices": [
      {
        "serial": "Q234-ABCD-5678",
        "mac": "00:11:22:33:44:55",
        "regulatoryDomain": {
          "country": "US",
          "method": "manual"
        }
      }
    ],
    "details": {
      "schemaVersion": "1.0.0",
      "organizationId": "2930418",
      "createdAt": "2018-05-12T00:00:00Z",
      "counts": {
        "devices": 1
      },
      "createdBy": {
        "id": "212406",
        "email": "miles@meraki.com"
      }
    }
  },
  "signature": "a1b2c3d4e5f6g7h8i9j0",
  "certificates": [
    {
      "purpose": "signature",
      "content": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tIE1JSUZZRENDQTBpZ0F3SUJBZ0lRQ2dGQ2dBQUFBVVVqeQ=="
    }
  ]
}

- Path added

- New endpoint

Generate the regulatory domain package

POST /organizations/{organizationId}/wirelessController/regulatoryDomain/package/generate



connections

Docs

List of unassigned Catalyst access points and summary information

Operation ID: getOrganizationWirelessControllerConnectionsUnassigned

PATH /organizations/{organizationId}/wirelessController/connections/unassigned

{
  "items": [
    {
      "id": "958271979973",
      "name": "MBY-CON-NCC_HLWY-24",
      "model": "AIR-AP1815I-B-K9",
      "serial": "",
      "mac": "8c:94:1f:97:54:01",
      "onboarding": {
        "isSupported": true,
        "status": "unregistered",
        "errors": [
          "DNS failure"
        ]
      },
      "tags": {
        "policy": "default-policy-tag",
        "site": "default-site-tag",
        "rf": "default-rf-tag"
      },
      "details": [
        {
          "name": "Catalyst serial",
          "value": "FCW2325N3RY"
        }
      ],
      "uplinks": [
        {
          "addresses": [
            {
              "address": "10.104.55.4"
            }
          ]
        }
      ],
      "controller": {
        "serial": "A2CC-8TYV-VCO9"
      }
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 1,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

List of unassigned Catalyst access points and summary information

GET /organizations/{organizationId}/wirelessController/connections/unassigned



[ support ]

salesRepresentatives

Docs

Returns the organization's sales representatives

Operation ID: getOrganizationSupportSalesRepresentatives

PATH /organizations/{organizationId}/support/salesRepresentatives

[
  {
    "name": "Miles Meraki",
    "email": "miles@meraki.com",
    "phone": "+15555555555"
  }
]

- Path added

- New endpoint

Returns the organization's sales representatives

GET /organizations/{organizationId}/support/salesRepresentatives



[ sm ]

bulkEnrollment

Docs

Create a PccBulkEnrollmentToken

Operation ID: createOrganizationSmBulkEnrollmentToken

PATH /organizations/{organizationId}/sm/bulkEnrollment/token

{
  "id": "1284392014819",
  "networkId": "N_24329156",
  "expiresAt": "2023-10-15T00:00:00Z",
  "rawToken": "MMbCbpHZtG3TKUCr9B9uc5"
}

- Path added

- New endpoint

Create a PccBulkEnrollmentToken

POST /organizations/{organizationId}/sm/bulkEnrollment/token



Docs

Return a BulkEnrollmentToken

Operation ID: getOrganizationSmBulkEnrollmentToken

PATH /organizations/{organizationId}/sm/bulkEnrollment/token/{tokenId}

{
  "id": "1284392014819",
  "networkId": "N_24329156",
  "expiresAt": "2023-10-15T00:00:00Z"
}

- Path added

- New endpoint

Return a BulkEnrollmentToken

GET /organizations/{organizationId}/sm/bulkEnrollment/token/{tokenId}


- New endpoint

Update a PccBulkEnrollmentToken

PUT /organizations/{organizationId}/sm/bulkEnrollment/token/{tokenId}


- New endpoint

Delete a PccBulkEnrollmentToken

DELETE /organizations/{organizationId}/sm/bulkEnrollment/token/{tokenId}



Docs

List all BulkEnrollmentTokens for an organization.

Operation ID: getOrganizationSmBulkEnrollmentTokens

PATH /organizations/{organizationId}/sm/bulkEnrollment/tokens

[
  {
    "id": "1284392014819",
    "networkId": "N_24329156",
    "expiresAt": "2023-10-15T00:00:00Z"
  }
]

- Path added

- New endpoint

List all BulkEnrollmentTokens for an organization.

GET /organizations/{organizationId}/sm/bulkEnrollment/tokens



apple

Docs

Enqueue a sync job for an ADE account

Operation ID: createOrganizationSmAppleCloudEnrollmentSyncJob

PATH /organizations/{organizationId}/sm/apple/cloudEnrollment/syncJobs

{
  "syncJobId": "1284392014819",
  "adeAccountId": "1284392014819",
  "status": "pending"
}

- Path added

- New endpoint

Enqueue a sync job for an ADE account

POST /organizations/{organizationId}/sm/apple/cloudEnrollment/syncJobs



Docs

Retrieve the status of an ADE sync job

Operation ID: getOrganizationSmAppleCloudEnrollmentSyncJob

PATH /organizations/{organizationId}/sm/apple/cloudEnrollment/syncJobs/{syncJobId}

{
  "syncJobId": "1284392014819",
  "adeAccountId": "1284392014819",
  "status": "pending"
}

- Path added

- New endpoint

Retrieve the status of an ADE sync job

GET /organizations/{organizationId}/sm/apple/cloudEnrollment/syncJobs/{syncJobId}



[ secureConnect ]

sites

Docs

List sites in this organization

Operation ID: getOrganizationSecureConnectSites

PATH /organizations/{organizationId}/secureConnect/sites

{
  "data": [
    {
      "id": "123",
      "type": "MerakiSpoke",
      "name": "London Office",
      "region": "US East",
      "deviceType": "MX95-HW",
      "address": "123 Main St",
      "enrolled": true,
      "vpnType": "Hub",
      "defaultRoute": true
    }
  ],
  "meta": {
    "total": 1
  }
}

- Path added

- New endpoint

List sites in this organization

GET /organizations/{organizationId}/secureConnect/sites


- New endpoint

Enroll sites in this organization to Secure Connect. For an organization, a maximum of 4000 sites can be enrolled if they are in spoke mode or a maximum of 10 sites can be enrolled in hub mode.

POST /organizations/{organizationId}/secureConnect/sites


- New endpoint

Detach given sites from Secure Connect

DELETE /organizations/{organizationId}/secureConnect/sites



remoteAccessLogsExports

Docs

Provides a list of remote access logs exports for an Organization

Operation ID: getOrganizationSecureConnectRemoteAccessLogsExports

PATH /organizations/{organizationId}/secureConnect/remoteAccessLogsExports

{
  "data": [
    {
      "id": "123",
      "from": "2023-05-16 04:23:43 UTC",
      "to": "2023-06-14 04:23:52 UTC",
      "userEmail": "joe@meraki.net",
      "status": "new",
      "metadata": {
        "fileCount": 0,
        "logCount": 0,
        "currentFileLogCount": 0,
        "generatorCount": 0,
        "limitReached": false,
        "startedAt": "2023-05-15 21:23:43.388597",
        "endedAt": "2023-05-15 21:23:43.388597",
        "duration": 60
      }
    }
  ],
  "meta": {
    "total": 1
  }
}

- Path added

- New endpoint

Provides a list of remote access logs exports for an Organization

GET /organizations/{organizationId}/secureConnect/remoteAccessLogsExports


- New endpoint

Creates a export for a provided timestamp interval.

POST /organizations/{organizationId}/secureConnect/remoteAccessLogsExports



Docs

Operation ID: getOrganizationSecureConnectRemoteAccessLogsExportsDownload

PATH /organizations/{organizationId}/secureConnect/remoteAccessLogsExports/download

{
  "link": "download"
}

- Path added

- New endpoint

GET /organizations/{organizationId}/secureConnect/remoteAccessLogsExports/download



Docs

Return the details of a specific remote access logs export

Operation ID: getOrganizationSecureConnectRemoteAccessLogsExport

PATH /organizations/{organizationId}/secureConnect/remoteAccessLogsExports/{id}

{
  "id": "123",
  "from": "2023-05-16 04:23:43 UTC",
  "to": "2023-06-14 04:23:52 UTC",
  "userEmail": "joe@meraki.net",
  "status": "new",
  "metadata": {
    "fileCount": 0,
    "logCount": 0,
    "currentFileLogCount": 0,
    "generatorCount": 0,
    "limitReached": false,
    "startedAt": "2023-05-15 21:23:43.388597",
    "endedAt": "2023-05-15 21:23:43.388597",
    "duration": 60
  }
}

- Path added

- New endpoint

Return the details of a specific remote access logs export

GET /organizations/{organizationId}/secureConnect/remoteAccessLogsExports/{id}



remoteAccessLog

Docs

List the latest 5000 events logged by remote access.

Operation ID: getOrganizationSecureConnectRemoteAccessLog

PATH /organizations/{organizationId}/secureConnect/remoteAccessLog

{
  "data": [
    {
      "osversion": "win-10.0.19044",
      "internalip": "10.0.1.5",
      "connecttimestamp": 1667252442,
      "identities": [
        {
          "id": "1173502975",
          "type": {
            "id": "7",
            "type": "directory_user",
            "label": "AD Users"
          },
          "label": "sample-remote-access@cisco.com",
          "deleted": false
        }
      ],
      "reason": "ACCT_DISC_USER_REQ",
      "failedreasons": [],
      "connectionevent": "disconnected",
      "anyconnectversion": "4.10.05095",
      "timestamp": 1667252458
    }
  ],
  "meta": {
    "total": 1
  }
}

- Path added

- New endpoint

List the latest 5000 events logged by remote access.

GET /organizations/{organizationId}/secureConnect/remoteAccessLog



regions

Docs

List deployed cloud hubs and regions in this organization

Operation ID: getOrganizationSecureConnectRegions

PATH /organizations/{organizationId}/secureConnect/regions

{
  "data": [
    {
      "id": "123",
      "type": "Region",
      "name": "US West Coast",
      "dcPair": [
        "Los Angeles",
        "Palo Alto"
      ]
    }
  ],
  "meta": {
    "maxTotalCloudHubs": 5
  }
}

- Path added

- New endpoint

List deployed cloud hubs and regions in this organization

GET /organizations/{organizationId}/secureConnect/regions



publicApplications

Docs

Provides a list of public applications for an Organization.

Operation ID: getOrganizationSecureConnectPublicApplications

PATH /organizations/{organizationId}/secureConnect/publicApplications

{
  "items": [
    {
      "id": "ABCDEFG",
      "name": "Snapcraft",
      "lastDetected": "2021-12-13T16:07:07.222Z",
      "risk": "medium",
      "category": "Application Development and Testing",
      "appType": "paas"
    }
  ],
  "meta": {
    "total": 1
  }
}

- Path added

- New endpoint

Provides a list of public applications for an Organization.

GET /organizations/{organizationId}/secureConnect/publicApplications



privateResources

Docs

Provides a list of private resources for an organization.

Operation ID: getOrganizationSecureConnectPrivateResources

PATH /organizations/{organizationId}/secureConnect/privateResources

{
  "data": [
    {
      "resourceId": "5",
      "name": "Sample Resource Name",
      "description": "A sample description",
      "accessTypes": [
        {
          "type": "client",
          "reachableAddresses": [
            "192.0.0.0"
          ]
        }
      ],
      "resourceAddresses": [
        {
          "protocolPorts": [
            {
              "protocol": "any",
              "ports": "80"
            }
          ],
          "destinationAddr": [
            "192.0.0.0"
          ]
        }
      ],
      "resourceGroupIds": [
        "1122321"
      ],
      "dnsServerId": "12345",
      "certificateId": "54321",
      "organizationId": "106642",
      "createdAt": "2024-03-06T15:11:55.323445Z",
      "updatedAt": "2024-03-06T15:11:55.323445Z",
      "deletedAt": "2024-03-06T15:11:55.323445Z",
      "umbrellaResourceId": "123",
      "umbrellaResourceCreatedAt": "2024-03-06T15:11:55.323445Z",
      "umbrellaResourceUpdatedAt": "2024-03-06T15:11:55.323445Z",
      "umbrellaResourceDeletedAt": "2024-03-06T15:11:55.323445Z",
      "umbrellaResourceCreatedBy": "",
      "umbrellaResourceModifiedBy": "",
      "umbrellaResourceErrorMessage": "",
      "umbrellaApplicationId": "321",
      "umbrellaApplicationCreatedAt": "2024-03-06T15:11:55.323445Z",
      "umbrellaApplicationUpdatedAt": "2024-03-06T15:11:55.323445Z",
      "umbrellaApplicationDeletedAt": "2024-03-06T15:11:55.323445Z",
      "umbrellaApplicationErrorMessage": ""
    }
  ],
  "meta": {
    "total": 1
  }
}

- Path added

- New endpoint

Provides a list of private resources for an organization.

GET /organizations/{organizationId}/secureConnect/privateResources


- New endpoint

Adds a new private resource to the organization.

POST /organizations/{organizationId}/secureConnect/privateResources



Docs

Updates a specific private resource.

Operation ID: updateOrganizationSecureConnectPrivateResource

PATH /organizations/{organizationId}/secureConnect/privateResources/{id}

{
  "resourceId": "5",
  "name": "Sample Resource Name",
  "description": "A sample description",
  "accessTypes": [
    {
      "type": "client",
      "reachableAddresses": [
        "192.0.0.0"
      ]
    }
  ],
  "resourceAddresses": [
    {
      "protocolPorts": [
        {
          "protocol": "any",
          "ports": "80"
        }
      ],
      "destinationAddr": [
        "192.0.0.0"
      ]
    }
  ],
  "resourceGroupIds": [
    "1122321"
  ],
  "dnsServerId": "12345",
  "certificateId": "54321",
  "organizationId": "106642",
  "createdAt": "2024-03-06T15:11:55.323445Z",
  "updatedAt": "2024-03-06T15:11:55.323445Z",
  "deletedAt": "2024-03-06T15:11:55.323445Z",
  "umbrellaResourceId": "123",
  "umbrellaResourceCreatedAt": "2024-03-06T15:11:55.323445Z",
  "umbrellaResourceUpdatedAt": "2024-03-06T15:11:55.323445Z",
  "umbrellaResourceDeletedAt": "2024-03-06T15:11:55.323445Z",
  "umbrellaResourceCreatedBy": "",
  "umbrellaResourceModifiedBy": "",
  "umbrellaResourceErrorMessage": "",
  "umbrellaApplicationId": "321",
  "umbrellaApplicationCreatedAt": "2024-03-06T15:11:55.323445Z",
  "umbrellaApplicationUpdatedAt": "2024-03-06T15:11:55.323445Z",
  "umbrellaApplicationDeletedAt": "2024-03-06T15:11:55.323445Z",
  "umbrellaApplicationErrorMessage": ""
}

- Path added

- New endpoint

Updates a specific private resource.

PUT /organizations/{organizationId}/secureConnect/privateResources/{id}


- New endpoint

Deletes a specific private resource. If this is the last resource in a resource group you must remove it from that resource group before deleting.

DELETE /organizations/{organizationId}/secureConnect/privateResources/{id}



privateResourceGroups

Docs

Provides a list of the private resource groups in an organization.

Operation ID: getOrganizationSecureConnectPrivateResourceGroups

PATH /organizations/{organizationId}/secureConnect/privateResourceGroups

{
  "data": [
    {
      "resourceGroupId": "123",
      "createdAt": "2024-03-06T15:11:55.323445Z",
      "updatedAt": "2024-03-06T15:11:55.323445Z",
      "name": "group 2",
      "description": "",
      "resourceIds": [
        "12345"
      ]
    }
  ]
}

- Path added

- New endpoint

Provides a list of the private resource groups in an organization.

GET /organizations/{organizationId}/secureConnect/privateResourceGroups


- New endpoint

Adds a new private resource group to an organization.

POST /organizations/{organizationId}/secureConnect/privateResourceGroups



Docs

Updates a specific private resource group.

Operation ID: updateOrganizationSecureConnectPrivateResourceGroup

PATH /organizations/{organizationId}/secureConnect/privateResourceGroups/{id}

{
  "data": [
    {
      "resourceGroupId": "123",
      "createdAt": "2024-03-06T15:11:55.323445Z",
      "updatedAt": "2024-03-06T15:11:55.323445Z",
      "name": "group 2",
      "description": "",
      "resourceIds": [
        "12345"
      ]
    }
  ]
}

- Path added

- New endpoint

Updates a specific private resource group.

PUT /organizations/{organizationId}/secureConnect/privateResourceGroups/{id}


- New endpoint

Deletes a specific private resource group.

DELETE /organizations/{organizationId}/secureConnect/privateResourceGroups/{id}



privateApplications

Docs

Provides a list of private applications for an Organization.

Operation ID: getOrganizationSecureConnectPrivateApplications

PATH /organizations/{organizationId}/secureConnect/privateApplications

{
  "data": [
    {
      "applicationId": "183456",
      "name": "Jira",
      "description": "Jira App For My Org",
      "destinations": [
        {
          "destinationAddr": [
            "172.6.0.0/32",
            "255.100.100.0/24"
          ],
          "protocolPorts": [
            {
              "protocol": "TCP",
              "ports": "80-82"
            }
          ],
          "accessType": "network"
        }
      ],
      "appProtocol": "https",
      "sni": "xyz123.jira.com",
      "externalFQDN": "https://jira-5001.ztna.ciscoplus.com",
      "sslVerificationEnabled": true,
      "applicationGroupIds": [
        "1122321"
      ],
      "createdAt": "2021-12-13T16:07:07.222000Z",
      "modifiedAt": "2021-12-13T16:07:07.222000Z"
    }
  ],
  "meta": {
    "total": 1
  }
}

- Path added

- New endpoint

Provides a list of private applications for an Organization.

GET /organizations/{organizationId}/secureConnect/privateApplications


- New endpoint

Adds a new private application to the Organization. A maximum of 300 private applications are allowed for an organization.

POST /organizations/{organizationId}/secureConnect/privateApplications



Docs

Updates a specific private application

Operation ID: updateOrganizationSecureConnectPrivateApplication

PATH /organizations/{organizationId}/secureConnect/privateApplications/{id}

{
  "applicationId": "183456",
  "name": "Jira",
  "description": "Jira App For My Org",
  "destinations": [
    {
      "destinationAddr": [
        "172.6.0.0/32",
        "255.100.100.0/24"
      ],
      "protocolPorts": [
        {
          "protocol": "TCP",
          "ports": "80-82"
        }
      ],
      "accessType": "network"
    }
  ],
  "appProtocol": "https",
  "sni": "xyz123.jira.com",
  "externalFQDN": "https://jira-5001.ztna.ciscoplus.com",
  "sslVerificationEnabled": true,
  "applicationGroupIds": [
    "1122321"
  ],
  "createdAt": "2021-12-13T16:07:07.222000Z",
  "modifiedAt": "2021-12-13T16:07:07.222000Z"
}

- Path added

- New endpoint

Return the details of a specific private application

GET /organizations/{organizationId}/secureConnect/privateApplications/{id}


- New endpoint

Updates a specific private application. Updates can be made to Name, Description, Destinations, App Protocol, SNI and SSL verification. Application groups can be added or removed.

PUT /organizations/{organizationId}/secureConnect/privateApplications/{id}


- New endpoint

DELETE /organizations/{organizationId}/secureConnect/privateApplications/{id}



privateApplicationGroups

Docs

Provides a list of private application groups for an Organization

Operation ID: getOrganizationSecureConnectPrivateApplicationGroups

PATH /organizations/{organizationId}/secureConnect/privateApplicationGroups

{
  "data": [
    {
      "applicationGroupId": "1122321",
      "name": "Westcoast Data Center",
      "description": "Private applications in Westcoast Data Center",
      "applicationIds": [
        "183456",
        "123568"
      ],
      "createdAt": "2021-12-13T16:07:07.222Z",
      "modifiedAt": "2021-12-13T16:07:07.222Z"
    }
  ],
  "meta": {
    "total": 1
  }
}

- Path added

- New endpoint

Provides a list of private application groups for an Organization

GET /organizations/{organizationId}/secureConnect/privateApplicationGroups


- New endpoint

Creates a group of private applications to apply to policy. A maximum of 300 private application groups are allowed for an organization.

POST /organizations/{organizationId}/secureConnect/privateApplicationGroups



Docs

Update an application group in an Organization

Operation ID: updateOrganizationSecureConnectPrivateApplicationGroup

PATH /organizations/{organizationId}/secureConnect/privateApplicationGroups/{id}

{
  "applicationGroupId": "1122321",
  "name": "Westcoast Data Center",
  "description": "Private applications in Westcoast Data Center",
  "applicationIds": [
    "183456",
    "123568"
  ],
  "createdAt": "2021-12-13T16:07:07.222Z",
  "modifiedAt": "2021-12-13T16:07:07.222Z"
}

- Path added

- New endpoint

Return the details of a specific private application group

GET /organizations/{organizationId}/secureConnect/privateApplicationGroups/{id}


- New endpoint

Update an application group in an Organization. Updates are allowed on Group Name and Group Description. Applications can be added or removed. Group type and Policy cannot be changed.

PUT /organizations/{organizationId}/secureConnect/privateApplicationGroups/{id}


- New endpoint

Deletes private application group from an Organization. Detaches application from groups before deleting

DELETE /organizations/{organizationId}/secureConnect/privateApplicationGroups/{id}



[ users ]

iam

Docs

List specific authorizations for the list of Meraki end users.

Operation ID: getOrganizationIamUsersAuthorizations

PATH /organizations/{organizationId}/iam/users/authorizations

{
  "items": [
    {
      "authorizationId": "1284392014819",
      "idpUserId": "1284392014819",
      "expiresAt": "2018-02-11T00:00:00Z",
      "startsAt": "2018-05-12T00:00:00Z",
      "selfRegistered": false,
      "status": "authorized",
      "authZone": {
        "id": "1284392014819",
        "name": "SFO"
      },
      "authorizer": {
        "name": "John Doe"
      },
      "createdAt": "2018-02-11T00:00:00Z",
      "lastUpdatedAt": "2018-05-12T00:00:00Z"
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 10,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

List specific authorizations for the list of Meraki end users.

GET /organizations/{organizationId}/iam/users/authorizations


- New endpoint

Authorize a Meraki end user for an auth zone.

POST /organizations/{organizationId}/iam/users/authorizations


- New endpoint

Update a Meraki end user's access to an auth zone.

PUT /organizations/{organizationId}/iam/users/authorizations



Docs

Revoke a Meraki end user's access to an auth zone.

Operation ID: revokeOrganizationIamUsersAuthorizationsAuthorization

PATH /organizations/{organizationId}/iam/users/authorizations/authorization/revoke

- Path added

- New endpoint

Revoke a Meraki end user's access to an auth zone.

POST /organizations/{organizationId}/iam/users/authorizations/authorization/revoke



Docs

List all of the available auth zones for an organization.

Operation ID: getOrganizationIamUsersAuthorizationsZones

PATH /organizations/{organizationId}/iam/users/authorizations/zones

{
  "items": [
    {
      "id": "1284392014819",
      "name": "Main Office",
      "type": "Client VPN",
      "network": {
        "id": "1284392014819",
        "name": "Main Office"
      }
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 10,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

List all of the available auth zones for an organization.

GET /organizations/{organizationId}/iam/users/authorizations/zones



Docs

Delete an authorization for a Meraki end user.

Operation ID: deleteOrganizationIamUsersAuthorization

PATH /organizations/{organizationId}/iam/users/authorizations/{authorizationId}

- Path added

- New endpoint

Delete an authorization for a Meraki end user.

DELETE /organizations/{organizationId}/iam/users/authorizations/{authorizationId}



Docs

Create an identity provider for an organization

Operation ID: createOrganizationIamUsersIdp

PATH /organizations/{organizationId}/iam/users/idps

{
  "idpId": "1284392014819",
  "name": "My Entra ID",
  "description": "Some description",
  "type": "Azure AD",
  "syncable": true,
  "syncType": "proactive",
  "createdAt": "2018-02-11T00:00:00Z",
  "lastUpdatedAt": "2018-05-12T00:00:00Z"
}

- Path added

- New endpoint

Create an identity provider for an organization. Only Entra ID(Azure AD) is supported at this time.

POST /organizations/{organizationId}/iam/users/idps



Docs

Search all IdP groups for an organization

Operation ID: searchOrganizationIdpGroups

PATH /organizations/{organizationId}/iam/users/idps/groups/search

{
  "items": [
    {
      "groupId": "1284392014819",
      "idpId": "1284392014819",
      "name": "sample idp group",
      "externalId": "f5a28b7d-e41c-41a2-8b0f-244a4123c5d7",
      "metadata": {
        "someKey": "value"
      },
      "idp": {
        "id": "1284392014819",
        "name": "Azure AD IdP",
        "type": "Azure AD"
      }
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 10,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

Search all IdP groups for an organization. Filter by IdP IDs and Auth Zone. Parameters are assembled as an AND query.

POST /organizations/{organizationId}/iam/users/idps/groups/search



Docs

List all available IdP Product Integration urls for the organization

Operation ID: getOrganizationIamUsersIdpsProductIntegrations

PATH /organizations/{organizationId}/iam/users/idps/productIntegrations

[
  {
    "productIntegrationId": "access_manager",
    "name": "Access Manager",
    "description": "Use this IdP in your policies to control access to your resources.",
    "url": ""
  }
]

- Path added

- New endpoint

List all available IdP Product Integration urls for the organization

GET /organizations/{organizationId}/iam/users/idps/productIntegrations



Docs

Search all IdPs for an organization

Operation ID: createOrganizationIamUsersIdpsSearch

PATH /organizations/{organizationId}/iam/users/idps/search

{
  "items": [
    {
      "idpId": "1284392014819",
      "name": "My Entra ID",
      "description": "Some description",
      "type": "Azure AD",
      "syncable": true,
      "syncType": "proactive",
      "createdAt": "2018-02-11T00:00:00Z",
      "lastUpdatedAt": "2018-05-12T00:00:00Z"
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 10,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

Search all IdPs for an organization. Filter by IdP ID, IdP type, and Auth Zone. Parameters are assembled as an AND query.

POST /organizations/{organizationId}/iam/users/idps/search



Docs

Get the IdP sync status records for an organization

Operation ID: getOrganizationIamUsersIdpsSyncHistory

PATH /organizations/{organizationId}/iam/users/idps/sync/history

{
  "items": [
    {
      "idpSyncId": "1284392014819",
      "idpId": "1284392014819",
      "status": "In Progress",
      "message": "sync was queued 10 minutes",
      "createdAt": "2018-02-11T00:00:00Z",
      "lastUpdatedAt": "2018-05-12T00:00:00Z"
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 10,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

Get the IdP sync status records for an organization. Only Entra ID(Azure AD) is supported at this time.

GET /organizations/{organizationId}/iam/users/idps/sync/history



Docs

Get the latest IdP sync status records for all IdPs in an organization

Operation ID: getOrganizationIamUsersIdpsSyncLatest

PATH /organizations/{organizationId}/iam/users/idps/sync/latest

{
  "items": [
    {
      "idpSyncId": "1284392014819",
      "idpId": "1284392014819",
      "status": "In Progress",
      "message": "sync was queued 10 minutes",
      "syncedBy": "api",
      "createdAt": "2018-02-11T00:00:00Z",
      "lastUpdatedAt": "2018-05-12T00:00:00Z"
    }
  ]
}

- Path added

- New endpoint

Get the latest IdP sync status records for all IdPs in an organization. Only Entra ID(Azure AD) is supported at this time.

GET /organizations/{organizationId}/iam/users/idps/sync/latest



Docs

Test connectivity to an Entra ID identity provider.

Operation ID: createOrganizationIamUsersIdpsTestConnectivity

PATH /organizations/{organizationId}/iam/users/idps/testConnectivity

{
  "result": "failure",
  "errors": [
    {
      "code": "AADSTS7000215",
      "message": "Invalid client secret provided."
    }
  ]
}

- Path added

- New endpoint

Test connectivity to an Entra ID identity provider.

POST /organizations/{organizationId}/iam/users/idps/testConnectivity



Docs

Create a Meraki user

Operation ID: createOrganizationIamUsersIdpsUser

PATH /organizations/{organizationId}/iam/users/idps/users

{
  "idpUserId": "1284392014819",
  "idp": {
    "id": "1284392014819",
    "name": "Azure AD IdP",
    "type": "azure_ad"
  },
  "upn": "mdavis@meraki.com",
  "displayName": "Miles Davis",
  "externalId": "azure AD Id",
  "accessTypes": [
    "Wireless",
    "Client VPN"
  ],
  "createdAt": "2018-02-11T00:00:00Z",
  "lastUpdatedAt": "2018-05-12T00:00:00Z",
  "groups": [
    {
      "id": "1",
      "name": "Group name"
    }
  ]
}

- Path added

- New endpoint

Create a Meraki user

POST /organizations/{organizationId}/iam/users/idps/users



Docs

Update a Meraki user

Operation ID: updateOrganizationIamUsersIdpsUser

PATH /organizations/{organizationId}/iam/users/idps/users/{id}

{
  "idpUserId": "1284392014819",
  "idp": {
    "id": "1284392014819",
    "name": "Azure AD IdP",
    "type": "azure_ad"
  },
  "upn": "mdavis@meraki.com",
  "displayName": "Miles Davis",
  "externalId": "azure AD Id",
  "accessTypes": [
    "Wireless",
    "Client VPN"
  ],
  "createdAt": "2018-02-11T00:00:00Z",
  "lastUpdatedAt": "2018-05-12T00:00:00Z",
  "groups": [
    {
      "id": "1",
      "name": "Group name"
    }
  ]
}

- Path added

- New endpoint

Update a Meraki user

PUT /organizations/{organizationId}/iam/users/idps/users/{id}


- New endpoint

Delete a Meraki end user

DELETE /organizations/{organizationId}/iam/users/idps/users/{id}



Docs

Trigger an IdP sync for an identity provider

Operation ID: createOrganizationIamUsersIdpSync

PATH /organizations/{organizationId}/iam/users/idps/{idpId}/sync

{
  "idpSyncId": "1284392014819",
  "idpId": "1284392014819",
  "status": "In Progress",
  "message": "sync was queued 10 minutes",
  "syncedBy": "api",
  "createdAt": "2018-02-11T00:00:00Z",
  "lastUpdatedAt": "2018-05-12T00:00:00Z"
}

- Path added

- New endpoint

Trigger an IdP sync for an identity provider. Only Entra ID(Azure AD) is supported at this time.

POST /organizations/{organizationId}/iam/users/idps/{idpId}/sync



Docs

Get the latest IdP sync status for an identity provider

Operation ID: getOrganizationIamUsersIdpSyncLatest

PATH /organizations/{organizationId}/iam/users/idps/{idpId}/sync/latest

{
  "idpSyncId": "1284392014819",
  "status": "In Progress",
  "message": "sync was queued 10 minutes",
  "createdAt": "2018-02-11T00:00:00Z",
  "lastUpdatedAt": "2018-05-12T00:00:00Z"
}

- Path added

- New endpoint

Get the latest IdP sync status for an identity provider. Only Entra ID(Azure AD) is supported at this time.

GET /organizations/{organizationId}/iam/users/idps/{idpId}/sync/latest



Docs

Update an identity provider

Operation ID: updateOrganizationIamUsersIdp

PATH /organizations/{organizationId}/iam/users/idps/{id}

{
  "idpId": "1284392014819",
  "name": "My Entra ID",
  "description": "Some description",
  "type": "Azure AD",
  "syncable": true,
  "syncType": "proactive",
  "createdAt": "2018-02-11T00:00:00Z",
  "lastUpdatedAt": "2018-05-12T00:00:00Z"
}

- Path added

- New endpoint

Update an identity provider. Only Entra ID(Azure AD) is supported at this time.

PUT /organizations/{organizationId}/iam/users/idps/{id}


- New endpoint

Delete a identity provider from an organization. Only Entra ID(Azure AD) is supported at this time.

DELETE /organizations/{organizationId}/iam/users/idps/{id}



Docs

List all auth zones for an identity provider

Operation ID: getOrganizationIamUsersIdpAuthZones

PATH /organizations/{organizationId}/iam/users/idps/{id}/authZones

{
  "items": [
    {
      "id": "1284392014819",
      "name": "Main Office",
      "type": "Client VPN",
      "network": {
        "id": "1284392014819",
        "name": "Main Office"
      }
    }
  ]
}

- Path added

- New endpoint

List all auth zones for an identity provider

GET /organizations/{organizationId}/iam/users/idps/{id}/authZones



Docs

List the end users and their associated identity providers for an organization.

Operation ID: searchOrganizationUsers

PATH /organizations/{organizationId}/iam/users/search

{
  "items": [
    {
      "userId": "1284392014819",
      "upn": "mdavis@meraki.com",
      "idpUsers": [
        {
          "id": "1284392014819",
          "idp": {
            "id": "1284392014819",
            "name": "Azure AD IdP",
            "type": "Azure AD"
          },
          "displayName": "Miles Davis",
          "email": "mdavis@meraki.com",
          "username": "mdavis",
          "externalId": "external-Id",
          "createdAt": "2018-02-11T00:00:00Z",
          "lastUpdatedAt": "2018-05-12T00:00:00Z",
          "groups": [
            {
              "id": "1",
              "name": "Group name"
            }
          ],
          "accessTypes": [
            "Wireless",
            "Client VPN"
          ]
        }
      ]
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 10,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

List the end users and their associated identity providers for an organization.

POST /organizations/{organizationId}/iam/users/search



Docs

Get the count of users and user groups for an organization.

Operation ID: getOrganizationIamUsersSummaryPanel

PATH /organizations/{organizationId}/iam/users/summaryPanel

{
  "userCount": 100,
  "userGroupCount": 10
}

- Path added

- New endpoint

Get the count of users and user groups for an organization.

GET /organizations/{organizationId}/iam/users/summaryPanel



[ camera ]

videoWalls

Docs

Create a new video wall.

Operation ID: createNetworkCameraVideoWall

PATH /networks/{networkId}/camera/videoWalls

{
  "id": "1284392014819",
  "name": "Building-A",
  "index": 0,
  "tiles": [
    {
      "id": "1284392014819",
      "serial": "Q234-ABCD-5678",
      "x": 1,
      "y": 1,
      "width": 2,
      "height": 1,
      "theta": 3.14,
      "phi": 1.2,
      "imagerId": 1
    }
  ]
}

- Path added

- New endpoint

Create a new video wall.

POST /networks/{networkId}/camera/videoWalls



Docs

Update the specified video wall.

Operation ID: updateNetworkCameraVideoWall

PATH /networks/{networkId}/camera/videoWalls/{id}

{
  "id": "1284392014819",
  "name": "Building-A",
  "index": 0,
  "tiles": [
    {
      "id": "1284392014819",
      "serial": "Q234-ABCD-5678",
      "x": 1,
      "y": 1,
      "width": 2,
      "height": 1,
      "theta": 3.14,
      "phi": 1.2,
      "imagerId": 1
    }
  ]
}

- Path added

- New endpoint

Update the specified video wall.

PUT /networks/{networkId}/camera/videoWalls/{id}


- New endpoint

Delete the specified video wall.

DELETE /networks/{networkId}/camera/videoWalls/{id}



Docs

Return a list of video walls.

Operation ID: getOrganizationCameraVideoWalls

PATH /organizations/{organizationId}/camera/videoWalls

[
  {
    "id": "1284392014819",
    "name": "Building-A",
    "index": 0,
    "tiles": [
      {
        "id": "1284392014819",
        "serial": "Q234-ABCD-5678",
        "x": 1,
        "y": 1,
        "width": 2,
        "height": 1,
        "theta": 3.14,
        "phi": 1.2,
        "imagerId": 1
      }
    ]
  }
]

- Path added

- New endpoint

Return a list of video walls.

GET /organizations/{organizationId}/camera/videoWalls



Docs

Return the specified video wall.

Operation ID: getOrganizationCameraVideoWall

PATH /organizations/{organizationId}/camera/videoWalls/{id}

{
  "id": "1284392014819",
  "name": "Building-A",
  "index": 0,
  "tiles": [
    {
      "id": "1284392014819",
      "serial": "Q234-ABCD-5678",
      "x": 1,
      "y": 1,
      "width": 2,
      "height": 1,
      "theta": 3.14,
      "phi": 1.2,
      "imagerId": 1
    }
  ]
}

- Path added

- New endpoint

Return the specified video wall.

GET /organizations/{organizationId}/camera/videoWalls/{id}



Docs

Operation ID: getOrganizationCameraVideoWallVideoLink

PATH /organizations/{organizationId}/camera/videoWalls/{id}/videoLink

[
  {
    "url": "https://nxx.meraki.com/office-cameras/n/bs0a1k/manage/video/video_wall/75290?timestamp=1535732570077",
    "visionUrl": "https://vision.meraki.com/n/6482158978508419/cameras/29048243992402?ts=1535732570077"
  }
]

- Path added

- New endpoint

GET /organizations/{organizationId}/camera/videoWalls/{id}/videoLink



devices

Docs

Lists all the capabilities of cameras in this organization

Operation ID: getOrganizationCameraDevicesConfigurations

PATH /organizations/{organizationId}/camera/devices/configurations

[
  {
    "serial": "QWDE-OIJU-HIDB",
    "network": {
      "id": "N_24329156",
      "name": "Main Office"
    },
    "model": "MV63-HW",
    "category": "outdoor",
    "audio": {
      "isConfigurable": true,
      "enabled": true
    },
    "lens": {
      "isFisheye": true,
      "zoom": {
        "isConfigurable": true,
        "maximum": 100,
        "minimum": 0,
        "value": 65
      },
      "aperture": {
        "isConfigurable": true,
        "maximum": 100,
        "minimum": 0,
        "value": 65
      },
      "focus": {
        "isConfigurable": true,
        "maximum": 100,
        "minimum": 0,
        "value": 65
      }
    },
    "hdr": {
      "isConfigurable": true,
      "enabled": true
    },
    "sensorCrop": {
      "isConfigurable": true,
      "cropX": 0,
      "cropY": 0,
      "cropW": 0,
      "cropH": 0
    },
    "searchModels": [
      {
        "name": "Body/Vehicle",
        "enabled": true
      }
    ],
    "cloudArchive": {
      "isConfigurable": true,
      "enabled": true,
      "retentionDays": 90
    }
  }
]

- Path added

- New endpoint

Lists all the capabilities of cameras in this organization

GET /organizations/{organizationId}/camera/devices/configurations



[ devices ]

vrrpTable

Docs

Enqueue a job to perform a VRRP table request for the device

Operation ID: createDeviceLiveToolsVrrpTable

PATH /devices/{serial}/liveTools/vrrpTable

{
  "vrrpTableId": "1284392014819",
  "url": "/devices/Q234-ABCD-5678/liveTools/vrrpTable/1284392014819",
  "request": {
    "serial": "Q234-ABCD-5678"
  },
  "status": "complete",
  "callback": {
    "id": "1284392014819",
    "url": "https://webhook.site/28efa24e-f830-4d9f-a12b-fbb9e5035031",
    "status": "new"
  }
}

- Path added

- New endpoint

Enqueue a job to perform a VRRP table request for the device. This endpoint currently supports Catalyst switches. This endpoint has a sustained rate limit of one request every five seconds per device, with an allowed burst of five requests.

POST /devices/{serial}/liveTools/vrrpTable



Docs

Return an VRRP table live tool job.

Operation ID: getDeviceLiveToolsVrrpTable

PATH /devices/{serial}/liveTools/vrrpTable/{vrrpTableId}

{
  "vrrpTableId": "1284392014819",
  "url": "/devices/Q234-ABCD-5678/liveTools/vrrpTable/1284392014819",
  "request": {
    "serial": "Q234-ABCD-5678"
  },
  "status": "complete",
  "entries": [
    {
      "group": 123,
      "protocol": "ipv4",
      "addresses": {
        "virtual": "10.0.0.1",
        "primary": "10.0.0.2"
      },
      "vlanId": 100,
      "priority": 100,
      "preemption": {
        "enabled": true
      },
      "status": {
        "value": "primary",
        "description": "Indicates that the virtual router is forwarding packets for IP addresses that are associated with this router",
        "primaryReason": {
          "value": "priority",
          "description": "Won the primary election due to higher priority"
        },
        "lastChange": {
          "ts": "2018-02-11T00:00:00.090210Z",
          "reason": {
            "value": "priority",
            "description": "Elected primary due to higher priority"
          }
        }
      }
    }
  ],
  "error": "The device is unreachable."
}

- Path added

- New endpoint

Return an VRRP table live tool job.

GET /devices/{serial}/liveTools/vrrpTable/{vrrpTableId}



traceRoute

Docs

Enqueue a job to run trace route in the device

Operation ID: createDeviceLiveToolsTraceRoute

PATH /devices/{serial}/liveTools/traceRoute

{
  "traceRouteId": "123",
  "url": "/devices/QXXX-YYYY-ZZZZ/liveTools/traceroute/123",
  "request": {
    "serial": "Q234-ABCD-5678",
    "target": "www.cisco.com",
    "sourceInterface": "100.100.0.1"
  },
  "status": "complete",
  "callback": {
    "id": "1284392014819",
    "url": "https://webhook.site/28efa24e-f830-4d9f-a12b-fbb9e5035031",
    "status": "new"
  }
}

- Path added

- New endpoint

Enqueue a job to run trace route in the device. This endpoint has a sustained rate limit of one request every five seconds per device, with an allowed burst of five requests.

POST /devices/{serial}/liveTools/traceRoute



Docs

Return a trace route job

Operation ID: getDeviceLiveToolsTraceRoute

PATH /devices/{serial}/liveTools/traceRoute/{traceRouteId}

{
  "traceRouteId": "123",
  "url": "/devices/QXXX-YYYY-ZZZZ/liveTools/traceroute/123",
  "request": {
    "serial": "Q234-ABCD-5678",
    "target": "www.cisco.com",
    "sourceInterface": "100.100.0.1"
  },
  "status": "complete",
  "results": [
    {
      "hop": 0,
      "ip": "100.100.0.1",
      "rttAvg": 0.00005,
      "count": 3
    }
  ],
  "error": "The device is unreachable."
}

- Path added

- New endpoint

Return a trace route job

GET /devices/{serial}/liveTools/traceRoute/{traceRouteId}



speedTest

Docs

Enqueue a job to execute a speed test from a device

Operation ID: createDeviceLiveToolsSpeedTest

PATH /devices/{serial}/liveTools/speedTest

{
  "speedTestId": "1284392014819",
  "url": "/devices/SERIAL/liveTools/speedTest/1284392014819",
  "request": {
    "serial": "Q234-ABCD-5678",
    "interface": "wan1"
  },
  "status": "complete",
  "results": {
    "speeds": {
      "average": 123.45
    }
  }
}

- Path added

- New endpoint

Enqueue a job to execute a speed test from a device

POST /devices/{serial}/liveTools/speedTest



Docs

Returns a speed test result in megabits per second

Operation ID: getDeviceLiveToolsSpeedTest

PATH /devices/{serial}/liveTools/speedTest/{id}

{
  "speedTestId": "1284392014819",
  "url": "/devices/SERIAL/liveTools/speedTest/1284392014819",
  "request": {
    "serial": "Q234-ABCD-5678",
    "interface": "wan1"
  },
  "status": "complete",
  "results": {
    "speeds": {
      "average": 123.45
    }
  }
}

- Path added

- New endpoint

Returns a speed test result in megabits per second. If test is not complete, no results are present.

GET /devices/{serial}/liveTools/speedTest/{id}



routingTable

Docs

Enqueue a job to perform a routing table request for the device

Operation ID: createDeviceLiveToolsRoutingTable

PATH /devices/{serial}/liveTools/routingTable

{
  "routingTableId": "1284392014819",
  "url": "/devices/Q234-ABCD-5678/liveTools/routingTable/1284392014819",
  "request": {
    "serial": "Q234-ABCD-5678"
  },
  "status": "complete",
  "callback": {
    "id": "1284392014819",
    "url": "https://webhook.site/28efa24e-f830-4d9f-a12b-fbb9e5035031",
    "status": "new"
  }
}

- Path added

- New endpoint

Enqueue a job to perform a routing table request for the device. Only native Catalyst switches are supported. This endpoint has a sustained rate limit of one request every five seconds per device, with an allowed burst of five requests.

POST /devices/{serial}/liveTools/routingTable



Docs

Return an routing table live tool job.

Operation ID: getDeviceLiveToolsRoutingTable

PATH /devices/{serial}/liveTools/routingTable/{id}

{
  "routingTableId": "1284392014819",
  "url": "/devices/Q234-ABCD-5678/liveTools/routingTable/1284392014819",
  "request": {
    "serial": "Q234-ABCD-5678"
  },
  "status": "complete",
  "entries": [
    {
      "type": "static",
      "subnet": "10.200.10.1/32",
      "staticGateway": "22.22.22.21",
      "ipVersion": "ipv4"
    }
  ],
  "error": "The device is unreachable"
}

- Path added

- New endpoint

Return an routing table live tool job.

GET /devices/{serial}/liveTools/routingTable/{id}



reboot

Docs

Enqueue a job to reboot a device

Operation ID: createDeviceLiveToolsReboot

PATH /devices/{serial}/liveTools/reboot

{
  "rebootId": "1284392014819",
  "url": "/devices/Q234-ABCD-5678/liveTools/reboot/1284392014819",
  "status": "complete",
  "request": {
    "serial": "Q234-ABCD-5678"
  },
  "error": "error description",
  "callback": {
    "id": "1284392014819",
    "url": "https://webhook.site/28efa24e-f830-4d9f-a12b-fbb9e5035031",
    "status": "new"
  }
}

- Path added

- New endpoint

Enqueue a job to reboot a device. This endpoint has a rate limit of one request every 60 seconds.

POST /devices/{serial}/liveTools/reboot



Docs

Return a reboot job

Operation ID: getDeviceLiveToolsReboot

PATH /devices/{serial}/liveTools/reboot/{rebootId}

{
  "rebootId": "1284392014819",
  "url": "/devices/Q234-ABCD-5678/liveTools/reboot/1284392014819",
  "status": "complete",
  "request": {
    "serial": "Q234-ABCD-5678"
  },
  "error": "error description"
}

- Path added

- New endpoint

Return a reboot job

GET /devices/{serial}/liveTools/reboot/{rebootId}



ospfNeighbors

Docs

Enqueue a job to perform a OSPF neighbors request for the device

Operation ID: createDeviceLiveToolsOspfNeighbor

PATH /devices/{serial}/liveTools/ospfNeighbors

{
  "ospfNeighborsId": "1284392014819",
  "url": "/devices/Q234-ABCD-5678/liveTools/ospfNeighbors/1284392014819",
  "request": {
    "serial": "Q234-ABCD-5678"
  },
  "status": "complete",
  "callback": {
    "id": "1284392014819",
    "url": "https://webhook.site/28efa24e-f830-4d9f-a12b-fbb9e5035031",
    "status": "new"
  }
}

- Path added

- New endpoint

Enqueue a job to perform a OSPF neighbors request for the device. This endpoint currently supports switches. This endpoint has a sustained rate limit of one request every five seconds per device, with an allowed burst of five requests.

POST /devices/{serial}/liveTools/ospfNeighbors



Docs

Return an OSPF neighbors live tool job.

Operation ID: getDeviceLiveToolsOspfNeighbor

PATH /devices/{serial}/liveTools/ospfNeighbors/{ospfNeighborsId}

{
  "ospfNeighborsId": "1284392014819",
  "url": "/devices/Q234-ABCD-5678/liveTools/ospfNeighbors/1284392014819",
  "request": {
    "serial": "Q234-ABCD-5678"
  },
  "status": "complete",
  "routers": [
    {
      "id": "1.2.3.4",
      "name": "My route",
      "ip": "10.0.0.0/24",
      "position": "DR",
      "state": "full",
      "vlanId": 100
    }
  ],
  "error": "The device is unreachable."
}

- Path added

- New endpoint

Return an OSPF neighbors live tool job.

GET /devices/{serial}/liveTools/ospfNeighbors/{ospfNeighborsId}



dhcpLeases

Docs

Enqueue a job to perform a DHCP leases request for the device

Operation ID: createDeviceLiveToolsDhcpLease

PATH /devices/{serial}/liveTools/dhcpLeases

{
  "dhcpLeasesId": "1284392014819",
  "url": "/devices/Q234-ABCD-5678/liveTools/dhcpLeases/1284392014819",
  "request": {
    "serial": "Q234-ABCD-5678"
  },
  "status": "complete",
  "callback": {
    "id": "1284392014819",
    "url": "https://webhook.site/28efa24e-f830-4d9f-a12b-fbb9e5035031",
    "status": "new"
  }
}

- Path added

- New endpoint

Enqueue a job to perform a DHCP leases request for the device. This endpoint currently supports all devices. This endpoint has a sustained rate limit of one request every five seconds per device, with an allowed burst of five requests.

POST /devices/{serial}/liveTools/dhcpLeases



Docs

Return a DHCP leases live tool job.

Operation ID: getDeviceLiveToolsDhcpLease

PATH /devices/{serial}/liveTools/dhcpLeases/{dhcpLeasesId}

{
  "dhcpLeasesId": "1284392014819",
  "url": "/devices/Q234-ABCD-5678/liveTools/dhcpLeases/1284392014819",
  "request": {
    "serial": "Q234-ABCD-5678"
  },
  "status": "complete",
  "dhcpLeases": [
    {
      "ip": "10.0.0.0/24",
      "mac": "00:11:22:33:44:55",
      "expiresAt": "2018-02-11T00:00:00.090210Z"
    }
  ],
  "error": "The device is unreachable."
}

- Path added

- New endpoint

Return a DHCP leases live tool job.

GET /devices/{serial}/liveTools/dhcpLeases/{dhcpLeasesId}



cyclePort

Docs

Enqueue a job to perform a cycle port for the device on the specified ports

Operation ID: createDeviceLiveToolsCyclePort

PATH /devices/{serial}/liveTools/cyclePort

{
  "cyclePortId": "1284392014819",
  "url": "/devices/Q234-ABCD-5678/liveTools/cyclePort/1284392014819",
  "request": {
    "serial": "Q234-ABCD-5678",
    "ports": [
      "2",
      "8"
    ]
  },
  "status": "complete",
  "callback": {
    "id": "1284392014819",
    "url": "https://webhook.site/28efa24e-f830-4d9f-a12b-fbb9e5035031",
    "status": "new"
  }
}

- Path added

- New endpoint

Enqueue a job to perform a cycle port for the device on the specified ports. This endpoint has a sustained rate limit of one request every five seconds per device, with an allowed burst of five requests.

POST /devices/{serial}/liveTools/cyclePort



Docs

Return a cycle port live tool job.

Operation ID: getDeviceLiveToolsCyclePort

PATH /devices/{serial}/liveTools/cyclePort/{id}

{
  "cyclePortId": "1284392014819",
  "url": "/devices/Q234-ABCD-5678/liveTools/cyclePort/1284392014819",
  "request": {
    "serial": "Q234-ABCD-5678",
    "ports": [
      "2",
      "8"
    ]
  },
  "status": "complete",
  "error": "The device is unreachable."
}

- Path added

- New endpoint

Return a cycle port live tool job.

GET /devices/{serial}/liveTools/cyclePort/{id}



aclHitCount

Docs

Enqueue a job to perform an ACL hit count for the device

Operation ID: createDeviceLiveToolsAclHitCount

PATH /devices/{serial}/liveTools/aclHitCount

{
  "aclHitCountId": "1284392014819",
  "url": "/devices/Q234-ABCD-5678/liveTools/aclHitCount/1284392014819",
  "request": {
    "serial": "Q234-ABCD-5678"
  },
  "status": "complete",
  "callback": {
    "id": "1284392014819",
    "url": "https://webhook.site/28efa24e-f830-4d9f-a12b-fbb9e5035031",
    "status": "new"
  }
}

- Path added

- New endpoint

Enqueue a job to perform an ACL hit count for the device. This endpoint has a sustained rate limit of one request every five seconds per device, with an allowed burst of five requests.

POST /devices/{serial}/liveTools/aclHitCount



Docs

Return an ACL hit count live tool job.

Operation ID: getDeviceLiveToolsAclHitCount

PATH /devices/{serial}/liveTools/aclHitCount/{id}

{
  "aclHitCountId": "1284392014819",
  "url": "/devices/Q234-ABCD-5678/liveTools/aclHitCount/1284392014819",
  "request": {
    "serial": "Q234-ABCD-5678"
  },
  "status": "complete",
  "acls": [
    {
      "policy": "allow",
      "ipVersion": "any",
      "ipProtocol": {
        "type": "number",
        "number": 6,
        "objectGroup": "object-group-123"
      },
      "counts": {
        "total": 1234,
        "ipv4": 1234,
        "ipv6": 0
      },
      "source": {
        "address": "1.2.3.4",
        "port": {
          "operator": "equals",
          "ports": [
            80,
            443
          ]
        }
      },
      "destination": {
        "address": "2.3.4.5",
        "port": [
          {
            "operator": "range",
            "ports": [
              80,
              89
            ]
          }
        ]
      }
    }
  ],
  "error": "The device is unreachable."
}

- Path added

- New endpoint

Return an ACL hit count live tool job.

GET /devices/{serial}/liveTools/aclHitCount/{id}



clients

Docs

Return a client disconnect job.

Operation ID: getDeviceLiveToolsClientsDisconnect

PATH /devices/{serial}/liveTools/clients/disconnect/{id}

{
  "id": "abcd-1234-efgh-5678",
  "status": "queued",
  "request": {
    "mac": "00:11:22:33:44:55",
    "serial": "ABCD-1234-ABCD"
  },
  "url": "/api/v1/devices/serial/liveTools/disconnect",
  "results": {
    "success": true,
    "error": "Device (Access Point) took too long to respond."
  }
}

- Path added

- New endpoint

Return a client disconnect job.

GET /devices/{serial}/liveTools/clients/disconnect/{id}



[ licensing ]

subscription

Docs

Batch change networks to their desired feature tier for specified product types

Operation ID: batchAdministeredLicensingSubscriptionNetworksFeatureTiersUpdate

PATH /administered/licensing/subscription/networks/featureTiers/batchUpdate

{
  "items": [
    {
      "network": {
        "id": "N_1234",
        "productTypes": [
          {
            "productType": "wireless",
            "featureTier": "essentials"
          }
        ]
      }
    }
  ],
  "errors": [
    {
      "network": {
        "id": "N_1234",
        "productTypes": [
          {
            "productType": "wireless",
            "featureTier": "essentials",
            "error": "Insufficient entitlements"
          }
        ]
      },
      "error": "null"
    }
  ]
}

- Path added

- New endpoint

Batch change networks to their desired feature tier for specified product types

POST /administered/licensing/subscription/networks/featureTiers/batchUpdate



[ nac ]

sessions

Docs

List the NAC Sessions for this organization

Operation ID: getOrganizationNacSessionsHistory

PATH /organizations/{organizationId}/nac/sessions/history

{
  "items": [
    {
      "sessionId": "0677ba3c-a867-461d-97c9-e5b60066f2b3",
      "counts": {
        "events": {
          "total": 5
        }
      },
      "ts": "2023-02-01T11:36:25.480Z",
      "status": "Success",
      "details": "A policy for whose first matched rule will return its assigned authz profile",
      "user": {
        "id": "stress"
      },
      "client": {
        "id": "00-14-11-12-12-12:mab2",
        "url": "/SJC-Test-Network/n/OSYcyb2h/manage/clients?timespan=2592000&searchQuery=00-14-11-12-12-12%3Amab2"
      },
      "authentication": {
        "protocol": "MAB"
      },
      "ssid": {
        "name": ""
      },
      "device": {
        "url": "/SJC-Test-Network/n/OSYcyb2h/manage/nodes/new_list/167231144861997/summary"
      }
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 4,
        "byResult": [
          {
            "result": "Authentication Failed",
            "total": 120
          }
        ]
      }
    }
  }
}

- Path added

- New endpoint

List the NAC Sessions for this organization

GET /organizations/{organizationId}/nac/sessions/history



Docs

Return the details of selected NAC Sessions

Operation ID: getOrganizationNacSessionDetails

PATH /organizations/{organizationId}/nac/sessions/{sessionId}/details

{
  "sessionId": "e6b7d57b-1ddb-47f5-8d76-c06e10570297",
  "hasCompleteEvent": true,
  "ts": "2023-02-01T13:25:26.181Z",
  "status": "Success",
  "details": "",
  "counts": {
    "events": {
      "total": 5
    }
  },
  "user": {
    "id": "Device ID Username",
    "idp": "Active Directory",
    "groups": "ID group names"
  },
  "client": {
    "id": "2c:3f:0b:00:14:00",
    "addresses": [
      {
        "protocol": "ipv4",
        "address": "112.112.112.112"
      }
    ],
    "groups": "ID group names",
    "deviceProfiling": "Macbook Pro",
    "guid": "00-00-00-00-00-00",
    "url": "/SJC-Test-Network/n/OSYcyb2h/manage/clients?timespan=2592000&searchQuery=2c%3A3f%3A0b%3A00%3A14%3A00"
  },
  "authentication": {
    "latency": 500,
    "method": "EAP-TLS",
    "protocol": "EAP",
    "policy": "Active Directory",
    "endpointCertificate": {
      "title": "Endpoint Certificate Name",
      "issuer": "Issuer's Name",
      "isExpired": false,
      "status": "Trusted",
      "subjectName": {
        "commonName": "hosuk",
        "organizationalUnit": "Example Unit",
        "organization": "Company Name",
        "locality": "City",
        "state": "State",
        "country": "US"
      },
      "issuerName": {
        "commonName": "Certificate Services Endpoint Sub CA - ise",
        "serial": "58 BA BA 47 4F 4B 58 BA BA 47 4F 4B 74 72",
        "version": "3",
        "signatureAlgorithm": "XXX",
        "parameters": "None",
        "validity": {
          "start": "2023-01-01T13:25:26.181Z",
          "end": "2024-01-01T13:25:26.181Z"
        }
      },
      "publicKey": {
        "algorithm": "XXX",
        "parameters": "XXX",
        "body": "XXX",
        "exponent": "XXX",
        "size": "XXX",
        "usage": "XXX",
        "signature": "XXX"
      },
      "directoryName": {
        "commonName": "XXX",
        "serial": "XXX"
      },
      "fingerprints": {
        "sha256": "XXX",
        "sha1": "XXX"
      },
      "extensions": [
        {
          "oid": "2.5.28.15",
          "name": "Key Usage",
          "fields": [
            {
              "name": "Critical",
              "value": "Yes"
            }
          ]
        }
      ]
    }
  },
  "authorization": {
    "rule": "Rule Name",
    "profile": "List all the profiles here"
  },
  "network": {
    "name": "Name",
    "accessType": "Wired",
    "ssid": {
      "name": "SSID"
    },
    "port": {
      "name": "Port"
    },
    "tags": "tag names"
  },
  "device": {
    "name": "Device model name",
    "model": "Device model name",
    "addresses": [
      {
        "protocol": "ipv4",
        "address": "100.10.100.10"
      }
    ],
    "tags": "tag names",
    "url": "/SJC-Test-Network/n/OSYcyb2h/manage/nodes/new_list/167231144861997/summary"
  },
  "radius": {
    "attributes": {
      "incoming": [
        {
          "code": "1",
          "name": "Username",
          "value": "hosuk"
        }
      ],
      "outgoing": [
        {
          "code": "1",
          "name": "Username",
          "value": "hosuk"
        }
      ]
    }
  }
}

- Path added

- New endpoint

Return the details of selected NAC Sessions

GET /organizations/{organizationId}/nac/sessions/{sessionId}/details



license

Docs

Returns license usage data for a specific organization

Operation ID: getOrganizationNacLicenseUsage

PATH /organizations/{organizationId}/nac/license/usage

{
  "organizationId": "1284392014819",
  "type": "CoTerm",
  "timeRange": {
    "startDate": "2025-05-13",
    "endDate": "2025-07-11"
  },
  "licenseLimit": 100,
  "usageData": [
    {
      "date": "2025-08-21",
      "peakConcurrentSessions": 100
    }
  ],
  "summary": {
    "daysInPeriod": 60,
    "highestPeakConcurrentSessions": 145,
    "p90PeakConcurrentSessions": 120.5,
    "p95PeakConcurrentSessions": 135.2
  }
}

- Path added

- New endpoint

Returns license usage data for a specific organization

GET /organizations/{organizationId}/nac/license/usage



dictionaries

Docs

Get all NAC dictionaries

Operation ID: getOrganizationNacDictionaries

PATH /organizations/{organizationId}/nac/dictionaries

[
  {
    "dictionaryId": "1",
    "name": "Clients",
    "description": "Client dictionary",
    "category": "clients"
  }
]

- Path added

- New endpoint

Get all NAC dictionaries

GET /organizations/{organizationId}/nac/dictionaries



Docs

Get all attributes by dictionary ID

Operation ID: getOrganizationNacDictionaryAttributes

PATH /organizations/{organizationId}/nac/dictionaries/{dictionaryId}/attributes

[
  {
    "attributeId": "urn:client-cert:cn",
    "title": "Common Name",
    "description": "common Name attribute",
    "maximum": 100,
    "minimum": 0,
    "pattern": ".*",
    "type": "string",
    "format": "string",
    "enum": [
      "Permit",
      "Deny"
    ],
    "isLargeDataSet": false,
    "items": {
      "title": "SAN",
      "description": "subject alternative name",
      "type": "string"
    },
    "isReadOnly": false,
    "isWriteOnly": false,
    "default": "Permit"
  }
]

- Path added

- New endpoint

Get all attributes by dictionary ID

GET /organizations/{organizationId}/nac/dictionaries/{dictionaryId}/attributes



authorization

Docs

Get all nac authorization policies for this organization

Operation ID: getOrganizationNacAuthorizationPolicies

PATH /organizations/{organizationId}/nac/authorization/policies

[
  {
    "policyId": "1",
    "name": "auth_policy",
    "enabled": true,
    "rank": 5,
    "version": "20",
    "counts": {
      "hits": 10
    },
    "rules": [
      {
        "ruleId": "1",
        "name": "rule_name",
        "rank": 10,
        "enabled": true,
        "counts": {
          "hits": 20
        },
        "authorizationProfile": {
          "vlan": {
            "value": "123",
            "type": "CONSTANT"
          },
          "adaptivePolicy": {
            "value": "Sample_Adaptive_Policy",
            "type": "CONSTANT"
          },
          "voiceDomain": {
            "value": "true",
            "type": "CONSTANT"
          },
          "groupPolicy": {
            "value": "Sample_Group_Policy",
            "type": "CONSTANT"
          },
          "result": "PERMIT",
          "ipsk": {
            "value": "Moon@15",
            "type": "CONSTANT"
          }
        }
      }
    ],
    "hasOutdatedCondition": false,
    "conditionTags": [
      "Client certificates: Issuer - Common Name = spa.meraki.com",
      "Networks: Network Name = Dev Test Network"
    ]
  }
]

- Path added

- New endpoint

Get all nac authorization policies for this organization

GET /organizations/{organizationId}/nac/authorization/policies



Docs

Create a rule in an authorization policy set of an organization

Operation ID: createOrganizationNacAuthorizationPolicyRule

PATH /organizations/{organizationId}/nac/authorization/policies/{policyId}/rules

{
  "ruleId": "1",
  "policyset": {
    "policysetId": "2"
  },
  "name": "rule_name",
  "enabled": true,
  "rank": 10,
  "counts": {
    "hits": 20
  }
}

- Path added

- New endpoint

Create a rule in an authorization policy set of an organization

POST /organizations/{organizationId}/nac/authorization/policies/{policyId}/rules



Docs

Update an existing rule of an authorization policy set within an organization

Operation ID: updateOrganizationNacAuthorizationPolicyRule

PATH /organizations/{organizationId}/nac/authorization/policies/{policyId}/rules/{ruleId}

{
  "ruleId": "1",
  "policyset": {
    "policysetId": "2"
  },
  "name": "rule_name",
  "enabled": true,
  "rank": 10,
  "counts": {
    "hits": 20
  }
}

- Path added

- New endpoint

Update an existing rule of an authorization policy set within an organization

PUT /organizations/{organizationId}/nac/authorization/policies/{policyId}/rules/{ruleId}


- New endpoint

Delete a rule in an authorization policy set of an organization

DELETE /organizations/{organizationId}/nac/authorization/policies/{policyId}/rules/{ruleId}



certificates

Docs

Gets all certificates for an organization and can filter by certificate status, expiry date and last used date

Operation ID: getOrganizationNacCertificates

PATH /organizations/{organizationId}/nac/certificates

{
  "certificateId": "1284392014819",
  "parentCertificateId": "1284392014818",
  "certificateChainId": "1",
  "description": "Sample Description",
  "source": "NAC",
  "lastUsedAt": "2022-09-15T12:00:00Z",
  "canBeDeleted": true,
  "profile": {
    "enabled": false,
    "identity": "Sample profile identity",
    "isLocalAuth": true,
    "isTrustedAnchor": false,
    "bypassExpiryDate": false
  },
  "fields": {
    "validity": {
      "start": "2022-09-01T12:00:00Z",
      "end": "2022-10-01T12:00:00Z"
    },
    "subject": {
      "commonName": "subjectRoot",
      "organizationalUnit": "CloudNAC",
      "organization": "Cisco Systems",
      "locality": "Bangalore",
      "state": "KA",
      "country": "IN"
    },
    "signatureAlgorithmId": "SHA256withRSA",
    "issuer": {
      "commonName": "issuerRoot",
      "organizationalUnit": "CloudNAC",
      "organization": "Cisco Systems",
      "locality": "Bangalore",
      "state": "KA",
      "country": "IN"
    },
    "hashes": [
      {
        "algorithm": "SHA1",
        "hash": "hash text here"
      }
    ]
  }
}

- Path added

- New endpoint

Gets all certificates for an organization and can filter by certificate status, expiry date and last used date

GET /organizations/{organizationId}/nac/certificates



Docs

Get all the organization's CRL descriptors (metadata only - revocation list data is excluded)

Operation ID: getOrganizationNacCertificatesAuthoritiesCrlsDescriptors

PATH /organizations/{organizationId}/nac/certificates/authorities/crls/descriptors

{
  "items": [
    {
      "crlId": "1234",
      "isDelta": false,
      "caId": "12345",
      "lastUpdatedAt": "2021-09-26T20:34:10Z"
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 1,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

Get all the organization's CRL descriptors (metadata only - revocation list data is excluded). It's possible to filter results by CRL issuers (CA) - see caIds query parameter

GET /organizations/{organizationId}/nac/certificates/authorities/crls/descriptors



Docs

Deletes a whole CRL, including all its deltas (in case of base CRL removal)

Operation ID: deleteOrganizationNacCertificatesAuthoritiesCrl

PATH /organizations/{organizationId}/nac/certificates/authorities/crls/{crlId}

- Path added

- New endpoint

Deletes a whole CRL, including all its deltas (in case of base CRL removal)

DELETE /organizations/{organizationId}/nac/certificates/authorities/crls/{crlId}



Docs

Import certificate for this organization or validate without persisting

Operation ID: createOrganizationNacCertificatesImport

PATH /organizations/{organizationId}/nac/certificates/import

{
  "certificateId": "1284392014819",
  "parentCertificateId": "1284392014818",
  "certificateChainId": "1",
  "description": "Sample Description",
  "source": "NAC",
  "lastUsedAt": "2022-09-15T12:00:00Z",
  "canBeDeleted": true,
  "profile": {
    "enabled": false,
    "identity": "Sample profile identity",
    "isLocalAuth": true,
    "isTrustedAnchor": false,
    "bypassExpiryDate": false
  },
  "fields": {
    "validity": {
      "start": "2022-09-01T12:00:00Z",
      "end": "2022-10-01T12:00:00Z"
    },
    "subject": {
      "commonName": "subjectRoot",
      "organizationalUnit": "CloudNAC",
      "organization": "Cisco Systems",
      "locality": "Bangalore",
      "state": "KA",
      "country": "IN"
    },
    "signatureAlgorithmId": "SHA256withRSA",
    "issuer": {
      "commonName": "issuerRoot",
      "organizationalUnit": "CloudNAC",
      "organization": "Cisco Systems",
      "locality": "Bangalore",
      "state": "KA",
      "country": "IN"
    },
    "hashes": [
      {
        "algorithm": "SHA1",
        "hash": "hash text here"
      }
    ]
  }
}

- Path added

- New endpoint

Import certificate for this organization or validate without persisting

POST /organizations/{organizationId}/nac/certificates/import



Docs

Get counts of Enabled, Disabled, Expired and Last Used certificates for this organization

Operation ID: getOrganizationNacCertificatesOverview

PATH /organizations/{organizationId}/nac/certificates/overview

{
  "counts": {
    "byEnabled": {
      "true": 1,
      "false": 1
    },
    "byValidity": {
      "expired": 1,
      "expiringWithin": [
        {
          "period": 6,
          "count": 1
        }
      ]
    },
    "byUsage": {
      "unusedWithin": [
        {
          "period": 3,
          "count": 1
        }
      ]
    }
  }
}

- Path added

- New endpoint

Get counts of Enabled, Disabled, Expired and Last Used certificates for this organization

GET /organizations/{organizationId}/nac/certificates/overview



Docs

Update certificate configuration by certificateId for this organization

Operation ID: updateOrganizationNacCertificate

PATH /organizations/{organizationId}/nac/certificates/{certificateId}

{
  "profileId": "1",
  "status": "Disabled",
  "identity": "Subject:CN",
  "isLocalAuth": true,
  "isTrustedAnchor": false,
  "bypassExpiryDate": false
}

- Path added

- New endpoint

Update certificate configuration by certificateId for this organization

PUT /organizations/{organizationId}/nac/certificates/{certificateId}



[ insight ]

webApps

Docs

Lists all default web applications rules with counter set rule ids

Operation ID: getOrganizationInsightWebApps

PATH /organizations/{organizationId}/insight/webApps

[
  {
    "counterSetRuleId": "12345",
    "name": "Meraki HTTPS",
    "category": "Remote monitoring & management",
    "thresholds": {
      "goodput": "20000",
      "responseDelay": "3000"
    },
    "expression": "http_host[*.example.com] or http_host",
    "signature": {
      "signatureType": "custom_host",
      "host": "exampled.com",
      "port": "123",
      "net": "10.0.2.1/20"
    }
  }
]

- Path added

- New endpoint

Lists all default web applications rules with counter set rule ids

GET /organizations/{organizationId}/insight/webApps


- New endpoint

Add a custom web application for Insight to be able to track

POST /organizations/{organizationId}/insight/webApps



Docs

Update a custom web application for Insight to be able to track

Operation ID: updateOrganizationInsightWebApp

PATH /organizations/{organizationId}/insight/webApps/{customCounterSetRuleId}

{
  "counterSetRuleId": "12345",
  "name": "Meraki HTTPS",
  "category": "Remote monitoring & management",
  "thresholds": {
    "goodput": "20000",
    "responseDelay": "3000"
  },
  "expression": "http_host[*.example.com] or http_host",
  "signature": {
    "signatureType": "custom_host",
    "host": "exampled.com"
  }
}

- Path added

- New endpoint

Update a custom web application for Insight to be able to track

PUT /organizations/{organizationId}/insight/webApps/{customCounterSetRuleId}


- New endpoint

Delete a custom web application by counter set rule id.

DELETE /organizations/{organizationId}/insight/webApps/{customCounterSetRuleId}



speedTestResults

Docs

List the speed tests for the given devices under this organization

Operation ID: getOrganizationInsightSpeedTestResults

PATH /organizations/{organizationId}/insight/speedTestResults

[
  {
    "speedTestId": "1284392014819",
    "networkId": "N_24329156",
    "request": {
      "serial": "Q234-ABCD-5678",
      "interface": "wan1"
    },
    "results": {
      "speeds": {
        "average": 247.279
      }
    },
    "startedAt": "2021-12-08T20:07:13Z"
  }
]

- Path added

- New endpoint

List the speed tests for the given devices under this organization. Only valid for organizations with Meraki Insight.

GET /organizations/{organizationId}/insight/speedTestResults



applications

Docs

Update an Insight tracked application

Operation ID: updateOrganizationInsightApplication

PATH /organizations/{organizationId}/insight/applications/{applicationId}

{
  "applicationId": "19.12",
  "name": "Meraki HTTPS",
  "thresholds": {
    "type": "smart",
    "byNetwork": [
      {
        "networkId": "N_12345678",
        "goodput": 50000,
        "responseDuration": 1000
      }
    ]
  }
}

- Path added

- New endpoint

Update an Insight tracked application

PUT /organizations/{organizationId}/insight/applications/{applicationId}


- New endpoint

Delete an Insight tracked application

DELETE /organizations/{organizationId}/insight/applications/{applicationId}



[ organizations ]

webhooks

Docs

List the HTTP servers for this organization

Operation ID: getOrganizationWebhooksHttpServers

PATH /organizations/{organizationId}/webhooks/httpServers

[
  {
    "id": "aHR0cHM6Ly93d3cuZXhhbXBsZS5jb20vbXlfY3VzdG9tX3dlYmhvb2s=",
    "name": "Example Webhook Server",
    "organizationId": "2930418",
    "url": "https://www.example.com/my_custom_webhook",
    "payloadTemplate": {
      "id": "wpt_00001",
      "name": "Meraki (included)"
    }
  }
]

- Path added

- New endpoint

List the HTTP servers for this organization

GET /organizations/{organizationId}/webhooks/httpServers


- New endpoint

Add an HTTP server to an organization

POST /organizations/{organizationId}/webhooks/httpServers



Docs

Return an HTTP server for an organization

Operation ID: getOrganizationWebhooksHttpServer

PATH /organizations/{organizationId}/webhooks/httpServers/{id}

{
  "id": "aHR0cHM6Ly93d3cuZXhhbXBsZS5jb20vbXlfY3VzdG9tX3dlYmhvb2s=",
  "name": "Example Webhook Server",
  "organizationId": "2930418",
  "url": "https://www.example.com/my_custom_webhook",
  "payloadTemplate": {
    "id": "wpt_00001",
    "name": "Meraki (included)"
  }
}

- Path added

- New endpoint

Return an HTTP server for an organization

GET /organizations/{organizationId}/webhooks/httpServers/{id}


- New endpoint

Update an HTTP server for an organization

PUT /organizations/{organizationId}/webhooks/httpServers/{id}


- New endpoint

Delete an HTTP server from an organization

DELETE /organizations/{organizationId}/webhooks/httpServers/{id}



Docs

List the webhook payload templates for an organization

Operation ID: getOrganizationWebhooksPayloadTemplates

PATH /organizations/{organizationId}/webhooks/payloadTemplates

[
  {
    "payloadTemplateId": "wpt_343",
    "type": "custom",
    "name": "Custom Template",
    "headers": [
      {
        "name": "Authorization",
        "template": "Bearer {{sharedSecret}}"
      }
    ],
    "body": "{\"event_type\":\"{{alertTypeId}}\",\"client_payload\":{\"text\":\"{{alertData}}\"}}",
    "sharing": {
      "byNetwork": {
        "withAll": true,
        "adminsCanModify": true,
        "ids": [
          "N_1234",
          "L_5678"
        ]
      }
    }
  }
]

- Path added

- New endpoint

List the webhook payload templates for an organization

GET /organizations/{organizationId}/webhooks/payloadTemplates


- New endpoint

Create a webhook payload template for an organization

POST /organizations/{organizationId}/webhooks/payloadTemplates



Docs

Get the webhook payload template for an organization

Operation ID: getOrganizationWebhooksPayloadTemplate

PATH /organizations/{organizationId}/webhooks/payloadTemplates/{payloadTemplateId}

{
  "payloadTemplateId": "wpt_343",
  "type": "custom",
  "name": "Custom Template",
  "headers": [
    {
      "name": "Authorization",
      "template": "Bearer {{sharedSecret}}"
    }
  ],
  "body": "{\"event_type\":\"{{alertTypeId}}\",\"client_payload\":{\"text\":\"{{alertData}}\"}}",
  "sharing": {
    "byNetwork": {
      "withAll": true,
      "adminsCanModify": true,
      "ids": [
        "N_1234",
        "L_5678"
      ]
    }
  }
}

- Path added

- New endpoint

Get the webhook payload template for an organization

GET /organizations/{organizationId}/webhooks/payloadTemplates/{payloadTemplateId}


- New endpoint

Update a webhook payload template for an organization

PUT /organizations/{organizationId}/webhooks/payloadTemplates/{payloadTemplateId}


- New endpoint

Destroy a webhook payload template for an organization. Does not work for included templates ('wpt_00001', 'wpt_00002', 'wpt_00003', 'wpt_00004', 'wpt_00005', 'wpt_00006', 'wpt_00007' or 'wpt_00008')

DELETE /organizations/{organizationId}/webhooks/payloadTemplates/{payloadTemplateId}



Docs

Send a test webhook for an organization

Operation ID: createOrganizationWebhooksWebhookTest

PATH /organizations/{organizationId}/webhooks/webhookTests

{
  "id": "1234",
  "url": "https://www.example.com/path",
  "status": "enqueued"
}

- Path added

- New endpoint

Send a test webhook for an organization

POST /organizations/{organizationId}/webhooks/webhookTests



Docs

Return the status of a webhook test for an organization

Operation ID: getOrganizationWebhooksWebhookTest

PATH /organizations/{organizationId}/webhooks/webhookTests/{webhookTestId}

{
  "id": "1234",
  "url": "https://www.example.com/path",
  "status": "enqueued"
}

- Path added

- New endpoint

Return the status of a webhook test for an organization

GET /organizations/{organizationId}/webhooks/webhookTests/{webhookTestId}



sase

Docs

Create a new Secure Access integration

Operation ID: createOrganizationSaseIntegration

PATH /organizations/{organizationId}/sase/integrations

{
  "type": "SecureAccess"
}

- Path added

- New endpoint

Create a new Secure Access integration

POST /organizations/{organizationId}/sase/integrations



Docs

Get details of a Secure Access integration

Operation ID: getOrganizationSaseIntegration

PATH /organizations/{organizationId}/sase/integrations/{integrationId}

{
  "integrated": {
    "by": {
      "admin": {
        "name": "John Doe"
      }
    },
    "at": "2025-04-01T12:00:00Z"
  },
  "lastUsedAt": "2025-04-01T12:00:00Z",
  "externalOrgId": "1234567890",
  "status": "active"
}

- Path added

- New endpoint

Get details of a Secure Access integration

GET /organizations/{organizationId}/sase/integrations/{integrationId}


- New endpoint

Remove a Secure Access integration

DELETE /organizations/{organizationId}/sase/integrations/{integrationId}



Docs

List of MX networks or templates that can be enrolled into Secure Access

Operation ID: getOrganizationSaseNetworksEligible

PATH /organizations/{organizationId}/sase/networks/eligible

{
  "items": [
    {
      "networkId": "N_123",
      "type": "Meraki spoke",
      "name": "London Office",
      "region": {
        "name": "US East"
      },
      "model": "MX95",
      "address": {
        "street": "123 Main St"
      },
      "vpn": {
        "type": "hub"
      },
      "routing": {
        "defaultRoute": {
          "enabled": true
        }
      }
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 1,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

List of MX networks or templates that can be enrolled into Secure Access

GET /organizations/{organizationId}/sase/networks/eligible



Docs

List regions

Operation ID: getOrganizationSaseRegions

PATH /organizations/{organizationId}/sase/regions

{
  "items": [
    {
      "connectorId": "123",
      "type": "CNHE",
      "name": "US West",
      "region": {
        "name": "us-west-1"
      }
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 1,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

List regions

GET /organizations/{organizationId}/sase/regions



Docs

List of enrolled SASE sites in this organization

Operation ID: getOrganizationSaseSites

PATH /organizations/{organizationId}/sase/sites

{
  "items": [
    {
      "siteId": "1234",
      "network": {
        "id": "N_123"
      },
      "type": "Meraki spoke",
      "name": "London Office",
      "region": {
        "name": "US East"
      },
      "model": "MX95",
      "address": {
        "street": "123 Main St"
      },
      "vpn": {
        "type": "spoke"
      },
      "routing": {
        "defaultRoute": {
          "enabled": true
        }
      },
      "status": "good"
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 1,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

List of enrolled SASE sites in this organization

GET /organizations/{organizationId}/sase/sites



Docs

List high-level SASE site statuses (healthy, degraded, offline)

Operation ID: getOrganizationSaseSitesConnectivity

PATH /organizations/{organizationId}/sase/sites/connectivity

{
  "counts": {
    "byStatus": {
      "healthy": {
        "total": 3
      },
      "degraded": {
        "total": 3
      },
      "offline": {
        "total": 3
      }
    },
    "total": 9
  }
}

- Path added

- New endpoint

List high-level SASE site statuses (healthy, degraded, offline)

GET /organizations/{organizationId}/sase/sites/connectivity



Docs

Get the connectivity history of SASE sites in this organization

Operation ID: getOrganizationSaseSitesConnectivityHistory

PATH /organizations/{organizationId}/sase/sites/connectivity/history

{
  "items": [
    {
      "siteId": "123",
      "name": "Frontizo Network 1",
      "history": [
        {
          "id": "123",
          "status": "good",
          "timestamp": "2022-11-08T00:00:00Z"
        }
      ],
      "devices": {
        "primary": {
          "id": "234",
          "statuses": [
            {
              "id": "234",
              "status": "good",
              "timestamp": "2022-11-08T00:00:00Z"
            }
          ]
        },
        "spare": {
          "id": "345",
          "statuses": [
            {
              "id": "345",
              "status": "bad tunnel",
              "timestamp": "2022-11-08T00:15:00Z"
            }
          ]
        }
      }
    }
  ]
}

- Path added

- New endpoint

Get the connectivity history of SASE sites in this organization

GET /organizations/{organizationId}/sase/sites/connectivity/history



Docs

Detach sites in this organization from Secure Access

Operation ID: detachOrganizationSaseSites

PATH /organizations/{organizationId}/sase/sites/detach

{
  "items": [
    {
      "action": "detach",
      "status": "complete",
      "message": "Job is pending or already enqueued",
      "request": {
        "siteId": "1520758"
      }
    }
  ],
  "callback": {
    "id": "1284392014819",
    "url": "https://webhook.site/28efa24e-f830-4d9f-a12b-fbb9e5035031",
    "status": "new"
  }
}

- Path added

- New endpoint

Detach sites in this organization from Secure Access. This will remove the sites from Secure Access.

DELETE /organizations/{organizationId}/sase/sites/detach



Docs

Enroll sites in this organization to Secure Access

Operation ID: enrollOrganizationSaseSites

PATH /organizations/{organizationId}/sase/sites/enroll

{
  "items": [
    {
      "action": "enroll",
      "status": "complete",
      "message": "Job is pending or already enqueued",
      "request": {
        "siteId": "1520758",
        "regionId": "42"
      }
    }
  ],
  "callback": {
    "id": "1284392014819",
    "url": "https://webhook.site/28efa24e-f830-4d9f-a12b-fbb9e5035031",
    "status": "new"
  }
}

- Path added

- New endpoint

Enroll sites in this organization to Secure Access. For an organization, a maximum of 4000 sites can be enrolled if they are in spoke mode or a maximum of 10 sites can be enrolled in hub mode.

POST /organizations/{organizationId}/sase/sites/enroll



Docs

Update the configuration for a site

Operation ID: updateOrganizationSaseSite

PATH /organizations/{organizationId}/sase/sites/{siteId}

{
  "siteId": "1234",
  "network": {
    "id": "N_123"
  },
  "type": "Meraki spoke",
  "name": "London Office",
  "region": {
    "name": "US East"
  },
  "model": "MX95",
  "address": {
    "street": "123 Main St"
  },
  "vpn": {
    "type": "spoke"
  },
  "routing": {
    "defaultRoute": {
      "enabled": true
    }
  },
  "devices": [
    {
      "name": "cc:03:d9:01:00:0a",
      "model": "MX95"
    }
  ],
  "localNetworks": [
    {
      "subnet": "192.168.100.0/24"
    }
  ],
  "urlPrefix": "/London-Office/n/cEF-pd"
}

- Path added

- New endpoint

Update the configuration for a site. Currently, only supports updating default route enablement.

PUT /organizations/{organizationId}/sase/sites/{siteId}



networks

Docs

Move networks from one organization to another

Operation ID: createNetworkMove

PATH /organizations/{organizationId}/networks/moves

{
  "moveId": "123456",
  "initiator": {
    "admin": {
      "id": "8590064780"
    }
  },
  "organizations": {
    "source": {
      "id": "146307"
    },
    "target": {
      "id": "146308"
    }
  },
  "network": {
    "id": "N_569142402909112097"
  },
  "createdAt": "1970-01-20T15:57:36.000Z",
  "lastUpdatedAt": "1970-01-20T15:57:36.000Z",
  "result": {
    "status": "failed",
    "reason": "Cannot move network: Target organization is invalid or inaccessible."
  }
}

- Path added

- New endpoint

Return a list of network move operations in the organization

GET /organizations/{organizationId}/networks/moves


- New endpoint

Move networks from one organization to another. For more information and caveats around network move limitations see the Network Portability documentation.

POST /organizations/{organizationId}/networks/moves



integrations

Docs

Provides a list of integrations that can be enabled for an Organization.

Operation ID: getOrganizationIntegrationsDeployable

PATH /organizations/{organizationId}/integrations/deployable

[
  {
    "items": [
      {
        "type": "Catalyst SD-WAN",
        "name": "Catalyst SD-WAN",
        "provider": "Cisco",
        "tags": [
          "SD-WAN"
        ],
        "shortDescription": "Connect to a Catalyst SD-WAN overlay to enable simple SD-WAN interconnects.",
        "isDeployable": true,
        "releaseType": "Beta",
        "logoUrl": "https://example.com",
        "redirectUrl": "https://example.com",
        "isCiscoProduct": true
      }
    ],
    "meta": {
      "counts": {
        "items": {
          "total": 100,
          "remaining": 10
        }
      }
    }
  }
]

- Path added

- New endpoint

Provides a list of integrations that can be enabled for an Organization.

GET /organizations/{organizationId}/integrations/deployable



Docs

Provides a list of integrations enabled for an Organization.

Operation ID: getOrganizationIntegrationsDeployed

PATH /organizations/{organizationId}/integrations/deployed

[
  {
    "items": [
      {
        "id": "98765",
        "type": "OAuth",
        "name": "OAuth Application",
        "provider": "partner",
        "tags": [
          "Wayfinding",
          "OAuth"
        ]
      }
    ],
    "meta": {
      "counts": {
        "items": {
          "total": 100,
          "remaining": 10
        }
      }
    }
  }
]

- Path added

- New endpoint

Provides a list of integrations enabled for an Organization.

GET /organizations/{organizationId}/integrations/deployed



extensions

Docs

Update name and status of an Interconnect

Operation ID: updateOrganizationExtensionsSdwanmanagerInterconnect

PATH /organizations/{organizationId}/extensions/sdwanmanager/interconnects/{interconnectId}

{
  "id": "12345",
  "name": "My Interconnect",
  "status": "active",
  "type": "Catalyst SD-WAN",
  "vpnCount": 1,
  "tunnelCount": 4,
  "asNum": 12345,
  "networkId": "N_12345",
  "wiredId": "123456",
  "networkLocaleId": "L_12345",
  "createdAt": "2024-02-11T00:00:00Z",
  "internalSubnets": [
    "169.254.250.0/30",
    "169.254.250.4/30"
  ]
}

- Path added

- New endpoint

Update name and status of an Interconnect

PUT /organizations/{organizationId}/extensions/sdwanmanager/interconnects/{interconnectId}



Docs

List the ThousandEyes agent configurations under this organization

Operation ID: getOrganizationExtensionsThousandEyesNetworks

PATH /organizations/{organizationId}/extensions/thousandEyes/networks

[
  {
    "networkId": "N_24329156",
    "enabled": true,
    "agentId": "12345"
  }
]

- Path added

- New endpoint

List the ThousandEyes agent configurations under this organization. Only valid for networks with access to Meraki Insight. Organization must have a ThousandEyes account connected to perform this action.

GET /organizations/{organizationId}/extensions/thousandEyes/networks


- New endpoint

Add a ThousandEyes agent for this network. Only valid for networks with access to Meraki Insight. Organization must have a ThousandEyes account connected to perform this action.

POST /organizations/{organizationId}/extensions/thousandEyes/networks



Docs

List all the networks eligible for ThousandEyes agent activation under this organization.

Operation ID: getOrganizationExtensionsThousandEyesNetworksSupported

PATH /organizations/{organizationId}/extensions/thousandEyes/networks/supported

[
  {
    "networkId": "N_24329156",
    "name": "Main Office",
    "tags": [
      "tag1",
      "tag2"
    ],
    "device": {
      "model": "MX105",
      "firmware": {
        "currentVersion": {
          "shortName": "MX 18.104"
        }
      },
      "agent": {
        "isInstalled": false
      }
    }
  }
]

- Path added

- New endpoint

List all the networks eligible for ThousandEyes agent activation under this organization.

GET /organizations/{organizationId}/extensions/thousandEyes/networks/supported



Docs

List the ThousandEyes agent configuration under this network

Operation ID: getOrganizationExtensionsThousandEyesNetwork

PATH /organizations/{organizationId}/extensions/thousandEyes/networks/{networkId}

{
  "networkId": "N_24329156",
  "enabled": true,
  "agentId": "12345"
}

- Path added

- New endpoint

List the ThousandEyes agent configuration under this network. Only valid for networks with access to Meraki Insight. Organization must have a ThousandEyes account connected to perform this action.

GET /organizations/{organizationId}/extensions/thousandEyes/networks/{networkId}


- New endpoint

Update a ThousandEyes agent from this network. Only valid for networks with access to Meraki Insight. Organization must have a ThousandEyes account connected to perform this action.

PUT /organizations/{organizationId}/extensions/thousandEyes/networks/{networkId}


- New endpoint

Delete a ThousandEyes agent from this network. Only valid for networks with access to Meraki Insight. Organization must have a ThousandEyes account connected to perform this action.

DELETE /organizations/{organizationId}/extensions/thousandEyes/networks/{networkId}



Docs

Create a ThousandEyes test based on a provided test template

Operation ID: createOrganizationExtensionsThousandEyesTest

PATH /organizations/{organizationId}/extensions/thousandEyes/tests

{
  "jobStatus": "new",
  "pccBackgroundJob": "13289785"
}

- Path added

- New endpoint

Create a ThousandEyes test based on a provided test template. Only valid for networks with access to Meraki Insight. Organization must have a ThousandEyes account connected to perform this action.

POST /organizations/{organizationId}/extensions/thousandEyes/tests



cloud

Docs

List of source/destination traffic rules

Operation ID: getOrganizationCloudConnectivityRequirements

PATH /organizations/{organizationId}/cloud/connectivity/requirements

[
  {
    "description": "Meraki cloud communication",
    "productTypes": [
      "appliance",
      "wireless",
      "camera",
      "switch"
    ],
    "rule": {
      "sources": {
        "includeAddressesInYourNetworks": false,
        "addresses": [
          {
            "type": "ipv4",
            "address": "209.206.48.0/20"
          }
        ]
      },
      "destinations": {
        "includeAddressesInYourNetworks": false,
        "includeAnyAddress": false,
        "addresses": [
          {
            "type": "fqdn",
            "address": "webhook.site"
          }
        ]
      },
      "ports": [
        {
          "port": "443",
          "protocols": [
            "TCP"
          ]
        }
      ]
    }
  }
]

- Path added

- New endpoint

List of source/destination traffic rules

GET /organizations/{organizationId}/cloud/connectivity/requirements



auth

Docs

List the organization-wide RADIUS servers in the organization

Operation ID: getOrganizationAuthRadiusServers

PATH /organizations/{organizationId}/auth/radius/servers

[
  {
    "serverId": "42",
    "name": "HQ RADIUS server",
    "address": "1.2.3.4",
    "modes": [
      {
        "mode": "auth",
        "port": 1812
      }
    ]
  }
]

- Path added

- New endpoint

List the organization-wide RADIUS servers in the organization

GET /organizations/{organizationId}/auth/radius/servers


- New endpoint

Add an organization-wide RADIUS server

POST /organizations/{organizationId}/auth/radius/servers



Docs

Return list of network and policies that organization-wide RADIUS servers are bing used

Operation ID: getOrganizationAuthRadiusServersAssignments

PATH /organizations/{organizationId}/auth/radius/servers/assignments

{
  "serverId": "42",
  "name": "HQ RADIUS server",
  "assignments": [
    {
      "network": {
        "id": "L_1234",
        "eid": "L_1234",
        "tag": "San-Francisco",
        "name": "San Francisco Office",
        "dashboardUrl": "https://n1.meraki.dev.ikram.io/tag/n/1234/manage/nodes/list"
      },
      "assignee": {
        "type": "Access policy",
        "id": "42",
        "name": "Access policy #42",
        "dashboardUrl": "https://n1.meraki.dev.ikram.io/tag/n/1234/manage/configure/switch_access"
      }
    }
  ]
}

- Path added

- New endpoint

Return list of network and policies that organization-wide RADIUS servers are bing used

GET /organizations/{organizationId}/auth/radius/servers/assignments



Docs

Return an organization-wide RADIUS server

Operation ID: getOrganizationAuthRadiusServer

PATH /organizations/{organizationId}/auth/radius/servers/{serverId}

{
  "serverId": "42",
  "name": "HQ RADIUS server",
  "address": "1.2.3.4",
  "modes": [
    {
      "mode": "auth",
      "port": 1812
    }
  ]
}

- Path added

- New endpoint

Return an organization-wide RADIUS server

GET /organizations/{organizationId}/auth/radius/servers/{serverId}


- New endpoint

Update an organization-wide RADIUS server

PUT /organizations/{organizationId}/auth/radius/servers/{serverId}


- New endpoint

Delete an organization-wide RADIUS server from a organization

DELETE /organizations/{organizationId}/auth/radius/servers/{serverId}



workflows

Docs

Return workflows filtered by organization ID, network ID, type, and category

Operation ID: getOrganizationAssuranceWorkflows

PATH /organizations/{organizationId}/assurance/workflows

[
  {
    "id": "workflow1",
    "organizationId": "org1",
    "network": {
      "id": "L_123456",
      "name": "Network 1"
    },
    "scopeId": "scope123",
    "type": "type1",
    "categoryType": "category1",
    "scopeType": "scope1",
    "workflowState": "active",
    "timestamp": "2025-04-14T12:00:00Z",
    "networkTags": [
      "tag1",
      "tag2"
    ],
    "clientTags": [
      "clientTag1",
      "clientTag2"
    ],
    "nodeTags": [
      "nodeTag1",
      "nodeTag2"
    ],
    "resolvedAt": "2018-02-11T00:00:00.090210Z"
  }
]

- Path added

- New endpoint

Return workflows filtered by organization ID, network ID, type, and category

GET /organizations/{organizationId}/assurance/workflows



thousandEyes

Docs

Get a list of Thousand Eyes applications with their alerts.

Operation ID: getOrganizationAssuranceThousandEyesApplications

PATH /organizations/{organizationId}/assurance/thousandEyes/applications

[
  {
    "selectedClient": "k2349",
    "applications": [
      {
        "appId": "1001.12",
        "testId": "123456",
        "description": "Cisco WebEx",
        "tagName": "Box",
        "impactedClientsTotalCount": 3,
        "networkImpactedClientsCount": 3,
        "applicationImpactedClientsCount": 3,
        "issues": [
          {
            "alertId": "webex",
            "impactedClients": 3,
            "type": "application",
            "message": "Error: '503 Service Unavailable'",
            "startTime": "2024-01-11 19:04:08",
            "endTime": "2024-01-11 21:04:08",
            "impactingSelectedClient": false
          }
        ]
      }
    ],
    "score": {
      "score": 87,
      "change": -12
    },
    "agent": {
      "deployed": true,
      "enabled": true
    },
    "network": {
      "id": "N_24329156",
      "name": "Main Office"
    }
  }
]

- Path added

- New endpoint

Get a list of Thousand Eyes applications with their alerts.

GET /organizations/{organizationId}/assurance/thousandEyes/applications



scores

Docs

Get network health scores for a list of networks.

Operation ID: getOrganizationAssuranceScores

PATH /organizations/{organizationId}/assurance/scores

[
  {
    "network": {
      "id": "N_24329156",
      "name": "Main Office"
    },
    "trend": 2,
    "score": 90,
    "byInterval": [
      {
        "ts": 1526087474,
        "score": 90,
        "byCategory": [
          {
            "name": "clients",
            "score": 90
          }
        ]
      }
    ],
    "byCategory": [
      {
        "name": "clients",
        "score": 90,
        "trend": 2,
        "bySubcategory": [
          {
            "name": "wireless",
            "score": 90,
            "trend": 2,
            "weight": {
              "count": 10,
              "percentage": 0.9,
              "description": "wireless onboarding attempts"
            }
          }
        ]
      }
    ]
  }
]

- Path added

- New endpoint

Get network health scores for a list of networks.

GET /organizations/{organizationId}/assurance/scores



productAnnouncements

Docs

Gets relevant product announcements for a user

Operation ID: getOrganizationAssuranceProductAnnouncements

PATH /organizations/{organizationId}/assurance/productAnnouncements

{
  "items": [
    {
      "id": "123",
      "boardId": "new-features",
      "title": "Cisco Meraki India Region cloud now in GA",
      "url": "https://community.meraki.com/t5/Feature-Announcements/Cisco-Meraki-India-Region-cloud-now-in-GA/ba-p/259490",
      "snippet": "As part of our ongoing commitment to the cloud and helping customers meet their local data storage needs, we are excited to announce that Cisco Meraki India Region cloud is now released in GA (Genera...",
      "publishedAt": "2018-02-11T00:00:00.090210Z",
      "editedAt": "2018-02-11T00:00:00.090210Z",
      "labels": [
        {
          "id": "1",
          "name": "Features"
        }
      ]
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 1
      }
    }
  }
}

- Path added

- New endpoint

Gets relevant product announcements for a user

GET /organizations/{organizationId}/assurance/productAnnouncements



optimization

Docs

Returns an array of checkup results for the networks

Operation ID: getOrganizationAssuranceOptimizationCheckupByNetwork

PATH /organizations/{organizationId}/assurance/optimization/checkup/byNetwork

{
  "items": [
    {
      "scope": "Dashboard",
      "rules": [
        {
          "id": "PASSWORD_EXPIRY",
          "name": "Short-lived passwords",
          "description": "Passwords are recommended to expire periodically to reduce the window of opportunity for unauthorized access in case of compromised credentials.",
          "documentation": {
            "pageName": "Documentation",
            "pageUrl": "https://documentation.meraki.com"
          },
          "assessments": [
            {
              "status": "recommendation",
              "networkIds": [
                "N_24329156"
              ]
            }
          ],
          "resolutions": [
            {
              "pageName": "Organization settings",
              "pageUrl": "https://url.com"
            }
          ]
        }
      ]
    }
  ]
}

- Path added

- New endpoint

Returns an array of checkup results for the networks

GET /organizations/{organizationId}/assurance/optimization/checkup/byNetwork



apiRequests

Docs

Lists API request response codes and their counts aggregated by admin

Operation ID: getOrganizationApiRequestsResponseCodesHistoryByAdmin

PATH /organizations/{organizationId}/apiRequests/responseCodes/history/byAdmin

[
  {
    "adminId": "1738",
    "name": "Admin Name",
    "email": "email@example.com",
    "overall": {
      "counts": {
        "byCode": [
          {
            "code": 200,
            "total": 100
          }
        ],
        "total": 100
      }
    }
  }
]

- Path added

- New endpoint

Lists API request response codes and their counts aggregated by admin

GET /organizations/{organizationId}/apiRequests/responseCodes/history/byAdmin



Docs

Lists API request response codes and their counts aggregated by application

Operation ID: getOrganizationApiRequestsResponseCodesHistoryByApplication

PATH /organizations/{organizationId}/apiRequests/responseCodes/history/byApplication

[
  {
    "userAgentString": "google/chrome",
    "name": "My favorite OAuth app",
    "overall": {
      "counts": {
        "byCode": [
          {
            "code": 200,
            "total": 100
          }
        ],
        "total": 100
      }
    }
  }
]

- Path added

- New endpoint

Lists API request response codes and their counts aggregated by application

GET /organizations/{organizationId}/apiRequests/responseCodes/history/byApplication



Docs

Aggregates API usage data by operationId

Operation ID: getOrganizationApiRequestsResponseCodesHistoryByOperation

PATH /organizations/{organizationId}/apiRequests/responseCodes/history/byOperation

[
  {
    "operationId": "getNetworkClients",
    "overall": {
      "counts": {
        "byCode": [
          {
            "code": 200,
            "total": 100
          }
        ],
        "total": 100
      }
    }
  }
]

- Path added

- New endpoint

Aggregates API usage data by operationId

GET /organizations/{organizationId}/apiRequests/responseCodes/history/byOperation



Docs

Aggregates API usage by source ip

Operation ID: getOrganizationApiRequestsResponseCodesHistoryBySourceIp

PATH /organizations/{organizationId}/apiRequests/responseCodes/history/bySourceIp

[
  {
    "sourceIp": "123.123.123.1",
    "overall": {
      "counts": {
        "byCode": [
          {
            "code": 200,
            "total": 100
          }
        ],
        "total": 100
      }
    }
  }
]

- Path added

- New endpoint

Aggregates API usage by source ip

GET /organizations/{organizationId}/apiRequests/responseCodes/history/bySourceIp



snmp

Docs

Retrieve the SNMP trap configuration for the networks in an organization

Operation ID: getOrganizationSnmpTrapsByNetwork

PATH /organizations/{organizationId}/snmp/traps/byNetwork

[
  {
    "network": {
      "id": "N_12345678",
      "name": "networkName"
    },
    "mode": "v3",
    "receiver": {
      "address": "1.1.1.1",
      "port": "1234"
    },
    "v2": {
      "community": "public"
    },
    "v3": {
      "users": [
        {
          "name": "merakian"
        }
      ]
    }
  }
]

- Path added

- New endpoint

Retrieve the SNMP trap configuration for the networks in an organization

GET /organizations/{organizationId}/snmp/traps/byNetwork



certificates

Docs

Gets all or specific certificates for an organization

Operation ID: getOrganizationCertificates

PATH /organizations/{organizationId}/certificates

{
  "certificateId": "1284392014819",
  "description": "friendly description",
  "parentCertificateId": "1284392014818",
  "source": "NAC",
  "fields": {
    "validity": {
      "start": "2022-09-01T12:00:00Z",
      "end": "2022-10-01T12:00:00Z"
    },
    "subject": {
      "commonName": "subjectRoot",
      "organizationalUnit": "CloudNAC",
      "organization": "Cisco Systems",
      "locality": "Bangalore",
      "state": "KA",
      "country": "IN"
    },
    "subjectAlternativeName": "AAA Certificate Services Hidden Certificate",
    "issuer": {
      "commonName": "issuerRoot",
      "organizationalUnit": "CloudNAC",
      "organization": "Cisco Systems",
      "locality": "Bangalore",
      "state": "KA",
      "country": "IN"
    },
    "serial": "7C 08 29 E8 CC",
    "policy": "policy string here",
    "version": "1.2.3.4",
    "signatureAlgorithmId": "SHA256withRSA",
    "publicKeyAlgorithm": "RSA",
    "keyUsage": {
      "isCritical": false,
      "data": [
        "Digital Signature",
        "Key Encipherment"
      ]
    },
    "hashes": [
      {
        "algorithm": "SHA1",
        "hash": "hash text here"
      }
    ]
  }
}

- Path added

- New endpoint

Gets all or specific certificates for an organization

GET /organizations/{organizationId}/certificates



Docs

Import certificate for this organization

Operation ID: createOrganizationCertificatesImport

PATH /organizations/{organizationId}/certificates/import

{
  "certificateId": "1284392014819",
  "description": "friendly description",
  "parentCertificateId": "1284392014818",
  "source": "NAC",
  "fields": {
    "validity": {
      "start": "2022-09-01T12:00:00Z",
      "end": "2022-10-01T12:00:00Z"
    },
    "subject": {
      "commonName": "subjectRoot",
      "organizationalUnit": "CloudNAC",
      "organization": "Cisco Systems",
      "locality": "Bangalore",
      "state": "KA",
      "country": "IN"
    },
    "subjectAlternativeName": "AAA Certificate Services Hidden Certificate",
    "issuer": {
      "commonName": "issuerRoot",
      "organizationalUnit": "CloudNAC",
      "organization": "Cisco Systems",
      "locality": "Bangalore",
      "state": "KA",
      "country": "IN"
    },
    "serial": "7C 08 29 E8 CC",
    "policy": "policy string here",
    "version": "1.2.3.4",
    "signatureAlgorithmId": "SHA256withRSA",
    "publicKeyAlgorithm": "RSA",
    "keyUsage": {
      "isCritical": false,
      "data": [
        "Digital Signature",
        "Key Encipherment"
      ]
    },
    "hashes": [
      {
        "algorithm": "SHA1",
        "hash": "hash text here"
      }
    ]
  }
}

- Path added

- New endpoint

Import certificate for this organization

POST /organizations/{organizationId}/certificates/import



Docs

Download the public RADIUS certificate.

Operation ID: getOrganizationCertificatesMerakiAuthContents

PATH /organizations/{organizationId}/certificates/merakiAuth/contents

{
  "contents": "-----BEGIN CERTIFICATE-----\nContents of cert \n-----END CERTIFICATE-----",
  "readMe": ""
}

- Path added

- New endpoint

Download the public RADIUS certificate.

GET /organizations/{organizationId}/certificates/merakiAuth/contents



Docs

Delete a certificate for an organization

Operation ID: deleteOrganizationCertificate

PATH /organizations/{organizationId}/certificates/{certificateId}

- Path added

- New endpoint

Update a certificate's description for an organization

PUT /organizations/{organizationId}/certificates/{certificateId}


- New endpoint

Delete a certificate for an organization

DELETE /organizations/{organizationId}/certificates/{certificateId}



Docs

Download the trusted certificate by certificate id.

Operation ID: getOrganizationCertificateContents

PATH /organizations/{organizationId}/certificates/{certificateId}/contents

{
  "contents": "-----BEGIN CERTIFICATE-----MIIHvjCCBqagAwIBAgIQB4CbtQD3es3UQ988CCKGPjANBgkqhkiG9w0BAQsFADBPMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMSkwJwYDVQQDEyBEaWdpQ2VydCBUTFMgUlNBIFNIQTI1NiAyMDIwIENBMTAeFw0yMjA4MTAwMDAwMDBaFw0yMzA4MDkyMzU5NTlaMG4xCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNpc2NvMRMwEQYDVQQKEwpNZXJha2kgTExDMR0wGwYDVQQDExRyYWRpdXMuZGV2LmlrYXJlbS5pbzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBANSxcK8g9J3nRwDqNurYbXDieo5vHw5wWO4m3uJSvWtQ+zDMZzjEhA6ix3VfftGLLE+0C99a9B2oOubZgO/sAIJmLD6Oz25bUinAtzuEmOQiqZ8OZjYZd//emPOty7POZSU5C3rGUX0ESzrStL20iJoGzyA0U9clI+14yZCyXY1+Th3VSQCvGs/DmOMPn+MdBoMXIgzVk7+wjMr53fN6H8Q26y52NlLTmAxum2L7ag4owTecURzC6-----END CERTIFICATE-----"
}

- Path added

- New endpoint

Download the trusted certificate by certificate id.

GET /organizations/{organizationId}/certificates/{certificateId}/contents



devices

Docs

Returns counts of online, offline, and recovered devices by product type, along with offline intervals for impacted devices in the organization.

Operation ID: getOrganizationAssuranceDevicesStatusesOverview

PATH /organizations/{organizationId}/assurance/devices/statuses/overview

{
  "byProductType": [
    {
      "productType": "wireless",
      "online": 10,
      "offline": 5,
      "recovered": 3
    }
  ],
  "byImpactedDevice": [
    {
      "network": {
        "name": "Office HQ",
        "id": "L_123"
      },
      "device": {
        "name": "Lobby AP",
        "serial": "QXXX-YYYY-ZZZ0",
        "mac": "aa:bb:cc:dd:ee:ff",
        "productType": "wireless"
      },
      "offlineIntervals": [
        {
          "startTs": "2025-03-20T20:24:42.285237Z",
          "endTs": "2025-03-20T21:30:55.691996Z"
        }
      ]
    }
  ]
}

- Path added

- New endpoint

Returns counts of online, offline, and recovered devices by product type, along with offline intervals for impacted devices in the organization.

GET /organizations/{organizationId}/assurance/devices/statuses/overview



Docs

Returns the history of device boots in reverse chronological order (most recent first)

Operation ID: getOrganizationDevicesBootsHistory

PATH /organizations/{organizationId}/devices/boots/history

[
  {
    "serial": "Q234-ABCD-5678",
    "network": {
      "id": "N_24329156"
    },
    "start": {
      "bootedAt": "2018-02-11T00:00:00.090210Z"
    }
  }
]

- Path added

- New endpoint

Returns the history of device boots in reverse chronological order (most recent first). Currently supported for MS devices only.

GET /organizations/{organizationId}/devices/boots/history



Docs

Summarizes device reboots across an organization.

Operation ID: getOrganizationDevicesBootsOverviewByDevice

PATH /organizations/{organizationId}/devices/boots/overview/byDevice

[
  {
    "items": [
      {
        "counts": {
          "total": 1000,
          "byType": [
            {
              "type": "unusual",
              "count": 5,
              "byReason": [
                {
                  "reason": "panic",
                  "count": 2
                }
              ]
            }
          ]
        }
      }
    ],
    "device": {
      "name": "My AP",
      "serial": "Q234-ABCD-5678",
      "mac": "00:11:22:33:44:55"
    }
  }
]

- Path added

- New endpoint

Summarizes device reboots across an organization.

GET /organizations/{organizationId}/devices/boots/overview/byDevice



Docs

Summarizes memory status across devices of a given network

Operation ID: getOrganizationDevicesMemoryByDevice

PATH /organizations/{organizationId}/devices/memory/byDevice

[
  {
    "device": {
      "name": "My switch",
      "mac": "00:11:22:33:44:55",
      "serial": "Q234-ABCD-5678",
      "model": "MR34"
    },
    "network": {
      "id": "N_24329156",
      "name": "Main Office"
    },
    "used": {
      "min": 2,
      "max": 4,
      "mean": 3,
      "meanPercent": 30.56,
      "median": 3,
      "medianPercent": 25
    }
  }
]

- Path added

- New endpoint

Summarizes memory status across devices of a given network

GET /organizations/{organizationId}/devices/memory/byDevice



Docs

List the Opportunistic Pcap settings of an organization by network

Operation ID: getOrganizationDevicesPacketCaptureOpportunisticByNetwork

PATH /organizations/{organizationId}/devices/packetCapture/opportunistic/byNetwork

[
  {
    "network": {
      "id": "123",
      "name": "sample-node-group-name"
    },
    "networkId": "L_12345",
    "name": "My Network",
    "enablement": {
      "networkWide": 0,
      "serials": [
        "Q234-ABCD-5678"
      ],
      "tags": [
        "tag1",
        "tag2"
      ]
    }
  }
]

- Path added

- New endpoint

List the Opportunistic Pcap settings of an organization by network

GET /organizations/{organizationId}/devices/packetCapture/opportunistic/byNetwork



Docs

Delete packet capture schedules

Operation ID: bulkOrganizationDevicesPacketCaptureSchedulesDelete

PATH /organizations/{organizationId}/devices/packetCapture/schedules/bulkDelete

- Path added

- New endpoint

Delete packet capture schedules

POST /organizations/{organizationId}/devices/packetCapture/schedules/bulkDelete



Docs

Enqueues a task for a specific packet capture

Operation ID: tasksOrganizationDevicesPacketCapture

PATH /organizations/{organizationId}/devices/packetCaptures/{packetId}/tasks

{
  "task": "analysis",
  "taskId": "123456",
  "status": "pending"
}

- Path added

- New endpoint

Enqueues a task for a specific packet capture. This endpoint has a sustained rate limit of one request every 60 seconds.

POST /organizations/{organizationId}/devices/packetCaptures/{packetId}/tasks



Docs

Retrieves packet capture analysis result for a specific packet capture task.

Operation ID: getOrganizationDevicesPacketCaptureTask

PATH /organizations/{organizationId}/devices/packetCaptures/{packetId}/tasks/{id}

{
  "task": "analysis",
  "status": "completed",
  "summary": {
    "counts": {
      "total": 1,
      "successes": 0,
      "failures": 1
    },
    "macs": [
      "00:11:22:33:44:55"
    ],
    "ips": [
      "1.2.3.4"
    ],
    "devices": [
      {
        "name": "My AP",
        "url": "https://n1.meraki.com//n//manage/nodes/new_list/000000000000"
      }
    ]
  },
  "analyzers": {
    "analyzer": {
      "present": true,
      "macs": [
        "00:11:22:33:44:55"
      ],
      "ips": [
        "1.2.3.4"
      ],
      "devices": [
        "My AP"
      ],
      "testCounts": {
        "total": 1,
        "successes": 0,
        "failures": 1
      },
      "testResults": [
        {
          "passed": [
            {
              "name": "Test",
              "status": false,
              "details": []
            }
          ],
          "failed": [
            {
              "name": "Test",
              "status": false,
              "details": [
                {
                  "subCategory": "DHCP Request not seen",
                  "failureCount": 3,
                  "packets": [
                    5,
                    6,
                    7
                  ],
                  "detailMessage": "Failed",
                  "macs": [
                    "00:11:22:33:44:55"
                  ],
                  "ips": [
                    "1.2.3.4"
                  ],
                  "devices": [
                    "My AP"
                  ]
                }
              ]
            }
          ]
        }
      ]
    }
  },
  "fileName": "sample.pcap",
  "filePathUrl": "https://www.meraki.com"
}

- Path added

- New endpoint

Retrieves packet capture analysis result for a specific packet capture task.

GET /organizations/{organizationId}/devices/packetCaptures/{packetId}/tasks/{id}



Docs

Returns syslog servers configured for the networks within an organization.

Operation ID: getOrganizationDevicesSyslogServersByNetwork

PATH /organizations/{organizationId}/devices/syslog/servers/byNetwork

{
  "items": [
    {
      "network": {
        "id": "N_123456789012345678"
      },
      "servers": [
        {
          "host": "1.2.3.4",
          "port": "443",
          "roles": [
            "Wireless event log",
            "Appliance URLs"
          ],
          "transportProtocol": "UDP",
          "encryption": {
            "enabled": true,
            "certificate": {
              "id": "1637"
            }
          }
        }
      ]
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 1,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

Returns syslog servers configured for the networks within an organization.

GET /organizations/{organizationId}/devices/syslog/servers/byNetwork



Docs

Returns roles that can be assigned to a syslog server for a given network.

Operation ID: getOrganizationDevicesSyslogServersRolesByNetwork

PATH /organizations/{organizationId}/devices/syslog/servers/roles/byNetwork

{
  "items": [
    {
      "network": {
        "id": "N_123456789012345678"
      },
      "availableRoles": [
        {
          "name": "Wireless Event Log",
          "value": "wireless_event_log"
        }
      ]
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 10,
        "remaining": 2
      }
    }
  }
}

- Path added

- New endpoint

Returns roles that can be assigned to a syslog server for a given network.

GET /organizations/{organizationId}/devices/syslog/servers/roles/byNetwork



clients

Docs

Given a client, get all alerts and events for a given timespan

Operation ID: getOrganizationAssuranceClientsEvents

PATH /organizations/{organizationId}/assurance/clients/events

[
  {
    "client": {
      "id": "k74272e",
      "name": "Cisco Meraki valued client"
    },
    "network": {
      "id": "N_24329156",
      "name": "Main Office"
    },
    "startTime": "2018-02-11T00:00:00Z",
    "endTime": "2018-05-12T00:00:00Z",
    "events": [
      {
        "category": "connectivity",
        "type": "dhcp_problem",
        "displayText": "DHCP Problem",
        "startedAt": "2018-02-11T00:00:00Z",
        "resolvedAt": "2018-05-12T00:00:00Z",
        "device": {
          "name": "Device Name",
          "mac": "00:11:22:33:44:55",
          "type": "MS",
          "serial": "Q234-ABCD-5678",
          "url": "https://n1.meraki.test/tag/n/testnetwork/manage/nodes/new_list/12345"
        },
        "ssid": {
          "name": "SSID Name",
          "url": "https://n1.meraki.test/tag/n/testnetwork/manage/configure/access_control?ssid_number=5"
        },
        "packetCapture": {
          "enabled": false,
          "captureId": "12345"
        }
      }
    ]
  }
]

- Path added

- New endpoint

Given a client, get all alerts and events for a given timespan

GET /organizations/{organizationId}/assurance/clients/events



Docs

Given a client, category, and timespan, return events that have a close connection to each other.

Operation ID: getOrganizationAssuranceClientsEventsCorrelated

PATH /organizations/{organizationId}/assurance/clients/events/correlated

[
  {
    "client": {
      "id": "k74272e",
      "name": "Cisco Meraki valued client"
    },
    "network": {
      "id": "N_24329156",
      "name": "Main Office"
    },
    "timestamp": "2018-02-11T00:00:00Z",
    "events": [
      {
        "id": "123",
        "category": "connectivity",
        "type": "dhcp_problem",
        "displayText": "DHCP Problem",
        "startedAt": "2018-02-11T00:00:00Z",
        "resolvedAt": "2018-05-12T00:00:00Z",
        "device": {
          "type": "MS",
          "serial": "Q234-ABCD-5678"
        },
        "url": "https://shard.meraki.com/network/n/id/manage/dashboard/event_log"
      }
    ]
  }
]

- Path added

- New endpoint

Given a client, category, and timespan, return events that have a close connection to each other.

GET /organizations/{organizationId}/assurance/clients/events/correlated



Docs

Given a client, return current topology

Operation ID: getOrganizationAssuranceClientsTopologyCurrent

PATH /organizations/{organizationId}/assurance/clients/topology/current

[
  {
    "client": {
      "id": "k74272e",
      "name": "Cisco Meraki valued client"
    },
    "network": {
      "id": "N_24329156",
      "name": "Main Office"
    },
    "topology": [
      {
        "fromNode": {
          "serial": "123",
          "name": "My MR",
          "type": "MR"
        },
        "toNode": {
          "serial": "456",
          "name": "Other MS",
          "type": "MS"
        }
      }
    ]
  }
]

- Path added

- New endpoint

Given a client, return current topology

GET /organizations/{organizationId}/assurance/clients/topology/current



routing

Docs

List existing organization-wide VRFs (Virtual Routing and Forwarding).

Operation ID: getOrganizationRoutingVrfs

PATH /organizations/{organizationId}/routing/vrfs

{
  "items": [
    {
      "vrfId": "42",
      "autoRd": false,
      "name": "Engineering",
      "description": "Virtual network for Engineering",
      "routeDistinguisher": "65000:42",
      "routeTarget": "65000:42",
      "switchFabricId": "123"
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 1
      }
    }
  }
}

- Path added

- New endpoint

List existing organization-wide VRFs (Virtual Routing and Forwarding).

GET /organizations/{organizationId}/routing/vrfs


- New endpoint

Add an organization-wide VRF (Virtual Routing and Forwarding)

POST /organizations/{organizationId}/routing/vrfs



Docs

Update an organization-wide VRF (Virtual Routing and Forwarding)

Operation ID: updateOrganizationRoutingVrf

PATH /organizations/{organizationId}/routing/vrfs/{vrfId}

{
  "vrfId": "42",
  "autoRd": false,
  "name": "Engineering",
  "description": "Virtual network for Engineering",
  "routeDistinguisher": "65000:42",
  "routeTarget": "65000:42",
  "switchFabricId": "123"
}

- Path added

- New endpoint

Update an organization-wide VRF (Virtual Routing and Forwarding)

PUT /organizations/{organizationId}/routing/vrfs/{vrfId}


- New endpoint

Delete a VRF (Virtual Routing and Forwarding) from a organization

DELETE /organizations/{organizationId}/routing/vrfs/{vrfId}



[ networks ]

snmp

Docs

Update the SNMP trap configuration for the specified network

Operation ID: updateNetworkSnmpTraps

PATH /networks/{networkId}/snmp/traps

{
  "network": {
    "id": "N_12345678",
    "name": "networkName"
  },
  "mode": "v3",
  "receiver": {
    "address": "1.1.1.1",
    "port": "1234"
  },
  "v2": {
    "community": "public"
  },
  "v3": {
    "users": [
      {
        "name": "merakian"
      }
    ]
  }
}

- Path added

- New endpoint

Update the SNMP trap configuration for the specified network

PUT /networks/{networkId}/snmp/traps



locationScanning

Docs

Return scanning API settings

Operation ID: getNetworkLocationScanning

PATH /networks/{networkId}/locationScanning

{
  "analyticsEnabled": true,
  "scanningApiEnabled": true,
  "validator": "xxyzzy"
}

- Path added

- New endpoint

Return scanning API settings

GET /networks/{networkId}/locationScanning


- New endpoint

Change scanning API settings

PUT /networks/{networkId}/locationScanning



Docs

Return list of scanning API receivers

Operation ID: getNetworkLocationScanningHttpServers

PATH /networks/{networkId}/locationScanning/httpServers

[
  {
    "endpoints": [
      {
        "httpServer": {
          "id": "aHR0cHM6Ly93d3cuZXhhbXBsZS5jb20vbXlfY3VzdG9tX3dlYmhvb2s=",
          "name": "Example Webhook Server",
          "networkId": "N_12345678",
          "url": "https://www.example.com/my_custom_webhook",
          "sharedSecret": "******",
          "validator": "xxx",
          "validatedAt": "2018-02-11T00:00:00Z"
        },
        "scanningApiVersion": 123,
        "radioType": "WiFi",
        "successAt": "2018-05-12T00:00:00Z",
        "errorAt": "2018-02-11T00:00:00Z",
        "postErrors": "[{\"code\":200,\"delay\":{\"inMillis\":612},\"timestamp\":{\"millisFromEpoch\":1597255325467}}]"
      }
    ]
  }
]

- Path added

- New endpoint

Return list of scanning API receivers

GET /networks/{networkId}/locationScanning/httpServers


- New endpoint

Set the list of scanning API receivers. Old receivers will be removed

PUT /networks/{networkId}/locationScanning/httpServers



devices

Docs

Updates the syslog servers configuration for a network.

Operation ID: updateNetworkDevicesSyslogServers

PATH /networks/{networkId}/devices/syslog/servers

{
  "network": {
    "id": "N_123456789012345678"
  },
  "servers": [
    {
      "host": "1.2.3.4",
      "port": "443",
      "roles": [
        "Wireless event log",
        "Appliance URLs"
      ],
      "transportProtocol": "UDP",
      "encryption": {
        "enabled": true,
        "certificate": {
          "id": "1637"
        }
      }
    }
  ]
}

- Path added

- New endpoint

Updates the syslog servers configuration for a network.

PUT /networks/{networkId}/devices/syslog/servers



[ wireless ]

roaming

Docs

Get all wireless clients' roam events within the specified timespan grouped by network and time interval.

Operation ID: getOrganizationWirelessRoamingByNetworkByInterval

PATH /organizations/{organizationId}/wireless/roaming/byNetwork/byInterval

[
  {
    "network": {
      "id": "N_24329156",
      "name": "Main Office"
    },
    "byInterval": [
      {
        "startTs": "2024-08-20T18:00:00Z",
        "endTs": "2024-08-20T20:00:00Z",
        "roams": [
          {
            "origin": {
              "mac": "00:11:22:33:44:55",
              "serial": "Q234-ABCD-5678",
              "name": "My AP"
            },
            "destination": {
              "mac": "00:11:22:33:44:55",
              "serial": "Q234-ABCD-5678",
              "name": "My AP"
            },
            "ssid": {
              "number": 1,
              "name": "My SSID"
            },
            "client": {
              "id": "k74272e",
              "mac": "00:11:22:33:44:55"
            },
            "band": {
              "before": "5",
              "after": "2"
            },
            "protocol": "skc-roam",
            "duration": 100,
            "rssi": {
              "before": -70,
              "after": -70
            }
          }
        ]
      }
    ]
  }
]

- Path added

- New endpoint

Get all wireless clients' roam events within the specified timespan grouped by network and time interval.

GET /organizations/{organizationId}/wireless/roaming/byNetwork/byInterval



alerts

Docs

Operation ID: getOrganizationWirelessAlertsLowPowerByDevice

PATH /organizations/{organizationId}/wireless/alerts/lowPower/byDevice

[
  {
    "network": {
      "id": "N_24329156",
      "name": "Main Office"
    },
    "name": "My switch",
    "mac": "00:11:22:33:44:55",
    "serial": "Q234-ABCD-5678",
    "model": "MR34",
    "failureCount": "MR34",
    "startTime": "MR34",
    "endTime": "MR34"
  }
]

- Path added

- New endpoint

GET /organizations/{organizationId}/wireless/alerts/lowPower/byDevice



connectivity

Docs

Show the by-device RF Health score overview information for the organization in the given interval

Operation ID: getOrganizationAssuranceConnectivityWirelessRfHealthByBand

PATH /organizations/{organizationId}/assurance/connectivity/wireless/rfHealth/byBand

{
  "items": [
    {
      "twoPointFourImpactedCount": 10,
      "fiveImpactedCount": 0,
      "sixImpactedCount": 20,
      "impactedTotal": 30,
      "twoPointFour": [
        {
          "index": 0,
          "rfHealthScores": {
            "network": {
              "id": "N_24329156",
              "name": "Main Office"
            },
            "device": {
              "name": "My AP",
              "serial": "Q234-ABCD-5678",
              "mac": "00:11:22:33:44:55"
            },
            "readings": [
              {
                "startTs": "2024-04-19T00:05:00Z",
                "endTs": "2024-04-19T00:10:00Z",
                "index": 0,
                "band": "2.4",
                "coChannelNeighborScore": 22,
                "sideChannelNeighborScore": 22,
                "coChannelUtilizationScore": 22,
                "nonCoChannelNeighborScore": 22,
                "nonCoChannelUtilizationScore": 22,
                "neighborCoverageScore": 22,
                "ccaBusyScore": 22,
                "channelNoiseScore": 22,
                "sideChannelNoiseScore": 22,
                "channelInterferenceScore": 22,
                "sideChannelInterferenceScore": 22,
                "lowRssiClientsScore": 22,
                "clientScore": 22,
                "interferenceScore": 22,
                "neighborScore": 22,
                "noiseScore": 22,
                "overallScore": 22
              }
            ]
          }
        }
      ],
      "five": [
        {
          "index": 0,
          "rfHealthScores": {
            "network": {
              "id": "N_24329156",
              "name": "Main Office"
            },
            "device": {
              "name": "My AP",
              "serial": "Q234-ABCD-5678",
              "mac": "00:11:22:33:44:55"
            },
            "readings": [
              {
                "startTs": "2024-04-19T00:05:00Z",
                "endTs": "2024-04-19T00:10:00Z",
                "index": 0,
                "band": "2.4",
                "coChannelNeighborScore": 22,
                "sideChannelNeighborScore": 22,
                "coChannelUtilizationScore": 22,
                "nonCoChannelNeighborScore": 22,
                "nonCoChannelUtilizationScore": 22,
                "neighborCoverageScore": 22,
                "ccaBusyScore": 22,
                "channelNoiseScore": 22,
                "sideChannelNoiseScore": 22,
                "channelInterferenceScore": 22,
                "sideChannelInterferenceScore": 22,
                "lowRssiClientsScore": 22,
                "clientScore": 22,
                "interferenceScore": 22,
                "neighborScore": 22,
                "noiseScore": 22,
                "overallScore": 22
              }
            ]
          }
        }
      ],
      "six": [
        {
          "index": 0,
          "rfHealthScores": {
            "network": {
              "id": "N_24329156",
              "name": "Main Office"
            },
            "device": {
              "name": "My AP",
              "serial": "Q234-ABCD-5678",
              "mac": "00:11:22:33:44:55"
            },
            "readings": [
              {
                "startTs": "2024-04-19T00:05:00Z",
                "endTs": "2024-04-19T00:10:00Z",
                "index": 0,
                "band": "2.4",
                "coChannelNeighborScore": 22,
                "sideChannelNeighborScore": 22,
                "coChannelUtilizationScore": 22,
                "nonCoChannelNeighborScore": 22,
                "nonCoChannelUtilizationScore": 22,
                "neighborCoverageScore": 22,
                "ccaBusyScore": 22,
                "channelNoiseScore": 22,
                "sideChannelNoiseScore": 22,
                "channelInterferenceScore": 22,
                "sideChannelInterferenceScore": 22,
                "lowRssiClientsScore": 22,
                "clientScore": 22,
                "interferenceScore": 22,
                "neighborScore": 22,
                "noiseScore": 22,
                "overallScore": 22
              }
            ]
          }
        }
      ]
    }
  ]
}

- Path added

- New endpoint

Show the by-device RF Health score overview information for the organization in the given interval. This includes the RF Health score for each device, as well as some more basic device info

GET /organizations/{organizationId}/assurance/connectivity/wireless/rfHealth/byBand



ssids

Docs

Update the client exclusion status configuration for a given SSID

Operation ID: updateNetworkWirelessSsidPoliciesClientExclusion

PATH /networks/{networkId}/wireless/ssids/{number}/policies/clientExclusion

{
  "ssid": {
    "id": "12312333",
    "number": 1,
    "name": "My SSID"
  },
  "network": {
    "id": "N_1234",
    "name": "MR wireless 1"
  },
  "static": {
    "enabled": true
  }
}

- Path added

- New endpoint

Update the client exclusion status configuration for a given SSID

PUT /networks/{networkId}/wireless/ssids/{number}/policies/clientExclusion



Docs

Set the static client exclusion list for the given SSID

Operation ID: updateNetworkWirelessSsidPoliciesClientExclusionStaticExclusions

PATH /networks/{networkId}/wireless/ssids/{number}/policies/clientExclusion/static/exclusions

{
  "ssid": {
    "id": "12312333",
    "number": 1,
    "name": "My SSID"
  },
  "network": {
    "id": "N_1234",
    "name": "MR wireless 1"
  },
  "macs": [
    "00:11:22:33:44:55",
    "aa:bb:cc:dd:ee:ff"
  ]
}

- Path added

- New endpoint

Set the static client exclusion list for the given SSID

PUT /networks/{networkId}/wireless/ssids/{number}/policies/clientExclusion/static/exclusions



Docs

Add a list of MAC addresses to the static client exclusion list for the given SSID

Operation ID: createNetworkWirelessSsidPoliciesClientExclusionStaticExclusionsBulkAdd

PATH /networks/{networkId}/wireless/ssids/{number}/policies/clientExclusion/static/exclusions/bulkAdd

{
  "ssid": {
    "id": "12312333",
    "number": 1,
    "name": "My SSID"
  },
  "network": {
    "id": "N_1234",
    "name": "MR wireless 1"
  },
  "macs": [
    "00:11:22:33:44:55",
    "aa:bb:cc:dd:ee:ff"
  ]
}

- Path added

- New endpoint

Add a list of MAC addresses to the static client exclusion list for the given SSID

POST /networks/{networkId}/wireless/ssids/{number}/policies/clientExclusion/static/exclusions/bulkAdd



Docs

Delete a list of MAC addresses from the static client exclusion list for the given SSID

Operation ID: createNetworkWirelessSsidPoliciesClientExclusionStaticExclusionsBulkRemove

PATH /networks/{networkId}/wireless/ssids/{number}/policies/clientExclusion/static/exclusions/bulkRemove

- Path added

- New endpoint

Delete a list of MAC addresses from the static client exclusion list for the given SSID

POST /networks/{networkId}/wireless/ssids/{number}/policies/clientExclusion/static/exclusions/bulkRemove



Docs

Returns an array of objects, each containing client exclusion enablement statuses for one SSID

Operation ID: getOrganizationWirelessSsidsPoliciesClientExclusionBySsid

PATH /organizations/{organizationId}/wireless/ssids/policies/clientExclusion/bySsid

{
  "items": [
    {
      "ssid": {
        "id": "12312333",
        "number": 1,
        "name": "My SSID"
      },
      "network": {
        "id": "N_1234",
        "name": "MR wireless 1"
      },
      "static": {
        "enabled": true
      }
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 105,
        "remaining": 25
      }
    }
  }
}

- Path added

- New endpoint

Returns an array of objects, each containing client exclusion enablement statuses for one SSID

GET /organizations/{organizationId}/wireless/ssids/policies/clientExclusion/bySsid



Docs

Returns an array of objects, each containing a list of MAC's excluded from a given SSID

Operation ID: getOrganizationWirelessSsidsPoliciesClientExclusionStaticExclusionsBySsid

PATH /organizations/{organizationId}/wireless/ssids/policies/clientExclusion/static/exclusions/bySsid

{
  "items": [
    {
      "ssid": {
        "id": "12312333",
        "number": 1,
        "name": "My SSID"
      },
      "network": {
        "id": "N_1234",
        "name": "MR wireless 1"
      },
      "macs": [
        "00:11:22:33:44:55",
        "aa:bb:cc:dd:ee:ff"
      ]
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 105,
        "remaining": 25
      }
    }
  }
}

- Path added

- New endpoint

Returns an array of objects, each containing a list of MAC's excluded from a given SSID

GET /organizations/{organizationId}/wireless/ssids/policies/clientExclusion/static/exclusions/bySsid



opportunisticPcap

Docs

Update the Opportunistic Pcap settings for a wireless network

Operation ID: updateNetworkWirelessOpportunisticPcap

PATH /networks/{networkId}/wireless/opportunisticPcap

{
  "network": {
    "id": "123",
    "name": "sample-node-group-name"
  },
  "networkId": "L_12345",
  "name": "My Network",
  "enablement": {
    "networkWide": 0,
    "serials": [
      "Q234-ABCD-5678"
    ],
    "tags": [
      "tag1",
      "tag2"
    ]
  }
}

- Path added

- New endpoint

Update the Opportunistic Pcap settings for a wireless network

PUT /networks/{networkId}/wireless/opportunisticPcap



Docs

Check the Opportunistic Pcap license status of an organization by network

Operation ID: byOrganizationWirelessOpportunisticPcapLicenseNetwork

PATH /organizations/{organizationId}/wireless/opportunisticPcap/license/byNetwork

[
  {
    "networkId": "L_12345",
    "name": "My Network",
    "licensed": true
  }
]

- Path added

- New endpoint

Check the Opportunistic Pcap license status of an organization by network

GET /organizations/{organizationId}/wireless/opportunisticPcap/license/byNetwork



radio

Docs

Return the position for a wireless device

Operation ID: getDeviceWirelessRadioAfcPosition

PATH /devices/{serial}/wireless/radio/afc/position

{
  "name": "Some MR",
  "network": {
    "id": "N_24329156"
  },
  "serial": "Q234-ABCD-5678",
  "height": {
    "aboveGround": {
      "value": 10,
      "uncertainty": 5
    }
  },
  "gps": {
    "antenna": {
      "cableLength": 10
    }
  }
}

- Path added

- New endpoint

Return the position for a wireless device

GET /devices/{serial}/wireless/radio/afc/position


- New endpoint

Update the position attributes for this device

PUT /devices/{serial}/wireless/radio/afc/position



Docs

Return the AFC power limits for a wireless device

Operation ID: getDeviceWirelessRadioAfcPowerLimits

PATH /devices/{serial}/wireless/radio/afc/powerLimits

{
  "name": "Device_name",
  "network": {
    "id": "N_12345"
  },
  "serial": "Q2KN-6CN7-EC4X",
  "expiresAt": "2023-01-27T19:36:32Z",
  "lastUpdatedAt": "2023-01-26T19:36:32Z",
  "lastSuccessAt": "2023-01-26T19:36:32Z",
  "byChannel": [
    {
      "channel": 11,
      "channelWidth": 20,
      "limit": 30
    }
  ],
  "status": "SUCCESS",
  "location": {
    "lat": 37.4180951010362,
    "lng": -122.098531723022,
    "uncertainty": 10,
    "type": "GPS"
  }
}

- Path added

- New endpoint

Return the AFC power limits for a wireless device

GET /devices/{serial}/wireless/radio/afc/powerLimits



Docs

Show the status of this device's radios

Operation ID: getDeviceWirelessRadioStatus

PATH /devices/{serial}/wireless/radio/status

[
  {
    "band": "6",
    "channel": {
      "value": 2,
      "width": 80,
      "dfs": {
        "radarDetected": false
      }
    },
    "power": {
      "transmit": 18,
      "mode": "low power indoor"
    },
    "status": "up"
  }
]

- Path added

- New endpoint

Show the status of this device's radios

GET /devices/{serial}/wireless/radio/status



Docs

Update the AutoRF settings for a wireless network

Operation ID: updateNetworkWirelessRadioAutoRf

PATH /networks/{networkId}/wireless/radio/autoRf

{
  "networkId": "L_12345",
  "name": "My Network",
  "timeZone": "America/Los_Angeles",
  "busyHour": {
    "schedule": {
      "mode": "automatic",
      "automatic": {
        "start": "08:00",
        "end": "17:00"
      },
      "manual": {
        "start": "10:00",
        "end": "15:00"
      }
    },
    "minimizeChanges": {
      "enabled": true
    }
  },
  "channel": {
    "avoidance": {
      "enabled": true
    }
  },
  "fra": {
    "enabled": false
  },
  "ai": {
    "enabled": true,
    "lastEnabledAt": "2025-12-07T09:05:36Z"
  }
}

- Path added

- New endpoint

Update the AutoRF settings for a wireless network

PUT /networks/{networkId}/wireless/radio/autoRf



Docs

Update the AutoRF settings for a wireless network

Operation ID: updateNetworkWirelessRadioRrm

PATH /networks/{networkId}/wireless/radio/rrm

{
  "networkId": "L_12345",
  "name": "My Network",
  "timeZone": "America/Los_Angeles",
  "busyHour": {
    "schedule": {
      "mode": "automatic",
      "automatic": {
        "start": "08:00",
        "end": "17:00"
      },
      "manual": {
        "start": "10:00",
        "end": "15:00"
      }
    },
    "minimizeChanges": {
      "enabled": true
    }
  },
  "channel": {
    "avoidance": {
      "enabled": true
    }
  },
  "fra": {
    "enabled": false
  },
  "ai": {
    "enabled": true,
    "lastEnabledAt": "2025-12-07T09:05:36Z"
  }
}

- Path added

- New endpoint

Update the AutoRF settings for a wireless network

PUT /networks/{networkId}/wireless/radio/rrm



Docs

List the AFC power limits of an organization by device

Operation ID: getOrganizationWirelessRadioAfcPositionByDevice

PATH /organizations/{organizationId}/wireless/radio/afc/position/byDevice

[
  {
    "name": "Some MR",
    "network": {
      "id": "N_24329156"
    },
    "serial": "Q234-ABCD-5678",
    "height": {
      "aboveGround": {
        "value": 10,
        "uncertainty": 5
      }
    },
    "gps": {
      "antenna": {
        "cableLength": 10
      }
    }
  }
]

- Path added

- New endpoint

List the AFC power limits of an organization by device

GET /organizations/{organizationId}/wireless/radio/afc/position/byDevice



Docs

List the AFC power limits of an organization by device

Operation ID: getOrganizationWirelessRadioAfcPowerLimitsByDevice

PATH /organizations/{organizationId}/wireless/radio/afc/powerLimits/byDevice

[
  {
    "name": "Device_name",
    "network": {
      "id": "N_12345"
    },
    "serial": "Q2KN-6CN7-EC4X",
    "expiresAt": "2023-01-27T19:36:32Z",
    "lastUpdatedAt": "2023-01-26T19:36:32Z",
    "lastSuccessAt": "2023-01-26T19:36:32Z",
    "byChannel": [
      {
        "channel": 11,
        "channelWidth": 20,
        "limit": 30
      }
    ],
    "status": "SUCCESS",
    "location": {
      "lat": 37.4180951010362,
      "lng": -122.098531723022,
      "uncertainty": 10,
      "type": "GPS"
    }
  }
]

- Path added

- New endpoint

List the AFC power limits of an organization by device

GET /organizations/{organizationId}/wireless/radio/afc/powerLimits/byDevice



Docs

List the AutoRF settings of an organization by network

Operation ID: getOrganizationWirelessRadioAutoRfByNetwork

PATH /organizations/{organizationId}/wireless/radio/autoRf/byNetwork

[
  {
    "networkId": "L_12345",
    "name": "My Network",
    "timeZone": "America/Los_Angeles",
    "busyHour": {
      "schedule": {
        "mode": "automatic",
        "automatic": {
          "start": "08:00",
          "end": "17:00"
        },
        "manual": {
          "start": "10:00",
          "end": "15:00"
        }
      },
      "minimizeChanges": {
        "enabled": true
      }
    },
    "channel": {
      "avoidance": {
        "enabled": true
      }
    },
    "fra": {
      "enabled": false
    },
    "ai": {
      "enabled": true,
      "lastEnabledAt": "2025-12-07T09:05:36Z"
    }
  }
]

- Path added

- New endpoint

List the AutoRF settings of an organization by network

GET /organizations/{organizationId}/wireless/radio/autoRf/byNetwork



Docs

List the channel planning activities of an organization

Operation ID: getOrganizationWirelessRadioAutoRfChannelsPlanningActivities

PATH /organizations/{organizationId}/wireless/radio/autoRf/channels/planning/activities

[
  {
    "startedAt": "2018-02-11T00:00:00Z",
    "endsAt": "2018-05-12T00:00:00Z",
    "type": "avoid",
    "reason": "dfs",
    "band": "5",
    "channel": 44,
    "severity": 6,
    "network": {
      "id": "N_24329156",
      "name": "Main Office",
      "tags": [
        "tag1",
        "tag2"
      ]
    },
    "device": {
      "name": "My AP",
      "serial": "Q234-ABCD-5678",
      "mac": "00:11:22:33:44:55",
      "tags": [
        "tag1",
        "tag2"
      ]
    }
  }
]

- Path added

- New endpoint

List the channel planning activities of an organization

GET /organizations/{organizationId}/wireless/radio/autoRf/channels/planning/activities



Docs

List the AutoRF settings of an organization by network

Operation ID: getOrganizationWirelessRadioRrmByNetwork

PATH /organizations/{organizationId}/wireless/radio/rrm/byNetwork

{
  "items": [
    {
      "networkId": "L_12345",
      "name": "My Network",
      "timeZone": "America/Los_Angeles",
      "busyHour": {
        "schedule": {
          "mode": "automatic",
          "automatic": {
            "start": "08:00",
            "end": "17:00"
          },
          "manual": {
            "start": "10:00",
            "end": "15:00"
          }
        },
        "minimizeChanges": {
          "enabled": true
        }
      },
      "channel": {
        "avoidance": {
          "enabled": true
        }
      },
      "fra": {
        "enabled": false
      },
      "ai": {
        "enabled": true,
        "lastEnabledAt": "2025-12-07T09:05:36Z"
      }
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 42,
        "remaining": 5
      }
    }
  }
}

- Path added

- New endpoint

List the AutoRF settings of an organization by network

GET /organizations/{organizationId}/wireless/radio/rrm/byNetwork



Docs

Show the status of this organization's radios, categorized by network and device

Operation ID: getOrganizationWirelessRadioStatusByNetwork

PATH /organizations/{organizationId}/wireless/radio/status/byNetwork

[
  {
    "network": {
      "id": "N_1234",
      "name": "MyNetwork"
    },
    "data": {
      "byDevice": [
        {
          "serial": "ABC-123",
          "radios": [
            {
              "band": 6,
              "channelSettings": {
                "channel": 2,
                "width": 80,
                "dfs": {
                  "radarDetected": false
                }
              },
              "powerSettings": {
                "transmitPower": 18,
                "mode": "lpi"
              },
              "status": "Up"
            }
          ]
        }
      ]
    }
  }
]

- Path added

- New endpoint

Show the status of this organization's radios, categorized by network and device

GET /organizations/{organizationId}/wireless/radio/status/byNetwork



healthScores

Docs

Fetch the health scores for a given AP on this network

Operation ID: getDeviceWirelessHealthScores

PATH /devices/{serial}/wireless/healthScores

{
  "device": {
    "serial": "Q234-ABCD-5678"
  },
  "performance": {
    "latest": 80
  },
  "onboarding": {
    "latest": 20
  }
}

- Path added

- New endpoint

Fetch the health scores for a given AP on this network

GET /devices/{serial}/wireless/healthScores



certificates

Docs

Query for details on the organization's OpenRoaming Certificate Authority certificate (CAs).

Operation ID: getOrganizationWirelessCertificatesOpenRoamingCertificateAuthority

PATH /organizations/{organizationId}/wireless/certificates/openRoaming/certificateAuthority

{
  "status": "trusted",
  "contents": "-----BEGIN CERTIFICATE-----\n\n        MIIDzDCCAragAwIBAgIUOd0ukLcjH43TfTHFG9qE0FtlMVgwCwYJKoZIhvcNAQEL\n\n        umkqeYeO30g1uYvDuWLXVA==\n\n        -----END CERTIFICATE-----\n"
}

- Path added

- New endpoint

Query for details on the organization's OpenRoaming Certificate Authority certificate (CAs).

GET /organizations/{organizationId}/wireless/certificates/openRoaming/certificateAuthority



devices

Docs

Fetch the health scores of all APs on this network

Operation ID: getNetworkWirelessDevicesHealthScores

PATH /networks/{networkId}/wireless/devices/healthScores

[
  {
    "device": {
      "serial": "Q234-ABCD-5678"
    },
    "performance": {
      "latest": 80
    },
    "onboarding": {
      "latest": 20
    }
  }
]

- Path added

- New endpoint

Fetch the health scores of all APs on this network

GET /networks/{networkId}/wireless/devices/healthScores



Docs

List the most recent AP accelerometer status information for wireless devices that support it.

Operation ID: getOrganizationWirelessDevicesAccelerometerStatuses

PATH /organizations/{organizationId}/wireless/devices/accelerometer/statuses

[
  {
    "serial": "Q234-ABCD-5678",
    "name": "My appliance",
    "network": {
      "id": "N_24329156"
    },
    "status": {
      "titleAngle": 0,
      "status": "Active",
      "errorReason": "No error"
    }
  }
]

- Path added

- New endpoint

List the most recent AP accelerometer status information for wireless devices that support it.

GET /organizations/{organizationId}/wireless/devices/accelerometer/statuses



Docs

Operation ID: getOrganizationWirelessDevicesDataRateByClient

PATH /organizations/{organizationId}/wireless/devices/dataRate/byClient

[
  {
    "ulDatarate": 10000,
    "dlDatarate": 20000,
    "client": {
      "id": "k74272e",
      "mac": "22:33:44:55:66:77"
    },
    "network": {
      "id": "N_24329156",
      "name": "Main Office"
    }
  }
]

- Path added

- New endpoint

GET /organizations/{organizationId}/wireless/devices/dataRate/byClient



Docs

Get latency summaries for all wireless devices in an organization.

Operation ID: getOrganizationWirelessDevicesLatencyByClient

PATH /organizations/{organizationId}/wireless/devices/latency/byClient

[
  {
    "overall": {
      "frames": 1439,
      "average": 24.73
    },
    "network": {
      "id": "N_24329156",
      "name": "Main Office"
    },
    "device": {
      "name": "My AP",
      "serial": "Q234-ABCD-5678",
      "mac": "00:11:22:33:44:55"
    }
  }
]

- Path added

- New endpoint

Get latency summaries for all wireless devices in an organization.

GET /organizations/{organizationId}/wireless/devices/latency/byClient



Docs

Get latency summaries for all wireless devices in an organization.

Operation ID: getOrganizationWirelessDevicesLatencyByDevice

PATH /organizations/{organizationId}/wireless/devices/latency/byDevice

[
  {
    "overall": {
      "frames": 1439,
      "average": 24.73
    },
    "network": {
      "id": "N_24329156",
      "name": "Main Office"
    },
    "device": {
      "name": "My AP",
      "serial": "Q234-ABCD-5678",
      "mac": "00:11:22:33:44:55"
    }
  }
]

- Path added

- New endpoint

Get latency summaries for all wireless devices in an organization.

GET /organizations/{organizationId}/wireless/devices/latency/byDevice



Docs

Get per-network latency summaries for all wireless networks in an organization.

Operation ID: getOrganizationWirelessDevicesLatencyByNetwork

PATH /organizations/{organizationId}/wireless/devices/latency/byNetwork

[
  {
    "overall": {
      "frames": 1439,
      "average": 24.73
    },
    "network": {
      "id": "N_24329156",
      "name": "Main Office"
    }
  }
]

- Path added

- New endpoint

Get per-network latency summaries for all wireless networks in an organization.

GET /organizations/{organizationId}/wireless/devices/latency/byNetwork



Docs

Enqueue a job to disconnect a client from an AP

Operation ID: createOrganizationWirelessDevicesLiveToolsClientDisconnect

PATH /organizations/{organizationId}/wireless/devices/liveTools/clients/{clientId}/disconnect

{
  "id": "abcd-1234-efgh-5678",
  "status": "queued",
  "request": {
    "mac": "00:11:22:33:44:55",
    "serial": "ABCD-1234-ABCD"
  },
  "url": "/api/v1/devices/serial/liveTools/disconnect",
  "callback": {
    "id": "1284392014819",
    "url": "https://webhook.site/28efa24e-f830-4d9f-a12b-fbb9e5035031",
    "status": "new"
  }
}

- Path added

- New endpoint

Enqueue a job to disconnect a client from an AP. This endpoint has a sustained rate limit of one request every five seconds per device, with an allowed burst of five requests.

POST /organizations/{organizationId}/wireless/devices/liveTools/clients/{clientId}/disconnect



Docs

Lists the zero touch deployments available for the organization

Operation ID: getOrganizationWirelessDevicesProvisioningDeployments

PATH /organizations/{organizationId}/wireless/devices/provisioning/deployments

[
  {
    "items": [
      {
        "deploymentId": "1284392014819",
        "devices": {
          "old": {
            "serial": "Q234-ABCD-5678",
            "afterAction": "unclaim",
            "name": "My AP",
            "model": "MR34",
            "mac": "00:11:22:33:44:55",
            "tags": [
              "tag1",
              "tag2"
            ],
            "rfProfile": {
              "id": "1284392014819",
              "name": "RF Profile Name"
            }
          },
          "new": {
            "serial": "Q234-ABCD-5678",
            "name": "My AP",
            "model": "CW9166I",
            "mac": "00:11:22:33:44:55",
            "tags": [
              "tag1",
              "tag2"
            ],
            "rfProfile": {
              "id": "1284392014819",
              "name": "RF Profile Name"
            }
          }
        },
        "status": "ready",
        "type": "replace",
        "network": {
          "id": "N_24329156",
          "name": "Main Office"
        },
        "createdAt": "2018-02-11T00:00:00.090210Z",
        "requestedAt": "2018-02-11T00:00:00.090210Z",
        "lastUpdatedAt": "2018-02-11T00:00:00.090210Z",
        "completedAt": "2018-02-11T00:00:00.090210Z",
        "errors": [
          "error message1",
          "error message2"
        ]
      }
    ],
    "meta": {
      "counts": {
        "items": {
          "total": 20,
          "remaining": 0
        }
      }
    }
  }
]

- Path added

- New endpoint

Lists the zero touch deployments available for the organization

GET /organizations/{organizationId}/wireless/devices/provisioning/deployments


- New endpoint

Creates a zero touch deployment for a wireless access point

POST /organizations/{organizationId}/wireless/devices/provisioning/deployments


- New endpoint

Updates a zero touch deployment

PUT /organizations/{organizationId}/wireless/devices/provisioning/deployments



Docs

Returns deployment IDs for the given new node serial numbers

Operation ID: getOrganizationWirelessDevicesProvisioningDeploymentsByNewDevice

PATH /organizations/{organizationId}/wireless/devices/provisioning/deployments/byNewDevice

{
  "items": [
    {
      "deploymentId": "1234567890",
      "devices": {
        "old": {
          "serial": "Q234-ABCD-5678",
          "afterAction": "unclaim",
          "name": "My AP",
          "model": "MR34",
          "mac": "00:11:22:33:44:55",
          "tags": [
            "tag1",
            "tag2"
          ],
          "rfProfile": {
            "id": "1284392014819",
            "name": "RF Profile Name"
          }
        },
        "new": {
          "serial": "Q234-ABCD-5678",
          "name": "My AP",
          "model": "CW9166I",
          "mac": "00:11:22:33:44:55",
          "tags": [
            "tag1",
            "tag2"
          ],
          "rfProfile": {
            "id": "1284392014819",
            "name": "RF Profile Name"
          }
        }
      },
      "status": "ready",
      "type": "replace",
      "network": {
        "id": "N_24329156",
        "name": "Main Office"
      },
      "createdAt": "2018-02-11T00:00:00.090210Z",
      "requestedAt": "2018-02-11T00:00:00.090210Z",
      "lastUpdatedAt": "2018-02-11T00:00:00.090210Z",
      "completedAt": "2018-02-11T00:00:00.090210Z",
      "errors": [
        "error message1",
        "error message2"
      ]
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 80,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

Returns deployment IDs for the given new node serial numbers

GET /organizations/{organizationId}/wireless/devices/provisioning/deployments/byNewDevice



Docs

Deletes a zero touch deployment

Operation ID: deleteOrganizationWirelessDevicesProvisioningDeployment

PATH /organizations/{organizationId}/wireless/devices/provisioning/deployments/{deploymentId}

- Path added

- New endpoint

Deletes a zero touch deployment

DELETE /organizations/{organizationId}/wireless/devices/provisioning/deployments/{deploymentId}



Docs

Operation ID: getOrganizationWirelessDevicesProvisioningRecommendationsTags

PATH /organizations/{organizationId}/wireless/devices/provisioning/recommendations/tags

[
  {
    "tag": "tag1",
    "confidence": 0.5
  }
]

- Path added

- New endpoint

GET /organizations/{organizationId}/wireless/devices/provisioning/recommendations/tags



Docs

Get average signal quality for all clients in the organization

Operation ID: getOrganizationWirelessDevicesSignalQualityByClient

PATH /organizations/{organizationId}/wireless/devices/signalQuality/byClient

[
  {
    "snr": 37,
    "rssi": -58,
    "client": {
      "id": "k74272e",
      "mac": "22:33:44:55:66:77"
    },
    "network": {
      "id": "N_24329156",
      "name": "Main Office"
    }
  }
]

- Path added

- New endpoint

Get average signal quality for all clients in the organization

GET /organizations/{organizationId}/wireless/devices/signalQuality/byClient



Docs

Get average signal quality for all devices in the organization

Operation ID: getOrganizationWirelessDevicesSignalQualityByDevice

PATH /organizations/{organizationId}/wireless/devices/signalQuality/byDevice

[
  {
    "snr": 37,
    "rssi": -58,
    "network": {
      "id": "N_24329156",
      "name": "Main Office"
    }
  }
]

- Path added

- New endpoint

Get average signal quality for all devices in the organization

GET /organizations/{organizationId}/wireless/devices/signalQuality/byDevice



Docs

Get average signal quality for all networks in the organization

Operation ID: getOrganizationWirelessDevicesSignalQualityByNetwork

PATH /organizations/{organizationId}/wireless/devices/signalQuality/byNetwork

[
  {
    "snr": 37,
    "rssi": -58,
    "network": {
      "id": "N_24329156",
      "name": "Main Office"
    }
  }
]

- Path added

- New endpoint

Get average signal quality for all networks in the organization

GET /organizations/{organizationId}/wireless/devices/signalQuality/byNetwork



Docs

List the wireless device telemetry of an organization

Operation ID: getOrganizationWirelessDevicesTelemetry

PATH /organizations/{organizationId}/wireless/devices/telemetry

{
  "items": [
    {
      "network": {
        "id": "N_24329156",
        "name": "Main Office",
        "tags": [
          "tag1",
          "tag2"
        ]
      },
      "name": "My AP",
      "serial": "Q234-ABCD-5678",
      "mac": "00:11:22:33:44:55",
      "tags": [
        "tag1",
        "tag2"
      ],
      "rfProfile": {
        "id": "1",
        "name": "Basic Indoor RF Profile"
      },
      "metrics": [
        {
          "name": "Telemetry A"
        }
      ]
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 1,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

List the wireless device telemetry of an organization

GET /organizations/{organizationId}/wireless/devices/telemetry



clients

Docs

Fetch the health scores for all clients on this network

Operation ID: getNetworkWirelessClientsHealthScores

PATH /networks/{networkId}/wireless/clients/healthScores

[
  {
    "mac": "22:33:44:55:66:77",
    "clientId": "k74272e",
    "performance": {
      "latest": 80,
      "currentConnection": 100
    },
    "onboarding": {
      "latest": 100
    }
  },
  {
    "mac": "22:33:44:55:66:77",
    "clientId": "k74272e",
    "performance": {
      "latest": 30,
      "currentConnection": 50
    },
    "onboarding": {
      "latest": 70
    }
  }
]

- Path added

- New endpoint

Fetch the health scores for all clients on this network

GET /networks/{networkId}/wireless/clients/healthScores



Docs

Return counts of distinct wireless clients connecting to a network over time

Operation ID: getNetworkWirelessClientsOnboardingHistory

PATH /networks/{networkId}/wireless/clients/onboardingHistory

[
  {
    "startTs": "2020-01-01T00:00:00Z",
    "endTs": "2020-01-01T00:05:00Z",
    "clientCounts": {
      "summary": {
        "prospective": 100,
        "successful": 75,
        "failed": 25
      },
      "connectionSteps": {
        "association": {
          "prospective": 100,
          "successful": 97,
          "failed": 3
        },
        "authentication": {
          "prospective": 97,
          "successful": 81,
          "failed": 16
        },
        "dhcp": {
          "prospective": 81,
          "successful": 75,
          "failed": 6
        },
        "dns": {
          "prospective": 75,
          "successful": 75,
          "failed": 0
        }
      }
    }
  }
]

- Path added

- New endpoint

Return counts of distinct wireless clients connecting to a network over time

GET /networks/{networkId}/wireless/clients/onboardingHistory



Docs

Fetch the health scores for a given client on this network

Operation ID: getNetworkWirelessClientHealthScores

PATH /networks/{networkId}/wireless/clients/{clientId}/healthScores

{
  "mac": "22:33:44:55:66:77",
  "clientId": "k74272e",
  "performance": {
    "latest": 80,
    "currentConnection": 100
  },
  "onboarding": {
    "latest": 100
  }
}

- Path added

- New endpoint

Fetch the health scores for a given client on this network. Clients are identified by their MAC or ID

GET /networks/{networkId}/wireless/clients/{clientId}/healthScores



Docs

Get client roam events within the specified timespan.

Operation ID: getNetworkWirelessClientRoamingHistory

PATH /networks/{networkId}/wireless/clients/{clientId}/roaming/history

[
  {
    "status": "roam",
    "ts": "2018-02-11T00:00:00.090210Z",
    "device": {
      "name": "My AP",
      "serial": "Q234-ABCD-5678",
      "mac": "00:11:22:33:44:55"
    },
    "details": {
      "duration": 120,
      "signalQuality": {
        "previous": {
          "snr": -30,
          "rssi": 70
        },
        "current": {
          "snr": -20,
          "rssi": 80
        }
      },
      "band": 5,
      "roamProtocol": "non-802.11r",
      "disconnectReason": "Client out of range"
    }
  }
]

- Path added

- New endpoint

Get client roam events within the specified timespan.

GET /networks/{networkId}/wireless/clients/{clientId}/roaming/history



Docs

Summarize association outcomes per wireless client across an organization.

Operation ID: getOrganizationWirelessClientsConnectionsAssociationByClient

PATH /organizations/{organizationId}/wireless/clients/connections/association/byClient

[
  {
    "successes": {
      "count": 1000
    },
    "failures": {
      "byReason": [
        {
          "code": 5,
          "count": 15,
          "recentEvent": {
            "ssid": {
              "number": 3,
              "name": "Guest Wifi"
            },
            "radio": {
              "number": 0,
              "band": "2.4"
            }
          }
        }
      ]
    },
    "device": {
      "name": "My AP",
      "serial": "Q234-ABCD-5678",
      "mac": "00:11:22:33:44:55"
    },
    "client": {
      "id": "k74272e",
      "mac": "22:33:44:55:66:77"
    },
    "network": {
      "id": "N_24329156",
      "name": "Main Office"
    }
  }
]

- Path added

- New endpoint

Summarize association outcomes per wireless client across an organization.

GET /organizations/{organizationId}/wireless/clients/connections/association/byClient



Docs

Summarize authentication outcomes per wireless client across an organization.

Operation ID: getOrganizationWirelessClientsConnectionsAuthenticationByClient

PATH /organizations/{organizationId}/wireless/clients/connections/authentication/byClient

[
  {
    "successes": {
      "count": 1000
    },
    "failures": {
      "byReason": [
        {
          "code": 5,
          "count": 15,
          "recentEvent": {
            "ssid": {
              "number": 3,
              "name": "Guest Wifi"
            },
            "radio": {
              "number": 0,
              "band": "2.4"
            }
          }
        }
      ]
    },
    "device": {
      "name": "My AP",
      "serial": "Q234-ABCD-5678",
      "mac": "00:11:22:33:44:55"
    },
    "client": {
      "id": "k74272e",
      "mac": "22:33:44:55:66:77"
    },
    "network": {
      "id": "N_24329156",
      "name": "Main Office"
    }
  }
]

- Path added

- New endpoint

Summarize authentication outcomes per wireless client across an organization.

GET /organizations/{organizationId}/wireless/clients/connections/authentication/byClient



Docs

Get IP assignment for all clients in the organization

Operation ID: getOrganizationWirelessClientsConnectionsDhcpByClient

PATH /organizations/{organizationId}/wireless/clients/connections/dhcp/byClient

[
  {
    "successes": {
      "count": 4387
    },
    "warnings": {
      "byReason": [
        {
          "reason": "DHCP_NAK_AFTER_ACK",
          "count": 1
        }
      ]
    },
    "failures": {
      "byReason": [
        {
          "reason": "DHCP_NAK",
          "count": 109,
          "recentEvent": {
            "ssid": {
              "number": 3,
              "name": "Guest Wifi"
            },
            "radio": {
              "number": 0,
              "band": "2.4"
            }
          }
        }
      ]
    },
    "device": {
      "name": "My AP",
      "serial": "Q234-ABCD-5678",
      "mac": "00:11:22:33:44:55"
    },
    "client": {
      "id": "k74272e",
      "mac": "22:33:44:55:66:77"
    },
    "network": {
      "id": "N_24329156",
      "name": "Main Office"
    }
  }
]

- Path added

- New endpoint

Get IP assignment for all clients in the organization

GET /organizations/{organizationId}/wireless/clients/connections/dhcp/byClient



[ switch ]

alerts

Docs

Operation ID: getOrganizationSwitchAlertsPoeByDevice

PATH /organizations/{organizationId}/switch/alerts/poe/byDevice

[
  {
    "network": {
      "id": "N_24329156",
      "name": "Main Office"
    },
    "name": "My switch",
    "mac": "00:11:22:33:44:55",
    "serial": "Q234-ABCD-5678",
    "model": "MR34",
    "port": "1",
    "issueType": 0,
    "failureCount": "MR34",
    "startTime": "MR34",
    "endTime": "MR34"
  }
]

- Path added

- New endpoint

GET /organizations/{organizationId}/switch/alerts/poe/byDevice



configTemplates

Docs

list the port mirror configurations in an organization by switch profile

Operation ID: getOrganizationConfigTemplatesSwitchProfilesPortsMirrorsBySwitchProfile

PATH /organizations/{organizationId}/configTemplates/switch/profiles/ports/mirrors/bySwitchProfile

{
  "items": [
    {
      "profileId": "1098",
      "configTemplate": {
        "id": "N_23952905",
        "name": "Main Office"
      },
      "mirror": {
        "source": {
          "ports": [
            {
              "number": 2,
              "module": {
                "type": "C9800-2X40GE",
                "slot": 1
              }
            }
          ],
          "filter": {
            "vlans": "100, 200-210",
            "hasTransitVlan": true
          }
        },
        "destination": {
          "port": {
            "number": 7,
            "module": {
              "type": "C9800-2X40GE",
              "slot": 1
            }
          },
          "vlan": "10"
        },
        "role": "source",
        "comment": "My pretty comment",
        "tags": [
          "tag1",
          "tag2"
        ]
      },
      "warnings": [
        "sample warning message"
      ]
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 1
      }
    }
  }
}

- Path added

- New endpoint

list the port mirror configurations in an organization by switch profile

GET /organizations/{organizationId}/configTemplates/switch/profiles/ports/mirrors/bySwitchProfile



Docs

Update a port mirror

Operation ID: updateOrganizationConfigTemplateSwitchProfilePortsMirror

PATH /organizations/{organizationId}/configTemplates/{configTemplateId}/switch/profiles/{profileId}/ports/mirror

{
  "profileId": "1098",
  "configTemplate": {
    "id": "N_23952905",
    "name": "Main Office"
  },
  "mirror": {
    "source": {
      "ports": [
        {
          "number": 2,
          "module": {
            "type": "C9800-2X40GE",
            "slot": 1
          }
        }
      ],
      "filter": {
        "vlans": "100, 200-210",
        "hasTransitVlan": true
      }
    },
    "destination": {
      "port": {
        "number": 7,
        "module": {
          "type": "C9800-2X40GE",
          "slot": 1
        }
      },
      "vlan": "10"
    },
    "role": "source",
    "comment": "My pretty comment",
    "tags": [
      "tag1",
      "tag2"
    ]
  },
  "warnings": [
    "sample warning message"
  ]
}

- Path added

- New endpoint

Update a port mirror

PUT /organizations/{organizationId}/configTemplates/{configTemplateId}/switch/profiles/{profileId}/ports/mirror



connectivity

Docs

Operation ID: getOrganizationSwitchConnectivityLanLinkErrorsByDeviceByPort

PATH /organizations/{organizationId}/switch/connectivity/lanLink/errors/byDevice/byPort

[
  {
    "network": {
      "id": "N_24329156",
      "name": "Main Office"
    },
    "device": {
      "name": "My AP",
      "serial": "Q234-ABCD-5678",
      "mac": "00:11:22:33:44:55"
    },
    "issueType": "crc",
    "port": 1,
    "startTime": "2024-04-26T18:02:24Z",
    "endTime": "2024-04-26T18:07:05Z"
  }
]

- Path added

- New endpoint

GET /organizations/{organizationId}/switch/connectivity/lanLink/errors/byDevice/byPort



Docs

Lan STP errors by device and port.

Operation ID: getOrganizationSwitchConnectivityLanStpErrorsByDeviceByPort

PATH /organizations/{organizationId}/switch/connectivity/lanStp/errors/byDevice/byPort

[
  {
    "network": {
      "id": "N_24329156",
      "name": "Main Office"
    },
    "device": {
      "name": "My AP",
      "serial": "Q234-ABCD-5678",
      "mac": "00:11:22:33:44:55"
    },
    "issueType": "stp_rootguard_active",
    "port": 2,
    "startTime": "2024-04-26T18:02:24Z",
    "endTime": "2024-04-26T18:07:05Z"
  }
]

- Path added

- New endpoint

Lan STP errors by device and port.

GET /organizations/{organizationId}/switch/connectivity/lanStp/errors/byDevice/byPort



Docs

Operation ID: getOrganizationSwitchConnectivityVrrpFailuresByDevice

PATH /organizations/{organizationId}/switch/connectivity/vrrp/failures/byDevice

[
  {
    "network": {
      "id": "N_24329156",
      "name": "Main Office"
    },
    "device": {
      "name": "My AP",
      "serial": "Q234-ABCD-5678",
      "mac": "00:11:22:33:44:55"
    },
    "ssid": {
      "model": "MR34"
    },
    "issueType": "vrrp_failover",
    "failureCount": 0,
    "startTime": "2024-04-26T18:02:24Z",
    "endTime": "2024-04-26T18:07:05Z"
  }
]

- Path added

- New endpoint

GET /organizations/{organizationId}/switch/connectivity/vrrp/failures/byDevice



spanningTree

Docs

Updates Spanning Tree configuration

Operation ID: updateNetworkSwitchSpanningTree

PATH /networks/{networkId}/switch/spanningTree

{
  "enabled": false,
  "mode": "mst",
  "priorities": [
    {
      "switches": [
        "Q234-ABCD-0001",
        "Q234-ABCD-0002",
        "Q234-ABCD-0003"
      ],
      "stacks": [
        "789102",
        "123456",
        "129102"
      ],
      "switchProfiles": [
        "1098",
        "1099",
        "1100"
      ],
      "priority": 4096,
      "vlanList": "40,10-19"
    }
  ]
}

- Path added

- New endpoint

Updates Spanning Tree configuration

PUT /networks/{networkId}/switch/spanningTree



Docs

Returns Spanning Tree configuration settings

Operation ID: getOrganizationSwitchSpanningTree

PATH /organizations/{organizationId}/switch/spanningTree

{
  "enabled": false,
  "mode": "mst",
  "priorities": [
    {
      "switches": [
        "Q234-ABCD-0001",
        "Q234-ABCD-0002",
        "Q234-ABCD-0003"
      ],
      "stacks": [
        "789102",
        "123456",
        "129102"
      ],
      "switchProfiles": [
        "1098",
        "1099",
        "1100"
      ],
      "priority": 4096,
      "vlanList": "40,10-19"
    }
  ]
}

- Path added

- New endpoint

Returns Spanning Tree configuration settings

GET /organizations/{organizationId}/switch/spanningTree



raGuardPolicy

Docs

Return RA Guard settings

Operation ID: getNetworkSwitchRaGuardPolicy

PATH /networks/{networkId}/switch/raGuardPolicy

{
  "defaultPolicy": "allowed",
  "blockedServers": [
    "00:50:56:00:00:03",
    "00:50:56:00:00:04"
  ],
  "allowedServers": [
    "00:50:56:00:00:01",
    "00:50:56:00:00:02"
  ]
}

- Path added

- New endpoint

Return RA Guard settings. Blocked servers are applied when default policy is allowed, and vice versa for allowed servers and blocked default policy.

GET /networks/{networkId}/switch/raGuardPolicy


- New endpoint

Update RA Guard settings

PUT /networks/{networkId}/switch/raGuardPolicy



devices

Docs

Return a historical record of packet transmission and loss, broken down by protocol, for insight into switch device health.

Operation ID: getOrganizationSwitchDevicesSystemQueuesHistoryBySwitchByInterval

PATH /organizations/{organizationId}/switch/devices/system/queues/history/bySwitch/byInterval

{
  "items": [
    {
      "serial": "Q234-ABCD-0001",
      "model": "MS",
      "name": "My switch",
      "mac": "00:11:22:33:44:55",
      "tags": [
        "tag1",
        "tag2"
      ],
      "network": {
        "id": "N_24329156",
        "name": "Main Office",
        "tags": [
          "tag1",
          "tag2"
        ]
      },
      "history": [
        {
          "startTs": "2018-02-11T00:00:00.090210Z",
          "endTs": "2018-02-11T00:00:00.090210Z",
          "counts": {
            "processed": {
              "total": 9,
              "byProtocol": {
                "stp": 1,
                "ospf": 1,
                "lacp": 1,
                "arp": 1,
                "management": 5
              }
            },
            "dropped": {
              "total": 3,
              "byProtocol": {
                "stp": 0,
                "ospf": 1,
                "lacp": 0,
                "arp": 2,
                "management": 0
              }
            }
          }
        }
      ],
      "stack": {
        "id": "Stack ID",
        "name": "Stack name",
        "members": [
          {
            "serial": "Q234-ABCD-0001",
            "model": "MS",
            "name": "My switch",
            "mac": "00:11:22:33:44:55",
            "tags": [
              "tag1",
              "tag2"
            ],
            "history": [
              {
                "startTs": "2018-02-11T00:00:00.090210Z",
                "endTs": "2018-02-11T00:00:00.090210Z",
                "counts": {
                  "processed": {
                    "total": 8,
                    "byProtocol": {
                      "arp": 2,
                      "management": 6
                    }
                  },
                  "dropped": {
                    "total": 3,
                    "byProtocol": {
                      "arp": 1,
                      "management": 2
                    }
                  }
                }
              }
            ]
          }
        ]
      }
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 4,
        "remaining": 2
      }
    }
  }
}

- Path added

- New endpoint

Return a historical record of packet transmission and loss, broken down by protocol, for insight into switch device health.

GET /organizations/{organizationId}/switch/devices/system/queues/history/bySwitch/byInterval



clients

Docs

Summarizes authentication outcomes per switch client across an organization.

Operation ID: getOrganizationSwitchClientsConnectionsAuthenticationByClient

PATH /organizations/{organizationId}/switch/clients/connections/authentication/byClient

[
  {
    "successes": {
      "count": 10
    },
    "failures": {
      "byType": [
        {
          "type": "ap_noauth",
          "count": 2
        }
      ]
    },
    "client": {
      "id": "k74272e",
      "mac": "22:33:44:55:66:77"
    },
    "network": {
      "id": "N_24329156",
      "name": "Main Office"
    }
  }
]

- Path added

- New endpoint

Summarizes authentication outcomes per switch client across an organization.

GET /organizations/{organizationId}/switch/clients/connections/authentication/byClient



Docs

Get IP assignment for all clients in the organization

Operation ID: getOrganizationSwitchClientsConnectionsDhcpByClient

PATH /organizations/{organizationId}/switch/clients/connections/dhcp/byClient

[
  {
    "successes": {
      "count": 1
    },
    "failures": {
      "count": 1
    },
    "client": {
      "id": "k74272e",
      "mac": "22:33:44:55:66:77"
    },
    "network": {
      "id": "N_24329156",
      "name": "Main Office"
    }
  }
]

- Path added

- New endpoint

Get IP assignment for all clients in the organization

GET /organizations/{organizationId}/switch/clients/connections/dhcp/byClient



stacks

Docs

Update switch port mirrors for switch stacks

Operation ID: updateNetworkSwitchStackPortsMirror

PATH /networks/{networkId}/switch/stacks/{switchStackId}/ports/mirror

{
  "switchStackId": "123456",
  "network": {
    "id": "N_24329156",
    "name": "Main Office"
  },
  "mirror": {
    "source": {
      "ports": [
        {
          "serial": "Q234-ABCD-5678",
          "number": 2,
          "module": {
            "type": "C9800-2X40GE",
            "slot": 1
          }
        }
      ],
      "filter": {
        "vlans": "100, 200-210",
        "hasTransitVlan": true
      }
    },
    "destination": {
      "port": {
        "serial": "Q234-ABCD-5670",
        "number": 7,
        "module": {
          "type": "C9800-2X40GE",
          "slot": 2
        }
      },
      "vlan": "10"
    },
    "role": "source",
    "comment": "My pretty comment",
    "tags": [
      "tag1",
      "tag2"
    ]
  },
  "warnings": [
    "Warnings from traffic mirror configuration changes"
  ]
}

- Path added

- New endpoint

Update switch port mirrors for switch stacks

PUT /networks/{networkId}/switch/stacks/{switchStackId}/ports/mirror



Docs

List the port mirror configurations in an organization by switch

Operation ID: getOrganizationSwitchStacksPortsMirrorsByStack

PATH /organizations/{organizationId}/switch/stacks/ports/mirrors/byStack

[
  {
    "items": [
      {
        "switchStackId": "123456",
        "network": {
          "id": "N_24329156",
          "name": "Main Office"
        },
        "mirror": {
          "source": {
            "ports": [
              {
                "serial": "Q234-ABCD-5678",
                "number": 2,
                "module": {
                  "type": "C9800-2X40GE",
                  "slot": 1
                }
              }
            ],
            "filter": {
              "vlans": "100, 200-210",
              "hasTransitVlan": true
            }
          },
          "destination": {
            "port": {
              "serial": "Q234-ABCD-5670",
              "number": 7,
              "module": {
                "type": "C9800-2X40GE",
                "slot": 2
              }
            },
            "vlan": "10"
          },
          "role": "source",
          "comment": "My pretty comment",
          "tags": [
            "tag1",
            "tag2"
          ]
        },
        "warnings": [
          "Warnings from traffic mirror configuration changes"
        ]
      }
    ],
    "meta": {
      "counts": {
        "items": {
          "total": 1
        }
      }
    }
  }
]

- Path added

- New endpoint

List the port mirror configurations in an organization by switch

GET /organizations/{organizationId}/switch/stacks/ports/mirrors/byStack



routing

Docs

List the autonomous systems configured for BGP in the given organization

Operation ID: getOrganizationSwitchRoutingBgpAutonomousSystems

PATH /organizations/{organizationId}/switch/routing/bgp/autonomousSystems

{
  "items": [
    {
      "autonomousSystemId": "123",
      "number": 65000,
      "description": "Core AS"
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 1,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

List the autonomous systems configured for BGP in the given organization. Border Gateway Protocol requires IOS XE 17.18 or higher

GET /organizations/{organizationId}/switch/routing/bgp/autonomousSystems


- New endpoint

Create an autonomous system. Border Gateway Protocol requires IOS XE 17.18 or higher

POST /organizations/{organizationId}/switch/routing/bgp/autonomousSystems



Docs

List the overview of the autonomous systems configured for BGP in the given organization

Operation ID: getOrganizationSwitchRoutingBgpAutonomousSystemsOverviewByAutonomousSystem

PATH /organizations/{organizationId}/switch/routing/bgp/autonomousSystems/overview/byAutonomousSystem

{
  "items": [
    {
      "autonomousSystemId": "123",
      "counts": {
        "routers": {
          "total": 2
        }
      }
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 1,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

List the overview of the autonomous systems configured for BGP in the given organization. Border Gateway Protocol requires IOS XE 17.18 or higher

GET /organizations/{organizationId}/switch/routing/bgp/autonomousSystems/overview/byAutonomousSystem



Docs

Update an autonomous system

Operation ID: updateOrganizationSwitchRoutingBgpAutonomousSystem

PATH /organizations/{organizationId}/switch/routing/bgp/autonomousSystems/{autonomousSystemId}

{
  "autonomousSystemId": "123",
  "number": 65000,
  "description": "Core AS"
}

- Path added

- New endpoint

Update an autonomous system. Border Gateway Protocol requires IOS XE 17.18 or higher

PUT /organizations/{organizationId}/switch/routing/bgp/autonomousSystems/{autonomousSystemId}


- New endpoint

Delete an autonomous system from an organization. Border Gateway Protocol requires IOS XE 17.18 or higher

DELETE /organizations/{organizationId}/switch/routing/bgp/autonomousSystems/{autonomousSystemId}



Docs

List the filter lists configured for BGP in the given organization

Operation ID: getOrganizationSwitchRoutingBgpFiltersFilterLists

PATH /organizations/{organizationId}/switch/routing/bgp/filters/filterLists

{
  "items": [
    {
      "listId": "123",
      "network": {
        "id": "L_123",
        "name": "My network name"
      },
      "name": "1",
      "description": "Sample filter list description"
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 1,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

List the filter lists configured for BGP in the given organization. Border Gateway Protocol requires IOS XE 17.18 or higher

GET /organizations/{organizationId}/switch/routing/bgp/filters/filterLists



Docs

Create or update a filter list, in addition to its associated rules

Operation ID: createOrganizationSwitchRoutingBgpFiltersFilterListsDeploy

PATH /organizations/{organizationId}/switch/routing/bgp/filters/filterLists/deploy

{
  "filterList": {
    "id": "123",
    "name": "1",
    "description": "Sample filter list description"
  },
  "network": {
    "id": "L_123",
    "name": "My network name"
  },
  "rules": [
    {
      "id": "123",
      "sequenceNumber": 10,
      "policy": "permit",
      "match": {
        "regex": "^109$"
      }
    }
  ]
}

- Path added

- New endpoint

Create or update a filter list, in addition to its associated rules. Border Gateway Protocol requires IOS XE 17.18 or higher

POST /organizations/{organizationId}/switch/routing/bgp/filters/filterLists/deploy



Docs

List the overview of the filter lists configured for BGP in the given organization

Operation ID: getOrganizationSwitchRoutingBgpFiltersFilterListsOverviewByFilterList

PATH /organizations/{organizationId}/switch/routing/bgp/filters/filterLists/overview/byFilterList

{
  "items": [
    {
      "listId": "135",
      "counts": {
        "neighbors": {
          "total": 3
        },
        "peerGroups": {
          "total": 2
        },
        "rules": {
          "total": 1
        }
      }
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 1,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

List the overview of the filter lists configured for BGP in the given organization. Border Gateway Protocol requires IOS XE 17.18 or higher

GET /organizations/{organizationId}/switch/routing/bgp/filters/filterLists/overview/byFilterList



Docs

List the filter list rules configured for BGP in the given organization

Operation ID: getOrganizationSwitchRoutingBgpFiltersFilterListsRules

PATH /organizations/{organizationId}/switch/routing/bgp/filters/filterLists/rules

{
  "items": [
    {
      "ruleId": "123",
      "filterList": {
        "id": "456",
        "name": "3"
      },
      "network": {
        "id": "L_123",
        "name": "My network name"
      },
      "sequenceNumber": 10,
      "policy": "permit",
      "match": {
        "regex": "^109$"
      }
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 1,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

List the filter list rules configured for BGP in the given organization. Border Gateway Protocol requires IOS XE 17.18 or higher

GET /organizations/{organizationId}/switch/routing/bgp/filters/filterLists/rules



Docs

Delete a filter list

Operation ID: deleteOrganizationSwitchRoutingBgpFiltersFilterList

PATH /organizations/{organizationId}/switch/routing/bgp/filters/filterLists/{listId}

- Path added

- New endpoint

Delete a filter list. Border Gateway Protocol requires IOS XE 17.18 or higher

DELETE /organizations/{organizationId}/switch/routing/bgp/filters/filterLists/{listId}



Docs

List the prefix lists configured for BGP in the given organization

Operation ID: getOrganizationSwitchRoutingBgpFiltersPrefixLists

PATH /organizations/{organizationId}/switch/routing/bgp/filters/prefixLists

{
  "items": [
    {
      "listId": "123",
      "name": "SamplePrefixListName",
      "description": "Sample prefix list description",
      "network": {
        "id": "L_123",
        "name": "My network name"
      }
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 1,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

List the prefix lists configured for BGP in the given organization. Border Gateway Protocol requires IOS XE 17.18 or higher

GET /organizations/{organizationId}/switch/routing/bgp/filters/prefixLists



Docs

Create or update a prefix list, in addition to its associated rules

Operation ID: createOrganizationSwitchRoutingBgpFiltersPrefixListsDeploy

PATH /organizations/{organizationId}/switch/routing/bgp/filters/prefixLists/deploy

{
  "network": {
    "id": "L_123",
    "name": "My network name"
  },
  "prefixList": {
    "id": "123",
    "name": "SamplePrefixListName",
    "description": "Sample prefix list description"
  },
  "rules": [
    {
      "id": "123",
      "sequenceNumber": 10,
      "policy": "permit",
      "conditions": {
        "cidr": "10.0.0.0/8",
        "prefixLength": {
          "minimum": 16,
          "maximum": 28
        }
      }
    }
  ]
}

- Path added

- New endpoint

Create or update a prefix list, in addition to its associated rules. Border Gateway Protocol requires IOS XE 17.18 or higher

POST /organizations/{organizationId}/switch/routing/bgp/filters/prefixLists/deploy



Docs

List the overview of the prefix lists configured for BGP in the given organization

Operation ID: getOrganizationSwitchRoutingBgpFiltersPrefixListsOverviewByPrefixList

PATH /organizations/{organizationId}/switch/routing/bgp/filters/prefixLists/overview/byPrefixList

{
  "items": [
    {
      "listId": "135",
      "counts": {
        "neighbors": {
          "total": 3
        },
        "peerGroups": {
          "total": 2
        },
        "rules": {
          "total": 1
        }
      }
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 1,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

List the overview of the prefix lists configured for BGP in the given organization. Border Gateway Protocol requires IOS XE 17.18 or higher

GET /organizations/{organizationId}/switch/routing/bgp/filters/prefixLists/overview/byPrefixList



Docs

List the prefix list rules configured for BGP in the given organization

Operation ID: getOrganizationSwitchRoutingBgpFiltersPrefixListsRules

PATH /organizations/{organizationId}/switch/routing/bgp/filters/prefixLists/rules

{
  "items": [
    {
      "ruleId": "123",
      "prefixList": {
        "id": "456",
        "name": "my-prefix-list"
      },
      "network": {
        "id": "L_123",
        "name": "My network name"
      },
      "sequenceNumber": 10,
      "policy": "permit",
      "conditions": {
        "cidr": "10.0.0.0/8",
        "prefixLength": {
          "minimum": 16,
          "maximum": 28
        }
      }
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 1,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

List the prefix list rules configured for BGP in the given organization. Border Gateway Protocol requires IOS XE 17.18 or higher

GET /organizations/{organizationId}/switch/routing/bgp/filters/prefixLists/rules



Docs

Delete a prefix list

Operation ID: deleteOrganizationSwitchRoutingBgpFiltersPrefixList

PATH /organizations/{organizationId}/switch/routing/bgp/filters/prefixLists/{listId}

- Path added

- New endpoint

Delete a prefix list. Border Gateway Protocol requires IOS XE 17.18 or higher

DELETE /organizations/{organizationId}/switch/routing/bgp/filters/prefixLists/{listId}



Docs

List the BGP peer groups configured in the given organization

Operation ID: getOrganizationSwitchRoutingBgpPeersGroups

PATH /organizations/{organizationId}/switch/routing/bgp/peers/groups

{
  "items": [
    {
      "peerGroupId": "999",
      "router": {
        "id": "888"
      },
      "profile": {
        "id": "777",
        "name": "EBGP"
      },
      "network": {
        "id": "L_123",
        "name": "My network name"
      },
      "name": "MyPeerGroup"
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 1,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

List the BGP peer groups configured in the given organization. Border Gateway Protocol requires IOS XE 17.18 or higher

GET /organizations/{organizationId}/switch/routing/bgp/peers/groups



Docs

List all BGP deployment information for multiple peer groups or address families configured in the given organization, including profile information, peer group address family information, neighbors, and listen ranges

Operation ID: getOrganizationSwitchRoutingBgpPeersGroupsAddressFamiliesDeployments

PATH /organizations/{organizationId}/switch/routing/bgp/peers/groups/addressFamilies/deployments

{
  "items": [
    {
      "addressFamily": {
        "id": "456",
        "description": "ipv4 unicast"
      },
      "listenRanges": [
        {
          "id": "999",
          "cidr": "192.0.2.0/24",
          "enabled": true,
          "description": "Campus-Bldg-1"
        }
      ],
      "neighbors": [
        {
          "id": "999",
          "description": "BGP gateway",
          "address": "10.0.0.1",
          "peering": {
            "enabled": true
          }
        }
      ],
      "network": {
        "id": "L_123",
        "name": "My network name"
      },
      "peerGroup": {
        "id": "999",
        "name": "MyPeerGroup"
      },
      "peerGroupAddressFamilyBinding": {
        "id": "123"
      },
      "peerGroupAddressFamilyBindingProfile": {
        "id": "123",
        "advertisement": {
          "interval": 20,
          "defaultRoutes": {
            "enabled": true
          }
        },
        "communityAttribute": {
          "send": {
            "enabled": true
          }
        },
        "name": "Sample binding profile",
        "nextHop": {
          "self": {
            "enabled": true
          },
          "unchanged": {
            "enabled": false
          }
        },
        "removePrivateAs": {
          "enabled": true
        },
        "routeReflector": {
          "client": {
            "enabled": false
          }
        },
        "softReconfiguration": {
          "direction": "inbound"
        },
        "weight": 30
      },
      "peerGroupProfile": {
        "id": "456",
        "name": "DefaultPeerGroup",
        "description": "Standard settings",
        "ebgp": {
          "connectedCheck": {
            "enabled": true
          },
          "multihop": {
            "maximum": 10
          }
        },
        "authentication": {
          "enabled": true,
          "password": "my password"
        },
        "timers": {
          "hold": 90,
          "keepalive": 30
        },
        "autonomousSystem": {
          "remote": {
            "number": 65000
          }
        },
        "interfaces": {
          "loopback": {
            "source": {
              "id": "555",
              "name": "0",
              "number": 0
            }
          }
        }
      },
      "router": {
        "id": "888"
      }
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 1,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

List all BGP deployment information for multiple peer groups or address families configured in the given organization, including profile information, peer group address family information, neighbors, and listen ranges. Border Gateway Protocol requires IOS XE 17.18 or higher

GET /organizations/{organizationId}/switch/routing/bgp/peers/groups/addressFamilies/deployments



Docs

Create or update a peer group, in addition to an associated peer group profile, peer group address family binding, peer group address family binding profile and routing policies associated with the peer group

Operation ID: createOrganizationSwitchRoutingBgpPeersGroupsDeploy

PATH /organizations/{organizationId}/switch/routing/bgp/peers/groups/deploy

{
  "addressFamily": {
    "id": "456",
    "description": "ipv4 unicast"
  },
  "network": {
    "id": "L_123",
    "name": "My network name"
  },
  "peerGroup": {
    "id": "999",
    "name": "MyPeerGroup"
  },
  "peerGroupAddressFamilyBinding": {
    "id": "123"
  },
  "peerGroupAddressFamilyBindingProfile": {
    "id": "123",
    "advertisement": {
      "interval": 20,
      "defaultRoutes": {
        "enabled": true
      }
    },
    "communityAttribute": {
      "send": {
        "enabled": true
      }
    },
    "name": "Sample binding profile",
    "nextHop": {
      "self": {
        "enabled": true
      },
      "unchanged": {
        "enabled": false
      }
    },
    "removePrivateAs": {
      "enabled": true
    },
    "routeReflector": {
      "client": {
        "enabled": false
      }
    },
    "softReconfiguration": {
      "direction": "inbound"
    },
    "weight": 30
  },
  "peerGroupProfile": {
    "id": "456",
    "name": "DefaultPeerGroup",
    "description": "Standard settings",
    "ebgp": {
      "connectedCheck": {
        "enabled": true
      },
      "multihop": {
        "maximum": 10
      }
    },
    "authentication": {
      "enabled": true,
      "password": "my password"
    },
    "timers": {
      "hold": 90,
      "keepalive": 30
    },
    "autonomousSystem": {
      "remote": {
        "number": 65000
      }
    },
    "interfaces": {
      "loopback": {
        "source": {
          "id": "555",
          "name": "0",
          "number": 0
        }
      }
    }
  },
  "policies": [
    {
      "id": "123",
      "ruleList": {
        "type": "Prefix list",
        "name": "SamplePrefixListName",
        "id": "789"
      },
      "direction": "in"
    }
  ],
  "router": {
    "id": "888"
  }
}

- Path added

- New endpoint

Create or update a peer group, in addition to an associated peer group profile, peer group address family binding, peer group address family binding profile and routing policies associated with the peer group. Border Gateway Protocol requires IOS XE 17.18 or higher

POST /organizations/{organizationId}/switch/routing/bgp/peers/groups/deploy



Docs

List all BGP deployment information for peer groups configured in the given organization, including peer group address family information, as well as routing policies

Operation ID: getOrganizationSwitchRoutingBgpPeersGroupsDeployments

PATH /organizations/{organizationId}/switch/routing/bgp/peers/groups/deployments

{
  "items": [
    {
      "network": {
        "id": "L_123",
        "name": "My network name"
      },
      "peerGroup": {
        "id": "999",
        "name": "MyPeerGroup"
      },
      "peerGroupProfile": {
        "id": "456",
        "name": "DefaultPeerGroup",
        "description": "Standard settings",
        "ebgp": {
          "connectedCheck": {
            "enabled": true
          },
          "multihop": {
            "maximum": 10
          }
        },
        "authentication": {
          "enabled": true,
          "password": "my password"
        },
        "timers": {
          "hold": 90,
          "keepalive": 30
        },
        "autonomousSystem": {
          "remote": {
            "number": 65000
          }
        },
        "interfaces": {
          "loopback": {
            "source": {
              "id": "555",
              "name": "0",
              "number": 0
            }
          }
        }
      },
      "router": {
        "id": "888"
      },
      "deployments": [
        {
          "addressFamily": {
            "id": "456",
            "description": "ipv4 unicast"
          },
          "peerGroupAddressFamilyBinding": {
            "id": "123"
          },
          "peerGroupAddressFamilyBindingProfile": {
            "id": "123",
            "advertisement": {
              "interval": 20,
              "defaultRoutes": {
                "enabled": true
              }
            },
            "communityAttribute": {
              "send": {
                "enabled": true
              }
            },
            "name": "Sample binding profile",
            "nextHop": {
              "self": {
                "enabled": true
              },
              "unchanged": {
                "enabled": false
              }
            },
            "removePrivateAs": {
              "enabled": true
            },
            "routeReflector": {
              "client": {
                "enabled": false
              }
            },
            "softReconfiguration": {
              "direction": "inbound"
            },
            "weight": 30
          },
          "policies": [
            {
              "id": "123",
              "ruleList": {
                "type": "Prefix list",
                "name": "SamplePrefixListName",
                "id": "789"
              },
              "direction": "in"
            }
          ]
        }
      ]
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 1,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

List all BGP deployment information for peer groups configured in the given organization, including peer group address family information, as well as routing policies. Border Gateway Protocol requires IOS XE 17.18 or higher

GET /organizations/{organizationId}/switch/routing/bgp/peers/groups/deployments



Docs

List the overview of the BGP peer groups configured in the given organization

Operation ID: getOrganizationSwitchRoutingBgpPeersGroupsOverviewByPeerGroup

PATH /organizations/{organizationId}/switch/routing/bgp/peers/groups/overview/byPeerGroup

{
  "items": [
    {
      "peerGroupId": "123",
      "counts": {
        "listenRanges": {
          "total": 1
        },
        "neighbors": {
          "total": 2
        }
      }
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 1,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

List the overview of the BGP peer groups configured in the given organization

GET /organizations/{organizationId}/switch/routing/bgp/peers/groups/overview/byPeerGroup



Docs

List the listen ranges configured for BGP in the given organization

Operation ID: getOrganizationSwitchRoutingBgpPeersListenRanges

PATH /organizations/{organizationId}/switch/routing/bgp/peers/listenRanges

{
  "items": [
    {
      "listenRangeId": "999",
      "router": {
        "id": "888"
      },
      "peerGroup": {
        "id": "777",
        "name": "MyPeerGroupName"
      },
      "network": {
        "id": "L_123",
        "name": "My network name"
      },
      "cidr": "192.0.2.0/24",
      "enabled": true,
      "description": "Campus-Bldg-1"
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 1,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

List the listen ranges configured for BGP in the given organization. Border Gateway Protocol requires IOS XE 17.18 or higher

GET /organizations/{organizationId}/switch/routing/bgp/peers/listenRanges



Docs

List the neighbors configured for BGP in the given organization

Operation ID: getOrganizationSwitchRoutingBgpPeersNeighbors

PATH /organizations/{organizationId}/switch/routing/bgp/peers/neighbors

{
  "items": [
    {
      "neighborId": "999",
      "router": {
        "id": "888"
      },
      "peerGroup": {
        "id": "777",
        "name": "MyPeerGroupName"
      },
      "network": {
        "id": "L_123",
        "name": "My network name"
      },
      "description": "BGP gateway",
      "address": "10.0.0.1",
      "authentication": {
        "enabled": true,
        "password": "my password"
      },
      "ebgp": {
        "connectedCheck": {
          "enabled": true
        },
        "multihop": {
          "maximum": 10
        }
      },
      "interfaces": {
        "loopback": {
          "source": {
            "id": "555",
            "name": "0",
            "number": 0
          }
        }
      }
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 1,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

List the neighbors configured for BGP in the given organization. Border Gateway Protocol requires IOS XE 17.18 or higher

GET /organizations/{organizationId}/switch/routing/bgp/peers/neighbors



Docs

Create or update a neighor, in addition to an associated neighbor address family binding and routing policies associated with the neighbor

Operation ID: createOrganizationSwitchRoutingBgpPeersNeighborsDeploy

PATH /organizations/{organizationId}/switch/routing/bgp/peers/neighbors/deploy

{
  "addressFamily": {
    "id": "456",
    "description": "ipv4 unicast"
  },
  "neighbor": {
    "id": "999",
    "description": "BGP gateway",
    "address": "10.0.0.1",
    "authentication": {
      "enabled": true,
      "password": "my password"
    },
    "ebgp": {
      "connectedCheck": {
        "enabled": true
      },
      "multihop": {
        "maximum": 10
      }
    },
    "interfaces": {
      "loopback": {
        "source": {
          "id": "555",
          "name": "0",
          "number": 0
        }
      }
    }
  },
  "neighborAddressFamilyBinding": {
    "id": "123",
    "peering": {
      "enabled": true
    },
    "weight": 10,
    "advertisement": {
      "defaultRoutes": {
        "enabled": true
      }
    },
    "softReconfiguration": {
      "direction": "inbound"
    }
  },
  "network": {
    "id": "L_123",
    "name": "My network name"
  },
  "peerGroup": {
    "id": "777",
    "name": "MyPeerGroupName"
  },
  "policies": [
    {
      "id": "123",
      "ruleList": {
        "type": "Prefix list",
        "name": "SamplePrefixListName",
        "id": "789"
      },
      "direction": "in"
    }
  ],
  "router": {
    "id": "888"
  }
}

- Path added

- New endpoint

Create or update a neighor, in addition to an associated neighbor address family binding and routing policies associated with the neighbor. Border Gateway Protocol requires IOS XE 17.18 or higher

POST /organizations/{organizationId}/switch/routing/bgp/peers/neighbors/deploy



Docs

List all BGP deployment information for neighbors configured in the given organization, including address family information, as well as routing policies

Operation ID: getOrganizationSwitchRoutingBgpPeersNeighborsDeployments

PATH /organizations/{organizationId}/switch/routing/bgp/peers/neighbors/deployments

{
  "items": [
    {
      "network": {
        "id": "L_123",
        "name": "My network name"
      },
      "peerGroup": {
        "id": "777",
        "name": "MyPeerGroupName"
      },
      "router": {
        "id": "888"
      },
      "neighbor": {
        "id": "999",
        "description": "BGP gateway",
        "address": "10.0.0.1",
        "authentication": {
          "enabled": true,
          "password": "my password"
        },
        "ebgp": {
          "connectedCheck": {
            "enabled": true
          },
          "multihop": {
            "maximum": 10
          }
        },
        "interfaces": {
          "loopback": {
            "source": {
              "id": "555",
              "name": "0",
              "number": 0
            }
          }
        }
      },
      "deployments": [
        {
          "addressFamily": {
            "id": "456",
            "description": "ipv4 unicast"
          },
          "neighborAddressFamilyBinding": {
            "id": "123",
            "peering": {
              "enabled": true
            },
            "weight": 10,
            "advertisement": {
              "defaultRoutes": {
                "enabled": true
              }
            },
            "softReconfiguration": {
              "direction": "inbound"
            }
          },
          "policies": [
            {
              "id": "123",
              "ruleList": {
                "type": "Prefix list",
                "name": "SamplePrefixListName",
                "id": "789"
              },
              "direction": "in"
            }
          ]
        }
      ]
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 1,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

List all BGP deployment information for neighbors configured in the given organization, including address family information, as well as routing policies. Border Gateway Protocol requires IOS XE 17.18 or higher

GET /organizations/{organizationId}/switch/routing/bgp/peers/neighbors/deployments



Docs

List the routers configured in the given organization

Operation ID: getOrganizationSwitchRoutingBgpRouters

PATH /organizations/{organizationId}/switch/routing/bgp/routers

{
  "items": [
    {
      "routerId": "123",
      "autonomousSystem": {
        "id": "123",
        "number": 65000,
        "description": "Core AS"
      },
      "network": {
        "id": "L_123",
        "name": "My network name"
      },
      "stack": {
        "id": "12345",
        "name": "A Switch Stack",
        "members": [
          "Q234-ABCD-0001",
          "Q234-ABCD-0002"
        ]
      },
      "switch": {
        "serial": "Q234-ABCD-0001",
        "name": "Core S1",
        "model": "C9300X-24Y"
      },
      "enabled": true,
      "bgpIdentifier": {
        "address": "1.2.3.4",
        "interfaces": {
          "loopback": {
            "id": "789",
            "name": "1",
            "number": 1
          }
        }
      }
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 1,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

List the routers configured in the given organization. Border Gateway Protocol requires IOS XE 17.18 or higher

GET /organizations/{organizationId}/switch/routing/bgp/routers



Docs

Create a BGP router, in addition to an associated address family, address family prefixes, and address family profile

Operation ID: createOrganizationSwitchRoutingBgpRoutersDeploy

PATH /organizations/{organizationId}/switch/routing/bgp/routers/deploy

{
  "addressFamily": {
    "id": "987",
    "afi": "ipv4",
    "safi": "unicast",
    "vrf": {
      "name": "Default"
    }
  },
  "addressFamilyPrefixes": [
    {
      "id": "987",
      "prefix": "10.128.0.0/16",
      "enabled": true,
      "description": "My prefix description"
    }
  ],
  "addressFamilyProfile": {
    "id": "456",
    "name": "Default address family",
    "ebgp": {
      "paths": {
        "maximum": 4
      }
    },
    "metrics": {
      "default": 300
    },
    "summarization": {
      "auto": {
        "enabled": true
      }
    },
    "redistribution": {
      "static": {
        "enabled": true
      },
      "connected": {
        "enabled": true
      }
    }
  },
  "autonomousSystem": {
    "id": "123",
    "number": 65000,
    "description": "Core AS"
  },
  "network": {
    "id": "L_123",
    "name": "My network name"
  },
  "router": {
    "id": "123",
    "enabled": true,
    "bgpIdentifier": {
      "address": "1.2.3.4",
      "interfaces": {
        "loopback": {
          "id": "789",
          "name": "1",
          "number": 1
        }
      }
    }
  },
  "stack": {
    "id": "12345",
    "name": "A Switch Stack",
    "members": [
      "Q234-ABCD-0001",
      "Q234-ABCD-0002"
    ]
  },
  "switch": {
    "serial": "Q234-ABCD-0001",
    "name": "Core S1",
    "model": "C9300X-24Y"
  }
}

- Path added

- New endpoint

Create a BGP router, in addition to an associated address family, address family prefixes, and address family profile. This is helpful for the initial deployment of a BGP router.. Border Gateway Protocol requires IOS XE 17.18 or higher

POST /organizations/{organizationId}/switch/routing/bgp/routers/deploy



Docs

List all BGP deployment information for routers configured in a given organization, including all address families

Operation ID: getOrganizationSwitchRoutingBgpRoutersDeployments

PATH /organizations/{organizationId}/switch/routing/bgp/routers/deployments

{
  "items": [
    {
      "autonomousSystem": {
        "id": "123",
        "number": 65000,
        "description": "Core AS"
      },
      "network": {
        "id": "L_123",
        "name": "My network name"
      },
      "stack": {
        "id": "12345",
        "name": "A Switch Stack",
        "members": [
          "Q234-ABCD-0001",
          "Q234-ABCD-0002"
        ]
      },
      "switch": {
        "serial": "Q234-ABCD-0001",
        "name": "Core S1",
        "model": "C9300X-24Y"
      },
      "router": {
        "id": "123",
        "enabled": true,
        "bgpIdentifier": {
          "address": "1.2.3.4",
          "interfaces": {
            "loopback": {
              "id": "789",
              "name": "1",
              "number": 1
            }
          }
        }
      },
      "deployments": [
        {
          "addressFamily": {
            "id": "987",
            "afi": "ipv4",
            "safi": "unicast",
            "vrf": {
              "name": "Default"
            }
          },
          "addressFamilyPrefixes": [
            {
              "id": "987",
              "prefix": "10.128.0.0/16",
              "enabled": true,
              "description": "My prefix description"
            }
          ],
          "addressFamilyProfile": {
            "id": "456",
            "name": "Default address family",
            "ebgp": {
              "paths": {
                "maximum": 4
              }
            },
            "metrics": {
              "default": 300
            },
            "summarization": {
              "auto": {
                "enabled": true
              }
            },
            "redistribution": {
              "static": {
                "enabled": true
              },
              "connected": {
                "enabled": true
              }
            }
          }
        }
      ]
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 1,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

List all BGP deployment information for routers configured in a given organization, including all address families. Border Gateway Protocol requires IOS XE 17.18 or higher

GET /organizations/{organizationId}/switch/routing/bgp/routers/deployments



Docs

List the overview of the routers configured in the given organization

Operation ID: getOrganizationSwitchRoutingBgpRoutersOverviewByRouter

PATH /organizations/{organizationId}/switch/routing/bgp/routers/overview/byRouter

{
  "items": [
    {
      "routerId": "123",
      "counts": {
        "listenRanges": {
          "total": 1
        },
        "neighbors": {
          "total": 2
        },
        "routes": {
          "advertised": {
            "total": 4
          }
        }
      }
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 1,
        "remaining": 0
      }
    }
  }
}

- Path added

- New endpoint

List the overview of the routers configured in the given organization. Border Gateway Protocol requires IOS XE 17.18 or higher

GET /organizations/{organizationId}/switch/routing/bgp/routers/overview/byRouter



Docs

Create and update listen ranges, update peers' enabled flag, and delete peer groups for a BGP router

Operation ID: createOrganizationSwitchRoutingBgpRoutersPeersDeploy

PATH /organizations/{organizationId}/switch/routing/bgp/routers/peers/deploy

{
  "addressFamily": {
    "id": "987"
  },
  "network": {
    "id": "L_123",
    "name": "My network name"
  },
  "peerGroups": [
    {
      "id": "123",
      "listenRanges": [
        {
          "id": "999",
          "cidr": "192.0.2.0/24",
          "enabled": true,
          "description": "Campus-Bldg-1"
        }
      ],
      "neighbors": [
        {
          "id": "999",
          "description": "BGP gateway",
          "address": "10.0.0.1",
          "peering": {
            "enabled": true
          }
        }
      ]
    }
  ],
  "router": {
    "id": "123"
  }
}

- Path added

- New endpoint

Create and update listen ranges, update peers' enabled flag, and delete peer groups for a BGP router. Border Gateway Protocol requires IOS XE 17.18 or higher

POST /organizations/{organizationId}/switch/routing/bgp/routers/peers/deploy



Docs

Delete a router from an organization

Operation ID: deleteOrganizationSwitchRoutingBgpRouter

PATH /organizations/{organizationId}/switch/routing/bgp/routers/{routerId}

- Path added

- New endpoint

Delete a router from an organization. Border Gateway Protocol requires IOS XE 17.18 or higher

DELETE /organizations/{organizationId}/switch/routing/bgp/routers/{routerId}



ports

Docs

Update a port mirror

Operation ID: updateDeviceSwitchPortsMirror

PATH /devices/{serial}/switch/ports/mirror

{
  "serial": "Q234-ABCD-5678",
  "network": {
    "id": "N_24329156",
    "name": "Main Office"
  },
  "mirror": {
    "source": {
      "ports": [
        {
          "number": 2,
          "module": {
            "type": "C9800-2X40GE",
            "slot": 2
          }
        }
      ],
      "filter": {
        "vlans": "100, 200-210",
        "hasTransitVlan": true
      }
    },
    "destination": {
      "port": {
        "number": 7,
        "module": {
          "type": "C9800-2X40GE",
          "slot": 1
        }
      },
      "vlan": "10"
    },
    "role": "source",
    "comment": "My pretty comment",
    "tags": [
      "tag1",
      "tag2"
    ]
  },
  "warnings": [
    "Warnings from traffic mirror configuration changes"
  ]
}

- Path added

- New endpoint

Update a port mirror

PUT /devices/{serial}/switch/ports/mirror



Docs

List the port profiles in a network

Operation ID: getNetworkSwitchPortsProfiles

PATH /networks/{networkId}/switch/ports/profiles

[
  {
    "profileId": "1284392014819",
    "networkId": "N_24329156",
    "name": "Phone",
    "description": "IP Phones for all office workers",
    "tags": [
      "tag1",
      "tag2"
    ],
    "associatedPorts": [
      {
        "portId": "8",
        "portNum": 8,
        "portName": "Dev - Cheshire Cat / 8",
        "serial": "Q234-ABCD-5678",
        "profile": {
          "enabled": true,
          "id": "1284392014819"
        }
      }
    ],
    "associatedSwitches": [
      {
        "switchId": 247165647951894,
        "name": "Dev - Cheshire Cat",
        "mac": "e0:cb:bc:a5:98:16",
        "serial": "Q234-ABCD-5678",
        "model": "MS120-48FP"
      }
    ],
    "assignedSwitchports": [
      {
        "portIds": [
          "1",
          "2",
          "3",
          "1_C3850-NM-8-10G_1",
          "1_C3850-NM-8-10G_2"
        ],
        "switch": {
          "serial": "Q234-ABCD-5678"
        },
        "template": {
          "id": 1983748489
        }
      }
    ],
    "createdAt": "2022-09-16T09:18:38Z",
    "updatedAt": "2022-09-16T09:18:38Z",
    "port": {
      "type": "access",
      "vlan": 10,
      "voiceVlan": 20,
      "allowedVlans": "1-100",
      "poeEnabled": true,
      "isolationEnabled": false,
      "rstpEnabled": true,
      "stpGuard": "disabled",
      "udld": "Alert only",
      "accessPolicyType": "Sticky MAC allow list",
      "accessPolicyNumber": 3,
      "macAllowList": [
        "34:56:fe:ce:8e:b0",
        "34:56:fe:ce:8e:b1"
      ],
      "stickyMacAllowList": [
        "34:56:fe:ce:8e:b0",
        "34:56:fe:ce:8e:b1"
      ],
      "stickyMacAllowListLimit": 5,
      "stormControlEnabled": true,
      "adaptivePolicyGroupId": "1284392014819",
      "peerSgtCapable": false,
      "daiTrusted": false
    },
    "isOrganizationWide": false,
    "networks": {
      "values": [
        {
          "id": "N_11865",
          "name": "Wonderland-Dev"
        }
      ],
      "type": "included"
    },
    "automations": [
      {
        "id": "N_11865",
        "name": "RYOFXAPO"
      }
    ],
    "access": "full"
  }
]

- Path added

- New endpoint

List the port profiles in a network

GET /networks/{networkId}/switch/ports/profiles


- New endpoint

Create a port profile in a network

POST /networks/{networkId}/switch/ports/profiles



Docs

Update a port profile in a network

Operation ID: updateNetworkSwitchPortsProfile

PATH /networks/{networkId}/switch/ports/profiles/{id}

{
  "profileId": "1284392014819",
  "networkId": "N_24329156",
  "name": "Phone",
  "description": "IP Phones for all office workers",
  "tags": [
    "tag1",
    "tag2"
  ],
  "associatedPorts": [
    {
      "portId": "8",
      "portNum": 8,
      "portName": "Dev - Cheshire Cat / 8",
      "serial": "Q234-ABCD-5678",
      "profile": {
        "enabled": true,
        "id": "1284392014819"
      }
    }
  ],
  "associatedSwitches": [
    {
      "switchId": 247165647951894,
      "name": "Dev - Cheshire Cat",
      "mac": "e0:cb:bc:a5:98:16",
      "serial": "Q234-ABCD-5678",
      "model": "MS120-48FP"
    }
  ],
  "assignedSwitchports": [
    {
      "portIds": [
        "1",
        "2",
        "3",
        "1_C3850-NM-8-10G_1",
        "1_C3850-NM-8-10G_2"
      ],
      "switch": {
        "serial": "Q234-ABCD-5678"
      },
      "template": {
        "id": 1983748489
      }
    }
  ],
  "createdAt": "2022-09-16T09:18:38Z",
  "updatedAt": "2022-09-16T09:18:38Z",
  "port": {
    "type": "access",
    "vlan": 10,
    "voiceVlan": 20,
    "allowedVlans": "1-100",
    "poeEnabled": true,
    "isolationEnabled": false,
    "rstpEnabled": true,
    "stpGuard": "disabled",
    "udld": "Alert only",
    "accessPolicyType": "Sticky MAC allow list",
    "accessPolicyNumber": 3,
    "macAllowList": [
      "34:56:fe:ce:8e:b0",
      "34:56:fe:ce:8e:b1"
    ],
    "stickyMacAllowList": [
      "34:56:fe:ce:8e:b0",
      "34:56:fe:ce:8e:b1"
    ],
    "stickyMacAllowListLimit": 5,
    "stormControlEnabled": true,
    "adaptivePolicyGroupId": "1284392014819",
    "peerSgtCapable": false,
    "daiTrusted": false
  },
  "isOrganizationWide": false,
  "networks": {
    "values": [
      {
        "id": "N_11865",
        "name": "Wonderland-Dev"
      }
    ],
    "type": "included"
  },
  "automations": [
    {
      "id": "N_11865",
      "name": "RYOFXAPO"
    }
  ],
  "access": "full"
}

- Path added

- New endpoint

Update a port profile in a network

PUT /networks/{networkId}/switch/ports/profiles/{id}


- New endpoint

Delete a port profile from a network

DELETE /networks/{networkId}/switch/ports/profiles/{id}



Docs

list the port mirror configurations in an organization by switch

Operation ID: getOrganizationSwitchPortsMirrorsBySwitch

PATH /organizations/{organizationId}/switch/ports/mirrors/bySwitch

{
  "items": [
    {
      "serial": "Q234-ABCD-5678",
      "network": {
        "id": "N_24329156",
        "name": "Main Office"
      },
      "mirror": {
        "source": {
          "ports": [
            {
              "number": 2,
              "module": {
                "type": "C9800-2X40GE",
                "slot": 2
              }
            }
          ],
          "filter": {
            "vlans": "100, 200-210",
            "hasTransitVlan": true
          }
        },
        "destination": {
          "port": {
            "number": 7,
            "module": {
              "type": "C9800-2X40GE",
              "slot": 1
            }
          },
          "vlan": "10"
        },
        "role": "source",
        "comment": "My pretty comment",
        "tags": [
          "tag1",
          "tag2"
        ]
      },
      "warnings": [
        "Warnings from traffic mirror configuration changes"
      ]
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 1
      }
    }
  }
}

- Path added

- New endpoint

list the port mirror configurations in an organization by switch

GET /organizations/{organizationId}/switch/ports/mirrors/bySwitch



Docs

List the port profiles in an organization

Operation ID: getOrganizationSwitchPortsProfiles

PATH /organizations/{organizationId}/switch/ports/profiles

[
  {
    "profileId": "1284392014819",
    "name": "Phone",
    "description": "IP Phones for all office workers",
    "createdAt": "2018-02-11T00:00:00.090210Z",
    "updatedAt": "2018-02-11T00:00:00.090210Z",
    "network": {
      "id": "N_24329156"
    },
    "counts": {
      "assigned": {
        "ports": 4,
        "switches": 2,
        "automations": 6
      },
      "networksCount": {
        "included": 40,
        "excluded": 20
      }
    },
    "isOrganizationWide": false,
    "networks": {
      "values": [
        {
          "id": "N_11865",
          "name": "Wonderland-Dev"
        }
      ],
      "type": "included"
    },
    "access": "full"
  }
]

- Path added

- New endpoint

List the port profiles in an organization

GET /organizations/{organizationId}/switch/ports/profiles


- New endpoint

Create a port profile in an organization

POST /organizations/{organizationId}/switch/ports/profiles



Docs

list the automation port profiles in an organization

Operation ID: getOrganizationSwitchPortsProfilesAutomations

PATH /organizations/{organizationId}/switch/ports/profiles/automations

{
  "items": [
    {
      "id": "1284392014819",
      "name": "Automation 1",
      "description": "A full length description of the automation.",
      "types": [
        "Custom",
        "Built-in"
      ],
      "fallbackProfile": {
        "id": "1284392014819",
        "name": "Profile 1"
      },
      "rules": [
        {
          "priority": 1,
          "conditions": [
            {
              "attribute": "LLDP system description",
              "values": [
                "Meraki MR*",
                "*Wireless*"
              ]
            }
          ],
          "profile": {
            "id": "32",
            "name": "Profile 2"
          }
        }
      ],
      "assignedSwitchPorts": [
        {
          "portIds": [
            "1",
            "2",
            "3",
            "1_C3850-NM-8-10G_1",
            "1_C3850-NM-8-10G_2"
          ],
          "switch": {
            "serial": "Q234-ABCD-5678"
          }
        }
      ],
      "counts": {
        "assigned": {
          "devices": 2,
          "ports": 51,
          "networks": 1
        }
      },
      "isOrganizationWide": false,
      "networks": [
        {
          "id": "N_11865",
          "name": "Wonderland-Dev"
        }
      ]
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 1
      }
    }
  }
}

- Path added

- New endpoint

list the automation port profiles in an organization

GET /organizations/{organizationId}/switch/ports/profiles/automations


- New endpoint

Create a port profile automation for an organization

POST /organizations/{organizationId}/switch/ports/profiles/automations



Docs

Update a port profile automation in an organization

Operation ID: updateOrganizationSwitchPortsProfilesAutomation

PATH /organizations/{organizationId}/switch/ports/profiles/automations/{id}

{
  "id": "1284392014819",
  "name": "Automation 1",
  "description": "A full length description of the automation.",
  "types": [
    "Custom",
    "Built-in"
  ],
  "fallbackProfile": {
    "id": "1284392014819",
    "name": "Profile 1"
  },
  "rules": [
    {
      "priority": 1,
      "conditions": [
        {
          "attribute": "LLDP system description",
          "values": [
            "Meraki MR*",
            "*Wireless*"
          ]
        }
      ],
      "profile": {
        "id": "32",
        "name": "Profile 2"
      }
    }
  ],
  "assignedSwitchPorts": [
    {
      "portIds": [
        "1",
        "2",
        "3",
        "1_C3850-NM-8-10G_1",
        "1_C3850-NM-8-10G_2"
      ],
      "switch": {
        "serial": "Q234-ABCD-5678"
      }
    }
  ],
  "counts": {
    "assigned": {
      "devices": 2,
      "ports": 51,
      "networks": 1
    }
  },
  "isOrganizationWide": false,
  "networks": [
    {
      "id": "N_11865",
      "name": "Wonderland-Dev"
    }
  ]
}

- Path added

- New endpoint

Update a port profile automation in an organization

PUT /organizations/{organizationId}/switch/ports/profiles/automations/{id}


- New endpoint

Delete an automation port profile from an organization

DELETE /organizations/{organizationId}/switch/ports/profiles/automations/{id}



Docs

Fetch all Network - Smart Port Profile associations for an organization

Operation ID: getOrganizationSwitchPortsProfilesNetworksAssignments

PATH /organizations/{organizationId}/switch/ports/profiles/networks/assignments

{
  "items": [
    {
      "assignmentId": "123456",
      "type": "included",
      "profile": {
        "id": "4354353"
      },
      "network": {
        "id": "N_24329156"
      }
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 42,
        "remaining": 32
      }
    }
  }
}

- Path added

- New endpoint

Fetch all Network - Smart Port Profile associations for an organization

GET /organizations/{organizationId}/switch/ports/profiles/networks/assignments


- New endpoint

Create Network and Smart Ports Profile association for a specific profile

POST /organizations/{organizationId}/switch/ports/profiles/networks/assignments



Docs

Batch Create Network and Smart Ports Profile associations for a specific profile

Operation ID: batchOrganizationSwitchPortsProfilesNetworksAssignmentsCreate

PATH /organizations/{organizationId}/switch/ports/profiles/networks/assignments/batchCreate

{
  "items": [
    {
      "assignmentId": "123456",
      "type": "included",
      "profile": {
        "id": "4354353"
      },
      "network": {
        "id": "N_24329156"
      }
    }
  ]
}

- Path added

- New endpoint

Batch Create Network and Smart Ports Profile associations for a specific profile

POST /organizations/{organizationId}/switch/ports/profiles/networks/assignments/batchCreate



Docs

Bulk delete Network and Smart Port Profile associations

Operation ID: bulkOrganizationSwitchPortsProfilesNetworksAssignmentsDelete

PATH /organizations/{organizationId}/switch/ports/profiles/networks/assignments/bulkDelete

- Path added

- New endpoint

Bulk delete Network and Smart Port Profile associations

POST /organizations/{organizationId}/switch/ports/profiles/networks/assignments/bulkDelete



Docs

Delete Network and Smart Port profile association for a specific profile

Operation ID: deleteOrganizationSwitchPortsProfilesNetworksAssignment

PATH /organizations/{organizationId}/switch/ports/profiles/networks/assignments/{assignmentId}

- Path added

- New endpoint

Delete Network and Smart Port profile association for a specific profile

DELETE /organizations/{organizationId}/switch/ports/profiles/networks/assignments/{assignmentId}



Docs

List the port profiles in an organization

Operation ID: getOrganizationSwitchPortsProfilesOverviewByProfile

PATH /organizations/{organizationId}/switch/ports/profiles/overview/byProfile

[
  {
    "items": [
      {
        "profileId": "1284392014819",
        "name": "Phone",
        "description": "IP Phones for all office workers",
        "createdAt": "2018-02-11T00:00:00.090210Z",
        "updatedAt": "2018-02-11T00:00:00.090210Z",
        "network": {
          "id": "N_24329156"
        },
        "counts": {
          "assigned": {
            "ports": 4,
            "switches": 2,
            "automations": 6
          },
          "networksCount": {
            "included": 40,
            "excluded": 20
          }
        },
        "isOrganizationWide": false,
        "networks": {
          "values": [
            {
              "id": "N_11865",
              "name": "Wonderland-Dev"
            }
          ],
          "type": "included"
        },
        "access": "full"
      }
    ],
    "meta": {
      "counts": {
        "items": {
          "total": 1
        }
      }
    }
  }
]

- Path added

- New endpoint

List the port profiles in an organization

GET /organizations/{organizationId}/switch/ports/profiles/overview/byProfile



Docs

Get detailed information about a port profile

Operation ID: getOrganizationSwitchPortsProfile

PATH /organizations/{organizationId}/switch/ports/profiles/{id}

{
  "profileId": "1284392014819",
  "networkId": "N_24329156",
  "name": "Phone",
  "description": "IP Phones for all office workers",
  "tags": [
    "tag1",
    "tag2"
  ],
  "associatedPorts": [
    {
      "portId": "8",
      "portNum": 8,
      "portName": "Dev - Cheshire Cat / 8",
      "serial": "Q234-ABCD-5678",
      "profile": {
        "enabled": true,
        "id": "1284392014819"
      }
    }
  ],
  "associatedSwitches": [
    {
      "switchId": 247165647951894,
      "name": "Dev - Cheshire Cat",
      "mac": "e0:cb:bc:a5:98:16",
      "serial": "Q234-ABCD-5678",
      "model": "MS120-48FP"
    }
  ],
  "assignedSwitchports": [
    {
      "portIds": [
        "1",
        "2",
        "3",
        "1_C3850-NM-8-10G_1",
        "1_C3850-NM-8-10G_2"
      ],
      "switch": {
        "serial": "Q234-ABCD-5678"
      },
      "template": {
        "id": 1983748489
      }
    }
  ],
  "createdAt": "2022-09-16T09:18:38Z",
  "updatedAt": "2022-09-16T09:18:38Z",
  "port": {
    "type": "access",
    "vlan": 10,
    "voiceVlan": 20,
    "allowedVlans": "1-100",
    "poeEnabled": true,
    "isolationEnabled": false,
    "rstpEnabled": true,
    "stpGuard": "disabled",
    "udld": "Alert only",
    "accessPolicyType": "Sticky MAC allow list",
    "accessPolicyNumber": 3,
    "macAllowList": [
      "34:56:fe:ce:8e:b0",
      "34:56:fe:ce:8e:b1"
    ],
    "stickyMacAllowList": [
      "34:56:fe:ce:8e:b0",
      "34:56:fe:ce:8e:b1"
    ],
    "stickyMacAllowListLimit": 5,
    "stormControlEnabled": true,
    "adaptivePolicyGroupId": "1284392014819",
    "peerSgtCapable": false,
    "daiTrusted": false
  },
  "isOrganizationWide": false,
  "networks": {
    "values": [
      {
        "id": "N_11865",
        "name": "Wonderland-Dev"
      }
    ],
    "type": "included"
  },
  "automations": [
    {
      "id": "N_11865",
      "name": "RYOFXAPO"
    }
  ],
  "access": "full"
}

- Path added

- New endpoint

Get detailed information about a port profile

GET /organizations/{organizationId}/switch/ports/profiles/{id}


- New endpoint

Update a port profile in an organization

PUT /organizations/{organizationId}/switch/ports/profiles/{id}


- New endpoint

Delete a port profile from an organization

DELETE /organizations/{organizationId}/switch/ports/profiles/{id}



Docs

Switch port packets by device and port.

Operation ID: getOrganizationSwitchPortsStatusesPacketsByDeviceByPort

PATH /organizations/{organizationId}/switch/ports/statuses/packets/byDevice/byPort

[
  {
    "device": {
      "name": "My AP",
      "serial": "Q234-ABCD-5678",
      "mac": "00:11:22:33:44:55"
    },
    "ports": [
      {
        "port": 1,
        "usage": [
          {
            "total": 1611860,
            "broadcast": {
              "total": 20655,
              "rate": 0.25,
              "isStorm": false
            },
            "multicast": {
              "total": 28465,
              "rate": 0.54,
              "isStorm": false
            },
            "startTs": "2018-02-11T00:00:00.090210Z",
            "endTs": "2018-02-11T00:00:00.090210Z"
          }
        ]
      }
    ]
  }
]

- Path added

- New endpoint

Switch port packets by device and port.

GET /organizations/{organizationId}/switch/ports/statuses/packets/byDevice/byPort



Docs

Return time-series digital optical monitoring (DOM) readings for ports on each DOM-enabled switch in an organization, in addition to thresholds for each relevant Small Form Factor Pluggable (SFP) module.

Operation ID: getOrganizationSwitchPortsTransceiversReadingsHistoryBySwitch

PATH /organizations/{organizationId}/switch/ports/transceivers/readings/history/bySwitch

{
  "items": [
    {
      "serial": "Q234-ABCD-0001",
      "ports": [
        {
          "portId": "1",
          "indices": {
            "switch": 1,
            "slot": 0,
            "port": 1
          },
          "readings": [
            {
              "startTs": "2018-02-11T00:00:00.090210Z",
              "endTs": "2018-02-11T00:00:00.090210Z",
              "sfpProductId": "PRODUCT1",
              "thresholdSetId": "ABC123",
              "byMetric": {
                "power": {
                  "transmit": {
                    "minimum": 4,
                    "maximum": 5,
                    "median": 4.5
                  },
                  "receive": {
                    "minimum": 4,
                    "maximum": 5,
                    "median": 4.5
                  }
                },
                "temperature": {
                  "fahrenheit": {
                    "minimum": 30,
                    "maximum": 33,
                    "median": 32
                  },
                  "celsius": {
                    "minimum": -1.1,
                    "maximum": 0.6,
                    "median": 0
                  }
                },
                "supplyVoltage": {
                  "level": {
                    "minimum": 3,
                    "maximum": 3.33,
                    "median": 3.11
                  }
                },
                "laserBiasCurrent": {
                  "draw": {
                    "minimum": 5,
                    "maximum": 7,
                    "median": 5.5
                  }
                }
              }
            }
          ]
        }
      ],
      "network": {
        "id": "N_12345678",
        "name": "San Francisco Office"
      }
    }
  ],
  "meta": {
    "counts": {
      "items": {
        "total": 4,
        "remaining": 2
      }
    },
    "units": {
      "power": {
        "name": "decibel milliwatts",
        "symbol": "dBm"
      },
      "supplyVoltage": {
        "name": "volts",
        "symbol": "V"
      },
      "laserBiasCurrent": {
        "name": "milliamps",
        "symbol": "mA"
      }
    },
    "thresholds": [
      {
        "thresholdSetId": "ABC123",
        "power": {
          "transmit": {
            "error": {
              "upper": 1.8,
              "lower": 0.3
            },
            "warning": {
              "upper": 1.5,
              "lower": 0.6
            }
          },
          "receive": {
            "error": {
              "upper": 1.8,
              "lower": 0.3
            },
            "warning": {
              "upper": 1.5,
              "lower": 0.6
            }
          }
        },
        "temperature": {
          "fahrenheit": {
            "error": {
              "upper": 59,
              "lower": 23
            },
            "warning": {
              "upper": 50,
              "lower": 14
            }
          },
          "celsius": {
            "error": {
              "upper": 15,
              "lower": -5
            },
            "warning": {
              "upper": 10,
              "lower": -10
            }
          }
        },
        "supplyVoltage": {
          "level": {
            "error": {
              "upper": 7,
              "lower": 2
            },
            "warning": {
              "upper": 6,
              "lower": 3
            }
          }
        },
        "laserBiasCurrent": {
          "draw": {
            "error": {
              "upper": 6,
              "lower": 1
            },
            "warning": {
              "upper": 5,
              "lower": 2
            }
          }
        }
      }
    ]
  }
}

- Path added

- New endpoint

Return time-series digital optical monitoring (DOM) readings for ports on each DOM-enabled switch in an organization, in addition to thresholds for each relevant Small Form Factor Pluggable (SFP) module.

GET /organizations/{organizationId}/switch/ports/transceivers/readings/history/bySwitch



service

Docs

List switch templates running IOS XE Catalyst firmware.

Operation ID: aurora2OrganizationSwitchSwitchTemplates

PATH /organizations/{organizationId}/switch/aurora2SwitchTemplates

[
  {
    "id": "4567",
    "name": "A Simple Switch Template"
  }
]

- Path added

- New endpoint

List switch templates running IOS XE Catalyst firmware.

GET /organizations/{organizationId}/switch/aurora2SwitchTemplates



Docs

Clone existing switch templates into a destination template network.

Operation ID: cloneOrganizationSwitchProfilesToTemplateNetwork

PATH /organizations/{organizationId}/switch/cloneProfilesToTemplateNetwork

{
  "profileIds": [
    "1234"
  ],
  "templateNodeGroupId": "4567",
  "clonedProfileIds": [
    "1234"
  ]
}

- Path added

- New endpoint

Clone existing switch templates into a destination template network.

POST /organizations/{organizationId}/switch/cloneProfilesToTemplateNetwork



[ sensor ]

readings

Docs

Return all reported readings from sensors in a given timespan, summarized as a series of intervals, sorted by interval start time in descending order

Operation ID: getOrganizationSensorReadingsHistoryByInterval

PATH /organizations/{organizationId}/sensor/readings/history/byInterval

[
  {
    "startTs": "2022-01-07T23:00:00Z",
    "endTs": "2022-01-07T23:59:59Z",
    "serial": "Q234-ABCD-5678",
    "model": "MT11",
    "network": {
      "id": "N_24329156",
      "name": "Main Office"
    },
    "metric": "temperature",
    "apparentPower": {
      "draw": {
        "minimum": 0,
        "maximum": 15.9,
        "average": 4.9
      }
    },
    "battery": {
      "percentage": {
        "minimum": 95,
        "maximum": 97,
        "average": 96
      }
    },
    "button": {
      "pressType": {
        "counts": {
          "short": 2,
          "long": 4
        }
      }
    },
    "co2": {
      "concentration": {
        "minimum": 221,
        "maximum": 504,
        "average": 440
      }
    },
    "current": {
      "draw": {
        "minimum": 0,
        "maximum": 0.13,
        "average": 0.04
      }
    },
    "door": {
      "counts": {
        "open": 6
      }
    },
    "energy": {
      "usage": 0.116
    },
    "frequency": {
      "draw": {
        "minimum": 59.6,
        "maximum": 60.2,
        "average": 60.1
      }
    },
    "humidity": {
      "relativePercentage": {
        "minimum": 33,
        "maximum": 35,
        "average": 33
      }
    },
    "indoorAirQuality": {
      "score": {
        "minimum": 33,
        "maximum": 35,
        "average": 33
      }
    },
    "noise": {
      "ambient": {
        "level": {
          "minimum": 22,
          "maximum": 45,
          "average": 31
        }
      }
    },
    "pm25": {
      "concentration": {
        "minimum": 0,
        "maximum": 3,
        "average": 1
      }
    },
    "powerFactor": {
      "percentage": {
        "minimum": 84,
        "maximum": 89,
        "average": 86
      }
    },
    "realPower": {
      "draw": {
        "minimum": 0,
        "maximum": 14.2,
        "average": 5
      }
    },
    "temperature": {
      "fahrenheit": {
        "minimum": 68.15,
        "maximum": 74.91,
        "average": 72.08
      },
      "celsius": {
        "minimum": 20.08,
        "maximum": 23.84,
        "average": 22.27
      }
    },
    "tvoc": {
      "concentration": {
        "minimum": 221,
        "maximum": 504,
        "average": 440
      }
    },
    "voltage": {
      "level": {
        "minimum": 120.7,
        "maximum": 124.6,
        "average": 122.6
      }
    },
    "water": {
      "counts": {
        "present": 6
      }
    }
  }
]

- Path added

- New endpoint

Return all reported readings from sensors in a given timespan, summarized as a series of intervals, sorted by interval start time in descending order

GET /organizations/{organizationId}/sensor/readings/history/byInterval



alerts

Docs

Return a list of sensor alert events

Operation ID: getOrganizationSensorAlerts

PATH /organizations/{organizationId}/sensor/alerts

[
  {
    "startTs": "2018-02-11T00:00:00.090210Z",
    "sensor": {
      "name": "My sensor",
      "serial": "Q234-ABCD-5678",
      "model": "MT10",
      "url": "http://example.com"
    },
    "trigger": {
      "ts": "2021-10-18T23:54:48.000000Z",
      "metric": "temperature",
      "apparentPower": {
        "draw": 15.9
      },
      "co2": {
        "concentration": 100
      },
      "current": {
        "draw": 0.13
      },
      "door": {
        "open": true
      },
      "frequency": {
        "level": 60.1
      },
      "humidity": {
        "relativePercentage": 34
      },
      "indoorAirQuality": {
        "score": 89
      },
      "noise": {
        "ambient": {
          "level": 45
        }
      },
      "pm25": {
        "concentration": 100
      },
      "powerFactor": {
        "percentage": 86
      },
      "realPower": {
        "draw": 13.7
      },
      "temperature": {
        "fahrenheit": 77.81,
        "celsius": 25.45
      },
      "tvoc": {
        "concentration": 100
      },
      "upstreamPower": {
        "outageDetected": true
      },
      "voltage": {
        "level": 122.4
      },
      "water": {
        "present": true
      }
    },
    "profile": {
      "id": "1",
      "name": "Too hot",
      "condition": {
        "metric": "temperature",
        "threshold": {
          "temperature": {
            "celsius": 20.5,
            "fahrenheit": 70,
            "quality": "good"
          },
          "humidity": {
            "relativePercentage": 65,
            "quality": "inadequate"
          },
          "water": {
            "present": true
          },
          "door": {
            "open": true
          },
          "tvoc": {
            "concentration": 400,
            "quality": "poor"
          },
          "co2": {
            "concentration": 400,
            "quality": "poor"
          },
          "pm25": {
            "concentration": 90,
            "quality": "fair"
          },
          "noise": {
            "ambient": {
              "level": 120,
              "quality": "poor"
            }
          },
          "indoorAirQuality": {
            "score": 80,
            "quality": "fair"
          },
          "realPower": {
            "draw": 14.1
          },
          "apparentPower": {
            "draw": 17.2
          },
          "powerFactor": {
            "percentage": 81
          },
          "current": {
            "draw": 0.14
          },
          "voltage": {
            "level": 119.5
          },
          "frequency": {
            "level": 58.8
          },
          "upstreamPower": {
            "outageDetected": true
          }
        },
        "direction": "above",
        "duration": 60
      }
    },
    "snapshotCamera": {
      "serial": "QAAA-AAAA-AAAA",
      "name": "Camera",
      "url": "http://example.com"
    }
  }
]

- Path added

- New endpoint

Return a list of sensor alert events

GET /organizations/{organizationId}/sensor/alerts



schedules

Docs

Returns a list of all sensor schedules.

Operation ID: getNetworkSensorSchedules

PATH /networks/{networkId}/sensor/schedules

[
  {
    "id": "123",
    "name": "Weekday schedule"
  }
]

- Path added

- New endpoint

Returns a list of all sensor schedules.

GET /networks/{networkId}/sensor/schedules



[ appliance ]

sdwan

Docs

Get the SDWAN internet traffic preferences for an MX network

Operation ID: getOrganizationApplianceSdwanInternetPolicies

PATH /organizations/{organizationId}/appliance/sdwan/internetPolicies

{
  "wanTrafficUplinkPreferences": [
    {
      "preferredUplink": "wan1",
      "failOverCriterion": "poorPerformance",
      "performanceClass": {
        "type": "custom",
        "builtinPerformanceClassName": "VoIP",
        "customPerformanceClassId": "123456"
      },
      "trafficFilters": [
        {
          "type": "custom",
          "value": {
            "protocol": "tcp",
            "source": {
              "port": "1-1024",
              "cidr": "192.168.1.0/24",
              "vlan": 10,
              "host": 254
            },
            "destination": {
              "port": "any",
              "cidr": "any",
              "applications": [
                {
                  "id": "meraki:layer7/application/3",
                  "name": "DNS",
                  "type": "major"
                }
              ]
            }
          }
        }
      ]
    }
  ]
}

- Path added

- New endpoint

Get the SDWAN internet traffic preferences for an MX network

GET /organizations/{organizationId}/appliance/sdwan/internetPolicies



umbrella

Docs

Connect to Cisco Umbrella account to this network

Operation ID: connectNetworkApplianceUmbrellaAccount

PATH /networks/{networkId}/appliance/umbrella/account/connect

{
  "umbrellaOrganizationId": "8769012"
}

- Path added

- New endpoint

Connect to Cisco Umbrella account to this network

POST /networks/{networkId}/appliance/umbrella/account/connect



Docs

Disconnect Umbrella account from this network

Operation ID: disconnectNetworkApplianceUmbrellaAccount

PATH /networks/{networkId}/appliance/umbrella/account/disconnect

{
  "success": true,
  "message": "Successfully updated"
}

- Path added

- New endpoint

Disconnect Umbrella account from this network

DELETE /networks/{networkId}/appliance/umbrella/account/disconnect



Docs

Disable umbrella protection for an MX network

Operation ID: disableNetworkApplianceUmbrellaProtection

PATH /networks/{networkId}/appliance/umbrella/disableProtection

{
  "success": true,
  "message": "Successfully updated"
}

- Path added

- New endpoint

Disable umbrella protection for an MX network

DELETE /networks/{networkId}/appliance/umbrella/disableProtection



Docs

Enable umbrella protection for an MX network

Operation ID: enableNetworkApplianceUmbrellaProtection

PATH /networks/{networkId}/appliance/umbrella/enableProtection

{
  "success": true,
  "message": "Successfully updated"
}

- Path added

- New endpoint

Enable umbrella protection for an MX network

POST /networks/{networkId}/appliance/umbrella/enableProtection



Docs

Specify one or more domain names to be excluded from being routed to Cisco Umbrella.

Operation ID: excludeNetworkApplianceUmbrellaDomains

PATH /networks/{networkId}/appliance/umbrella/excludeDomains

{
  "success": true,
  "message": "Successfully updated"
}

- Path added

- New endpoint

Specify one or more domain names to be excluded from being routed to Cisco Umbrella.

PUT /networks/{networkId}/appliance/umbrella/excludeDomains



Docs

Update umbrella policies applied to MX network.

Operation ID: policiesNetworkApplianceUmbrella

PATH /networks/{networkId}/appliance/umbrella/policies

{
  "success": true,
  "message": "Successfully updated"
}

- Path added

- New endpoint

Update umbrella policies applied to MX network.

PUT /networks/{networkId}/appliance/umbrella/policies



vpn

Docs

Summarizes by-device vpn peers for the organization in the given interval.

Operation ID: getOrganizationApplianceVpnConnectivityVpnPeersByNetwork

PATH /organizations/{organizationId}/appliance/vpn/connectivity/vpnPeers/byNetwork

[
  {
    "network": {
      "id": "N_24329156",
      "name": "Main Office"
    },
    "merakiVpnPeers": [
      {
        "id": "N_123",
        "name": "Network 1",
        "url": "https://n1.meraki.com/Network_1/n/Abc123/manage/vpn/overview/Xyz456",
        "avgLatencyMs": 35.3,
        "usageBytes": 1000,
        "outage": [
          {
            "ts": 1767769514,
            "isConnected": true
          }
        ],
        "usageIntervals": [
          {
            "ts": 1767769514,
            "latency": 35.3,
            "loss": {
              "percentage": 50
            }
          }
        ]
      }
    ]
  }
]

- Path added

- New endpoint

Summarizes by-device vpn peers for the organization in the given interval.

GET /organizations/{organizationId}/appliance/vpn/connectivity/vpnPeers/byNetwork



vlans

Docs

List the VLANs for an Organization

Operation ID: getOrganizationApplianceVlans

PATH /organizations/{organizationId}/appliance/vlans

[
  {
    "id": "1234",
    "interfaceId": "1284392014819",
    "name": "My VLAN",
    "subnet": "192.168.1.0/24",
    "applianceIp": "192.168.1.2",
    "groupPolicyId": "101",
    "templateVlanType": "same",
    "cidr": "192.168.1.0/24",
    "mask": 28,
    "dhcpRelayServerIps": [
      "192.168.1.0",
      "192.168.128.0"
    ],
    "dhcpHandling": "Run a DHCP server",
    "dhcpLeaseTime": "1 day",
    "dhcpBootOptionsEnabled": false,
    "dhcpBootNextServer": "1.2.3.4",
    "dhcpBootFilename": "sample.file",
    "fixedIpAssignments": {
      "00:11:22:33:44:55": {
        "ip": "1.2.3.4",
        "name": "My favorite IP"
      }
    },
    "reservedIpRanges": [
      {
        "start": "192.168.1.0",
        "end": "192.168.1.1",
        "comment": "A reserved IP range"
      }
    ],
    "dnsNameservers": "google_dns",
    "dhcpOptions": [
      {
        "code": "5",
        "type": "text",
        "value": "five"
      }
    ],
    "vpnNatSubnet": "192.168.1.0/24",
    "mandatoryDhcp": {
      "enabled": true
    },
    "ipv6": {
      "enabled": true,
      "prefixAssignments": [
        {
          "autonomous": false,
          "staticPrefix": "2001:db8:3c4d:15::/64",
          "staticApplianceIp6": "2001:db8:3c4d:15::1",
          "origin": {
            "type": "internet",
            "interfaces": [
              "wan0"
            ]
          }
        }
      ]
    }
  }
]

- Path added

- New endpoint

List the VLANs for an Organization

GET /organizations/{organizationId}/appliance/vlans



Changed

[ nac ]

certificates

Docs

Get all the organization's CRL.It's possible to filter results by CRL issuers (CA) or CRL's ID - see caIds and crlIds query parameters.This endpoint could be used for 'show' action when you specify a single CRL ID in crlIds parameter

Operation ID: getOrganizationNacCertificatesAuthoritiesCrls

GET /organizations/{organizationId}/nac/certificates/authorities/crls

- Added endpoint method

Get all the organization's CRL.It's possible to filter results by CRL issuers (CA) or CRL's ID - see caIds and crlIds query parameters.This endpoint could be used for 'show' action when you specify a single CRL ID in crlIds parameter

getOrganizationNacCertificatesAuthoritiesCrls



[ insight ]

applications

Docs

Add an Insight tracked application

Operation ID: createOrganizationInsightApplication

POST /organizations/{organizationId}/insight/applications

- Added endpoint method

Add an Insight tracked application

createOrganizationInsightApplication



[ organizations ]

summary

Docs

Return the top 10 appliances sorted by utilization over given time range.

Operation ID: getOrganizationSummaryTopAppliancesByUtilization

GET /organizations/{organizationId}/summary/top/appliances/byUtilization

- Optional param networkId added


Docs

Return metrics for organization's top 10 clients by data usage (in mb) over given time range.

Operation ID: getOrganizationSummaryTopClientsByUsage

GET /organizations/{organizationId}/summary/top/clients/byUsage

- Optional param networkId added


Docs

Return metrics for organization's top clients by data usage (in mb) over given time range, grouped by manufacturer.

Operation ID: getOrganizationSummaryTopClientsManufacturersByUsage

GET /organizations/{organizationId}/summary/top/clients/manufacturers/byUsage

- Optional param networkId added


Docs

Return metrics for organization's top 10 devices sorted by data usage over given time range

Operation ID: getOrganizationSummaryTopDevicesByUsage

GET /organizations/{organizationId}/summary/top/devices/byUsage

- Optional param networkId added


Docs

Return metrics for organization's top 10 device models sorted by data usage over given time range

Operation ID: getOrganizationSummaryTopDevicesModelsByUsage

GET /organizations/{organizationId}/summary/top/devices/models/byUsage

- Optional param networkId added


Docs

List the client and status overview information for the networks in an organization

Operation ID: getOrganizationSummaryTopNetworksByStatus

GET /organizations/{organizationId}/summary/top/networks/byStatus

- Optional param networkId added


Docs

Return metrics for organization's top 10 ssids by data usage over given time range

Operation ID: getOrganizationSummaryTopSsidsByUsage

GET /organizations/{organizationId}/summary/top/ssids/byUsage

- Optional param networkId added


Docs

Return metrics for organization's top 10 switches by energy usage over given time range

Operation ID: getOrganizationSummaryTopSwitchesByEnergyUsage

GET /organizations/{organizationId}/summary/top/switches/byEnergyUsage

- Optional param networkId added


devices

Docs

List the availability history information for devices in an organization.

Operation ID: getOrganizationDevicesAvailabilitiesChangeHistory

GET /organizations/{organizationId}/devices/availabilities/changeHistory

- Optional param categories added

- Optional param networkTags added

- Optional param networkTagsFilterType added

- Optional param deviceTags added

- Optional param deviceTagsFilterType added

- Optional property tags Added

- Optional property category Added

- Response property tags value added

- Response property category value added


Docs

List the status of every Meraki device in the organization

Operation ID: getOrganizationDevicesStatuses

GET /organizations/{organizationId}/devices/statuses

- Optional param configurationUpdatedAfter added


clients

Docs

Return data usage (in megabits per second) over time for all clients in the given organization within a given time range.

Operation ID: getOrganizationClientsBandwidthUsageHistory

GET /organizations/{organizationId}/clients/bandwidthUsageHistory

- Optional param networkId added


[ networks ]

settings

Docs

Update the settings for a network

Operation ID: updateNetworkSettings

PUT /networks/{networkId}/settings

- Optional property fips Added


firmwareUpgrades

Docs

Rollback a Firmware Upgrade For A Network

Operation ID: createNetworkFirmwareUpgradesRollback

POST /networks/{networkId}/firmwareUpgrades/rollbacks

- Optional property predownloadFirmware Added

- Optional property predownloadFirmware Added


Docs

Update firmware upgrade information for a network

Operation ID: updateNetworkFirmwareUpgrades

PUT /networks/{networkId}/firmwareUpgrades

- Optional property upgradeStrategy Added

- Optional property predownloadFirmware Added

- Optional property upgradeStrategy Added

- Optional property predownloadFirmware Added


Docs

Get firmware upgrade information for a network

Operation ID: getNetworkFirmwareUpgrades

GET /networks/{networkId}/firmwareUpgrades

- Optional property upgradeStrategy Added

- Optional property predownloadFirmware Added

- Response property upgradeStrategy value added

- Response property predownloadFirmware value added


[ wireless ]

rfProfiles

Docs

Creates new RF profile for this network

Operation ID: createNetworkWirelessRfProfile

POST /networks/{networkId}/wireless/rfProfiles

- Optional property afcEnabled Added

- Optional property afcEnabled Added


Docs

Updates specified RF profile for this network

Operation ID: updateNetworkWirelessRfProfile

PUT /networks/{networkId}/wireless/rfProfiles/{rfProfileId}

- Optional property afcEnabled Added

- Optional property afcEnabled Added


Docs

List RF profiles for this network

Operation ID: getNetworkWirelessRfProfiles

GET /networks/{networkId}/wireless/rfProfiles

- Optional property afcEnabled Added

- Response property afcEnabled value added


Docs

Return a RF profile

Operation ID: getNetworkWirelessRfProfile

GET /networks/{networkId}/wireless/rfProfiles/{rfProfileId}

- Optional property afcEnabled Added

- Response property afcEnabled value added


settings

Docs

Update the wireless settings for a network

Operation ID: updateNetworkWirelessSettings

PUT /networks/{networkId}/wireless/settings

- Optional property predownloadFirmware Added

- Optional property predownloadFirmware Added


Docs

Return the wireless settings for a network

Operation ID: getNetworkWirelessSettings

GET /networks/{networkId}/wireless/settings

- Optional property predownloadFirmware Added

- Response property predownloadFirmware value added


bluetooth

Docs

Update the bluetooth settings for a wireless device

Operation ID: updateDeviceWirelessBluetoothSettings

PUT /devices/{serial}/wireless/bluetooth/settings

- Optional property transmit Added

- Optional property transmit Added


Docs

Update the Bluetooth settings for a network

Operation ID: updateNetworkWirelessBluetoothSettings

PUT /networks/{networkId}/wireless/bluetooth/settings

- Optional property transmit Added

- Optional property transmit Added


Docs

Return the bluetooth settings for a wireless device

Operation ID: getDeviceWirelessBluetoothSettings

GET /devices/{serial}/wireless/bluetooth/settings

- Optional property transmit Added

- Response property transmit value added


Docs

Return the Bluetooth settings for a network. Bluetooth settings must be enabled on the network.

Operation ID: getNetworkWirelessBluetoothSettings

GET /networks/{networkId}/wireless/bluetooth/settings

- Optional property transmit Added

- Response property transmit value added


[ switch ]

stacks

Docs

Create a layer 3 interface for a switch stack

Operation ID: createNetworkSwitchStackRoutingInterface

POST /networks/{networkId}/switch/stacks/{switchStackId}/routing/interfaces

- Optional property staticV6Dns1 Added

- Optional property staticV6Dns2 Added

- Optional property candidateUplink Added

- Optional property uplinkV4 Added

- Optional property candidateUplinkV4 Added

- Optional property uplinkV6 Added

- Optional property staticV4Dns1 Added

- Optional property staticV4Dns2 Added

- Optional property staticV6Dns1 Added

- Optional property staticV6Dns2 Added

- Optional property candidateUplink Added

- Optional property candidateUplinkV4 Added

- Optional property staticV4Dns1 Added

- Optional property staticV4Dns2 Added


Docs

Update a layer 3 interface for a switch stack

Operation ID: updateNetworkSwitchStackRoutingInterface

PUT /networks/{networkId}/switch/stacks/{switchStackId}/routing/interfaces/{interfaceId}

- Optional property staticV6Dns1 Added

- Optional property staticV6Dns2 Added

- Optional property candidateUplink Added

- Optional property uplinkV4 Added

- Optional property candidateUplinkV4 Added

- Optional property uplinkV6 Added

- Optional property staticV4Dns1 Added

- Optional property staticV4Dns2 Added

- Optional property staticV6Dns1 Added

- Optional property staticV6Dns2 Added

- Optional property candidateUplink Added

- Optional property candidateUplinkV4 Added

- Optional property staticV4Dns1 Added

- Optional property staticV4Dns2 Added


Docs

List layer 3 interfaces for a switch stack

Operation ID: getNetworkSwitchStackRoutingInterfaces

GET /networks/{networkId}/switch/stacks/{switchStackId}/routing/interfaces

- Optional property staticV6Dns1 Added

- Optional property staticV6Dns2 Added

- Optional property candidateUplink Added

- Optional property candidateUplinkV4 Added

- Optional property staticV4Dns1 Added

- Optional property staticV4Dns2 Added

- Response property staticV6Dns1 value added

- Response property staticV6Dns2 value added

- Response property candidateUplink value added

- Response property candidateUplinkV4 value added

- Response property staticV4Dns1 value added

- Response property staticV4Dns2 value added


Docs

Return a layer 3 interface from a switch stack

Operation ID: getNetworkSwitchStackRoutingInterface

GET /networks/{networkId}/switch/stacks/{switchStackId}/routing/interfaces/{interfaceId}

- Optional property staticV6Dns1 Added

- Optional property staticV6Dns2 Added

- Optional property candidateUplink Added

- Optional property candidateUplinkV4 Added

- Optional property staticV4Dns1 Added

- Optional property staticV4Dns2 Added

- Response property staticV6Dns1 value added

- Response property staticV6Dns2 value added

- Response property candidateUplink value added

- Response property candidateUplinkV4 value added

- Response property staticV4Dns1 value added

- Response property staticV4Dns2 value added


linkAggregations

Docs

Operation ID: getNetworkSwitchLinkAggregations

GET /networks/{networkId}/switch/linkAggregations

- Optional param serials added


routing

Docs

Create a layer 3 interface for a switch

Operation ID: createDeviceSwitchRoutingInterface

POST /devices/{serial}/switch/routing/interfaces

- Optional property staticV6Dns1 Added

- Optional property staticV6Dns2 Added

- Optional property candidateUplink Added

- Optional property uplinkV4 Added

- Optional property candidateUplinkV4 Added

- Optional property uplinkV6 Added

- Optional property staticV4Dns1 Added

- Optional property staticV4Dns2 Added

- Optional property staticV6Dns1 Added

- Optional property staticV6Dns2 Added

- Optional property candidateUplink Added

- Optional property candidateUplinkV4 Added

- Optional property staticV4Dns1 Added

- Optional property staticV4Dns2 Added


Docs

Create a multicast rendezvous point

Operation ID: createNetworkSwitchRoutingMulticastRendezvousPoint

POST /networks/{networkId}/switch/routing/multicast/rendezvousPoints

- Optional property vrf Added


Docs

Update a layer 3 interface for a switch

Operation ID: updateDeviceSwitchRoutingInterface

PUT /devices/{serial}/switch/routing/interfaces/{interfaceId}

- Optional property staticV6Dns1 Added

- Optional property staticV6Dns2 Added

- Optional property candidateUplink Added

- Optional property uplinkV4 Added

- Optional property candidateUplinkV4 Added

- Optional property uplinkV6 Added

- Optional property staticV4Dns1 Added

- Optional property staticV4Dns2 Added

- Optional property staticV6Dns1 Added

- Optional property staticV6Dns2 Added

- Optional property candidateUplink Added

- Optional property candidateUplinkV4 Added

- Optional property staticV4Dns1 Added

- Optional property staticV4Dns2 Added


Docs

Update a multicast rendezvous point

Operation ID: updateNetworkSwitchRoutingMulticastRendezvousPoint

PUT /networks/{networkId}/switch/routing/multicast/rendezvousPoints/{rendezvousPointId}

- Optional property vrf Added


Docs

List layer 3 interfaces for a switch

Operation ID: getDeviceSwitchRoutingInterfaces

GET /devices/{serial}/switch/routing/interfaces

- Optional property staticV6Dns1 Added

- Optional property staticV6Dns2 Added

- Optional property candidateUplink Added

- Optional property candidateUplinkV4 Added

- Optional property staticV4Dns1 Added

- Optional property staticV4Dns2 Added

- Response property staticV6Dns1 value added

- Response property staticV6Dns2 value added

- Response property candidateUplink value added

- Response property candidateUplinkV4 value added

- Response property staticV4Dns1 value added

- Response property staticV4Dns2 value added


Docs

Return a layer 3 interface for a switch

Operation ID: getDeviceSwitchRoutingInterface

GET /devices/{serial}/switch/routing/interfaces/{interfaceId}

- Optional property staticV6Dns1 Added

- Optional property staticV6Dns2 Added

- Optional property candidateUplink Added

- Optional property candidateUplinkV4 Added

- Optional property staticV4Dns1 Added

- Optional property staticV4Dns2 Added

- Response property staticV6Dns1 value added

- Response property staticV6Dns2 value added

- Response property candidateUplink value added

- Response property candidateUplinkV4 value added

- Response property staticV4Dns1 value added

- Response property staticV4Dns2 value added


Docs

List multicast rendezvous points

Operation ID: getNetworkSwitchRoutingMulticastRendezvousPoints

GET /networks/{networkId}/switch/routing/multicast/rendezvousPoints

- Optional property vrf Added

- Response property vrf value added


Docs

Return a multicast rendezvous point

Operation ID: getNetworkSwitchRoutingMulticastRendezvousPoint

GET /networks/{networkId}/switch/routing/multicast/rendezvousPoints/{rendezvousPointId}

- Optional property vrf Added

- Response property vrf value added


ports

Docs

List the switch ports for a switch

Operation ID: getDeviceSwitchPorts

GET /devices/{serial}/switch/ports

- Optional param hideDefaultPorts added


Docs

List the switchports in an organization by switch

Operation ID: getOrganizationSwitchPortsBySwitch

GET /organizations/{organizationId}/switch/ports/bySwitch

- Optional param extendedParams added

- Optional param hideDefaultPorts added


[ sensor ]

commands

Docs

Sends a command to a sensor

Operation ID: createDeviceSensorCommand

POST /devices/{serial}/sensor/commands

- Optional property arguments Added


[ appliance ]

vpn

Docs

Update a Hub BGP Configuration

Operation ID: updateNetworkApplianceVpnBgp

PUT /networks/{networkId}/appliance/vpn/bgp

- Optional property filterIn Added

- Optional property communityOut Added

- Optional property routerId Added

- Optional property filterIn Added

- Optional property communityOut Added

- Optional property routerId Added


Docs

Return a Hub BGP Configuration

Operation ID: getNetworkApplianceVpnBgp

GET /networks/{networkId}/appliance/vpn/bgp

- Optional property filterIn Added

- Optional property communityOut Added

- Optional property routerId Added

- Response property filterIn value added

- Response property communityOut value added

- Response property routerId value added


vlans

Docs

Add a VLAN

Operation ID: createNetworkApplianceVlan

POST /networks/{networkId}/appliance/vlans

- Optional property adaptivePolicyGroupId Added


Docs

Update a VLAN

Operation ID: updateNetworkApplianceVlan

PUT /networks/{networkId}/appliance/vlans/{vlanId}

- Optional property adaptivePolicyGroupId Added


ports

Docs

Update the per-port VLAN settings for a single MX port.

Operation ID: updateNetworkAppliancePort

PUT /networks/{networkId}/appliance/ports/{portId}

- Optional property peerSgtCapable Added

- Optional property adaptivePolicyGroupId Added

- Optional property peerSgtCapable Added


Docs

List per-port VLAN settings for all ports of a MX.

Operation ID: getNetworkAppliancePorts

GET /networks/{networkId}/appliance/ports

- Optional property peerSgtCapable Added

- Response property peerSgtCapable value added


Docs

Return per-port VLAN settings for a single MX port.

Operation ID: getNetworkAppliancePort

GET /networks/{networkId}/appliance/ports/{portId}

- Optional property peerSgtCapable Added

- Response property peerSgtCapable value added


Docs

Operation ID: updateDeviceApplianceUplinksSettings

PUT /devices/{serial}/appliance/uplinks/settings

- Optional property sgt Added

- Optional property sgt Added

- Optional property sgt Added


Docs

Operation ID: getDeviceApplianceUplinksSettings

GET /devices/{serial}/appliance/uplinks/settings

- Optional property sgt Added

- Optional property sgt Added

- Response property sgt value added

- Response property sgt value added