validateTemplate method

Future<ValidateTemplateOutput> validateTemplate({
  1. String? templateBody,
  2. String? templateURL,
})

Validates a specified template. AWS CloudFormation first checks if the template is valid JSON. If it isn't, AWS CloudFormation checks if the template is valid YAML. If both these checks fail, AWS CloudFormation returns a template validation error.

Parameter templateBody : Structure containing the template body with a minimum length of 1 byte and a maximum length of 51,200 bytes. For more information, go to Template Anatomy in the AWS CloudFormation User Guide.

Conditional: You must pass TemplateURL or TemplateBody. If both are passed, only TemplateBody is used.

Parameter templateURL : Location of file containing the template body. The URL must point to a template (max size: 460,800 bytes) that is located in an Amazon S3 bucket. For more information, go to Template Anatomy in the AWS CloudFormation User Guide.

Conditional: You must pass TemplateURL or TemplateBody. If both are passed, only TemplateBody is used.

Implementation

Future<ValidateTemplateOutput> validateTemplate({
  String? templateBody,
  String? templateURL,
}) async {
  _s.validateStringLength(
    'templateBody',
    templateBody,
    1,
    1152921504606846976,
  );
  _s.validateStringLength(
    'templateURL',
    templateURL,
    1,
    1024,
  );
  final $request = <String, dynamic>{};
  templateBody?.also((arg) => $request['TemplateBody'] = arg);
  templateURL?.also((arg) => $request['TemplateURL'] = arg);
  final $result = await _protocol.send(
    $request,
    action: 'ValidateTemplate',
    version: '2010-05-15',
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    shape: shapes['ValidateTemplateInput'],
    shapes: shapes,
    resultWrapper: 'ValidateTemplateResult',
  );
  return ValidateTemplateOutput.fromXml($result);
}