getPolicy method

Future<GetPolicyResponse> getPolicy({
  1. required String functionName,
  2. String? qualifier,
})

Returns the resource-based IAM policy for a function, version, or alias.

May throw ServiceException. May throw ResourceNotFoundException. May throw TooManyRequestsException. May throw InvalidParameterValueException.

Parameter functionName : The name of the Lambda function, version, or alias.

Name formats

  • Function name - my-function (name-only), my-function:v1 (with alias).
  • Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function.
  • Partial ARN - 123456789012:function:my-function.
You can append a version number or alias to any of the formats. The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

Parameter qualifier : Specify a version or alias to get the policy for that resource.

Implementation

Future<GetPolicyResponse> getPolicy({
  required String functionName,
  String? qualifier,
}) async {
  ArgumentError.checkNotNull(functionName, 'functionName');
  _s.validateStringLength(
    'functionName',
    functionName,
    1,
    170,
    isRequired: true,
  );
  _s.validateStringLength(
    'qualifier',
    qualifier,
    1,
    128,
  );
  final $query = <String, List<String>>{
    if (qualifier != null) 'Qualifier': [qualifier],
  };
  final response = await _protocol.send(
    payload: null,
    method: 'GET',
    requestUri:
        '/2015-03-31/functions/${Uri.encodeComponent(functionName)}/policy',
    queryParams: $query,
    exceptionFnMap: _exceptionFns,
  );
  return GetPolicyResponse.fromJson(response);
}