describeProvisioningParameters method

Future<DescribeProvisioningParametersOutput> describeProvisioningParameters({
  1. String? acceptLanguage,
  2. String? pathId,
  3. String? pathName,
  4. String? productId,
  5. String? productName,
  6. String? provisioningArtifactId,
  7. String? provisioningArtifactName,
})

Gets information about the configuration required to provision the specified product using the specified provisioning artifact.

If the output contains a TagOption key with an empty list of values, there is a TagOption conflict for that key. The end user cannot take action to fix the conflict, and launch is not blocked. In subsequent calls to ProvisionProduct, do not include conflicted TagOption keys as tags, or this causes the error "Parameter validation failed: Missing required parameter in Tags<i>N</i>:Value". Tag the provisioned product with the value sc-tagoption-conflict-portfolioId-productId.

May throw InvalidParametersException. May throw ResourceNotFoundException.

Parameter acceptLanguage : The language code.

  • en - English (default)
  • jp - Japanese
  • zh - Chinese

Parameter pathId : The path identifier of the product. This value is optional if the product has a default path, and required if the product has more than one path. To list the paths for a product, use ListLaunchPaths. You must provide the name or ID, but not both.

Parameter pathName : The name of the path. You must provide the name or ID, but not both.

Parameter productId : The product identifier. You must provide the product name or ID, but not both.

Parameter productName : The name of the product. You must provide the name or ID, but not both.

Parameter provisioningArtifactId : The identifier of the provisioning artifact. You must provide the name or ID, but not both.

Parameter provisioningArtifactName : The name of the provisioning artifact. You must provide the name or ID, but not both.

Implementation

Future<DescribeProvisioningParametersOutput> describeProvisioningParameters({
  String? acceptLanguage,
  String? pathId,
  String? pathName,
  String? productId,
  String? productName,
  String? provisioningArtifactId,
  String? provisioningArtifactName,
}) async {
  _s.validateStringLength(
    'acceptLanguage',
    acceptLanguage,
    0,
    100,
  );
  _s.validateStringLength(
    'pathId',
    pathId,
    1,
    100,
  );
  _s.validateStringLength(
    'pathName',
    pathName,
    1,
    100,
  );
  _s.validateStringLength(
    'productId',
    productId,
    1,
    100,
  );
  _s.validateStringLength(
    'productName',
    productName,
    0,
    8191,
  );
  _s.validateStringLength(
    'provisioningArtifactId',
    provisioningArtifactId,
    1,
    100,
  );
  _s.validateStringLength(
    'provisioningArtifactName',
    provisioningArtifactName,
    0,
    8192,
  );
  final headers = <String, String>{
    'Content-Type': 'application/x-amz-json-1.1',
    'X-Amz-Target':
        'AWS242ServiceCatalogService.DescribeProvisioningParameters'
  };
  final jsonResponse = await _protocol.send(
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    // TODO queryParams
    headers: headers,
    payload: {
      if (acceptLanguage != null) 'AcceptLanguage': acceptLanguage,
      if (pathId != null) 'PathId': pathId,
      if (pathName != null) 'PathName': pathName,
      if (productId != null) 'ProductId': productId,
      if (productName != null) 'ProductName': productName,
      if (provisioningArtifactId != null)
        'ProvisioningArtifactId': provisioningArtifactId,
      if (provisioningArtifactName != null)
        'ProvisioningArtifactName': provisioningArtifactName,
    },
  );

  return DescribeProvisioningParametersOutput.fromJson(jsonResponse.body);
}