{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/amazon-cloud-map/json-schema/amazon-cloud-map-list-operations-request-schema.json",
  "title": "ListOperationsRequest",
  "x-generated": "2026-11-10",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/amazon-cloud-map-operations-api-openapi.yml#/components/schemas/ListOperationsRequest",
  "type": "object",
  "properties": {
    "NextToken": {
      "type": "string",
      "description": "For the first ListOperations request, omit this value. If the response contains NextToken, submit another ListOperations request to get the next group of results. Specify the value of NextToken from the previous response in the next request. Cloud Map gets MaxResults operations and then filters them based on the specified criteria. It's possible that no operations in the first MaxResults operations matched the specified criteria but that subsequent groups of MaxResults operations do contain operations that match the criteria."
    },
    "MaxResults": {
      "type": "integer",
      "description": "The maximum number of items that you want Cloud Map to return in the response to a ListOperations request. If you don't specify a value for MaxResults, Cloud Map returns up to 100 operations."
    },
    "Filters": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/OperationFilter"
      },
      "description": "A complex type that contains specifications for the operations that you want to list, for example, operations that you started between a specified start date and end date. If you specify more than one filter, an operation must match all filters to be returned by ListOperations."
    }
  },
  "$defs": {
    "OperationFilter": {
      "type": "object",
      "properties": {
        "Name": {
          "type": "string",
          "enum": [
            "NAMESPACE_ID",
            "SERVICE_ID",
            "STATUS",
            "TYPE",
            "UPDATE_DATE"
          ],
          "description": "Specify the operations that you want to get: NAMESPACE_ID: Gets operations related to specified namespaces. SERVICE_ID: Gets operations related to specified services. STATUS: Gets operations based on the status of the operations: SUBMITTED, PENDING, SUCCEED, or FAIL. TYPE: Gets specified types of operation. UPDATE_DATE: Gets operations that changed status during a specified date/time range."
        },
        "Values": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Specify values that are applicable to the value that you specify for Name: NAMESPACE_ID: Specify one namespace ID. SERVICE_ID: Specify one service ID. STATUS: Specify one or more statuses: SUBMITTED, PENDING, SUCCEED, or FAIL. TYPE: Specify one or more of the following types: CREATE_NAMESPACE, DELETE_NAMESPACE, UPDATE_SERVICE, REGISTER_INSTANCE, or DEREGISTER_INSTANCE. UPDATE_DATE: Specify a start date and an end date in Unix date/time format and Coordinated Universal Time (UTC). The start date must be the first value."
        },
        "Condition": {
          "type": "string",
          "enum": [
            "EQ",
            "IN",
            "BETWEEN",
            "BEGINS_WITH"
          ],
          "description": "The operator that you want to use to determine whether an operation matches the specified value. Valid values for condition include: EQ: When you specify EQ for the condition, you can specify only one value. EQ is supported for NAMESPACE_ID, SERVICE_ID, STATUS, and TYPE. EQ is the default condition and can be omitted. IN: When you specify IN for the condition, you can specify a list of one or more values. IN is supported for STATUS and TYPE. An operation must match one of the specified values to be returned in the response. BETWEEN: Specify a start date and an end date in Unix date/time format"
        }
      },
      "required": [
        "Name",
        "Values"
      ]
    }
  }
}