{
  "name": "ChangeMessageVisibilityBatch",
  "plane": "data",
  "terraformEligible": false,
  "protocol": {
    "kind": "cloudJson",
    "target": "CloudQueue.ChangeMessageVisibilityBatch",
    "service": "queue"
  },
  "requestBody": "typed",
  "responseBody": "typed",
  "requestSchema": {
    "$schema": "http://json-schema.org/draft-07/schema#",
    "additionalProperties": false,
    "definitions": {
      "ChangeMessageVisibilityBatchEntry": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": "string"
          },
          "receiptHandle": {
            "type": "string"
          },
          "visibilityTimeout": {
            "format": "uint32",
            "minimum": 0.0,
            "type": "integer"
          }
        },
        "required": [
          "id",
          "receiptHandle",
          "visibilityTimeout"
        ],
        "type": "object"
      }
    },
    "properties": {
      "entries": {
        "items": {
          "$ref": "#/definitions/ChangeMessageVisibilityBatchEntry"
        },
        "type": "array"
      },
      "queueUrl": {
        "type": "string"
      }
    },
    "required": [
      "entries",
      "queueUrl"
    ],
    "title": "ChangeMessageVisibilityBatchRequest",
    "type": "object"
  },
  "responseSchema": {
    "$schema": "http://json-schema.org/draft-07/schema#",
    "definitions": {
      "BatchFailure": {
        "properties": {
          "code": {
            "type": "string"
          },
          "id": {
            "type": "string"
          },
          "message": {
            "type": "string"
          },
          "senderFault": {
            "type": "boolean"
          }
        },
        "required": [
          "code",
          "id",
          "message",
          "senderFault"
        ],
        "type": "object"
      },
      "BatchSuccess": {
        "properties": {
          "id": {
            "type": "string"
          },
          "messageId": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      }
    },
    "properties": {
      "failed": {
        "items": {
          "$ref": "#/definitions/BatchFailure"
        },
        "type": "array"
      },
      "successful": {
        "items": {
          "$ref": "#/definitions/BatchSuccess"
        },
        "type": "array"
      }
    },
    "required": [
      "failed",
      "successful"
    ],
    "title": "BatchResponse",
    "type": "object"
  }
}
