Share via


Operations - List

Lists all available Notification Hubs operations.

GET https://management.azure.com/providers/Microsoft.NotificationHubs/operations?api-version=2023-09-01

URI Parameters

Name In Required Type Description
api-version
query True

string

minLength: 1

The API version to use for this operation.

Responses

Name Type Description
200 OK

OperationListResult

Success

Other Status Codes

ErrorResponse

Error code with reason.

Security

azure_auth

Azure Active Directory OAuth2 Flow

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

Name Description
user_impersonation impersonate your user account

Examples

Operations_List

Sample request

GET https://management.azure.com/providers/Microsoft.NotificationHubs/operations?api-version=2023-09-01

Sample response

{
  "value": [
    {
      "name": "Microsoft.NotificationHubs/register/action",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "Microsoft Azure Notification Hub",
        "operation": "Registers the NotificationHubs Provider",
        "description": "Registers the subscription for the NotifciationHubs resource provider and enables the creation of Namespaces and NotificationHubs"
      }
    },
    {
      "name": "Microsoft.NotificationHubs/unregister/action",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "Microsoft Azure Notification Hub",
        "operation": "Unregisters the NotificationHubs Provider",
        "description": "Unregisters the subscription for the NotifciationHubs resource provider and enables the creation of Namespaces and NotificationHubs"
      }
    },
    {
      "name": "Microsoft.NotificationHubs/operations/read",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "Microsoft Azure Notification Hub",
        "operation": "Notification Hubs provider operations",
        "description": "Returns a list of supported operations for Notification Hubs provider"
      }
    },
    {
      "name": "Microsoft.NotificationHubs/operationResults/read",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "Microsoft Azure Notification Hub",
        "operation": "Operation results for Notification Hubs provider",
        "description": "Returns operation results for Notification Hubs provider"
      }
    },
    {
      "name": "Microsoft.NotificationHubs/namespaces/providers/Microsoft.Insights/diagnosticSettings/read",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "Namespace",
        "operation": "Read diagnostics setting",
        "description": "Get Namespace diagnostic settings"
      }
    },
    {
      "name": "Microsoft.NotificationHubs/namespaces/providers/Microsoft.Insights/diagnosticSettings/write",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "Namespace",
        "operation": "Write diagnostic settings",
        "description": "Create or Update Namespace diagnostic settings"
      }
    },
    {
      "name": "Microsoft.NotificationHubs/namespaces/providers/Microsoft.Insights/logDefinitions/read",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "The log definition of Namespace",
        "operation": "Read Namespace log definitions",
        "description": "Gets the available logs for Namespace"
      },
      "properties": {
        "serviceSpecification": {
          "logSpecifications": [
            {
              "name": "OperationalLogs",
              "displayName": "Operational Logs",
              "blobDuration": "PT1H"
            }
          ]
        }
      }
    },
    {
      "name": "Microsoft.NotificationHubs/CheckNamespaceAvailability/action",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "Namespace",
        "operation": "Check Namespace name availability.",
        "description": "Checks whether or not a given Namespace resource name is available within the NotificationHub service."
      }
    },
    {
      "name": "Microsoft.NotificationHubs/Namespaces/write",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "Namespace",
        "operation": "Create Or Update Namespace",
        "description": "Create a Namespace Resource and Update its properties. Tags and Capacity of the Namespace are the properties which can be updated."
      }
    },
    {
      "name": "Microsoft.NotificationHubs/Namespaces/read",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "Namespace",
        "operation": "Get Namespace Resource",
        "description": "Get the list of Namespace Resource Description"
      }
    },
    {
      "name": "Microsoft.NotificationHubs/Namespaces/delete",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "Namespace",
        "operation": "Delete Namespace",
        "description": "Delete Namespace Resource"
      }
    },
    {
      "name": "Microsoft.NotificationHubs/Namespaces/authorizationRules/write",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "Namespace Authorization Rule",
        "operation": "Create or Update Namespace Authorization Rules",
        "description": "Create a Namespace level Authorization Rules and update its properties. The Authorization Rules Access Rights, the Primary and Secondary Keys can be updated."
      }
    },
    {
      "name": "Microsoft.NotificationHubs/Namespaces/authorizationRules/action",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "Namespace Authorization Rule",
        "operation": "Get Namespace Authorization Rules",
        "description": "Get the list of Namespaces Authorization Rules description."
      }
    },
    {
      "name": "Microsoft.NotificationHubs/Namespaces/authorizationRules/read",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "Namespace Authorization Rule",
        "operation": "Get Namespace Authorization Rules",
        "description": "Get the list of Namespaces Authorization Rules description."
      }
    },
    {
      "name": "Microsoft.NotificationHubs/Namespaces/authorizationRules/delete",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "Namespace Authorization Rule",
        "operation": "Delete Namespace Authorization Rule",
        "description": "Delete Namespace Authorization Rule. The Default Namespace Authorization Rule cannot be deleted."
      }
    },
    {
      "name": "Microsoft.NotificationHubs/Namespaces/authorizationRules/listkeys/action",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "Namespace Authorization Rule",
        "operation": "Get Namespace Listkeys",
        "description": "Get the Connection String to the Namespace"
      }
    },
    {
      "name": "Microsoft.NotificationHubs/Namespaces/authorizationRules/regenerateKeys/action",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "Namespace Authorization Rule",
        "operation": "Namespace Authorization Rule Regenerate Keys",
        "description": "Namespace Authorization Rule Regenerate Primary/SecondaryKey, Specify the Key that needs to be regenerated"
      }
    },
    {
      "name": "Microsoft.NotificationHubs/Namespaces/CheckNotificationHubAvailability/action",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "Namespace",
        "operation": "Check NotificationHub name availability.",
        "description": "Checks whether or not a given NotificationHub name is available inside a Namespace."
      }
    },
    {
      "name": "Microsoft.NotificationHubs/Namespaces/NotificationHubs/write",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "NotificationHub",
        "operation": "Create or Update Notification Hub",
        "description": "Create a Notification Hub and Update its properties. Its properties mainly include PNS Credentials. Authorization Rules and TTL"
      }
    },
    {
      "name": "Microsoft.NotificationHubs/Namespaces/NotificationHubs/vapidkeys/read",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "NotificationHub",
        "operation": "Get VAPID keys for a Notification Hub",
        "description": "Get new pair of VAPID keys for a Notification Hub"
      }
    },
    {
      "name": "Microsoft.NotificationHubs/Namespaces/NotificationHubs/read",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "NotificationHub",
        "operation": "Get Notification Hub",
        "description": "Get list of Notification Hub Resource Descriptions"
      }
    },
    {
      "name": "Microsoft.NotificationHubs/Namespaces/NotificationHubs/delete",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "NotificationHub",
        "operation": "Delete Notification Hub",
        "description": "Delete Notification Hub Resource"
      }
    },
    {
      "name": "Microsoft.NotificationHubs/Namespaces/NotificationHubs/authorizationRules/write",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "NotificationHub Authorization Rule",
        "operation": "Create or Update Notification hub Authorization Rule",
        "description": "Create Notification Hub Authorization Rules and Update its properties. The Authorization Rules Access Rights, the Primary and Secondary Keys can be updated."
      }
    },
    {
      "name": "Microsoft.NotificationHubs/Namespaces/NotificationHubs/authorizationRules/action",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "NotificationHub Authorization Rule",
        "operation": "Get Notification Hub Authorization Rules",
        "description": "Get the list of Notification Hub Authorization Rules"
      }
    },
    {
      "name": "Microsoft.NotificationHubs/Namespaces/NotificationHubs/authorizationRules/read",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "NotificationHub Authorization Rule",
        "operation": "Get Notification Hub Authorization Rules",
        "description": "Get the list of Notification Hub Authorization Rules"
      }
    },
    {
      "name": "Microsoft.NotificationHubs/Namespaces/NotificationHubs/authorizationRules/delete",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "NotificationHub Authorization Rule",
        "operation": "Delete Notification Hub Authorization Rules",
        "description": "Delete Notification Hub Authorization Rules"
      }
    },
    {
      "name": "Microsoft.NotificationHubs/Namespaces/NotificationHubs/authorizationRules/listkeys/action",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "NotificationHub Authorization Rule",
        "operation": "Get Notification Hub Listkeys",
        "description": "Get the Connection String to the Notification Hub"
      }
    },
    {
      "name": "Microsoft.NotificationHubs/Namespaces/NotificationHubs/authorizationRules/regenerateKeys/action",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "NotificationHub Authorization Rule",
        "operation": "Notification Hub Authorization Rule Regenerate Keys",
        "description": "Notification Hub Authorization Rule Regenerate Primary/SecondaryKey, Specify the Key that needs to be regenerated"
      }
    },
    {
      "name": "Microsoft.NotificationHubs/Namespaces/NotificationHubs/pnsCredentials/action",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "NotificationHub PnsCredential",
        "operation": "Get Notification Hub PNS Credentials",
        "description": "Get All Notification Hub PNS Credentials. This includes, WNS, MPNS, APNS, GCM and Baidu credentials"
      }
    },
    {
      "name": "Microsoft.NotificationHubs/Namespaces/NotificationHubs/debugSend/action",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "NotificationHub",
        "operation": "Send a test push notification.",
        "description": "Send a test push notification to 10 matched devices."
      }
    },
    {
      "name": "Microsoft.NotificationHubs/Namespaces/NotificationHubs/metricDefinitions/read",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "Namespace metrics",
        "operation": "Get Namespace metrics",
        "description": "Get list of Namespace metrics Resource Descriptions"
      },
      "properties": {
        "serviceSpecification": {
          "metricSpecifications": [
            {
              "name": "registration.all",
              "displayName": "Registration Operations",
              "displayDescription": "The count of all successful registration operations (creations updates queries and deletions). ",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "registration.create",
              "displayName": "Registration Create Operations",
              "displayDescription": "The count of all successful registration creations.",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "registration.update",
              "displayName": "Registration Update Operations",
              "displayDescription": "The count of all successful registration updates.",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "registration.get",
              "displayName": "Registration Read Operations",
              "displayDescription": "The count of all successful registration queries.",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "registration.delete",
              "displayName": "Registration Delete Operations",
              "displayDescription": "The count of all successful registration deletions.",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "incoming",
              "displayName": "Incoming Messages",
              "displayDescription": "The count of all successful send API calls. ",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "incoming.scheduled",
              "displayName": "Scheduled Push Notifications Sent",
              "displayDescription": "Scheduled Push Notifications Sent",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "incoming.scheduled.cancel",
              "displayName": "Scheduled Push Notifications Cancelled",
              "displayDescription": "Scheduled Push Notifications Cancelled",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "scheduled.pending",
              "displayName": "Pending Scheduled Notifications",
              "displayDescription": "Pending Scheduled Notifications",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "installation.all",
              "displayName": "Installation Management Operations",
              "displayDescription": "Installation Management Operations",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "installation.get",
              "displayName": "Get Installation Operations",
              "displayDescription": "Get Installation Operations",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "installation.upsert",
              "displayName": "Create or Update Installation Operations",
              "displayDescription": "Create or Update Installation Operations",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "installation.patch",
              "displayName": "Patch Installation Operations",
              "displayDescription": "Patch Installation Operations",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "installation.delete",
              "displayName": "Delete Installation Operations",
              "displayDescription": "Delete Installation Operations",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.allpns.success",
              "displayName": "Successful notifications",
              "displayDescription": "The count of all successful notifications.",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.allpns.invalidpayload",
              "displayName": "Payload Errors",
              "displayDescription": "The count of pushes that failed because the PNS returned a bad payload error.",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.allpns.pnserror",
              "displayName": "External Notification System Errors",
              "displayDescription": "The count of pushes that failed because there was a problem communicating with the PNS (excludes authentication problems).",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.allpns.channelerror",
              "displayName": "Channel Errors",
              "displayDescription": "The count of pushes that failed because the channel was invalid not associated with the correct app throttled or expired.",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.allpns.badorexpiredchannel",
              "displayName": "Bad or Expired Channel Errors",
              "displayDescription": "The count of pushes that failed because the channel/token/registrationId in the registration was expired or invalid.",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.wns.success",
              "displayName": "WNS Successful Notifications",
              "displayDescription": "The count of all successful notifications.",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.wns.invalidcredentials",
              "displayName": "WNS Authorization Errors (Invalid Credentials)",
              "displayDescription": "The count of pushes that failed because the PNS did not accept the provided credentials or the credentials are blocked. (Windows Live does not recognize the credentials).",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.wns.badchannel",
              "displayName": "WNS Bad Channel Error",
              "displayDescription": "The count of pushes that failed because the ChannelURI in the registration was not recognized (WNS status: 404 not found).",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.wns.expiredchannel",
              "displayName": "WNS Expired Channel Error",
              "displayDescription": "The count of pushes that failed because the ChannelURI is expired (WNS status: 410 Gone).",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.wns.throttled",
              "displayName": "WNS Throttled Notifications",
              "displayDescription": "The count of pushes that failed because WNS is throttling this app (WNS status: 406 Not Acceptable).",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.wns.tokenproviderunreachable",
              "displayName": "WNS Authorization Errors (Unreachable)",
              "displayDescription": "Windows Live is not reachable.",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.wns.invalidtoken",
              "displayName": "WNS Authorization Errors (Invalid Token)",
              "displayDescription": "The token provided to WNS is not valid (WNS status: 401 Unauthorized).",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.wns.wrongtoken",
              "displayName": "WNS Authorization Errors (Wrong Token)",
              "displayDescription": "The token provided to WNS is valid but for another application (WNS status: 403 Forbidden). This can happen if the ChannelURI in the registration is associated with another app. Check that the client app is associated with the same app whose credentials are in the notification hub.",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.wns.invalidnotificationformat",
              "displayName": "WNS Invalid Notification Format",
              "displayDescription": "The format of the notification is invalid (WNS status: 400). Note that WNS does not reject all invalid payloads.",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.wns.invalidnotificationsize",
              "displayName": "WNS Invalid Notification Size Error",
              "displayDescription": "The notification payload is too large (WNS status: 413).",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.wns.channelthrottled",
              "displayName": "WNS Channel Throttled",
              "displayDescription": "The notification was dropped because the ChannelURI in the registration is throttled (WNS response header: X-WNS-NotificationStatus:channelThrottled).",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.wns.channeldisconnected",
              "displayName": "WNS Channel Disconnected",
              "displayDescription": "The notification was dropped because the ChannelURI in the registration is throttled (WNS response header: X-WNS-DeviceConnectionStatus: disconnected).",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.wns.dropped",
              "displayName": "WNS Dropped Notifications",
              "displayDescription": "The notification was dropped because the ChannelURI in the registration is throttled (X-WNS-NotificationStatus: dropped but not X-WNS-DeviceConnectionStatus: disconnected).",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.wns.pnserror",
              "displayName": "WNS Errors",
              "displayDescription": "Notification not delivered because of errors communicating with WNS.",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.wns.authenticationerror",
              "displayName": "WNS Authentication Errors",
              "displayDescription": "Notification not delivered because of errors communicating with Windows Live invalid credentials or wrong token.",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.apns.success",
              "displayName": "APNS Successful Notifications",
              "displayDescription": "The count of all successful notifications.",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.apns.invalidcredentials",
              "displayName": "APNS Authorization Errors",
              "displayDescription": "The count of pushes that failed because the PNS did not accept the provided credentials or the credentials are blocked.",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.apns.badchannel",
              "displayName": "APNS Bad Channel Error",
              "displayDescription": "The count of pushes that failed because the token is invalid (APNS status code: 8).",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.apns.expiredchannel",
              "displayName": "APNS Expired Channel Error",
              "displayDescription": "The count of token that were invalidated by the APNS feedback channel.",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.apns.invalidnotificationsize",
              "displayName": "APNS Invalid Notification Size Error",
              "displayDescription": "The count of pushes that failed because the payload was too large (APNS status code: 7).",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.apns.pnserror",
              "displayName": "APNS Errors",
              "displayDescription": "The count of pushes that failed because of errors communicating with APNS.",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.gcm.success",
              "displayName": "GCM Successful Notifications",
              "displayDescription": "The count of all successful notifications.",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.gcm.invalidcredentials",
              "displayName": "GCM Authorization Errors (Invalid Credentials)",
              "displayDescription": "The count of pushes that failed because the PNS did not accept the provided credentials or the credentials are blocked.",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.gcm.badchannel",
              "displayName": "GCM Bad Channel Error",
              "displayDescription": "The count of pushes that failed because the registrationId in the registration was not recognized (GCM result: Invalid Registration).",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.gcm.expiredchannel",
              "displayName": "GCM Expired Channel Error",
              "displayDescription": "The count of pushes that failed because the registrationId in the registration was expired (GCM result: NotRegistered).",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.gcm.throttled",
              "displayName": "GCM Throttled Notifications",
              "displayDescription": "The count of pushes that failed because GCM throttled this app (GCM status code: 501-599 or result:Unavailable).",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.gcm.invalidnotificationformat",
              "displayName": "GCM Invalid Notification Format",
              "displayDescription": "The count of pushes that failed because the payload was not formatted correctly (GCM result: InvalidDataKey or InvalidTtl).",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.gcm.invalidnotificationsize",
              "displayName": "GCM Invalid Notification Size Error",
              "displayDescription": "The count of pushes that failed because the payload was too large (GCM result: MessageTooBig).",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.gcm.wrongchannel",
              "displayName": "GCM Wrong Channel Error",
              "displayDescription": "The count of pushes that failed because the registrationId in the registration is not associated to the current app (GCM result: InvalidPackageName).",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.gcm.pnserror",
              "displayName": "GCM Errors",
              "displayDescription": "The count of pushes that failed because of errors communicating with GCM.",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.gcm.authenticationerror",
              "displayName": "GCM Authentication Errors",
              "displayDescription": "The count of pushes that failed because the PNS did not accept the provided credentials the credentials are blocked or the SenderId is not correctly configured in the app (GCM result: MismatchedSenderId).",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.mpns.success",
              "displayName": "MPNS Successful Notifications",
              "displayDescription": "The count of all successful notifications.",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.mpns.invalidcredentials",
              "displayName": "MPNS Invalid Credentials",
              "displayDescription": "The count of pushes that failed because the PNS did not accept the provided credentials or the credentials are blocked.",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.mpns.badchannel",
              "displayName": "MPNS Bad Channel Error",
              "displayDescription": "The count of pushes that failed because the ChannelURI in the registration was not recognized (MPNS status: 404 not found).",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.mpns.throttled",
              "displayName": "MPNS Throttled Notifications",
              "displayDescription": "The count of pushes that failed because MPNS is throttling this app (WNS MPNS: 406 Not Acceptable).",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.mpns.invalidnotificationformat",
              "displayName": "MPNS Invalid Notification Format",
              "displayDescription": "The count of pushes that failed because the payload of the notification was too large.",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.mpns.channeldisconnected",
              "displayName": "MPNS Channel Disconnected",
              "displayDescription": "The count of pushes that failed because the ChannelURI in the registration was disconnected (MPNS status: 412 not found).",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.mpns.dropped",
              "displayName": "MPNS Dropped Notifications",
              "displayDescription": "The count of pushes that were dropped by MPNS (MPNS response header: X-NotificationStatus: QueueFull or Suppressed).",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.mpns.pnserror",
              "displayName": "MPNS Errors",
              "displayDescription": "The count of pushes that failed because of errors communicating with MPNS.",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "outgoing.mpns.authenticationerror",
              "displayName": "MPNS Authentication Errors",
              "displayDescription": "The count of pushes that failed because the PNS did not accept the provided credentials or the credentials are blocked.",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "notificationhub.pushes",
              "displayName": "All Outgoing Notifications",
              "displayDescription": "All outgoing notifications of the notification hub",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "incoming.all.requests",
              "displayName": "All Incoming Requests",
              "displayDescription": "Total incoming requests for a notification hub",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            },
            {
              "name": "incoming.all.failedrequests",
              "displayName": "All Incoming Failed Requests",
              "displayDescription": "Total incoming failed requests for a notification hub",
              "unit": "Count",
              "aggregationType": "Total",
              "availabilities": [
                {
                  "timeGrain": "PT1M",
                  "blobDuration": "P30D"
                }
              ],
              "fillGapWithZero": true
            }
          ]
        }
      }
    },
    {
      "name": "Microsoft.NotificationHubs/namespaces/privateEndpointConnectionsApproval/action",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "Namespace",
        "operation": "Approve Private Endpoint Connection",
        "description": "Approve Private Endpoint Connection"
      }
    },
    {
      "name": "Microsoft.NotificationHubs/namespaces/privateEndpointConnectionProxies/validate/action",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "Private Endpoint Connection Proxy",
        "operation": "Validate Private Endpoint Connection Proxy",
        "description": "Validate Private Endpoint Connection Proxy"
      }
    },
    {
      "name": "Microsoft.NotificationHubs/namespaces/privateEndpointConnectionProxies/read",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "Private Endpoint Connection Proxy",
        "operation": "Get Private Endpoint Connection Proxy",
        "description": "Get Private Endpoint Connection Proxy"
      }
    },
    {
      "name": "Microsoft.NotificationHubs/namespaces/privateEndpointConnectionProxies/write",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "Private Endpoint Connection Proxy",
        "operation": "Create Private Endpoint Connection Proxy",
        "description": "Create Private Endpoint Connection Proxy"
      }
    },
    {
      "name": "Microsoft.NotificationHubs/namespaces/privateEndpointConnectionProxies/delete",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "Private Endpoint Connection Proxy",
        "operation": "Delete Private Endpoint Connection Proxy",
        "description": "Delete Private Endpoint Connection Proxy"
      }
    },
    {
      "name": "Microsoft.NotificationHubs/namespaces/privateEndpointConnectionProxies/operationstatus/read",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "Private Endpoint Connection Proxy",
        "operation": "Private endpoint operation status",
        "description": "Get the status of an asynchronous private endpoint operation"
      }
    },
    {
      "name": "Microsoft.NotificationHubs/namespaces/privateEndpointConnections/read",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "Private Endpoint Connection",
        "operation": "Get Private Endpoint Connection",
        "description": "Get Private Endpoint Connection"
      }
    },
    {
      "name": "Microsoft.NotificationHubs/namespaces/privateEndpointConnections/write",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "Private Endpoint Connection",
        "operation": "Create or Update Private Endpoint Connection",
        "description": "Create or Update Private Endpoint Connection"
      }
    },
    {
      "name": "Microsoft.NotificationHubs/namespaces/privateEndpointConnections/delete",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "Private Endpoint Connection",
        "operation": "Removes Private Endpoint Connection",
        "description": "Removes Private Endpoint Connection"
      }
    },
    {
      "name": "Microsoft.NotificationHubs/namespaces/privateEndpointConnections/operationstatus/read",
      "display": {
        "provider": "Microsoft Azure Notification Hub",
        "resource": "Private Endpoint Connection",
        "operation": "Removes Private Endpoint Connection",
        "description": "Removes Private Endpoint Connection"
      }
    }
  ]
}

