identity/aziot-identityd/openapi/2021-12-01.yaml [348:542]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    post:
      tags:
      - Identity operations
      summary: Trigger an IoT device reprovisioning flow
      operationId: reprovision
      x-codegen-request-body-name: ReprovisionRequest
      requestBody:
        description: Type of identity to reprovision
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ReprovisionRequest'
      responses:
        200:
          description: Ok
          content: {}
        204:
          description: No Content
          content: {}
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'


components:
  schemas:
    AuthenticationCredentials:
      required:
      - type
      type: object
      properties:
        'type':
          type: string
          description: Indicates the type of authentication credential used.
          enum:
          - sas
          - x509
      discriminator:
        propertyName: type
        mapping:
          sas: '#/components/schemas/SASAuthenticationCredentials'
          x509: '#/components/schemas/X509AuthenticationCredentials'

    AziotIdentityResponse:
      required:
      - spec
      - type
      type: object
      properties:
        'type':
          $ref: '#/components/schemas/AziotIdentityType'
        'spec':
          $ref: '#/components/schemas/AziotIdentitySpec'

    AziotModuleIdentitiesResponse:
      type: object
      properties:
        'identities':
          type: array
          description: A collection of 'aziot' module identities
          items:
            $ref: '#/components/schemas/AziotModuleIdentityResponse'

    AziotIdentitySpec:
      required:
      - deviceId
      - gatewayHost
      - hubName
      type: object
      properties:
        'hubName':
          type: string
          description: The name of the IoT hub where the device is provisioned.
          example: myhub.net
        'gatewayHost':
          type: string
          description: The hostname of the parent Edge gateway that intermediates
            all requests for the current device when in a nested configuration. In
            a single-node deployment (i.e. non-nested) it will match the 'hubName'.
          example: parentdevice
        'deviceId':
          type: string
          description: The identity name of the provisioned device in the assigned
            IoT Hub.
          example: device01
        'moduleId':
          type: string
          description: The identity name of the device workload in the provisioned
            device in the assigned IoT Hub.
          example: module01
        'genId':
          type: string
          description: The generation ID of the device workload assigned by IoT Hub.
          example: "12345"
        'auth':
          $ref: '#/components/schemas/AuthenticationCredentials'
      description: The device identity specification.

    AziotIdentityType:
      type: string
      enum:
      - aziot
      example:
        aziot:
          value: aziot
          summary: 'Module identity.'

    AziotModuleIdentityResponse:
      required:
      - spec
      - type
      type: object
      properties:
        'type':
          $ref: '#/components/schemas/AziotIdentityType'
        'spec':
          $ref: '#/components/schemas/AziotModuleIdentitySpec'

    AziotModuleIdentitySpec:
      allOf:
      - $ref: '#/components/schemas/AziotIdentitySpec'
      required:
      - moduleId
      - genId
      type: object
      properties:
        'moduleId':
          type: string
          description: The identity name of the device workload in the provisioned
            device in the assigned IoT Hub.
          example: module01
        'genId':
          type: string
          description: The generation ID of the device workload assigned by IoT Hub.
          example: "12345"
      description: The module identity specification.

    CreateIdentityRequest:
      required:
      - moduleId
      - type
      type: object
      properties:
        'type':
          $ref: '#/components/schemas/IdentityKind'
        'moduleId':
          type: string
          description: Name of the module to add to the identity registry.
          example: module01

    CreateModuleRequest:
      oneOf:
      - $ref: '#/components/schemas/CreateIdentityRequest'
      discriminator:
        propertyName: type
        mapping:
          aziot: '#/components/schemas/CreateIdentityRequest'

    ErrorResponse:
      required:
      - message
      type: object
      properties:
        'message':
          type: string

    IdentityKind:
      type: string
      description: The identity type.
      enum:
      - aziot
      example:
        aziot:
          value: aziot
          summary: 'Azure IoT Hub identity.'

    ModuleIdentityResponse:
      oneOf:
      - $ref: '#/components/schemas/AziotModuleIdentityResponse'
      discriminator:
        propertyName: 'type'
        mapping:
          'aziot': '#/components/schemas/AziotModuleIdentityResponse'

    ProvisioningInfo:
      required:
        - auth
        - endpoint
        - registration_id
        - scope_id
        - source
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



