swagger: "2.0"
schemes:
  - https
host: management.azure.com
info:
  title: AzureStack Azure Bridge Client
  version: 2017-06-01
  x-apisguru-categories:
    - cloud
  x-logo:
    url: https://api.apis.guru/v2/cache/logo/https_assets.onestore.ms_cdnfiles_onestorerolling-1606-01000_shell_v3_images_logo_microsoft.png
  x-origin:
    - format: swagger
      url: https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/specification/azurestack/resource-manager/Microsoft.AzureStack/stable/2017-06-01/CustomerSubscription.json
      version: "2.0"
  x-providerName: azure.com
  x-serviceName: azurestack-CustomerSubscription
  x-tags:
    - Azure
    - Microsoft
consumes:
  - application/json
produces:
  - application/json
securityDefinitions:
  azure_auth:
    authorizationUrl: https://login.microsoftonline.com/common/oauth2/authorize
    description: Authorization uses an Azure Active Directory OAuth2 flow.
    flow: implicit
    scopes:
      user_impersonation: impersonate your user account
    type: oauth2
security:
  - azure_auth:
      - user_impersonation
parameters:
  CustomerSubscriptionNameParameter:
    description: Name of the product.
    in: path
    name: customerSubscriptionName
    required: true
    type: string
    x-ms-parameter-location: method
  CustomerSubscriptionParameter:
    description: Parameters use to create a customer subscription.
    in: body
    name: customerCreationParameters
    required: true
    schema:
      $ref: "#/definitions/CustomerSubscription"
    x-ms-parameter-location: method
