{
  "name": "ListObjectsV2",
  "plane": "data",
  "terraformEligible": false,
  "protocol": {
    "kind": "rest",
    "method": "GET",
    "path": "/{bucket}",
    "query": [
      "list-type",
      "prefix",
      "max-keys"
    ],
    "headers": [],
    "body": false
  },
  "requestBody": "explicitlyEmpty",
  "responseBody": "json",
  "requestSchema": {
    "$schema": "http://json-schema.org/draft-07/schema#",
    "additionalProperties": false,
    "properties": {
      "bucket": {
        "type": "string"
      },
      "listType": {
        "type": [
          "string",
          "null"
        ]
      },
      "maxKeys": {
        "format": "uint",
        "minimum": 0.0,
        "type": [
          "integer",
          "null"
        ]
      },
      "prefix": {
        "type": [
          "string",
          "null"
        ]
      }
    },
    "required": [
      "bucket"
    ],
    "title": "ListObjectsRequest",
    "type": "object"
  },
  "responseSchema": {
    "$schema": "http://json-schema.org/draft-07/schema#",
    "definitions": {
      "ObjectSummary": {
        "properties": {
          "etag": {
            "type": "string"
          },
          "key": {
            "type": "string"
          },
          "size": {
            "format": "uint64",
            "minimum": 0.0,
            "type": "integer"
          }
        },
        "required": [
          "etag",
          "key",
          "size"
        ],
        "type": "object"
      }
    },
    "properties": {
      "contents": {
        "items": {
          "$ref": "#/definitions/ObjectSummary"
        },
        "type": "array"
      },
      "listType": {
        "type": "string"
      },
      "maxKeys": {
        "format": "uint",
        "minimum": 0.0,
        "type": "integer"
      },
      "name": {
        "type": "string"
      },
      "prefix": {
        "type": "string"
      }
    },
    "required": [
      "contents",
      "listType",
      "maxKeys",
      "name",
      "prefix"
    ],
    "title": "ListObjectsResponse",
    "type": "object"
  }
}
