1{ 2 "version":"2.0", 3 "metadata":{ 4 "apiVersion":"2020-11-30", 5 "endpointPrefix":"greengrass", 6 "jsonVersion":"1.1", 7 "protocol":"rest-json", 8 "serviceAbbreviation":"AWS GreengrassV2", 9 "serviceFullName":"AWS IoT Greengrass V2", 10 "serviceId":"GreengrassV2", 11 "signatureVersion":"v4", 12 "uid":"greengrassv2-2020-11-30" 13 }, 14 "operations":{ 15 "CancelDeployment":{ 16 "name":"CancelDeployment", 17 "http":{ 18 "method":"POST", 19 "requestUri":"/greengrass/v2/deployments/{deploymentId}/cancel" 20 }, 21 "input":{"shape":"CancelDeploymentRequest"}, 22 "output":{"shape":"CancelDeploymentResponse"}, 23 "errors":[ 24 {"shape":"ResourceNotFoundException"}, 25 {"shape":"ValidationException"}, 26 {"shape":"AccessDeniedException"}, 27 {"shape":"InternalServerException"}, 28 {"shape":"ConflictException"}, 29 {"shape":"ThrottlingException"} 30 ] 31 }, 32 "CreateComponentVersion":{ 33 "name":"CreateComponentVersion", 34 "http":{ 35 "method":"POST", 36 "requestUri":"/greengrass/v2/createComponentVersion", 37 "responseCode":201 38 }, 39 "input":{"shape":"CreateComponentVersionRequest"}, 40 "output":{"shape":"CreateComponentVersionResponse"}, 41 "errors":[ 42 {"shape":"ValidationException"}, 43 {"shape":"ServiceQuotaExceededException"}, 44 {"shape":"AccessDeniedException"}, 45 {"shape":"ConflictException"}, 46 {"shape":"ThrottlingException"}, 47 {"shape":"InternalServerException"} 48 ] 49 }, 50 "CreateDeployment":{ 51 "name":"CreateDeployment", 52 "http":{ 53 "method":"POST", 54 "requestUri":"/greengrass/v2/deployments", 55 "responseCode":201 56 }, 57 "input":{"shape":"CreateDeploymentRequest"}, 58 "output":{"shape":"CreateDeploymentResponse"}, 59 "errors":[ 60 {"shape":"ResourceNotFoundException"}, 61 {"shape":"ValidationException"}, 62 {"shape":"AccessDeniedException"}, 63 {"shape":"ThrottlingException"}, 64 {"shape":"InternalServerException"} 65 ] 66 }, 67 "DeleteComponent":{ 68 "name":"DeleteComponent", 69 "http":{ 70 "method":"DELETE", 71 "requestUri":"/greengrass/v2/components/{arn}", 72 "responseCode":204 73 }, 74 "input":{"shape":"DeleteComponentRequest"}, 75 "errors":[ 76 {"shape":"ValidationException"}, 77 {"shape":"AccessDeniedException"}, 78 {"shape":"ConflictException"}, 79 {"shape":"ResourceNotFoundException"}, 80 {"shape":"ThrottlingException"}, 81 {"shape":"InternalServerException"} 82 ] 83 }, 84 "DeleteCoreDevice":{ 85 "name":"DeleteCoreDevice", 86 "http":{ 87 "method":"DELETE", 88 "requestUri":"/greengrass/v2/coreDevices/{coreDeviceThingName}", 89 "responseCode":204 90 }, 91 "input":{"shape":"DeleteCoreDeviceRequest"}, 92 "errors":[ 93 {"shape":"ValidationException"}, 94 {"shape":"ResourceNotFoundException"}, 95 {"shape":"AccessDeniedException"}, 96 {"shape":"InternalServerException"}, 97 {"shape":"ThrottlingException"}, 98 {"shape":"ConflictException"} 99 ] 100 }, 101 "DescribeComponent":{ 102 "name":"DescribeComponent", 103 "http":{ 104 "method":"GET", 105 "requestUri":"/greengrass/v2/components/{arn}/metadata" 106 }, 107 "input":{"shape":"DescribeComponentRequest"}, 108 "output":{"shape":"DescribeComponentResponse"}, 109 "errors":[ 110 {"shape":"ValidationException"}, 111 {"shape":"AccessDeniedException"}, 112 {"shape":"ResourceNotFoundException"}, 113 {"shape":"ThrottlingException"}, 114 {"shape":"InternalServerException"} 115 ] 116 }, 117 "GetComponent":{ 118 "name":"GetComponent", 119 "http":{ 120 "method":"GET", 121 "requestUri":"/greengrass/v2/components/{arn}" 122 }, 123 "input":{"shape":"GetComponentRequest"}, 124 "output":{"shape":"GetComponentResponse"}, 125 "errors":[ 126 {"shape":"ValidationException"}, 127 {"shape":"AccessDeniedException"}, 128 {"shape":"ResourceNotFoundException"}, 129 {"shape":"ThrottlingException"}, 130 {"shape":"InternalServerException"} 131 ] 132 }, 133 "GetComponentVersionArtifact":{ 134 "name":"GetComponentVersionArtifact", 135 "http":{ 136 "method":"GET", 137 "requestUri":"/greengrass/v2/components/{arn}/artifacts/{artifactName+}" 138 }, 139 "input":{"shape":"GetComponentVersionArtifactRequest"}, 140 "output":{"shape":"GetComponentVersionArtifactResponse"}, 141 "errors":[ 142 {"shape":"ValidationException"}, 143 {"shape":"AccessDeniedException"}, 144 {"shape":"ResourceNotFoundException"}, 145 {"shape":"ThrottlingException"}, 146 {"shape":"InternalServerException"} 147 ] 148 }, 149 "GetCoreDevice":{ 150 "name":"GetCoreDevice", 151 "http":{ 152 "method":"GET", 153 "requestUri":"/greengrass/v2/coreDevices/{coreDeviceThingName}" 154 }, 155 "input":{"shape":"GetCoreDeviceRequest"}, 156 "output":{"shape":"GetCoreDeviceResponse"}, 157 "errors":[ 158 {"shape":"ValidationException"}, 159 {"shape":"ResourceNotFoundException"}, 160 {"shape":"AccessDeniedException"}, 161 {"shape":"InternalServerException"}, 162 {"shape":"ThrottlingException"} 163 ] 164 }, 165 "GetDeployment":{ 166 "name":"GetDeployment", 167 "http":{ 168 "method":"GET", 169 "requestUri":"/greengrass/v2/deployments/{deploymentId}" 170 }, 171 "input":{"shape":"GetDeploymentRequest"}, 172 "output":{"shape":"GetDeploymentResponse"}, 173 "errors":[ 174 {"shape":"ValidationException"}, 175 {"shape":"ResourceNotFoundException"}, 176 {"shape":"AccessDeniedException"}, 177 {"shape":"InternalServerException"}, 178 {"shape":"ThrottlingException"} 179 ] 180 }, 181 "ListComponentVersions":{ 182 "name":"ListComponentVersions", 183 "http":{ 184 "method":"GET", 185 "requestUri":"/greengrass/v2/components/{arn}/versions" 186 }, 187 "input":{"shape":"ListComponentVersionsRequest"}, 188 "output":{"shape":"ListComponentVersionsResponse"}, 189 "errors":[ 190 {"shape":"ValidationException"}, 191 {"shape":"AccessDeniedException"}, 192 {"shape":"ResourceNotFoundException"}, 193 {"shape":"ThrottlingException"}, 194 {"shape":"InternalServerException"} 195 ] 196 }, 197 "ListComponents":{ 198 "name":"ListComponents", 199 "http":{ 200 "method":"GET", 201 "requestUri":"/greengrass/v2/components" 202 }, 203 "input":{"shape":"ListComponentsRequest"}, 204 "output":{"shape":"ListComponentsResponse"}, 205 "errors":[ 206 {"shape":"ValidationException"}, 207 {"shape":"AccessDeniedException"}, 208 {"shape":"ThrottlingException"}, 209 {"shape":"InternalServerException"} 210 ] 211 }, 212 "ListCoreDevices":{ 213 "name":"ListCoreDevices", 214 "http":{ 215 "method":"GET", 216 "requestUri":"/greengrass/v2/coreDevices" 217 }, 218 "input":{"shape":"ListCoreDevicesRequest"}, 219 "output":{"shape":"ListCoreDevicesResponse"}, 220 "errors":[ 221 {"shape":"ValidationException"}, 222 {"shape":"AccessDeniedException"}, 223 {"shape":"InternalServerException"}, 224 {"shape":"ThrottlingException"} 225 ] 226 }, 227 "ListDeployments":{ 228 "name":"ListDeployments", 229 "http":{ 230 "method":"GET", 231 "requestUri":"/greengrass/v2/deployments" 232 }, 233 "input":{"shape":"ListDeploymentsRequest"}, 234 "output":{"shape":"ListDeploymentsResponse"}, 235 "errors":[ 236 {"shape":"ValidationException"}, 237 {"shape":"AccessDeniedException"}, 238 {"shape":"InternalServerException"}, 239 {"shape":"ThrottlingException"} 240 ] 241 }, 242 "ListEffectiveDeployments":{ 243 "name":"ListEffectiveDeployments", 244 "http":{ 245 "method":"GET", 246 "requestUri":"/greengrass/v2/coreDevices/{coreDeviceThingName}/effectiveDeployments" 247 }, 248 "input":{"shape":"ListEffectiveDeploymentsRequest"}, 249 "output":{"shape":"ListEffectiveDeploymentsResponse"}, 250 "errors":[ 251 {"shape":"ValidationException"}, 252 {"shape":"ResourceNotFoundException"}, 253 {"shape":"AccessDeniedException"}, 254 {"shape":"InternalServerException"}, 255 {"shape":"ThrottlingException"} 256 ] 257 }, 258 "ListInstalledComponents":{ 259 "name":"ListInstalledComponents", 260 "http":{ 261 "method":"GET", 262 "requestUri":"/greengrass/v2/coreDevices/{coreDeviceThingName}/installedComponents" 263 }, 264 "input":{"shape":"ListInstalledComponentsRequest"}, 265 "output":{"shape":"ListInstalledComponentsResponse"}, 266 "errors":[ 267 {"shape":"ValidationException"}, 268 {"shape":"ResourceNotFoundException"}, 269 {"shape":"AccessDeniedException"}, 270 {"shape":"InternalServerException"}, 271 {"shape":"ThrottlingException"} 272 ] 273 }, 274 "ListTagsForResource":{ 275 "name":"ListTagsForResource", 276 "http":{ 277 "method":"GET", 278 "requestUri":"/tags/{resourceArn}" 279 }, 280 "input":{"shape":"ListTagsForResourceRequest"}, 281 "output":{"shape":"ListTagsForResourceResponse"}, 282 "errors":[ 283 {"shape":"InternalServerException"}, 284 {"shape":"ValidationException"}, 285 {"shape":"ResourceNotFoundException"} 286 ] 287 }, 288 "ResolveComponentCandidates":{ 289 "name":"ResolveComponentCandidates", 290 "http":{ 291 "method":"POST", 292 "requestUri":"/greengrass/v2/resolveComponentCandidates" 293 }, 294 "input":{"shape":"ResolveComponentCandidatesRequest"}, 295 "output":{"shape":"ResolveComponentCandidatesResponse"}, 296 "errors":[ 297 {"shape":"ValidationException"}, 298 {"shape":"AccessDeniedException"}, 299 {"shape":"ResourceNotFoundException"}, 300 {"shape":"ThrottlingException"}, 301 {"shape":"InternalServerException"}, 302 {"shape":"ConflictException"} 303 ] 304 }, 305 "TagResource":{ 306 "name":"TagResource", 307 "http":{ 308 "method":"POST", 309 "requestUri":"/tags/{resourceArn}" 310 }, 311 "input":{"shape":"TagResourceRequest"}, 312 "output":{"shape":"TagResourceResponse"}, 313 "errors":[ 314 {"shape":"InternalServerException"}, 315 {"shape":"ValidationException"}, 316 {"shape":"ResourceNotFoundException"} 317 ] 318 }, 319 "UntagResource":{ 320 "name":"UntagResource", 321 "http":{ 322 "method":"DELETE", 323 "requestUri":"/tags/{resourceArn}" 324 }, 325 "input":{"shape":"UntagResourceRequest"}, 326 "output":{"shape":"UntagResourceResponse"}, 327 "errors":[ 328 {"shape":"InternalServerException"}, 329 {"shape":"ValidationException"}, 330 {"shape":"ResourceNotFoundException"} 331 ] 332 } 333 }, 334 "shapes":{ 335 "AccessDeniedException":{ 336 "type":"structure", 337 "required":["message"], 338 "members":{ 339 "message":{"shape":"String"} 340 }, 341 "error":{"httpStatusCode":403}, 342 "exception":true 343 }, 344 "CancelDeploymentRequest":{ 345 "type":"structure", 346 "required":["deploymentId"], 347 "members":{ 348 "deploymentId":{ 349 "shape":"NonEmptyString", 350 "location":"uri", 351 "locationName":"deploymentId" 352 } 353 } 354 }, 355 "CancelDeploymentResponse":{ 356 "type":"structure", 357 "members":{ 358 "message":{"shape":"NonEmptyString"} 359 } 360 }, 361 "CloudComponentState":{ 362 "type":"string", 363 "enum":[ 364 "REQUESTED", 365 "INITIATED", 366 "DEPLOYABLE", 367 "FAILED", 368 "DEPRECATED" 369 ] 370 }, 371 "CloudComponentStatus":{ 372 "type":"structure", 373 "members":{ 374 "componentState":{"shape":"CloudComponentState"}, 375 "message":{"shape":"NonEmptyString"}, 376 "errors":{"shape":"StringMap"} 377 } 378 }, 379 "Component":{ 380 "type":"structure", 381 "members":{ 382 "arn":{"shape":"ComponentARN"}, 383 "componentName":{"shape":"ComponentNameString"}, 384 "latestVersion":{"shape":"ComponentLatestVersion"} 385 } 386 }, 387 "ComponentARN":{ 388 "type":"string", 389 "pattern":"arn:aws(-cn|-us-gov)?:greengrass:[^:]+:(aws|[0-9]+):components:[^:]+" 390 }, 391 "ComponentCandidate":{ 392 "type":"structure", 393 "members":{ 394 "componentName":{"shape":"ComponentNameString"}, 395 "componentVersion":{"shape":"ComponentVersionString"}, 396 "versionRequirements":{"shape":"ComponentVersionRequirementMap"} 397 } 398 }, 399 "ComponentCandidateList":{ 400 "type":"list", 401 "member":{"shape":"ComponentCandidate"} 402 }, 403 "ComponentConfigurationPath":{ 404 "type":"string", 405 "max":256, 406 "min":0 407 }, 408 "ComponentConfigurationPathList":{ 409 "type":"list", 410 "member":{"shape":"ComponentConfigurationPath"} 411 }, 412 "ComponentConfigurationString":{ 413 "type":"string", 414 "max":65536, 415 "min":1 416 }, 417 "ComponentConfigurationUpdate":{ 418 "type":"structure", 419 "members":{ 420 "merge":{"shape":"ComponentConfigurationString"}, 421 "reset":{"shape":"ComponentConfigurationPathList"} 422 } 423 }, 424 "ComponentDependencyMap":{ 425 "type":"map", 426 "key":{"shape":"NonEmptyString"}, 427 "value":{"shape":"ComponentDependencyRequirement"} 428 }, 429 "ComponentDependencyRequirement":{ 430 "type":"structure", 431 "members":{ 432 "versionRequirement":{"shape":"NonEmptyString"}, 433 "dependencyType":{"shape":"ComponentDependencyType"} 434 } 435 }, 436 "ComponentDependencyType":{ 437 "type":"string", 438 "enum":[ 439 "HARD", 440 "SOFT" 441 ] 442 }, 443 "ComponentDeploymentSpecification":{ 444 "type":"structure", 445 "members":{ 446 "componentVersion":{"shape":"ComponentVersionString"}, 447 "configurationUpdate":{"shape":"ComponentConfigurationUpdate"}, 448 "runWith":{"shape":"ComponentRunWith"} 449 } 450 }, 451 "ComponentDeploymentSpecifications":{ 452 "type":"map", 453 "key":{"shape":"NonEmptyString"}, 454 "value":{"shape":"ComponentDeploymentSpecification"} 455 }, 456 "ComponentLatestVersion":{ 457 "type":"structure", 458 "members":{ 459 "arn":{"shape":"ComponentVersionARN"}, 460 "componentVersion":{"shape":"ComponentVersionString"}, 461 "creationTimestamp":{"shape":"Timestamp"}, 462 "description":{"shape":"NonEmptyString"}, 463 "publisher":{"shape":"NonEmptyString"}, 464 "platforms":{"shape":"ComponentPlatformList"} 465 } 466 }, 467 "ComponentList":{ 468 "type":"list", 469 "member":{"shape":"Component"} 470 }, 471 "ComponentNameString":{ 472 "type":"string", 473 "max":128, 474 "min":1, 475 "pattern":"[a-zA-Z0-9-_.]+" 476 }, 477 "ComponentPlatform":{ 478 "type":"structure", 479 "members":{ 480 "name":{"shape":"NonEmptyString"}, 481 "attributes":{"shape":"PlatformAttributesMap"} 482 } 483 }, 484 "ComponentPlatformList":{ 485 "type":"list", 486 "member":{"shape":"ComponentPlatform"} 487 }, 488 "ComponentRunWith":{ 489 "type":"structure", 490 "members":{ 491 "posixUser":{"shape":"NonEmptyString"} 492 } 493 }, 494 "ComponentVersionARN":{ 495 "type":"string", 496 "pattern":"arn:aws(-cn|-us-gov)?:greengrass:[^:]+:(aws|[0-9]+):components:[^:]+:versions:[^:]+" 497 }, 498 "ComponentVersionList":{ 499 "type":"list", 500 "member":{"shape":"ComponentVersionListItem"} 501 }, 502 "ComponentVersionListItem":{ 503 "type":"structure", 504 "members":{ 505 "componentName":{"shape":"ComponentNameString"}, 506 "componentVersion":{"shape":"ComponentVersionString"}, 507 "arn":{"shape":"NonEmptyString"} 508 } 509 }, 510 "ComponentVersionRequirementMap":{ 511 "type":"map", 512 "key":{"shape":"NonEmptyString"}, 513 "value":{"shape":"NonEmptyString"} 514 }, 515 "ComponentVersionString":{ 516 "type":"string", 517 "max":64, 518 "min":1, 519 "pattern":"[0-9a-zA-Z-.+]+" 520 }, 521 "ComponentVisibilityScope":{ 522 "type":"string", 523 "enum":[ 524 "PRIVATE", 525 "PUBLIC" 526 ] 527 }, 528 "ConflictException":{ 529 "type":"structure", 530 "required":[ 531 "message", 532 "resourceId", 533 "resourceType" 534 ], 535 "members":{ 536 "message":{"shape":"String"}, 537 "resourceId":{"shape":"String"}, 538 "resourceType":{"shape":"String"} 539 }, 540 "error":{"httpStatusCode":409}, 541 "exception":true 542 }, 543 "CoreDevice":{ 544 "type":"structure", 545 "members":{ 546 "coreDeviceThingName":{"shape":"CoreDeviceThingName"}, 547 "status":{"shape":"CoreDeviceStatus"}, 548 "lastStatusUpdateTimestamp":{"shape":"Timestamp"} 549 } 550 }, 551 "CoreDeviceArchitectureString":{ 552 "type":"string", 553 "max":255, 554 "min":1 555 }, 556 "CoreDevicePlatformString":{ 557 "type":"string", 558 "max":255, 559 "min":1 560 }, 561 "CoreDeviceStatus":{ 562 "type":"string", 563 "enum":[ 564 "HEALTHY", 565 "UNHEALTHY" 566 ] 567 }, 568 "CoreDeviceThingName":{ 569 "type":"string", 570 "max":128, 571 "min":1 572 }, 573 "CoreDevicesList":{ 574 "type":"list", 575 "member":{"shape":"CoreDevice"} 576 }, 577 "CreateComponentVersionRequest":{ 578 "type":"structure", 579 "members":{ 580 "inlineRecipe":{"shape":"RecipeBlob"}, 581 "lambdaFunction":{"shape":"LambdaFunctionRecipeSource"}, 582 "tags":{"shape":"TagMap"} 583 } 584 }, 585 "CreateComponentVersionResponse":{ 586 "type":"structure", 587 "required":[ 588 "componentName", 589 "componentVersion", 590 "creationTimestamp", 591 "status" 592 ], 593 "members":{ 594 "arn":{"shape":"ComponentVersionARN"}, 595 "componentName":{"shape":"ComponentNameString"}, 596 "componentVersion":{"shape":"ComponentVersionString"}, 597 "creationTimestamp":{"shape":"Timestamp"}, 598 "status":{"shape":"CloudComponentStatus"} 599 } 600 }, 601 "CreateDeploymentRequest":{ 602 "type":"structure", 603 "required":["targetArn"], 604 "members":{ 605 "targetArn":{"shape":"TargetARN"}, 606 "deploymentName":{"shape":"NonEmptyString"}, 607 "components":{"shape":"ComponentDeploymentSpecifications"}, 608 "iotJobConfiguration":{"shape":"DeploymentIoTJobConfiguration"}, 609 "deploymentPolicies":{"shape":"DeploymentPolicies"}, 610 "tags":{"shape":"TagMap"} 611 } 612 }, 613 "CreateDeploymentResponse":{ 614 "type":"structure", 615 "members":{ 616 "deploymentId":{"shape":"NonEmptyString"}, 617 "iotJobId":{"shape":"NonEmptyString"}, 618 "iotJobArn":{"shape":"IoTJobARN"} 619 } 620 }, 621 "DefaultMaxResults":{ 622 "type":"integer", 623 "max":100, 624 "min":1 625 }, 626 "DeleteComponentRequest":{ 627 "type":"structure", 628 "required":["arn"], 629 "members":{ 630 "arn":{ 631 "shape":"ComponentVersionARN", 632 "location":"uri", 633 "locationName":"arn" 634 } 635 } 636 }, 637 "DeleteCoreDeviceRequest":{ 638 "type":"structure", 639 "required":["coreDeviceThingName"], 640 "members":{ 641 "coreDeviceThingName":{ 642 "shape":"CoreDeviceThingName", 643 "location":"uri", 644 "locationName":"coreDeviceThingName" 645 } 646 } 647 }, 648 "Deployment":{ 649 "type":"structure", 650 "members":{ 651 "targetArn":{"shape":"TargetARN"}, 652 "revisionId":{"shape":"NonEmptyString"}, 653 "deploymentId":{"shape":"NonEmptyString"}, 654 "deploymentName":{"shape":"NonEmptyString"}, 655 "creationTimestamp":{"shape":"Timestamp"}, 656 "deploymentStatus":{"shape":"DeploymentStatus"}, 657 "isLatestForTarget":{"shape":"IsLatestForTarget"} 658 } 659 }, 660 "DeploymentComponentUpdatePolicy":{ 661 "type":"structure", 662 "members":{ 663 "timeoutInSeconds":{ 664 "shape":"OptionalInteger", 665 "box":true 666 }, 667 "action":{"shape":"DeploymentComponentUpdatePolicyAction"} 668 } 669 }, 670 "DeploymentComponentUpdatePolicyAction":{ 671 "type":"string", 672 "enum":[ 673 "NOTIFY_COMPONENTS", 674 "SKIP_NOTIFY_COMPONENTS" 675 ] 676 }, 677 "DeploymentConfigurationValidationPolicy":{ 678 "type":"structure", 679 "members":{ 680 "timeoutInSeconds":{ 681 "shape":"OptionalInteger", 682 "box":true 683 } 684 } 685 }, 686 "DeploymentFailureHandlingPolicy":{ 687 "type":"string", 688 "enum":[ 689 "ROLLBACK", 690 "DO_NOTHING" 691 ] 692 }, 693 "DeploymentHistoryFilter":{ 694 "type":"string", 695 "enum":[ 696 "ALL", 697 "LATEST_ONLY" 698 ] 699 }, 700 "DeploymentID":{"type":"string"}, 701 "DeploymentIoTJobConfiguration":{ 702 "type":"structure", 703 "members":{ 704 "jobExecutionsRolloutConfig":{"shape":"IoTJobExecutionsRolloutConfig"}, 705 "abortConfig":{"shape":"IoTJobAbortConfig"}, 706 "timeoutConfig":{"shape":"IoTJobTimeoutConfig"} 707 } 708 }, 709 "DeploymentList":{ 710 "type":"list", 711 "member":{"shape":"Deployment"} 712 }, 713 "DeploymentName":{"type":"string"}, 714 "DeploymentPolicies":{ 715 "type":"structure", 716 "members":{ 717 "failureHandlingPolicy":{"shape":"DeploymentFailureHandlingPolicy"}, 718 "componentUpdatePolicy":{"shape":"DeploymentComponentUpdatePolicy"}, 719 "configurationValidationPolicy":{"shape":"DeploymentConfigurationValidationPolicy"} 720 } 721 }, 722 "DeploymentStatus":{ 723 "type":"string", 724 "enum":[ 725 "ACTIVE", 726 "COMPLETED", 727 "CANCELED", 728 "FAILED", 729 "INACTIVE" 730 ] 731 }, 732 "DescribeComponentRequest":{ 733 "type":"structure", 734 "required":["arn"], 735 "members":{ 736 "arn":{ 737 "shape":"ComponentVersionARN", 738 "location":"uri", 739 "locationName":"arn" 740 } 741 } 742 }, 743 "DescribeComponentResponse":{ 744 "type":"structure", 745 "members":{ 746 "arn":{"shape":"ComponentVersionARN"}, 747 "componentName":{"shape":"ComponentNameString"}, 748 "componentVersion":{"shape":"ComponentVersionString"}, 749 "creationTimestamp":{"shape":"Timestamp"}, 750 "publisher":{"shape":"PublisherString"}, 751 "description":{"shape":"DescriptionString"}, 752 "status":{"shape":"CloudComponentStatus"}, 753 "platforms":{"shape":"ComponentPlatformList"}, 754 "tags":{"shape":"TagMap"} 755 } 756 }, 757 "Description":{ 758 "type":"string", 759 "max":500, 760 "min":1 761 }, 762 "DescriptionString":{"type":"string"}, 763 "EffectiveDeployment":{ 764 "type":"structure", 765 "required":[ 766 "deploymentId", 767 "deploymentName", 768 "targetArn", 769 "coreDeviceExecutionStatus", 770 "creationTimestamp", 771 "modifiedTimestamp" 772 ], 773 "members":{ 774 "deploymentId":{"shape":"DeploymentID"}, 775 "deploymentName":{"shape":"DeploymentName"}, 776 "iotJobId":{"shape":"IoTJobId"}, 777 "iotJobArn":{"shape":"IoTJobARN"}, 778 "description":{"shape":"Description"}, 779 "targetArn":{"shape":"TargetARN"}, 780 "coreDeviceExecutionStatus":{"shape":"EffectiveDeploymentExecutionStatus"}, 781 "reason":{"shape":"Reason"}, 782 "creationTimestamp":{"shape":"Timestamp"}, 783 "modifiedTimestamp":{"shape":"Timestamp"} 784 } 785 }, 786 "EffectiveDeploymentExecutionStatus":{ 787 "type":"string", 788 "enum":[ 789 "IN_PROGRESS", 790 "QUEUED", 791 "FAILED", 792 "COMPLETED", 793 "TIMED_OUT", 794 "CANCELED", 795 "REJECTED" 796 ] 797 }, 798 "EffectiveDeploymentsList":{ 799 "type":"list", 800 "member":{"shape":"EffectiveDeployment"} 801 }, 802 "FileSystemPath":{"type":"string"}, 803 "GGCVersion":{ 804 "type":"string", 805 "max":255, 806 "min":1 807 }, 808 "GenericV2ARN":{ 809 "type":"string", 810 "pattern":"arn:aws(-cn|-us-gov)?:greengrass:[^:]+:(aws|[0-9]+):(components|deployments|coreDevices):.+" 811 }, 812 "GetComponentRequest":{ 813 "type":"structure", 814 "required":["arn"], 815 "members":{ 816 "recipeOutputFormat":{ 817 "shape":"RecipeOutputFormat", 818 "location":"querystring", 819 "locationName":"recipeOutputFormat" 820 }, 821 "arn":{ 822 "shape":"ComponentVersionARN", 823 "location":"uri", 824 "locationName":"arn" 825 } 826 } 827 }, 828 "GetComponentResponse":{ 829 "type":"structure", 830 "required":[ 831 "recipeOutputFormat", 832 "recipe" 833 ], 834 "members":{ 835 "recipeOutputFormat":{"shape":"RecipeOutputFormat"}, 836 "recipe":{"shape":"RecipeBlob"}, 837 "tags":{"shape":"TagMap"} 838 } 839 }, 840 "GetComponentVersionArtifactRequest":{ 841 "type":"structure", 842 "required":[ 843 "arn", 844 "artifactName" 845 ], 846 "members":{ 847 "arn":{ 848 "shape":"ComponentVersionARN", 849 "location":"uri", 850 "locationName":"arn" 851 }, 852 "artifactName":{ 853 "shape":"NonEmptyString", 854 "location":"uri", 855 "locationName":"artifactName" 856 } 857 } 858 }, 859 "GetComponentVersionArtifactResponse":{ 860 "type":"structure", 861 "required":["preSignedUrl"], 862 "members":{ 863 "preSignedUrl":{"shape":"NonEmptyString"} 864 } 865 }, 866 "GetCoreDeviceRequest":{ 867 "type":"structure", 868 "required":["coreDeviceThingName"], 869 "members":{ 870 "coreDeviceThingName":{ 871 "shape":"CoreDeviceThingName", 872 "location":"uri", 873 "locationName":"coreDeviceThingName" 874 } 875 } 876 }, 877 "GetCoreDeviceResponse":{ 878 "type":"structure", 879 "members":{ 880 "coreDeviceThingName":{"shape":"CoreDeviceThingName"}, 881 "coreVersion":{"shape":"GGCVersion"}, 882 "platform":{"shape":"CoreDevicePlatformString"}, 883 "architecture":{"shape":"CoreDeviceArchitectureString"}, 884 "status":{"shape":"CoreDeviceStatus"}, 885 "lastStatusUpdateTimestamp":{"shape":"Timestamp"}, 886 "tags":{"shape":"TagMap"} 887 } 888 }, 889 "GetDeploymentRequest":{ 890 "type":"structure", 891 "required":["deploymentId"], 892 "members":{ 893 "deploymentId":{ 894 "shape":"NonEmptyString", 895 "location":"uri", 896 "locationName":"deploymentId" 897 } 898 } 899 }, 900 "GetDeploymentResponse":{ 901 "type":"structure", 902 "members":{ 903 "targetArn":{"shape":"TargetARN"}, 904 "revisionId":{"shape":"NonEmptyString"}, 905 "deploymentId":{"shape":"NonEmptyString"}, 906 "deploymentName":{"shape":"NullableString"}, 907 "deploymentStatus":{"shape":"DeploymentStatus"}, 908 "iotJobId":{"shape":"NullableString"}, 909 "iotJobArn":{"shape":"IoTJobARN"}, 910 "components":{"shape":"ComponentDeploymentSpecifications"}, 911 "deploymentPolicies":{"shape":"DeploymentPolicies"}, 912 "iotJobConfiguration":{"shape":"DeploymentIoTJobConfiguration"}, 913 "creationTimestamp":{"shape":"Timestamp"}, 914 "isLatestForTarget":{"shape":"IsLatestForTarget"}, 915 "tags":{"shape":"TagMap"} 916 } 917 }, 918 "InstalledComponent":{ 919 "type":"structure", 920 "members":{ 921 "componentName":{"shape":"ComponentNameString"}, 922 "componentVersion":{"shape":"ComponentVersionString"}, 923 "lifecycleState":{"shape":"InstalledComponentLifecycleState"}, 924 "lifecycleStateDetails":{"shape":"LifecycleStateDetails"}, 925 "isRoot":{"shape":"IsRoot"} 926 } 927 }, 928 "InstalledComponentLifecycleState":{ 929 "type":"string", 930 "enum":[ 931 "NEW", 932 "INSTALLED", 933 "STARTING", 934 "RUNNING", 935 "STOPPING", 936 "ERRORED", 937 "BROKEN", 938 "FINISHED" 939 ] 940 }, 941 "InstalledComponentList":{ 942 "type":"list", 943 "member":{"shape":"InstalledComponent"} 944 }, 945 "InternalServerException":{ 946 "type":"structure", 947 "required":["message"], 948 "members":{ 949 "message":{"shape":"String"}, 950 "retryAfterSeconds":{ 951 "shape":"RetryAfterSeconds", 952 "location":"header", 953 "locationName":"Retry-After" 954 } 955 }, 956 "error":{"httpStatusCode":500}, 957 "exception":true, 958 "fault":true 959 }, 960 "IoTJobARN":{ 961 "type":"string", 962 "pattern":"arn:aws(-cn|-us-gov)?:iot:[^:]+:[0-9]+:job/.+" 963 }, 964 "IoTJobAbortAction":{ 965 "type":"string", 966 "enum":["CANCEL"] 967 }, 968 "IoTJobAbortConfig":{ 969 "type":"structure", 970 "required":["criteriaList"], 971 "members":{ 972 "criteriaList":{"shape":"IoTJobAbortCriteriaList"} 973 } 974 }, 975 "IoTJobAbortCriteria":{ 976 "type":"structure", 977 "required":[ 978 "failureType", 979 "action", 980 "thresholdPercentage", 981 "minNumberOfExecutedThings" 982 ], 983 "members":{ 984 "failureType":{"shape":"IoTJobExecutionFailureType"}, 985 "action":{"shape":"IoTJobAbortAction"}, 986 "thresholdPercentage":{"shape":"IoTJobAbortThresholdPercentage"}, 987 "minNumberOfExecutedThings":{"shape":"IoTJobMinimumNumberOfExecutedThings"} 988 } 989 }, 990 "IoTJobAbortCriteriaList":{ 991 "type":"list", 992 "member":{"shape":"IoTJobAbortCriteria"}, 993 "min":1 994 }, 995 "IoTJobAbortThresholdPercentage":{ 996 "type":"double", 997 "max":100 998 }, 999 "IoTJobExecutionFailureType":{ 1000 "type":"string", 1001 "enum":[ 1002 "FAILED", 1003 "REJECTED", 1004 "TIMED_OUT", 1005 "ALL" 1006 ] 1007 }, 1008 "IoTJobExecutionsRolloutConfig":{ 1009 "type":"structure", 1010 "members":{ 1011 "exponentialRate":{"shape":"IoTJobExponentialRolloutRate"}, 1012 "maximumPerMinute":{ 1013 "shape":"IoTJobMaxExecutionsPerMin", 1014 "box":true 1015 } 1016 } 1017 }, 1018 "IoTJobExponentialRolloutRate":{ 1019 "type":"structure", 1020 "required":[ 1021 "baseRatePerMinute", 1022 "incrementFactor", 1023 "rateIncreaseCriteria" 1024 ], 1025 "members":{ 1026 "baseRatePerMinute":{"shape":"IoTJobRolloutBaseRatePerMinute"}, 1027 "incrementFactor":{"shape":"IoTJobRolloutIncrementFactor"}, 1028 "rateIncreaseCriteria":{"shape":"IoTJobRateIncreaseCriteria"} 1029 } 1030 }, 1031 "IoTJobId":{ 1032 "type":"string", 1033 "max":255, 1034 "min":1 1035 }, 1036 "IoTJobInProgressTimeoutInMinutes":{"type":"long"}, 1037 "IoTJobMaxExecutionsPerMin":{ 1038 "type":"integer", 1039 "max":1000, 1040 "min":1 1041 }, 1042 "IoTJobMinimumNumberOfExecutedThings":{ 1043 "type":"integer", 1044 "min":1 1045 }, 1046 "IoTJobNumberOfThings":{ 1047 "type":"integer", 1048 "min":1 1049 }, 1050 "IoTJobRateIncreaseCriteria":{ 1051 "type":"structure", 1052 "members":{ 1053 "numberOfNotifiedThings":{ 1054 "shape":"IoTJobNumberOfThings", 1055 "box":true 1056 }, 1057 "numberOfSucceededThings":{ 1058 "shape":"IoTJobNumberOfThings", 1059 "box":true 1060 } 1061 } 1062 }, 1063 "IoTJobRolloutBaseRatePerMinute":{ 1064 "type":"integer", 1065 "max":1000, 1066 "min":1 1067 }, 1068 "IoTJobRolloutIncrementFactor":{ 1069 "type":"double", 1070 "max":5, 1071 "min":1 1072 }, 1073 "IoTJobTimeoutConfig":{ 1074 "type":"structure", 1075 "members":{ 1076 "inProgressTimeoutInMinutes":{ 1077 "shape":"IoTJobInProgressTimeoutInMinutes", 1078 "box":true 1079 } 1080 } 1081 }, 1082 "IsLatestForTarget":{"type":"boolean"}, 1083 "IsRoot":{"type":"boolean"}, 1084 "LambdaContainerParams":{ 1085 "type":"structure", 1086 "members":{ 1087 "memorySizeInKB":{ 1088 "shape":"OptionalInteger", 1089 "box":true 1090 }, 1091 "mountROSysfs":{ 1092 "shape":"OptionalBoolean", 1093 "box":true 1094 }, 1095 "volumes":{"shape":"LambdaVolumeList"}, 1096 "devices":{"shape":"LambdaDeviceList"} 1097 } 1098 }, 1099 "LambdaDeviceList":{ 1100 "type":"list", 1101 "member":{"shape":"LambdaDeviceMount"} 1102 }, 1103 "LambdaDeviceMount":{ 1104 "type":"structure", 1105 "required":["path"], 1106 "members":{ 1107 "path":{"shape":"FileSystemPath"}, 1108 "permission":{"shape":"LambdaFilesystemPermission"}, 1109 "addGroupOwner":{ 1110 "shape":"OptionalBoolean", 1111 "box":true 1112 } 1113 } 1114 }, 1115 "LambdaEnvironmentVariables":{ 1116 "type":"map", 1117 "key":{"shape":"NonEmptyString"}, 1118 "value":{"shape":"String"} 1119 }, 1120 "LambdaEventSource":{ 1121 "type":"structure", 1122 "required":[ 1123 "topic", 1124 "type" 1125 ], 1126 "members":{ 1127 "topic":{"shape":"TopicString"}, 1128 "type":{"shape":"LambdaEventSourceType"} 1129 } 1130 }, 1131 "LambdaEventSourceList":{ 1132 "type":"list", 1133 "member":{"shape":"LambdaEventSource"} 1134 }, 1135 "LambdaEventSourceType":{ 1136 "type":"string", 1137 "enum":[ 1138 "PUB_SUB", 1139 "IOT_CORE" 1140 ] 1141 }, 1142 "LambdaExecArg":{"type":"string"}, 1143 "LambdaExecArgsList":{ 1144 "type":"list", 1145 "member":{"shape":"LambdaExecArg"} 1146 }, 1147 "LambdaExecutionParameters":{ 1148 "type":"structure", 1149 "members":{ 1150 "eventSources":{"shape":"LambdaEventSourceList"}, 1151 "maxQueueSize":{ 1152 "shape":"OptionalInteger", 1153 "box":true 1154 }, 1155 "maxInstancesCount":{ 1156 "shape":"OptionalInteger", 1157 "box":true 1158 }, 1159 "maxIdleTimeInSeconds":{ 1160 "shape":"OptionalInteger", 1161 "box":true 1162 }, 1163 "timeoutInSeconds":{ 1164 "shape":"OptionalInteger", 1165 "box":true 1166 }, 1167 "statusTimeoutInSeconds":{ 1168 "shape":"OptionalInteger", 1169 "box":true 1170 }, 1171 "pinned":{ 1172 "shape":"OptionalBoolean", 1173 "box":true 1174 }, 1175 "inputPayloadEncodingType":{"shape":"LambdaInputPayloadEncodingType"}, 1176 "execArgs":{"shape":"LambdaExecArgsList"}, 1177 "environmentVariables":{"shape":"LambdaEnvironmentVariables"}, 1178 "linuxProcessParams":{"shape":"LambdaLinuxProcessParams"} 1179 } 1180 }, 1181 "LambdaFilesystemPermission":{ 1182 "type":"string", 1183 "enum":[ 1184 "ro", 1185 "rw" 1186 ] 1187 }, 1188 "LambdaFunctionARNWithVersionNumber":{ 1189 "type":"string", 1190 "pattern":"arn:aws(-cn|-us-gov)?:lambda:[^:]+:[0-9]+:function:[a-zA-Z0-9-_]+:[0-9]+" 1191 }, 1192 "LambdaFunctionRecipeSource":{ 1193 "type":"structure", 1194 "required":["lambdaArn"], 1195 "members":{ 1196 "lambdaArn":{"shape":"LambdaFunctionARNWithVersionNumber"}, 1197 "componentName":{"shape":"ComponentNameString"}, 1198 "componentVersion":{"shape":"ComponentVersionString"}, 1199 "componentPlatforms":{"shape":"ComponentPlatformList"}, 1200 "componentDependencies":{"shape":"ComponentDependencyMap"}, 1201 "componentLambdaParameters":{"shape":"LambdaExecutionParameters"} 1202 } 1203 }, 1204 "LambdaInputPayloadEncodingType":{ 1205 "type":"string", 1206 "enum":[ 1207 "json", 1208 "binary" 1209 ] 1210 }, 1211 "LambdaIsolationMode":{ 1212 "type":"string", 1213 "enum":[ 1214 "GreengrassContainer", 1215 "NoContainer" 1216 ] 1217 }, 1218 "LambdaLinuxProcessParams":{ 1219 "type":"structure", 1220 "members":{ 1221 "isolationMode":{"shape":"LambdaIsolationMode"}, 1222 "containerParams":{"shape":"LambdaContainerParams"} 1223 } 1224 }, 1225 "LambdaVolumeList":{ 1226 "type":"list", 1227 "member":{"shape":"LambdaVolumeMount"} 1228 }, 1229 "LambdaVolumeMount":{ 1230 "type":"structure", 1231 "required":[ 1232 "sourcePath", 1233 "destinationPath" 1234 ], 1235 "members":{ 1236 "sourcePath":{"shape":"FileSystemPath"}, 1237 "destinationPath":{"shape":"FileSystemPath"}, 1238 "permission":{"shape":"LambdaFilesystemPermission"}, 1239 "addGroupOwner":{ 1240 "shape":"OptionalBoolean", 1241 "box":true 1242 } 1243 } 1244 }, 1245 "LifecycleStateDetails":{ 1246 "type":"string", 1247 "max":1000, 1248 "min":1 1249 }, 1250 "ListComponentVersionsRequest":{ 1251 "type":"structure", 1252 "required":["arn"], 1253 "members":{ 1254 "arn":{ 1255 "shape":"ComponentARN", 1256 "location":"uri", 1257 "locationName":"arn" 1258 }, 1259 "maxResults":{ 1260 "shape":"DefaultMaxResults", 1261 "box":true, 1262 "location":"querystring", 1263 "locationName":"maxResults" 1264 }, 1265 "nextToken":{ 1266 "shape":"NextTokenString", 1267 "box":true, 1268 "location":"querystring", 1269 "locationName":"nextToken" 1270 } 1271 } 1272 }, 1273 "ListComponentVersionsResponse":{ 1274 "type":"structure", 1275 "members":{ 1276 "componentVersions":{"shape":"ComponentVersionList"}, 1277 "nextToken":{"shape":"NextTokenString"} 1278 } 1279 }, 1280 "ListComponentsRequest":{ 1281 "type":"structure", 1282 "members":{ 1283 "scope":{ 1284 "shape":"ComponentVisibilityScope", 1285 "location":"querystring", 1286 "locationName":"scope" 1287 }, 1288 "maxResults":{ 1289 "shape":"DefaultMaxResults", 1290 "box":true, 1291 "location":"querystring", 1292 "locationName":"maxResults" 1293 }, 1294 "nextToken":{ 1295 "shape":"NextTokenString", 1296 "box":true, 1297 "location":"querystring", 1298 "locationName":"nextToken" 1299 } 1300 } 1301 }, 1302 "ListComponentsResponse":{ 1303 "type":"structure", 1304 "members":{ 1305 "components":{"shape":"ComponentList"}, 1306 "nextToken":{"shape":"NextTokenString"} 1307 } 1308 }, 1309 "ListCoreDevicesRequest":{ 1310 "type":"structure", 1311 "members":{ 1312 "thingGroupArn":{ 1313 "shape":"ThingGroupARN", 1314 "location":"querystring", 1315 "locationName":"thingGroupArn" 1316 }, 1317 "status":{ 1318 "shape":"CoreDeviceStatus", 1319 "location":"querystring", 1320 "locationName":"status" 1321 }, 1322 "maxResults":{ 1323 "shape":"DefaultMaxResults", 1324 "box":true, 1325 "location":"querystring", 1326 "locationName":"maxResults" 1327 }, 1328 "nextToken":{ 1329 "shape":"NextTokenString", 1330 "box":true, 1331 "location":"querystring", 1332 "locationName":"nextToken" 1333 } 1334 } 1335 }, 1336 "ListCoreDevicesResponse":{ 1337 "type":"structure", 1338 "members":{ 1339 "coreDevices":{"shape":"CoreDevicesList"}, 1340 "nextToken":{"shape":"NextTokenString"} 1341 } 1342 }, 1343 "ListDeploymentsRequest":{ 1344 "type":"structure", 1345 "members":{ 1346 "targetArn":{ 1347 "shape":"TargetARN", 1348 "location":"querystring", 1349 "locationName":"targetArn" 1350 }, 1351 "historyFilter":{ 1352 "shape":"DeploymentHistoryFilter", 1353 "location":"querystring", 1354 "locationName":"historyFilter" 1355 }, 1356 "maxResults":{ 1357 "shape":"DefaultMaxResults", 1358 "box":true, 1359 "location":"querystring", 1360 "locationName":"maxResults" 1361 }, 1362 "nextToken":{ 1363 "shape":"NextTokenString", 1364 "box":true, 1365 "location":"querystring", 1366 "locationName":"nextToken" 1367 } 1368 } 1369 }, 1370 "ListDeploymentsResponse":{ 1371 "type":"structure", 1372 "members":{ 1373 "deployments":{"shape":"DeploymentList"}, 1374 "nextToken":{"shape":"NextTokenString"} 1375 } 1376 }, 1377 "ListEffectiveDeploymentsRequest":{ 1378 "type":"structure", 1379 "required":["coreDeviceThingName"], 1380 "members":{ 1381 "coreDeviceThingName":{ 1382 "shape":"CoreDeviceThingName", 1383 "location":"uri", 1384 "locationName":"coreDeviceThingName" 1385 }, 1386 "maxResults":{ 1387 "shape":"DefaultMaxResults", 1388 "box":true, 1389 "location":"querystring", 1390 "locationName":"maxResults" 1391 }, 1392 "nextToken":{ 1393 "shape":"NextTokenString", 1394 "box":true, 1395 "location":"querystring", 1396 "locationName":"nextToken" 1397 } 1398 } 1399 }, 1400 "ListEffectiveDeploymentsResponse":{ 1401 "type":"structure", 1402 "members":{ 1403 "effectiveDeployments":{"shape":"EffectiveDeploymentsList"}, 1404 "nextToken":{"shape":"NextTokenString"} 1405 } 1406 }, 1407 "ListInstalledComponentsRequest":{ 1408 "type":"structure", 1409 "required":["coreDeviceThingName"], 1410 "members":{ 1411 "coreDeviceThingName":{ 1412 "shape":"CoreDeviceThingName", 1413 "location":"uri", 1414 "locationName":"coreDeviceThingName" 1415 }, 1416 "maxResults":{ 1417 "shape":"DefaultMaxResults", 1418 "box":true, 1419 "location":"querystring", 1420 "locationName":"maxResults" 1421 }, 1422 "nextToken":{ 1423 "shape":"NextTokenString", 1424 "box":true, 1425 "location":"querystring", 1426 "locationName":"nextToken" 1427 } 1428 } 1429 }, 1430 "ListInstalledComponentsResponse":{ 1431 "type":"structure", 1432 "members":{ 1433 "installedComponents":{"shape":"InstalledComponentList"}, 1434 "nextToken":{"shape":"NextTokenString"} 1435 } 1436 }, 1437 "ListTagsForResourceRequest":{ 1438 "type":"structure", 1439 "required":["resourceArn"], 1440 "members":{ 1441 "resourceArn":{ 1442 "shape":"GenericV2ARN", 1443 "location":"uri", 1444 "locationName":"resourceArn" 1445 } 1446 } 1447 }, 1448 "ListTagsForResourceResponse":{ 1449 "type":"structure", 1450 "members":{ 1451 "tags":{"shape":"TagMap"} 1452 } 1453 }, 1454 "NextTokenString":{"type":"string"}, 1455 "NonEmptyString":{ 1456 "type":"string", 1457 "min":1 1458 }, 1459 "NullableString":{"type":"string"}, 1460 "OptionalBoolean":{"type":"boolean"}, 1461 "OptionalInteger":{"type":"integer"}, 1462 "PlatformAttributesMap":{ 1463 "type":"map", 1464 "key":{"shape":"NonEmptyString"}, 1465 "value":{"shape":"NonEmptyString"} 1466 }, 1467 "PublisherString":{"type":"string"}, 1468 "Reason":{"type":"string"}, 1469 "RecipeBlob":{"type":"blob"}, 1470 "RecipeOutputFormat":{ 1471 "type":"string", 1472 "enum":[ 1473 "JSON", 1474 "YAML" 1475 ] 1476 }, 1477 "ResolveComponentCandidatesRequest":{ 1478 "type":"structure", 1479 "required":[ 1480 "platform", 1481 "componentCandidates" 1482 ], 1483 "members":{ 1484 "platform":{"shape":"ComponentPlatform"}, 1485 "componentCandidates":{"shape":"ComponentCandidateList"} 1486 } 1487 }, 1488 "ResolveComponentCandidatesResponse":{ 1489 "type":"structure", 1490 "members":{ 1491 "resolvedComponentVersions":{"shape":"ResolvedComponentVersionsList"} 1492 } 1493 }, 1494 "ResolvedComponentVersion":{ 1495 "type":"structure", 1496 "members":{ 1497 "arn":{"shape":"ComponentVersionARN"}, 1498 "componentName":{"shape":"ComponentNameString"}, 1499 "componentVersion":{"shape":"ComponentVersionString"}, 1500 "recipe":{"shape":"RecipeBlob"} 1501 } 1502 }, 1503 "ResolvedComponentVersionsList":{ 1504 "type":"list", 1505 "member":{"shape":"ResolvedComponentVersion"} 1506 }, 1507 "ResourceNotFoundException":{ 1508 "type":"structure", 1509 "required":[ 1510 "message", 1511 "resourceId", 1512 "resourceType" 1513 ], 1514 "members":{ 1515 "message":{"shape":"String"}, 1516 "resourceId":{"shape":"String"}, 1517 "resourceType":{"shape":"String"} 1518 }, 1519 "error":{"httpStatusCode":404}, 1520 "exception":true 1521 }, 1522 "RetryAfterSeconds":{"type":"integer"}, 1523 "ServiceQuotaExceededException":{ 1524 "type":"structure", 1525 "required":[ 1526 "message", 1527 "quotaCode", 1528 "serviceCode" 1529 ], 1530 "members":{ 1531 "message":{"shape":"String"}, 1532 "resourceId":{"shape":"String"}, 1533 "resourceType":{"shape":"String"}, 1534 "quotaCode":{"shape":"String"}, 1535 "serviceCode":{"shape":"String"} 1536 }, 1537 "error":{"httpStatusCode":402}, 1538 "exception":true 1539 }, 1540 "String":{"type":"string"}, 1541 "StringMap":{ 1542 "type":"map", 1543 "key":{"shape":"NonEmptyString"}, 1544 "value":{"shape":"NonEmptyString"} 1545 }, 1546 "TagKey":{ 1547 "type":"string", 1548 "max":128, 1549 "min":1, 1550 "pattern":"^(?!aws:)[a-zA-Z+-=._:/]+$" 1551 }, 1552 "TagKeyList":{ 1553 "type":"list", 1554 "member":{"shape":"TagKey"}, 1555 "max":50, 1556 "min":1 1557 }, 1558 "TagMap":{ 1559 "type":"map", 1560 "key":{"shape":"TagKey"}, 1561 "value":{"shape":"TagValue"}, 1562 "max":50, 1563 "min":1 1564 }, 1565 "TagResourceRequest":{ 1566 "type":"structure", 1567 "required":[ 1568 "resourceArn", 1569 "tags" 1570 ], 1571 "members":{ 1572 "resourceArn":{ 1573 "shape":"GenericV2ARN", 1574 "location":"uri", 1575 "locationName":"resourceArn" 1576 }, 1577 "tags":{"shape":"TagMap"} 1578 } 1579 }, 1580 "TagResourceResponse":{ 1581 "type":"structure", 1582 "members":{ 1583 } 1584 }, 1585 "TagValue":{ 1586 "type":"string", 1587 "max":256 1588 }, 1589 "TargetARN":{ 1590 "type":"string", 1591 "pattern":"arn:aws(-cn|-us-gov)?:iot:[^:]+:[0-9]+:(thing|thinggroup)/.+" 1592 }, 1593 "ThingGroupARN":{ 1594 "type":"string", 1595 "pattern":"arn:aws(-cn|-us-gov)?:iot:[^:]+:[0-9]+:thinggroup/.+" 1596 }, 1597 "ThrottlingException":{ 1598 "type":"structure", 1599 "required":["message"], 1600 "members":{ 1601 "message":{"shape":"String"}, 1602 "quotaCode":{"shape":"String"}, 1603 "serviceCode":{"shape":"String"}, 1604 "retryAfterSeconds":{ 1605 "shape":"RetryAfterSeconds", 1606 "location":"header", 1607 "locationName":"Retry-After" 1608 } 1609 }, 1610 "error":{"httpStatusCode":429}, 1611 "exception":true 1612 }, 1613 "Timestamp":{"type":"timestamp"}, 1614 "TopicString":{"type":"string"}, 1615 "UntagResourceRequest":{ 1616 "type":"structure", 1617 "required":[ 1618 "resourceArn", 1619 "tagKeys" 1620 ], 1621 "members":{ 1622 "resourceArn":{ 1623 "shape":"GenericV2ARN", 1624 "location":"uri", 1625 "locationName":"resourceArn" 1626 }, 1627 "tagKeys":{ 1628 "shape":"TagKeyList", 1629 "location":"querystring", 1630 "locationName":"tagKeys" 1631 } 1632 } 1633 }, 1634 "UntagResourceResponse":{ 1635 "type":"structure", 1636 "members":{ 1637 } 1638 }, 1639 "ValidationException":{ 1640 "type":"structure", 1641 "required":["message"], 1642 "members":{ 1643 "message":{"shape":"String"}, 1644 "reason":{"shape":"ValidationExceptionReason"}, 1645 "fields":{"shape":"ValidationExceptionFieldList"} 1646 }, 1647 "error":{"httpStatusCode":400}, 1648 "exception":true 1649 }, 1650 "ValidationExceptionField":{ 1651 "type":"structure", 1652 "required":[ 1653 "name", 1654 "message" 1655 ], 1656 "members":{ 1657 "name":{"shape":"String"}, 1658 "message":{"shape":"String"} 1659 } 1660 }, 1661 "ValidationExceptionFieldList":{ 1662 "type":"list", 1663 "member":{"shape":"ValidationExceptionField"} 1664 }, 1665 "ValidationExceptionReason":{ 1666 "type":"string", 1667 "enum":[ 1668 "UNKNOWN_OPERATION", 1669 "CANNOT_PARSE", 1670 "FIELD_VALIDATION_FAILED", 1671 "OTHER" 1672 ] 1673 } 1674 } 1675} 1676