swagger: '2.0' info: version: 2020-08-01-preview title: Microsoft Azure AccessControlClient AccessConnector CustomResourceProvider API schemes: - https tags: - name: CustomResourceProvider paths: ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CustomProviders/resourceProviders/{resourceProviderName} : put: tags: - CustomResourceProvider operationId: microsoftAzureCustomresourceproviderCreateorupdate x-ms-examples: Create or update the custom resource provider: $ref: examples/createOrUpdateCustomRP.json x-ms-long-running-operation: true description: Creates or updates the custom resource provider. parameters: - $ref: '#/parameters/SubscriptionIdParameter' - $ref: '#/parameters/ResourceGroupNameParameter' - $ref: '#/parameters/ResourceProviderNameParameter' - $ref: '#/parameters/ApiVersionParameter' - name: resourceProvider in: body required: true schema: $ref: '#/definitions/CustomRPManifest' description: The parameters required to create or update a custom resource provider definition. responses: '200': description: OK response definition. Resource already exists and the changes have been accepted schema: $ref: '#/definitions/CustomRPManifest' '201': description: Created response definition. Resource has been created schema: $ref: '#/definitions/CustomRPManifest' default: description: Error response describing why the operation failed. schema: $ref: '#/definitions/ErrorResponse' produces: - application/json consumes: - application/json summary: Microsoft Azure Put Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Customproviders Resourceproviders Resourceprovidername delete: tags: - CustomResourceProvider operationId: microsoftAzureCustomresourceproviderDelete x-ms-examples: Delete a custom resource provider: $ref: examples/deleteCustomRP.json x-ms-long-running-operation: true description: Deletes the custom resource provider. parameters: - $ref: '#/parameters/SubscriptionIdParameter' - $ref: '#/parameters/ResourceGroupNameParameter' - $ref: '#/parameters/ResourceProviderNameParameter' - $ref: '#/parameters/ApiVersionParameter' responses: '200': description: OK resource deleted '202': description: OK resource delete has been accepted. '204': description: OK resource was not found. default: description: Error response describing why the operation failed. schema: $ref: '#/definitions/ErrorResponse' produces: - application/json consumes: - application/json summary: Microsoft Azure Delete Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Customproviders Resourceproviders Resourceprovidername get: tags: - CustomResourceProvider operationId: microsoftAzureCustomresourceproviderGet x-ms-examples: Get a custom resource provider: $ref: examples/getCustomRP.json description: Gets the custom resource provider manifest. parameters: - $ref: '#/parameters/SubscriptionIdParameter' - $ref: '#/parameters/ResourceGroupNameParameter' - $ref: '#/parameters/ResourceProviderNameParameter' - $ref: '#/parameters/ApiVersionParameter' responses: '200': description: OK response definition with the existing resource. schema: $ref: '#/definitions/CustomRPManifest' default: description: Error response describing why the operation failed. schema: $ref: '#/definitions/ErrorResponse' produces: - application/json consumes: - application/json summary: Microsoft Azure Get Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Customproviders Resourceproviders Resourceprovidername patch: tags: - CustomResourceProvider operationId: microsoftAzureCustomresourceproviderUpdate x-ms-examples: Update a custom resource provider: $ref: examples/updateCustomRP.json description: Updates an existing custom resource provider. The only value that can be updated via PATCH currently is the tags. parameters: - $ref: '#/parameters/SubscriptionIdParameter' - $ref: '#/parameters/ResourceGroupNameParameter' - $ref: '#/parameters/ResourceProviderNameParameter' - $ref: '#/parameters/ApiVersionParameter' - name: patchableResource in: body required: true schema: $ref: '#/definitions/ResourceProvidersUpdate' description: The updatable fields of a custom resource provider. responses: '200': description: OK response. The resource has been updated. schema: $ref: '#/definitions/CustomRPManifest' default: description: Error response describing why the operation failed. schema: $ref: '#/definitions/ErrorResponse' produces: - application/json consumes: - application/json summary: Microsoft Azure Patch Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Customproviders Resourceproviders Resourceprovidername /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CustomProviders/resourceProviders: get: tags: - CustomResourceProvider operationId: microsoftAzureCustomresourceproviderListbyresourcegroup x-ms-examples: List all custom resource providers on the resourceGroup: $ref: examples/listCustomRPsByResourceGroup.json x-ms-pageable: nextLinkName: nextLink description: Gets all the custom resource providers within a resource group. parameters: - $ref: '#/parameters/SubscriptionIdParameter' - $ref: '#/parameters/ResourceGroupNameParameter' - $ref: '#/parameters/ApiVersionParameter' responses: '200': description: OK - Returns an array of custom resource providers. schema: $ref: '#/definitions/ListByCustomRPManifest' default: description: Error response describing why the operation failed. schema: $ref: '#/definitions/ErrorResponse' produces: - application/json consumes: - application/json summary: Microsoft Azure Get Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Customproviders Resourceproviders /subscriptions/{subscriptionId}/providers/Microsoft.CustomProviders/resourceProviders: get: tags: - CustomResourceProvider operationId: microsoftAzureCustomresourceproviderListbysubscription x-ms-examples: List all custom resource providers on the subscription: $ref: examples/listCustomRPsBySubscription.json x-ms-pageable: nextLinkName: nextLink description: Gets all the custom resource providers within a subscription. parameters: - $ref: '#/parameters/SubscriptionIdParameter' - $ref: '#/parameters/ApiVersionParameter' responses: '200': description: OK - Returns an array of custom resource providers. schema: $ref: '#/definitions/ListByCustomRPManifest' default: description: Error response describing why the operation failed. schema: $ref: '#/definitions/ErrorResponse' produces: - application/json consumes: - application/json summary: Microsoft Azure Get Subscriptions Subscriptionid Providers Microsoft Customproviders Resourceproviders definitions: ErrorDefinition: description: Error definition. properties: code: description: Service specific error code which serves as the substatus for the HTTP error code. type: string readOnly: true message: description: Description of the error. type: string readOnly: true details: description: Internal error details. type: array items: $ref: '#/definitions/ErrorDefinition' x-ms-identifiers: [] readOnly: true ErrorResponse: description: Error response. properties: error: $ref: '#/definitions/ErrorDefinition' description: The error details. CustomRPRouteDefinition: description: A route definition that defines an action or resource that can be interacted with through the custom resource provider. required: - name - endpoint properties: name: type: string description: The name of the route definition. This becomes the name for the ARM extension (e.g. '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CustomProviders/resourceProviders/{resourceProviderName}/{name}') endpoint: type: string description: The route definition endpoint URI that the custom resource provider will proxy requests to. This can be in the form of a flat URI (e.g. 'https://testendpoint/') or can specify to route via a path (e.g. 'https://testendpoint/{requestPath}') pattern: ^https://.+ Resource: properties: id: readOnly: true type: string description: Resource Id name: readOnly: true type: string description: Resource name type: readOnly: true type: string description: Resource type location: type: string description: Resource location x-ms-mutability: - read - create tags: type: object additionalProperties: type: string description: Resource tags required: - location description: The resource definition. x-ms-azure-resource: true ListByCustomRPManifest: properties: value: type: array items: $ref: '#/definitions/CustomRPManifest' description: The array of custom resource provider manifests. nextLink: type: string description: The URL to use for getting the next set of results. description: List of custom resource providers. CustomRPManifest: properties: properties: type: object x-ms-client-flatten: true description: The manifest for the custom resource provider properties: actions: type: array description: A list of actions that the custom resource provider implements. items: $ref: '#/definitions/CustomRPActionRouteDefinition' x-ms-identifiers: - name - endpoint resourceTypes: type: array description: A list of resource types that the custom resource provider implements. items: $ref: '#/definitions/CustomRPResourceTypeRouteDefinition' x-ms-identifiers: - name - endpoint validations: type: array description: A list of validations to run on the custom resource provider's requests. items: $ref: '#/definitions/CustomRPValidations' x-ms-identifiers: [] provisioningState: type: string description: The provisioning state of the resource provider. readOnly: true x-ms-enum: modelAsString: true name: ProvisioningState enum: - Accepted - Deleting - Running - Succeeded - Failed allOf: - $ref: '#/definitions/Resource' description: A manifest file that defines the custom resource provider resources. CustomRPValidations: description: A validation to apply on custom resource provider requests. required: - specification properties: validationType: type: string description: The type of validation to run against a matching request. x-ms-enum: modelAsString: true name: ValidationType enum: - Swagger specification: type: string description: A link to the validation specification. The specification must be hosted on raw.githubusercontent.com. pattern: ^https://raw.githubusercontent.com/.+ ResourceProvidersUpdate: properties: tags: type: object additionalProperties: type: string description: Resource tags description: custom resource provider update information. CustomRPActionRouteDefinition: description: The route definition for an action implemented by the custom resource provider. properties: routingType: type: string description: The routing types that are supported for action requests. x-ms-enum: modelAsString: true name: ActionRouting enum: - Proxy allOf: - $ref: '#/definitions/CustomRPRouteDefinition' CustomRPResourceTypeRouteDefinition: description: The route definition for a resource implemented by the custom resource provider. properties: routingType: type: string description: The routing types that are supported for resource requests. x-ms-enum: modelAsString: true name: ResourceTypeRouting enum: - Proxy - Proxy,Cache allOf: - $ref: '#/definitions/CustomRPRouteDefinition' parameters: ApiVersionParameter: name: api-version in: query required: true type: string description: The API version to be used with the HTTP request. ResourceProviderNameParameter: name: resourceProviderName in: path required: true type: string description: The name of the resource provider. minLength: 3 maxLength: 64 x-ms-parameter-location: method SubscriptionIdParameter: name: subscriptionId in: path required: true type: string description: The Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000) ResourceGroupNameParameter: name: resourceGroupName in: path required: true type: string description: The name of the resource group. x-ms-parameter-location: method x-ms-parameterized-host: hostTemplate: '{endpoint}' useSchemePrefix: false parameters: - $ref: '#/parameters/Endpoint'