identity/aziot-identityd/openapi/2022-08-01.yaml [349:543]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    post:
      tags:
      - Identity operations
      summary: Trigger an IoT device reprovisioning flow
      operationId: reprovision
      x-codegen-request-body-name: ReprovisionRequest
      requestBody:
        description: Type of identity to reprovision
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ReprovisionRequest'
      responses:
        200:
          description: Ok
          content: {}
        204:
          description: No Content
          content: {}
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'


components:
  schemas:
    AuthenticationCredentials:
      required:
      - type
      type: object
      properties:
        'type':
          type: string
          description: Indicates the type of authentication credential used.
          enum:
          - sas
          - x509
      discriminator:
        propertyName: type
        mapping:
          sas: '#/components/schemas/SASAuthenticationCredentials'
          x509: '#/components/schemas/X509AuthenticationCredentials'

    AziotIdentityResponse:
      required:
      - spec
      - type
      type: object
      properties:
        'type':
          $ref: '#/components/schemas/AziotIdentityType'
        'spec':
          $ref: '#/components/schemas/AziotIdentitySpec'

    AziotModuleIdentitiesResponse:
      type: object
      properties:
        'identities':
          type: array
          description: A collection of 'aziot' module identities
          items:
            $ref: '#/components/schemas/AziotModuleIdentityResponse'

    AziotIdentitySpec:
      required:
      - deviceId
      - gatewayHost
      - hubName
      type: object
      properties:
        'hubName':
          type: string
          description: The name of the IoT hub where the device is provisioned.
          example: myhub.net
        'gatewayHost':
          type: string
          description: The hostname of the parent Edge gateway that intermediates
            all requests for the current device when in a nested configuration. In
            a single-node deployment (i.e. non-nested) it will match the 'hubName'.
          example: parentdevice
        'deviceId':
          type: string
          description: The identity name of the provisioned device in the assigned
            IoT Hub.
          example: device01
        'moduleId':
          type: string
          description: The identity name of the device workload in the provisioned
            device in the assigned IoT Hub.
          example: module01
        'genId':
          type: string
          description: The generation ID of the device workload assigned by IoT Hub.
          example: "12345"
        'auth':
          $ref: '#/components/schemas/AuthenticationCredentials'
      description: The device identity specification.

    AziotIdentityType:
      type: string
      enum:
      - aziot
      example:
        aziot:
          value: aziot
          summary: 'Module identity.'

    AziotModuleIdentityResponse:
      required:
      - spec
      - type
      type: object
      properties:
        'type':
          $ref: '#/components/schemas/AziotIdentityType'
        'spec':
          $ref: '#/components/schemas/AziotModuleIdentitySpec'

    AziotModuleIdentitySpec:
      allOf:
      - $ref: '#/components/schemas/AziotIdentitySpec'
      required:
      - moduleId
      - genId
      type: object
      properties:
        'moduleId':
          type: string
          description: The identity name of the device workload in the provisioned
            device in the assigned IoT Hub.
          example: module01
        'genId':
          type: string
          description: The generation ID of the device workload assigned by IoT Hub.
          example: "12345"
      description: The module identity specification.

    CreateIdentityRequest:
      required:
      - moduleId
      - type
      type: object
      properties:
        'type':
          $ref: '#/components/schemas/IdentityKind'
        'moduleId':
          type: string
          description: Name of the module to add to the identity registry.
          example: module01

    CreateModuleRequest:
      oneOf:
      - $ref: '#/components/schemas/CreateIdentityRequest'
      discriminator:
        propertyName: type
        mapping:
          aziot: '#/components/schemas/CreateIdentityRequest'

    ErrorResponse:
      required:
      - message
      type: object
      properties:
        'message':
          type: string

    IdentityKind:
      type: string
      description: The identity type.
      enum:
      - aziot
      example:
        aziot:
          value: aziot
          summary: 'Azure IoT Hub identity.'

    ModuleIdentityResponse:
      oneOf:
      - $ref: '#/components/schemas/AziotModuleIdentityResponse'
      discriminator:
        propertyName: 'type'
        mapping:
          'aziot': '#/components/schemas/AziotModuleIdentityResponse'

    ProvisioningInfo:
      required:
        - auth
        - endpoint
        - registration_id
        - scope_id
        - source
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



