{
  "version": "2.0",
  "metadata": {
    "apiVersion": "2015-10-07",
    "endpointPrefix": "events",
    "jsonVersion": "1.1",
    "protocol": "json",
    "serviceFullName": "Amazon CloudWatch Events",
    "serviceId": "CloudWatch Events",
    "signatureVersion": "v4",
    "targetPrefix": "AWSEvents",
    "uid": "events-2015-10-07"
  },
  "operations": {
    "DeleteRule": {
      "input": {
        "type": "structure",
        "required": [
          "Name"
        ],
        "members": {
          "Name": {},
          "Force": {
            "type": "boolean"
          }
        }
      }
    },
    "DescribeEventBus": {
      "input": {
        "type": "structure",
        "members": {}
      },
      "output": {
        "type": "structure",
        "members": {
          "Name": {},
          "Arn": {},
          "Policy": {}
        }
      }
    },
    "DescribeRule": {
      "input": {
        "type": "structure",
        "required": [
          "Name"
        ],
        "members": {
          "Name": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "Name": {},
          "Arn": {},
          "EventPattern": {},
          "ScheduleExpression": {},
          "State": {},
          "Description": {},
          "RoleArn": {},
          "ManagedBy": {}
        }
      }
    },
    "DisableRule": {
      "input": {
        "type": "structure",
        "required": [
          "Name"
        ],
        "members": {
          "Name": {}
        }
      }
    },
    "EnableRule": {
      "input": {
        "type": "structure",
        "required": [
          "Name"
        ],
        "members": {
          "Name": {}
        }
      }
    },
    "ListRuleNamesByTarget": {
      "input": {
        "type": "structure",
        "required": [
          "TargetArn"
        ],
        "members": {
          "TargetArn": {},
          "NextToken": {},
          "Limit": {
            "type": "integer"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "RuleNames": {
            "type": "list",
            "member": {}
          },
          "NextToken": {}
        }
      }
    },
    "ListRules": {
      "input": {
        "type": "structure",
        "members": {
          "NamePrefix": {},
          "NextToken": {},
          "Limit": {
            "type": "integer"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "Rules": {
            "type": "list",
            "member": {
              "type": "structure",
              "members": {
                "Name": {},
                "Arn": {},
                "EventPattern": {},
                "State": {},
                "Description": {},
                "ScheduleExpression": {},
                "RoleArn": {},
                "ManagedBy": {}
              }
            }
          },
          "NextToken": {}
        }
      }
    },
    "ListTargetsByRule": {
      "input": {
        "type": "structure",
        "required": [
          "Rule"
        ],
        "members": {
          "Rule": {},
          "NextToken": {},
          "Limit": {
            "type": "integer"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "Targets": {
            "shape": "Su"
          },
          "NextToken": {}
        }
      }
    },
    "PutEvents": {
      "input": {
        "type": "structure",
        "required": [
          "Entries"
        ],
        "members": {
          "Entries": {
            "type": "list",
            "member": {
              "type": "structure",
              "members": {
                "Time": {
                  "type": "timestamp"
                },
                "Source": {},
                "Resources": {
                  "type": "list",
                  "member": {}
                },
                "DetailType": {},
                "Detail": {}
              }
            }
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "FailedEntryCount": {
            "type": "integer"
          },
          "Entries": {
            "type": "list",
            "member": {
              "type": "structure",
              "members": {
                "EventId": {},
                "ErrorCode": {},
                "ErrorMessage": {}
              }
            }
          }
        }
      }
    },
    "PutPermission": {
      "input": {
        "type": "structure",
        "required": [
          "Action",
          "Principal",
          "StatementId"
        ],
        "members": {
          "Action": {},
          "Principal": {},
          "StatementId": {},
          "Condition": {
            "type": "structure",
            "required": [
              "Type",
              "Key",
              "Value"
            ],
            "members": {
              "Type": {},
              "Key": {},
              "Value": {}
            }
          }
        }
      }
    },
    "PutRule": {
      "input": {
        "type": "structure",
        "required": [
          "Name"
        ],
        "members": {
          "Name": {},
          "ScheduleExpression": {},
          "EventPattern": {},
          "State": {},
          "Description": {},
          "RoleArn": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "RuleArn": {}
        }
      }
    },
    "PutTargets": {
      "input": {
        "type": "structure",
        "required": [
          "Rule",
          "Targets"
        ],
        "members": {
          "Rule": {},
          "Targets": {
            "shape": "Su"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "FailedEntryCount": {
            "type": "integer"
          },
          "FailedEntries": {
            "type": "list",
            "member": {
              "type": "structure",
              "members": {
                "TargetId": {},
                "ErrorCode": {},
                "ErrorMessage": {}
              }
            }
          }
        }
      }
    },
    "RemovePermission": {
      "input": {
        "type": "structure",
        "required": [
          "StatementId"
        ],
        "members": {
          "StatementId": {}
        }
      }
    },
    "RemoveTargets": {
      "input": {
        "type": "structure",
        "required": [
          "Rule",
          "Ids"
        ],
        "members": {
          "Rule": {},
          "Ids": {
            "type": "list",
            "member": {}
          },
          "Force": {
            "type": "boolean"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "FailedEntryCount": {
            "type": "integer"
          },
          "FailedEntries": {
            "type": "list",
            "member": {
              "type": "structure",
              "members": {
                "TargetId": {},
                "ErrorCode": {},
                "ErrorMessage": {}
              }
            }
          }
        }
      }
    },
    "TestEventPattern": {
      "input": {
        "type": "structure",
        "required": [
          "EventPattern",
          "Event"
        ],
        "members": {
          "EventPattern": {},
          "Event": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "Result": {
            "type": "boolean"
          }
        }
      }
    }
  },
  "shapes": {
    "Su": {
      "type": "list",
      "member": {
        "type": "structure",
        "required": [
          "Id",
          "Arn"
        ],
        "members": {
          "Id": {},
          "Arn": {},
          "RoleArn": {},
          "Input": {},
          "InputPath": {},
          "InputTransformer": {
            "type": "structure",
            "required": [
              "InputTemplate"
            ],
            "members": {
              "InputPathsMap": {
                "type": "map",
                "key": {},
                "value": {}
              },
              "InputTemplate": {}
            }
          },
          "KinesisParameters": {
            "type": "structure",
            "required": [
              "PartitionKeyPath"
            ],
            "members": {
              "PartitionKeyPath": {}
            }
          },
          "RunCommandParameters": {
            "type": "structure",
            "required": [
              "RunCommandTargets"
            ],
            "members": {
              "RunCommandTargets": {
                "type": "list",
                "member": {
                  "type": "structure",
                  "required": [
                    "Key",
                    "Values"
                  ],
                  "members": {
                    "Key": {},
                    "Values": {
                      "type": "list",
                      "member": {}
                    }
                  }
                }
              }
            }
          },
          "EcsParameters": {
            "type": "structure",
            "required": [
              "TaskDefinitionArn"
            ],
            "members": {
              "TaskDefinitionArn": {},
              "TaskCount": {
                "type": "integer"
              },
              "LaunchType": {},
              "NetworkConfiguration": {
                "type": "structure",
                "members": {
                  "awsvpcConfiguration": {
                    "type": "structure",
                    "required": [
                      "Subnets"
                    ],
                    "members": {
                      "Subnets": {
                        "shape": "S1h"
                      },
                      "SecurityGroups": {
                        "shape": "S1h"
                      },
                      "AssignPublicIp": {}
                    }
                  }
                }
              },
              "PlatformVersion": {},
              "Group": {}
            }
          },
          "BatchParameters": {
            "type": "structure",
            "required": [
              "JobDefinition",
              "JobName"
            ],
            "members": {
              "JobDefinition": {},
              "JobName": {},
              "ArrayProperties": {
                "type": "structure",
                "members": {
                  "Size": {
                    "type": "integer"
                  }
                }
              },
              "RetryStrategy": {
                "type": "structure",
                "members": {
                  "Attempts": {
                    "type": "integer"
                  }
                }
              }
            }
          },
          "SqsParameters": {
            "type": "structure",
            "members": {
              "MessageGroupId": {}
            }
          }
        }
      }
    },
    "S1h": {
      "type": "list",
      "member": {}
    }
  }
}