github.com/aavshr/aws-sdk-go@v1.41.3/models/apis/greengrassv2/2020-11-30/api-2.json (about)

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