Definitions

Name Description
Availability

Represents metric availability (part of RP operation descriptions).

ErrorAdditionalInfo

The resource management error additional info.

ErrorDetail

The error detail.

ErrorResponse

Error response

LogSpecification

A single log category specification.

MetricSpecification

A metric specification.

Operation

A NotificationHubs REST API operation

OperationDisplay

The object that represents the operation.

OperationListResult

Result of the request to list NotificationHubs operations. It contains a list of operations and a URL link to get the next set of results.

OperationProperties

Optional operation properties.

ServiceSpecification

Optional service specification used in Operations API.

Availability

Represents metric availability (part of RP operation descriptions).

Name Type Description
blobDuration

string

Duration of the availability blob.

timeGrain

string

Time grain of the availability.

ErrorAdditionalInfo

The resource management error additional info.

Name Type Description
info

object

The additional info.

type

string

The additional info type.

ErrorDetail

The error detail.

Name Type Description
additionalInfo

ErrorAdditionalInfo[]

The error additional info.

code

string

The error code.

details

ErrorDetail[]

The error details.

message

string

The error message.

target

string

The error target.

ErrorResponse

Error response

Name Type Description
error

ErrorDetail

The error object.

LogSpecification

A single log category specification.

Name Type Description
blobDuration

string

Duration of data written to a single blob.

