{
  "name": "UpdateItem",
  "plane": "data",
  "terraformEligible": false,
  "protocol": {
    "kind": "cloudJson",
    "target": "CloudTables.UpdateItem",
    "service": "tables"
  },
  "requestBody": "typed",
  "responseBody": "typed",
  "requestSchema": {
    "$schema": "http://json-schema.org/draft-07/schema#",
    "additionalProperties": false,
    "definitions": {
      "AttributeValue": {
        "oneOf": [
          {
            "additionalProperties": false,
            "properties": {
              "S": {
                "type": "string"
              }
            },
            "required": [
              "S"
            ],
            "type": "object"
          },
          {
            "additionalProperties": false,
            "properties": {
              "N": {
                "type": "string"
              }
            },
            "required": [
              "N"
            ],
            "type": "object"
          },
          {
            "additionalProperties": false,
            "properties": {
              "B": {
                "type": "string"
              }
            },
            "required": [
              "B"
            ],
            "type": "object"
          },
          {
            "additionalProperties": false,
            "properties": {
              "BOOL": {
                "type": "boolean"
              }
            },
            "required": [
              "BOOL"
            ],
            "type": "object"
          },
          {
            "additionalProperties": false,
            "properties": {
              "NULL": {
                "type": "boolean"
              }
            },
            "required": [
              "NULL"
            ],
            "type": "object"
          },
          {
            "additionalProperties": false,
            "properties": {
              "M": {
                "additionalProperties": {
                  "$ref": "#/definitions/AttributeValue"
                },
                "type": "object"
              }
            },
            "required": [
              "M"
            ],
            "type": "object"
          },
          {
            "additionalProperties": false,
            "properties": {
              "L": {
                "items": {
                  "$ref": "#/definitions/AttributeValue"
                },
                "type": "array"
              }
            },
            "required": [
              "L"
            ],
            "type": "object"
          },
          {
            "additionalProperties": false,
            "properties": {
              "SS": {
                "items": {
                  "type": "string"
                },
                "type": "array"
              }
            },
            "required": [
              "SS"
            ],
            "type": "object"
          },
          {
            "additionalProperties": false,
            "properties": {
              "NS": {
                "items": {
                  "type": "string"
                },
                "type": "array"
              }
            },
            "required": [
              "NS"
            ],
            "type": "object"
          },
          {
            "additionalProperties": false,
            "properties": {
              "BS": {
                "items": {
                  "type": "string"
                },
                "type": "array"
              }
            },
            "required": [
              "BS"
            ],
            "type": "object"
          }
        ]
      }
    },
    "properties": {
      "conditionExpression": {
        "default": null,
        "type": [
          "string",
          "null"
        ]
      },
      "expressionAttributeNames": {
        "additionalProperties": {
          "type": "string"
        },
        "default": null,
        "type": [
          "object",
          "null"
        ]
      },
      "expressionAttributeValues": {
        "additionalProperties": {
          "$ref": "#/definitions/AttributeValue"
        },
        "default": null,
        "type": [
          "object",
          "null"
        ]
      },
      "key": {
        "additionalProperties": {
          "$ref": "#/definitions/AttributeValue"
        },
        "type": "object"
      },
      "returnValues": {
        "default": null,
        "type": [
          "string",
          "null"
        ]
      },
      "tableName": {
        "type": "string"
      },
      "updateExpression": {
        "type": "string"
      }
    },
    "required": [
      "key",
      "tableName",
      "updateExpression"
    ],
    "title": "UpdateItemRequest",
    "type": "object"
  },
  "responseSchema": {
    "$schema": "http://json-schema.org/draft-07/schema#",
    "definitions": {
      "AttributeValue": {
        "oneOf": [
          {
            "additionalProperties": false,
            "properties": {
              "S": {
                "type": "string"
              }
            },
            "required": [
              "S"
            ],
            "type": "object"
          },
          {
            "additionalProperties": false,
            "properties": {
              "N": {
                "type": "string"
              }
            },
            "required": [
              "N"
            ],
            "type": "object"
          },
          {
            "additionalProperties": false,
            "properties": {
              "B": {
                "type": "string"
              }
            },
            "required": [
              "B"
            ],
            "type": "object"
          },
          {
            "additionalProperties": false,
            "properties": {
              "BOOL": {
                "type": "boolean"
              }
            },
            "required": [
              "BOOL"
            ],
            "type": "object"
          },
          {
            "additionalProperties": false,
            "properties": {
              "NULL": {
                "type": "boolean"
              }
            },
            "required": [
              "NULL"
            ],
            "type": "object"
          },
          {
            "additionalProperties": false,
            "properties": {
              "M": {
                "additionalProperties": {
                  "$ref": "#/definitions/AttributeValue"
                },
                "type": "object"
              }
            },
            "required": [
              "M"
            ],
            "type": "object"
          },
          {
            "additionalProperties": false,
            "properties": {
              "L": {
                "items": {
                  "$ref": "#/definitions/AttributeValue"
                },
                "type": "array"
              }
            },
            "required": [
              "L"
            ],
            "type": "object"
          },
          {
            "additionalProperties": false,
            "properties": {
              "SS": {
                "items": {
                  "type": "string"
                },
                "type": "array"
              }
            },
            "required": [
              "SS"
            ],
            "type": "object"
          },
          {
            "additionalProperties": false,
            "properties": {
              "NS": {
                "items": {
                  "type": "string"
                },
                "type": "array"
              }
            },
            "required": [
              "NS"
            ],
            "type": "object"
          },
          {
            "additionalProperties": false,
            "properties": {
              "BS": {
                "items": {
                  "type": "string"
                },
                "type": "array"
              }
            },
            "required": [
              "BS"
            ],
            "type": "object"
          }
        ]
      }
    },
    "properties": {
      "attributes": {
        "additionalProperties": {
          "$ref": "#/definitions/AttributeValue"
        },
        "type": [
          "object",
          "null"
        ]
      }
    },
    "title": "AttributesResponse",
    "type": "object"
  }
}