paths:
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.AzureStack/registrations/{registrationName}/customerSubscriptions":
    get:
      description: Returns a list of products.
      operationId: CustomerSubscriptions_List
      parameters:
        - description: Subscription credentials that uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
        - description: Name of the resource group.
          in: path
          name: resourceGroup
          required: true
          type: string
          x-ms-parameter-location: method
        - description: Name of the Azure Stack registration.
          in: path
          name: registrationName
          required: true
          type: string
          x-ms-parameter-location: method
        - default: 2017-06-01
          description: Client API Version.
          in: query
          name: api-version
          required: true
          type: string
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/CustomerSubscriptionList"
        default:
          description: Error response describing why the operation failed.
          schema:
            description: Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message.
            properties:
              error:
                description: The details of the error.
                properties:
                  code:
                    description: Error code.
                    readOnly: true
                    type: string
                  message:
                    description: Error message indicating why the operation failed.
                    readOnly: true
                    type: string
                  target:
                    description: The target of the particular error.
                    readOnly: true
                    type: string
            type: object
      tags:
        - CustomerSubscription
      x-ms-examples:
        Returns a list of products.:
          parameters:
            api-version: 2017-06-01
            registrationName: testregistration
            resourceGroup: azurestack
            subscriptionId: dd8597b4-8739-4467-8b10-f8679f62bfbf
          responses:
            "200":
              body:
                value:
                  - id: /subscriptions/dd8597b4-8739-4467-8b10-f8679f62bfbf/resourceGroups/azurestack/providers/Microsoft.AzureStack/registrations/testregistration/customerSubscriptions/E09A4E93-29A7-4EBA-A6D4-76202383F07F
                    name: testregistration/E09A4E93-29A7-4EBA-A6D4-76202383F07F
                    properties:
                      tenantId: dbab3982-796f-4d03-9908-044c08aef8a2
                    type: Microsoft.AzureStack/registrations/customerSubscriptions
      x-ms-pageable:
        nextLinkName: nextLink
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.AzureStack/registrations/{registrationName}/customerSubscriptions/{customerSubscriptionName}":
    delete:
      description: Deletes a customer subscription under a registration.
      operationId: CustomerSubscriptions_Delete
      parameters:
        - description: Subscription credentials that uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
        - description: Name of the resource group.
          in: path
          name: resourceGroup
          required: true
          type: string
          x-ms-parameter-location: method
        - description: Name of the Azure Stack registration.
          in: path
          name: registrationName
          required: true
          type: string
          x-ms-parameter-location: method
        - $ref: "#/parameters/CustomerSubscriptionNameParameter"
        - default: 2017-06-01
          description: Client API Version.
          in: query
          name: api-version
          required: true
          type: string
      responses:
        "200":
          description: OK
        "204":
          description: NO CONTENT
      tags:
        - CustomerSubscription
      x-ms-examples:
        Deletes a customer subscription under a registration.:
          parameters:
            api-version: 2017-06-01
            customerSubscriptionName: E09A4E93-29A7-4EBA-A6D4-76202383F07F
            registrationName: testregistration
            resourceGroup: azurestack
            subscriptionId: dd8597b4-8739-4467-8b10-f8679f62bfbf
          responses:
            "200": {}
            "204": {}
    get:
      description: Returns the specified product.
      operationId: CustomerSubscriptions_Get
      parameters:
        - description: Subscription credentials that uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
        - description: Name of the resource group.
          in: path
          name: resourceGroup
          required: true
          type: string
          x-ms-parameter-location: method
        - description: Name of the Azure Stack registration.
          in: path
          name: registrationName
          required: true
          type: string
          x-ms-parameter-location: method
        - $ref: "#/parameters/CustomerSubscriptionNameParameter"
        - default: 2017-06-01
          description: Client API Version.
          in: query
          name: api-version
          required: true
          type: string
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/CustomerSubscription"
        default:
          description: Error response describing why the operation failed.
          schema:
            description: Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message.
            properties:
              error:
                description: The details of the error.
                properties:
                  code:
                    description: Error code.
                    readOnly: true
                    type: string
                  message:
                    description: Error message indicating why the operation failed.
                    readOnly: true
                    type: string
                  target:
                    description: The target of the particular error.
                    readOnly: true
                    type: string
            type: object
      tags:
        - CustomerSubscription
      x-ms-examples:
        Returns the specified product.:
          parameters:
            api-version: 2017-06-01
            customerSubscriptionName: E09A4E93-29A7-4EBA-A6D4-76202383F07F
            registrationName: testregistration
            resourceGroup: azurestack
            subscriptionId: dd8597b4-8739-4467-8b10-f8679f62bfbf
          responses:
            "200":
              body:
                id: /subscriptions/dd8597b4-8739-4467-8b10-f8679f62bfbf/resourceGroups/azurestack/providers/Microsoft.AzureStack/registrations/testregistration/customerSubscriptions/E09A4E93-29A7-4EBA-A6D4-76202383F07F
                name: testregistration/E09A4E93-29A7-4EBA-A6D4-76202383F07F
                properties:
                  tenantId: dbab3982-796f-4d03-9908-044c08aef8a2
                type: Microsoft.AzureStack/registrations/customerSubscriptions
    put:
      description: Creates a new customer subscription under a registration.
      operationId: CustomerSubscriptions_Create
      parameters:
        - description: Subscription credentials that uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
        - description: Name of the resource group.
          in: path
          name: resourceGroup
          required: true
          type: string
          x-ms-parameter-location: method
        - description: Name of the Azure Stack registration.
          in: path
          name: registrationName
          required: true
          type: string
          x-ms-parameter-location: method
        - $ref: "#/parameters/CustomerSubscriptionNameParameter"
        - default: 2017-06-01
          description: Client API Version.
          in: query
          name: api-version
          required: true
          type: string
        - $ref: "#/parameters/CustomerSubscriptionParameter"
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/CustomerSubscription"
      tags:
        - CustomerSubscription
      x-ms-examples:
        Creates a new customer subscription under a registration.:
          parameters:
            api-version: 2017-06-01
            customerCreationParameters:
              properties:
                tenantId: dbab3982-796f-4d03-9908-044c08aef8a2
            customerSubscriptionName: E09A4E93-29A7-4EBA-A6D4-76202383F07F
            registrationName: testregistration
            resourceGroup: azurestack
            subscriptionId: dd8597b4-8739-4467-8b10-f8679f62bfbf
          responses:
            "200":
              body:
                id: ""
                name: ""
                properties:
                  tenantId: dbab3982-796f-4d03-9908-044c08aef8a2
                type: ""
definitions:
  CustomerSubscription:
    allOf:
      - description: Base resource object.
        properties:
          etag:
            description: The entity tag used for optimistic concurrency when modifying the resource.
            type: string
          id:
            description: ID of the resource.
            readOnly: true
            type: string
          name:
            description: Name of the resource.
            readOnly: true
            type: string
          type:
            description: Type of Resource.
            readOnly: true
            type: string
        type: object
        x-ms-azure-resource: true
    description: Customer subscription.
    properties:
      properties:
        $ref: "#/definitions/CustomerSubscriptionProperties"
        description: Customer subscription properties.
        x-ms-client-flatten: true
    type: object
  CustomerSubscriptionList:
    description: Pageable list of customer subscriptions.
    properties:
      nextLink:
        description: URI to the next page.
        type: string
      value:
        description: List of customer subscriptions.
        items:
          $ref: "#/definitions/CustomerSubscription"
        type: array
    type: object
  CustomerSubscriptionProperties:
    description: Customer subscription properties.
    properties:
      tenantId:
        description: Tenant Id.
        type: string
    type: object