displayName

string

Display name of the log category.

name

string

Name of the log category.

MetricSpecification

A metric specification.

Name Type Description
aggregationType

string

Type of the aggregation (Average, Minimum, Maximum, Total or Count).

availabilities

Availability[]

List of availabilities.

displayDescription

string

Description of the metric.

displayName

string

User-visible metric name.

fillGapWithZero

boolean

Optional property. If set to true, then zero will be returned for time duration where no metric is emitted / published.

metricFilterPattern

string

The matching regex pattern to be applied to the field pointed by the "metricsFilterPathSelector" flag in the ARM manifest.

name

string

Metric name / id.

unit

string

Metric unit.

Operation

A NotificationHubs REST API operation

Name Type Description
display

OperationDisplay

The object that represents the operation.

isDataAction

boolean

Gets or sets IsDataAction property. It is used to differentiate management and data plane operations.

name

string

Gets operation name: {provider}/{resource}/{operation}

properties

OperationProperties

Optional operation properties.

OperationDisplay

The object that represents the operation.

Name Type Description
description

string

Human-friendly operation description.

operation

string

Gets operation type: Read, write, delete, etc.

provider

string

Gets service provider: Microsoft.NotificationHubs

resource

string

Gets resource on which the operation is performed: Invoice, etc.

OperationListResult

Result of the request to list NotificationHubs operations. It contains a list of operations and a URL link to get the next set of results.

Name Type Description
nextLink

string

Gets URL to get the next set of operation list results if there are any.

value

Operation[]

Gets list of NotificationHubs operations supported by the Microsoft.NotificationHubs resource provider.

OperationProperties

Optional operation properties.

Name Type Description
serviceSpecification

ServiceSpecification

Optional service specification used in Operations API.

ServiceSpecification

Optional service specification used in Operations API.

Name Type Description
logSpecifications

LogSpecification[]

Log specifications.

metricSpecifications

MetricSpecification[]

Metric specification.