{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/microsoft-azure-web-pubsub/json-schema/microsoft-azure-web-pubsub-shared-private-link-resource-list-schema.json",
  "title": "SharedPrivateLinkResourceList",
  "description": "A list of shared private link resources",
  "x-generated": "2026-11-05",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/microsoft-azure-web-pubsub-management-api-openapi.yml#/components/schemas/SharedPrivateLinkResourceList",
  "type": "object",
  "properties": {
    "value": {
      "description": "The list of the shared private link resources",
      "type": "array",
      "items": {
        "$ref": "#/$defs/SharedPrivateLinkResource"
      },
      "x-ms-identifiers": []
    },
    "nextLink": {
      "description": "Request URL that can be used to query next page of private endpoint connections. Returned when the total number of requested private endpoint connections exceed maximum page size.",
      "type": "string"
    }
  },
  "$defs": {
    "ProvisioningState": {
      "description": "Provisioning state of the resource.",
      "enum": [
        "Unknown",
        "Succeeded",
        "Failed",
        "Canceled",
        "Running",
        "Creating",
        "Updating",
        "Deleting",
        "Moving"
      ],
      "type": "string",
      "readOnly": true,
      "x-ms-enum": {
        "name": "ProvisioningState",
        "modelAsString": true
      }
    },
    "SharedPrivateLinkResource": {
      "description": "Describes a Shared Private Link Resource",
      "type": "object",
      "allOf": [
        {
          "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource"
        }
      ],
      "properties": {
        "properties": {
          "$ref": "#/$defs/SharedPrivateLinkResourceProperties"
        }
      }
    },
    "SharedPrivateLinkResourceProperties": {
      "description": "Describes the properties of an existing Shared Private Link Resource",
      "required": [
        "groupId",
        "privateLinkResourceId"
      ],
      "type": "object",
      "properties": {
        "groupId": {
          "description": "The group id from the provider of resource the shared private link resource is for",
          "type": "string"
        },
        "privateLinkResourceId": {
          "description": "The resource id of the resource the shared private link resource is for",
          "type": "string"
        },
        "provisioningState": {
          "$ref": "#/$defs/ProvisioningState"
        },
        "requestMessage": {
          "description": "The request message for requesting approval of the shared private link resource",
          "type": "string"
        },
        "status": {
          "$ref": "#/$defs/SharedPrivateLinkResourceStatus"
        }
      }
    },
    "SharedPrivateLinkResourceStatus": {
      "description": "Status of the shared private link resource",
      "enum": [
        "Pending",
        "Approved",
        "Rejected",
        "Disconnected",
        "Timeout"
      ],
      "type": "string",
      "x-ms-enum": {
        "name": "SharedPrivateLinkResourceStatus",
        "modelAsString": true
      }
    }
  }
}