{
  "openapi": "3.0.0",
  "info": {
    "description": "Use these REST APIs for performing operations on who is going to receive notifications associated with your Azure API Management deployment.",
    "title": "ApiManagementClient",
    "version": "2018-06-01-preview",
    "x-jentic-source-url": "https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/apimnotifications.json"
  },
  "servers": [
    {
      "url": "https://management.azure.com/"
    }
  ],
  "paths": {
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications": {
      "get": {
        "parameters": [
          {
            "$ref": "./apimanagement.json#/components/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/ServiceNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/TopQueryParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/SkipQueryParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/ApiVersionParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "./definitions.json#/definitions/NotificationCollection"
                }
              }
            },
            "description": "A Collection of the Notification for the specified API Management service instance."
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "./apimanagement.json#/definitions/ErrorResponse"
                }
              }
            },
            "description": "Error response describing why the operation failed."
          }
        },
        "tags": [
          "Notification"
        ],
        "description": "Lists a collection of properties defined within a service instance.",
        "operationId": "Notification_ListByService",
        "x-ms-examples": {
          "ApiManagementListNotifications": {
            "$ref": "./examples/ApiManagementListNotifications.json"
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications/{notificationName}": {
      "get": {
        "parameters": [
          {
            "$ref": "./apimanagement.json#/components/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/ServiceNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/NotificationNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/ApiVersionParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "./definitions.json#/definitions/NotificationContract"
                }
              }
            },
            "description": "The response body contains the specified Notification."
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "./apimanagement.json#/definitions/ErrorResponse"
                }
              }
            },
            "description": "Error response describing why the operation failed."
          }
        },
        "tags": [
          "Notification"
        ],
        "description": "Gets the details of the Notification specified by its identifier.",
        "operationId": "Notification_Get",
        "x-ms-examples": {
          "ApiManagementGetNotification": {
            "$ref": "./examples/ApiManagementGetNotification.json"
          }
        }
      },
      "put": {
        "parameters": [
          {
            "$ref": "./apimanagement.json#/components/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/ServiceNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/NotificationNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/IfMatchOptionalParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/ApiVersionParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "./definitions.json#/definitions/NotificationContract"
                }
              }
            },
            "description": "Notification was successfully updated."
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "./apimanagement.json#/definitions/ErrorResponse"
                }
              }
            },
            "description": "Error response describing why the operation failed."
          }
        },
        "tags": [
          "Notification"
        ],
        "description": "Create or Update API Management publisher notification.",
        "operationId": "Notification_CreateOrUpdate",
        "x-ms-examples": {
          "ApiManagementCreateNotification": {
            "$ref": "./examples/ApiManagementCreateNotification.json"
          }
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications/{notificationName}/recipientEmails": {
      "get": {
        "parameters": [
          {
            "$ref": "./apimanagement.json#/components/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/ServiceNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/NotificationNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/ApiVersionParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "./definitions.json#/definitions/RecipientEmailCollection"
                }
              }
            },
            "description": "The response body contains the Recipient Email collection subscribed to the notification."
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "./apimanagement.json#/definitions/ErrorResponse"
                }
              }
            },
            "description": "Error response describing why the operation failed."
          }
        },
        "tags": [
          "NotificationRecipientEmail"
        ],
        "description": "Gets the list of the Notification Recipient Emails subscribed to a notification.",
        "operationId": "NotificationRecipientEmail_ListByNotification",
        "x-ms-examples": {
          "ApiManagementListNotificationRecipientEmails": {
            "$ref": "./examples/ApiManagementListNotificationRecipientEmails.json"
          }
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications/{notificationName}/recipientEmails/{email}": {
      "delete": {
        "parameters": [
          {
            "$ref": "./apimanagement.json#/components/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/ServiceNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/NotificationNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/EmailParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/ApiVersionParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "Recipient Email was successfully removed to the notification list."
          },
          "204": {
            "description": "Recipient Email was successfully removed to the notification list."
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "./apimanagement.json#/definitions/ErrorResponse"
                }
              }
            },
            "description": "Error response describing why the operation failed."
          }
        },
        "tags": [
          "NotificationRecipientEmail"
        ],
        "description": "Removes the email from the list of Notification.",
        "operationId": "NotificationRecipientEmail_Delete",
        "x-ms-examples": {
          "ApiManagementDeleteNotificationRecipientEmail": {
            "$ref": "./examples/ApiManagementDeleteNotificationRecipientEmail.json"
          }
        }
      },
      "head": {
        "parameters": [
          {
            "$ref": "./apimanagement.json#/components/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/ServiceNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/NotificationNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/EmailParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/ApiVersionParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "204": {
            "description": "The Users is subscribed to receive the notification."
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "./apimanagement.json#/definitions/ErrorResponse"
                }
              }
            },
            "description": "Error response describing why the operation failed."
          }
        },
        "tags": [
          "NotificationRecipientEmail"
        ],
        "description": "Determine if Notification Recipient Email subscribed to the notification.",
        "operationId": "NotificationRecipientEmail_CheckEntityExists",
        "x-ms-examples": {
          "ApiManagementHeadNotificationRecipientEmail": {
            "$ref": "./examples/ApiManagementHeadNotificationRecipientEmail.json"
          }
        }
      },
      "put": {
        "parameters": [
          {
            "$ref": "./apimanagement.json#/components/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/ServiceNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/NotificationNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/EmailParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/ApiVersionParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "./definitions.json#/definitions/RecipientEmailContract"
                }
              }
            },
            "description": "Recipient Email is already part of the notification list."
          },
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "./definitions.json#/definitions/RecipientEmailContract"
                }
              }
            },
            "description": "Recipient Email was successfully added to the notification list."
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "./apimanagement.json#/definitions/ErrorResponse"
                }
              }
            },
            "description": "Error response describing why the operation failed."
          }
        },
        "tags": [
          "NotificationRecipientEmail"
        ],
        "description": "Adds the Email address to the list of Recipients for the Notification.",
        "operationId": "NotificationRecipientEmail_CreateOrUpdate",
        "x-ms-examples": {
          "ApiManagementCreateNotificationRecipientEmail": {
            "$ref": "./examples/ApiManagementCreateNotificationRecipientEmail.json"
          }
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications/{notificationName}/recipientUsers": {
      "get": {
        "parameters": [
          {
            "$ref": "./apimanagement.json#/components/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/ServiceNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/NotificationNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/ApiVersionParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "./definitions.json#/definitions/RecipientUserCollection"
                }
              }
            },
            "description": "The response body contains the Recipient User collection for the notification."
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "./apimanagement.json#/definitions/ErrorResponse"
                }
              }
            },
            "description": "Error response describing why the operation failed."
          }
        },
        "tags": [
          "NotificationRecipientUser"
        ],
        "description": "Gets the list of the Notification Recipient User subscribed to the notification.",
        "operationId": "NotificationRecipientUser_ListByNotification",
        "x-ms-examples": {
          "ApiManagementListNotificationRecipientUsers": {
            "$ref": "./examples/ApiManagementListNotificationRecipientUsers.json"
          }
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications/{notificationName}/recipientUsers/{userId}": {
      "delete": {
        "parameters": [
          {
            "$ref": "./apimanagement.json#/components/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/ServiceNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/NotificationNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/UserIdParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/ApiVersionParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "Recipient User was successfully removed from the notification list."
          },
          "204": {
            "description": "Recipient User was successfully removed from the notification list."
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "./apimanagement.json#/definitions/ErrorResponse"
                }
              }
            },
            "description": "Error response describing why the operation failed."
          }
        },
        "tags": [
          "NotificationRecipientUser"
        ],
        "description": "Removes the API Management user from the list of Notification.",
        "operationId": "NotificationRecipientUser_Delete",
        "x-ms-examples": {
          "ApiManagementDeleteNotificationRecipientUser": {
            "$ref": "./examples/ApiManagementDeleteNotificationRecipientUser.json"
          }
        }
      },
      "head": {
        "parameters": [
          {
            "$ref": "./apimanagement.json#/components/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/ServiceNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/NotificationNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/UserIdParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/ApiVersionParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "204": {
            "description": "The User is subscribed to receive the notification."
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "./apimanagement.json#/definitions/ErrorResponse"
                }
              }
            },
            "description": "Error response describing why the operation failed."
          }
        },
        "tags": [
          "NotificationRecipientUser"
        ],
        "description": "Determine if the Notification Recipient User is subscribed to the notification.",
        "operationId": "NotificationRecipientUser_CheckEntityExists",
        "x-ms-examples": {
          "ApiManagementHeadNotificationRecipientUser": {
            "$ref": "./examples/ApiManagementHeadNotificationRecipientUser.json"
          }
        }
      },
      "put": {
        "parameters": [
          {
            "$ref": "./apimanagement.json#/components/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/ServiceNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/NotificationNameParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/UserIdParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/ApiVersionParameter"
          },
          {
            "$ref": "./apimanagement.json#/components/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "./definitions.json#/definitions/RecipientUserContract"
                }
              }
            },
            "description": "Recipient User is already part of the notification list."
          },
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "./definitions.json#/definitions/RecipientUserContract"
                }
              }
            },
            "description": "Recipient User was successfully added to the notification list."
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "./apimanagement.json#/definitions/ErrorResponse"
                }
              }
            },
            "description": "Error response describing why the operation failed."
          }
        },
        "tags": [
          "NotificationRecipientUser"
        ],
        "description": "Adds the API Management User to the list of Recipients for the Notification.",
        "operationId": "NotificationRecipientUser_CreateOrUpdate",
        "x-ms-examples": {
          "ApiManagementCreateNotificationRecipientUser": {
            "$ref": "./examples/ApiManagementCreateNotificationRecipientUser.json"
          }
        }
      }
    }
  },
  "components": {
    "securitySchemes": {
      "azure_auth": {
        "description": "Azure Active Directory OAuth2 Flow.",
        "flows": {
          "implicit": {
            "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
            "scopes": {
              "user_impersonation": "impersonate your user account"
            }
          }
        },
        "type": "oauth2"
      }
    }
  },
  "security": [
    {
      "azure_auth": [
        "user_impersonation"
      ]
    }
  ]
}