{"files":{"SKILL.md":"---\nname: aws-iot-events\ndescription: \"AWS IoT Events API skill. Use when working with AWS IoT Events for alarm-models, detector-models, inputs. Covers 26 endpoints.\"\nversion: 1.0.0\ngenerator: lapsh\n---\n\n# AWS IoT Events\nAPI version: 2018-07-27\n\n## Auth\nAWS SigV4\n\n## Base URL\nNot specified.\n\n## Setup\n1. Configure auth: AWS SigV4\n2. GET /logging -- retrieves the current settings of the aws iot events logging options.\n3. POST /alarm-models -- create first alarm-model\n\n## Endpoints\n26 endpoints across 7 groups. See references/api-spec.lap for full details.\n\n### Alarm-models\n| Method | Path | Description |\n|--------|------|-------------|\n| POST | /alarm-models | Creates an alarm model to monitor an AWS IoT Events input attribute. You can use the alarm to get notified when the value is outside a specified range. For more information, see Create an alarm model in the AWS IoT Events Developer Guide. |\n| DELETE | /alarm-models/{alarmModelName} | Deletes an alarm model. Any alarm instances that were created based on this alarm model are also deleted. This action can't be undone. |\n| GET | /alarm-models/{alarmModelName} | Retrieves information about an alarm model. If you don't specify a value for the alarmModelVersion parameter, the latest version is returned. |\n| GET | /alarm-models/{alarmModelName}/versions | Lists all the versions of an alarm model. The operation returns only the metadata associated with each alarm model version. |\n| GET | /alarm-models | Lists the alarm models that you created. The operation returns only the metadata associated with each alarm model. |\n| POST | /alarm-models/{alarmModelName} | Updates an alarm model. Any alarms that were created based on the previous version are deleted and then created again as new data arrives. |\n\n### Detector-models\n| Method | Path | Description |\n|--------|------|-------------|\n| POST | /detector-models | Creates a detector model. |\n| DELETE | /detector-models/{detectorModelName} | Deletes a detector model. Any active instances of the detector model are also deleted. |\n| GET | /detector-models/{detectorModelName} | Describes a detector model. If the version parameter is not specified, information about the latest version is returned. |\n| GET | /detector-models/{detectorModelName}/versions | Lists all the versions of a detector model. Only the metadata associated with each detector model version is returned. |\n| GET | /detector-models | Lists the detector models you have created. Only the metadata associated with each detector model is returned. |\n| POST | /detector-models/{detectorModelName} | Updates a detector model. Detectors (instances) spawned by the previous version are deleted and then re-created as new inputs arrive. |\n\n### Inputs\n| Method | Path | Description |\n|--------|------|-------------|\n| POST | /inputs | Creates an input. |\n| DELETE | /inputs/{inputName} | Deletes an input. |\n| GET | /inputs/{inputName} | Describes an input. |\n| GET | /inputs | Lists the inputs you have created. |\n| PUT | /inputs/{inputName} | Updates an input. |\n\n### Analysis\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /analysis/detector-models/{analysisId} | Retrieves runtime information about a detector model analysis.  After AWS IoT Events starts analyzing your detector model, you have up to 24 hours to retrieve the analysis results. |\n| GET | /analysis/detector-models/{analysisId}/results | Retrieves one or more analysis results of the detector model.  After AWS IoT Events starts analyzing your detector model, you have up to 24 hours to retrieve the analysis results. |\n| POST | /analysis/detector-models/ | Performs an analysis of your detector model. For more information, see Troubleshooting a detector model in the AWS IoT Events Developer Guide. |\n\n### Logging\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /logging | Retrieves the current settings of the AWS IoT Events logging options. |\n| PUT | /logging | Sets or updates the AWS IoT Events logging options. If you update the value of any loggingOptions field, it takes up to one minute for the change to take effect. If you change the policy attached to the role you specified in the roleArn field (for example, to correct an invalid policy), it takes up to five minutes for that change to take effect. |\n\n### Input-routings\n| Method | Path | Description |\n|--------|------|-------------|\n| POST | /input-routings | Lists one or more input routings. |\n\n### Tags\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /tags | Lists the tags (metadata) you have assigned to the resource. |\n| POST | /tags | Adds to or modifies the tags of the given resource. Tags are metadata that can be used to manage a resource. |\n| DELETE | /tags | Removes the given tags (metadata) from the resource. |\n\n## Common Questions\nMatch user requests to endpoints in references/api-spec.lap. Key patterns:\n- \"Create a alarm-model?\" -> POST /alarm-models\n- \"Create a detector-model?\" -> POST /detector-models\n- \"Create a input?\" -> POST /inputs\n- \"Delete a alarm-model?\" -> DELETE /alarm-models/{alarmModelName}\n- \"Delete a detector-model?\" -> DELETE /detector-models/{detectorModelName}\n- \"Delete a input?\" -> DELETE /inputs/{inputName}\n- \"Get alarm-model details?\" -> GET /alarm-models/{alarmModelName}\n- \"Get detector-model details?\" -> GET /detector-models/{detectorModelName}\n- \"Get input details?\" -> GET /inputs/{inputName}\n- \"List all logging?\" -> GET /logging\n- \"List all results?\" -> GET /analysis/detector-models/{analysisId}/results\n- \"List all versions?\" -> GET /alarm-models/{alarmModelName}/versions\n- \"List all alarm-models?\" -> GET /alarm-models\n- \"List all detector-models?\" -> GET /detector-models\n- \"Create a input-routing?\" -> POST /input-routings\n- \"List all inputs?\" -> GET /inputs\n- \"List all tags?\" -> GET /tags\n- \"Create a tag?\" -> POST /tags\n- \"Update a input?\" -> PUT /inputs/{inputName}\n- \"How to authenticate?\" -> See Auth section above\n\n## Response Tips\n- Check response schemas in references/api-spec.lap for field details\n- Create/update endpoints return the modified resource on success\n\n## References\n- Full spec: See references/api-spec.lap for complete endpoint details, parameter tables, and response schemas\n\n> Generated from the official API spec by [LAP](https://lap.sh)\n","references/api-spec.lap":"@lap v0.3\n# Machine-readable API spec. Each @endpoint block is one API call.\n@api AWS IoT Events\n@version 2018-07-27\n@auth AWS SigV4\n@endpoints 26\n@hint download_for_search\n@toc alarm-models(6), detector-models(6), inputs(5), analysis(3), logging(2), input-routings(1), tags(3)\n\n@group alarm-models\n@endpoint POST /alarm-models\n@desc Creates an alarm model to monitor an AWS IoT Events input attribute. You can use the alarm to get notified when the value is outside a specified range. For more information, see Create an alarm model in the AWS IoT Events Developer Guide.\n@required {alarmModelName: str, roleArn: str, alarmRule: AlarmRule}\n@optional {alarmModelDescription: str, tags: [Tag], key: str, severity: int, alarmNotification: AlarmNotification, alarmEventActions: AlarmEventActions, alarmCapabilities: AlarmCapabilities}\n@returns(200) {creationTime: str(timestamp)?, alarmModelArn: str?, alarmModelVersion: str?, lastUpdateTime: str(timestamp)?, status: str?}\n\n@endgroup\n\n@group detector-models\n@endpoint POST /detector-models\n@desc Creates a detector model.\n@required {detectorModelName: str, detectorModelDefinition: DetectorModelDefinition, roleArn: str}\n@optional {detectorModelDescription: str, key: str, tags: [Tag], evaluationMethod: str}\n@returns(200) {detectorModelConfiguration: DetectorModelConfiguration?{detectorModelName: str?, detectorModelVersion: str?, detectorModelDescription: str?, detectorModelArn: str?, roleArn: str?, creationTime: str(timestamp)?, lastUpdateTime: str(timestamp)?, status: str?, key: str?, evaluationMethod: str?}}\n\n@endgroup\n\n@group inputs\n@endpoint POST /inputs\n@desc Creates an input.\n@required {inputName: str, inputDefinition: InputDefinition}\n@optional {inputDescription: str, tags: [Tag]}\n@returns(200) {inputConfiguration: InputConfiguration?{inputName: str, inputDescription: str?, inputArn: str, creationTime: str(timestamp), lastUpdateTime: str(timestamp), status: str}}\n\n@endgroup\n\n@group alarm-models\n@endpoint DELETE /alarm-models/{alarmModelName}\n@desc Deletes an alarm model. Any alarm instances that were created based on this alarm model are also deleted. This action can't be undone.\n@required {alarmModelName: str}\n\n@endgroup\n\n@group detector-models\n@endpoint DELETE /detector-models/{detectorModelName}\n@desc Deletes a detector model. Any active instances of the detector model are also deleted.\n@required {detectorModelName: str}\n\n@endgroup\n\n@group inputs\n@endpoint DELETE /inputs/{inputName}\n@desc Deletes an input.\n@required {inputName: str}\n\n@endgroup\n\n@group alarm-models\n@endpoint GET /alarm-models/{alarmModelName}\n@desc Retrieves information about an alarm model. If you don't specify a value for the alarmModelVersion parameter, the latest version is returned.\n@required {alarmModelName: str}\n@optional {version: str}\n@returns(200) {creationTime: str(timestamp)?, alarmModelArn: str?, alarmModelVersion: str?, lastUpdateTime: str(timestamp)?, status: str?, statusMessage: str?, alarmModelName: str?, alarmModelDescription: str?, roleArn: str?, key: str?, severity: int?, alarmRule: AlarmRule?{simpleRule: SimpleRule?{inputProperty: str, comparisonOperator: str, threshold: str}}, alarmNotification: AlarmNotification?{notificationActions: [NotificationAction]?}, alarmEventActions: AlarmEventActions?{alarmActions: [AlarmAction]?}, alarmCapabilities: AlarmCapabilities?{initializationConfiguration: InitializationConfiguration?{disabledOnInitialization: bool}, acknowledgeFlow: AcknowledgeFlow?{enabled: bool}}}\n\n@endgroup\n\n@group detector-models\n@endpoint GET /detector-models/{detectorModelName}\n@desc Describes a detector model. If the version parameter is not specified, information about the latest version is returned.\n@required {detectorModelName: str}\n@optional {version: str}\n@returns(200) {detectorModel: DetectorModel?{detectorModelDefinition: DetectorModelDefinition?{states: [State], initialStateName: str}, detectorModelConfiguration: DetectorModelConfiguration?{detectorModelName: str?, detectorModelVersion: str?, detectorModelDescription: str?, detectorModelArn: str?, roleArn: str?, creationTime: str(timestamp)?, lastUpdateTime: str(timestamp)?, status: str?, key: str?, evaluationMethod: str?}}}\n\n@endgroup\n\n@group analysis\n@endpoint GET /analysis/detector-models/{analysisId}\n@desc Retrieves runtime information about a detector model analysis.  After AWS IoT Events starts analyzing your detector model, you have up to 24 hours to retrieve the analysis results.\n@required {analysisId: str}\n@returns(200) {status: str?}\n\n@endgroup\n\n@group inputs\n@endpoint GET /inputs/{inputName}\n@desc Describes an input.\n@required {inputName: str}\n@returns(200) {input: Input?{inputConfiguration: InputConfiguration?{inputName: str, inputDescription: str?, inputArn: str, creationTime: str(timestamp), lastUpdateTime: str(timestamp), status: str}, inputDefinition: InputDefinition?{attributes: [Attribute]}}}\n\n@endgroup\n\n@group logging\n@endpoint GET /logging\n@desc Retrieves the current settings of the AWS IoT Events logging options.\n@returns(200) {loggingOptions: LoggingOptions?{roleArn: str, level: str, enabled: bool, detectorDebugOptions: [DetectorDebugOption]?}}\n\n@endgroup\n\n@group analysis\n@endpoint GET /analysis/detector-models/{analysisId}/results\n@desc Retrieves one or more analysis results of the detector model.  After AWS IoT Events starts analyzing your detector model, you have up to 24 hours to retrieve the analysis results.\n@required {analysisId: str}\n@optional {nextToken: str, maxResults: int}\n@returns(200) {analysisResults: [AnalysisResult]?, nextToken: str?}\n\n@endgroup\n\n@group alarm-models\n@endpoint GET /alarm-models/{alarmModelName}/versions\n@desc Lists all the versions of an alarm model. The operation returns only the metadata associated with each alarm model version.\n@required {alarmModelName: str}\n@optional {nextToken: str, maxResults: int}\n@returns(200) {alarmModelVersionSummaries: [AlarmModelVersionSummary]?, nextToken: str?}\n\n@endpoint GET /alarm-models\n@desc Lists the alarm models that you created. The operation returns only the metadata associated with each alarm model.\n@optional {nextToken: str, maxResults: int}\n@returns(200) {alarmModelSummaries: [AlarmModelSummary]?, nextToken: str?}\n\n@endgroup\n\n@group detector-models\n@endpoint GET /detector-models/{detectorModelName}/versions\n@desc Lists all the versions of a detector model. Only the metadata associated with each detector model version is returned.\n@required {detectorModelName: str}\n@optional {nextToken: str, maxResults: int}\n@returns(200) {detectorModelVersionSummaries: [DetectorModelVersionSummary]?, nextToken: str?}\n\n@endpoint GET /detector-models\n@desc Lists the detector models you have created. Only the metadata associated with each detector model is returned.\n@optional {nextToken: str, maxResults: int}\n@returns(200) {detectorModelSummaries: [DetectorModelSummary]?, nextToken: str?}\n\n@endgroup\n\n@group input-routings\n@endpoint POST /input-routings\n@desc Lists one or more input routings.\n@required {inputIdentifier: InputIdentifier}\n@optional {maxResults: int, nextToken: str}\n@returns(200) {routedResources: [RoutedResource]?, nextToken: str?}\n\n@endgroup\n\n@group inputs\n@endpoint GET /inputs\n@desc Lists the inputs you have created.\n@optional {nextToken: str, maxResults: int}\n@returns(200) {inputSummaries: [InputSummary]?, nextToken: str?}\n\n@endgroup\n\n@group tags\n@endpoint GET /tags\n@desc Lists the tags (metadata) you have assigned to the resource.\n@required {resourceArn: str}\n@returns(200) {tags: [Tag]?}\n\n@endgroup\n\n@group logging\n@endpoint PUT /logging\n@desc Sets or updates the AWS IoT Events logging options. If you update the value of any loggingOptions field, it takes up to one minute for the change to take effect. If you change the policy attached to the role you specified in the roleArn field (for example, to correct an invalid policy), it takes up to five minutes for that change to take effect.\n@required {loggingOptions: LoggingOptions}\n\n@endgroup\n\n@group analysis\n@endpoint POST /analysis/detector-models/\n@desc Performs an analysis of your detector model. For more information, see Troubleshooting a detector model in the AWS IoT Events Developer Guide.\n@required {detectorModelDefinition: DetectorModelDefinition}\n@returns(200) {analysisId: str?}\n\n@endgroup\n\n@group tags\n@endpoint POST /tags\n@desc Adds to or modifies the tags of the given resource. Tags are metadata that can be used to manage a resource.\n@required {resourceArn: str, tags: [Tag]}\n\n@endpoint DELETE /tags\n@desc Removes the given tags (metadata) from the resource.\n@required {resourceArn: str, tagKeys: [str]}\n\n@endgroup\n\n@group alarm-models\n@endpoint POST /alarm-models/{alarmModelName}\n@desc Updates an alarm model. Any alarms that were created based on the previous version are deleted and then created again as new data arrives.\n@required {alarmModelName: str, roleArn: str, alarmRule: AlarmRule}\n@optional {alarmModelDescription: str, severity: int, alarmNotification: AlarmNotification, alarmEventActions: AlarmEventActions, alarmCapabilities: AlarmCapabilities}\n@returns(200) {creationTime: str(timestamp)?, alarmModelArn: str?, alarmModelVersion: str?, lastUpdateTime: str(timestamp)?, status: str?}\n\n@endgroup\n\n@group detector-models\n@endpoint POST /detector-models/{detectorModelName}\n@desc Updates a detector model. Detectors (instances) spawned by the previous version are deleted and then re-created as new inputs arrive.\n@required {detectorModelName: str, detectorModelDefinition: DetectorModelDefinition, roleArn: str}\n@optional {detectorModelDescription: str, evaluationMethod: str}\n@returns(200) {detectorModelConfiguration: DetectorModelConfiguration?{detectorModelName: str?, detectorModelVersion: str?, detectorModelDescription: str?, detectorModelArn: str?, roleArn: str?, creationTime: str(timestamp)?, lastUpdateTime: str(timestamp)?, status: str?, key: str?, evaluationMethod: str?}}\n\n@endgroup\n\n@group inputs\n@endpoint PUT /inputs/{inputName}\n@desc Updates an input.\n@required {inputName: str, inputDefinition: InputDefinition}\n@optional {inputDescription: str}\n@returns(200) {inputConfiguration: InputConfiguration?{inputName: str, inputDescription: str?, inputArn: str, creationTime: str(timestamp), lastUpdateTime: str(timestamp), status: str}}\n\n@endgroup\n\n@end\n"}}