{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/microsoft-azure-blob-storage/json-schema/microsoft-azure-blob-storage-list-blobs-hierarchy-segment-response-schema.json",
  "title": "ListBlobsHierarchySegmentResponse",
  "description": "An enumeration of blobs",
  "x-generated": "2026-11-05",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/microsoft-azure-blob-storage-openapi.yml#/components/schemas/ListBlobsHierarchySegmentResponse",
  "type": "object",
  "required": [
    "ServiceEndpoint",
    "ContainerName",
    "Segment"
  ],
  "properties": {
    "ServiceEndpoint": {
      "type": "string"
    },
    "ContainerName": {
      "type": "string"
    },
    "Prefix": {
      "type": "string"
    },
    "Marker": {
      "type": "string"
    },
    "MaxResults": {
      "type": "integer"
    },
    "Delimiter": {
      "type": "string"
    },
    "Segment": {
      "$ref": "#/$defs/BlobHierarchyListSegment"
    },
    "NextMarker": {
      "type": "string"
    }
  },
  "$defs": {
    "AccessTier": {
      "type": "string",
      "enum": [
        "P4",
        "P6",
        "P10",
        "P15",
        "P20",
        "P30",
        "P40",
        "P50",
        "P60",
        "P70",
        "P80",
        "Hot",
        "Cool",
        "Archive",
        "Premium",
        "Cold",
        "Smart"
      ],
      "x-ms-enum": {
        "name": "AccessTier",
        "modelAsString": true
      }
    },
    "ArchiveStatus": {
      "type": "string",
      "enum": [
        "rehydrate-pending-to-hot",
        "rehydrate-pending-to-cool",
        "rehydrate-pending-to-cold",
        "rehydrate-pending-to-smart"
      ],
      "x-ms-enum": {
        "name": "ArchiveStatus",
        "modelAsString": true
      }
    },
    "BlobHierarchyListSegment": {
      "type": "object",
      "required": [
        "BlobItems"
      ],
      "properties": {
        "BlobPrefixes": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/BlobPrefix"
          }
        },
        "BlobItems": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/BlobItemInternal"
          }
        }
      }
    },
    "BlobItemInternal": {
      "description": "An Azure Storage blob",
      "type": "object",
      "required": [
        "Name",
        "Deleted",
        "Snapshot",
        "Properties"
      ],
      "properties": {
        "Name": {
          "$ref": "#/$defs/BlobName"
        },
        "Deleted": {
          "type": "boolean"
        },
        "Snapshot": {
          "type": "string"
        },
        "VersionId": {
          "type": "string"
        },
        "IsCurrentVersion": {
          "type": "boolean"
        },
        "Properties": {
          "$ref": "#/$defs/BlobPropertiesInternal"
        },
        "Metadata": {
          "$ref": "#/$defs/BlobMetadata"
        },
        "BlobTags": {
          "$ref": "#/$defs/BlobTags"
        },
        "ObjectReplicationMetadata": {
          "$ref": "#/$defs/ObjectReplicationMetadata"
        },
        "HasVersionsOnly": {
          "type": "boolean"
        }
      }
    },
    "BlobMetadata": {
      "type": "object",
      "properties": {
        "Encrypted": {
          "type": "string"
        }
      },
      "additionalProperties": {
        "type": "string"
      }
    },
    "BlobName": {
      "type": "object",
      "properties": {
        "Encoded": {
          "type": "boolean",
          "description": "Indicates if the blob name is encoded."
        },
        "content": {
          "type": "string",
          "description": "The name of the blob."
        }
      }
    },
    "BlobPrefix": {
      "type": "object",
      "required": [
        "Name"
      ],
      "properties": {
        "Name": {
          "$ref": "#/$defs/BlobName"
        }
      }
    },
    "BlobPropertiesInternal": {
      "description": "Properties of a blob",
      "type": "object",
      "required": [
        "Etag",
        "Last-Modified"
      ],
      "properties": {
        "Creation-Time": {
          "type": "string",
          "format": "date-time-rfc1123"
        },
        "Last-Modified": {
          "type": "string",
          "format": "date-time-rfc1123"
        },
        "Etag": {
          "type": "string"
        },
        "Content-Length": {
          "type": "integer",
          "format": "int64",
          "description": "Size in bytes"
        },
        "Content-Type": {
          "type": "string"
        },
        "Content-Encoding": {
          "type": "string"
        },
        "Content-Language": {
          "type": "string"
        },
        "Content-MD5": {
          "type": "string",
          "format": "byte"
        },
        "Content-Disposition": {
          "type": "string"
        },
        "Cache-Control": {
          "type": "string"
        },
        "x-ms-blob-sequence-number": {
          "x-ms-client-name": "blobSequenceNumber",
          "type": "integer",
          "format": "int64"
        },
        "BlobType": {
          "type": "string",
          "enum": [
            "BlockBlob",
            "PageBlob",
            "AppendBlob"
          ],
          "x-ms-enum": {
            "name": "BlobType",
            "modelAsString": false
          }
        },
        "LeaseStatus": {
          "$ref": "#/$defs/LeaseStatus"
        },
        "LeaseState": {
          "$ref": "#/$defs/LeaseState"
        },
        "LeaseDuration": {
          "$ref": "#/$defs/LeaseDuration"
        },
        "CopyId": {
          "type": "string"
        },
        "CopyStatus": {
          "$ref": "#/$defs/CopyStatus"
        },
        "CopySource": {
          "type": "string"
        },
        "CopyProgress": {
          "type": "string"
        },
        "CopyCompletionTime": {
          "type": "string",
          "format": "date-time-rfc1123"
        },
        "CopyStatusDescription": {
          "type": "string"
        },
        "ServerEncrypted": {
          "type": "boolean"
        },
        "IncrementalCopy": {
          "type": "boolean"
        },
        "DestinationSnapshot": {
          "type": "string"
        },
        "DeletedTime": {
          "type": "string",
          "format": "date-time-rfc1123"
        },
        "RemainingRetentionDays": {
          "type": "integer"
        },
        "AccessTier": {
          "$ref": "#/$defs/AccessTier"
        },
        "AccessTierInferred": {
          "type": "boolean"
        },
        "ArchiveStatus": {
          "$ref": "#/$defs/ArchiveStatus"
        },
        "SmartAccessTier": {
          "$ref": "#/$defs/AccessTier"
        },
        "CustomerProvidedKeySha256": {
          "type": "string"
        },
        "EncryptionScope": {
          "type": "string",
          "description": "The name of the encryption scope under which the blob is encrypted."
        },
        "AccessTierChangeTime": {
          "type": "string",
          "format": "date-time-rfc1123"
        },
        "TagCount": {
          "type": "integer"
        },
        "Expiry-Time": {
          "x-ms-client-name": "ExpiresOn",
          "type": "string",
          "format": "date-time-rfc1123"
        },
        "Sealed": {
          "x-ms-client-name": "IsSealed",
          "type": "boolean"
        },
        "RehydratePriority": {
          "$ref": "#/$defs/RehydratePriority"
        },
        "LastAccessTime": {
          "x-ms-client-name": "LastAccessedOn",
          "type": "string",
          "format": "date-time-rfc1123"
        },
        "ImmutabilityPolicyUntilDate": {
          "x-ms-client-name": "ImmutabilityPolicyExpiresOn",
          "type": "string",
          "format": "date-time-rfc1123"
        },
        "ImmutabilityPolicyMode": {
          "type": "string",
          "enum": [
            "Mutable",
            "Unlocked",
            "Locked"
          ],
          "x-ms-enum": {
            "name": "BlobImmutabilityPolicyMode",
            "modelAsString": false
          }
        },
        "LegalHold": {
          "type": "boolean"
        }
      }
    },
    "BlobTag": {
      "type": "object",
      "required": [
        "Key",
        "Value"
      ],
      "properties": {
        "Key": {
          "type": "string"
        },
        "Value": {
          "type": "string"
        }
      }
    },
    "BlobTags": {
      "type": "object",
      "description": "Blob tags",
      "required": [
        "BlobTagSet"
      ],
      "properties": {
        "BlobTagSet": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/BlobTag"
          }
        }
      }
    },
    "CopyStatus": {
      "type": "string",
      "enum": [
        "pending",
        "success",
        "aborted",
        "failed"
      ],
      "x-ms-enum": {
        "name": "CopyStatusType",
        "modelAsString": false
      }
    },
    "LeaseDuration": {
      "type": "string",
      "enum": [
        "infinite",
        "fixed"
      ],
      "x-ms-enum": {
        "name": "LeaseDurationType",
        "modelAsString": false
      }
    },
    "LeaseState": {
      "type": "string",
      "enum": [
        "available",
        "leased",
        "expired",
        "breaking",
        "broken"
      ],
      "x-ms-enum": {
        "name": "LeaseStateType",
        "modelAsString": false
      }
    },
    "LeaseStatus": {
      "type": "string",
      "enum": [
        "locked",
        "unlocked"
      ],
      "x-ms-enum": {
        "name": "LeaseStatusType",
        "modelAsString": false
      }
    },
    "ObjectReplicationMetadata": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      }
    },
    "RehydratePriority": {
      "description": "If an object is in rehydrate pending state then this header is returned with priority of rehydrate. Valid values are High and Standard.",
      "type": "string",
      "enum": [
        "High",
        "Standard"
      ],
      "x-ms-enum": {
        "name": "RehydratePriority",
        "modelAsString": true
      }
    }
  }
}