com.amazonaws.services.lambda.model

## Class InvokeRequest

- java.lang.Object
- - com.amazonaws.AmazonWebServiceRequest
  - - com.amazonaws.services.lambda.model.InvokeRequest

All Implemented Interfaces:
  ReadLimitInfo, Serializable, Cloneable

    public class InvokeRequest
    extends AmazonWebServiceRequest
    implements Serializable, Cloneable

See Also:
  Serialized Form

### Field Summary

### Fields inherited from class com.amazonaws.AmazonWebServiceRequest

`NOOP`

### Constructor Summary

Constructors
Constructor and Description
`InvokeRequest()`

### Method Summary

All Methods Instance Methods Concrete Methods
`InvokeRequest` `clone()`
`boolean` `equals(Object obj)`
`String` `getClientContext()` Using the `ClientContext` you can pass client-specific information to the Lambda function you are invoking.
`String` `getFunctionName()` The Lambda function name.
`String` `getInvocationType()` By default, the `Invoke` API assumes `RequestResponse` invocation type.
`String` `getLogType()` You can set this optional parameter to `Tail` in the request only if you specify the `InvocationType` parameter with value `RequestResponse`.
`ByteBuffer` `getPayload()` JSON that you want to provide to your Lambda function as input.
`String` `getQualifier()` You can use this optional parameter to specify a Lambda function version or alias name.
`int` `hashCode()`
`void` `setClientContext(String clientContext)` Using the `ClientContext` you can pass client-specific information to the Lambda function you are invoking.
`void` `setFunctionName(String functionName)` The Lambda function name.
`void` `setInvocationType(InvocationType invocationType)` By default, the `Invoke` API assumes `RequestResponse` invocation type.
`void` `setInvocationType(String invocationType)` By default, the `Invoke` API assumes `RequestResponse` invocation type.
`void` `setLogType(LogType logType)` You can set this optional parameter to `Tail` in the request only if you specify the `InvocationType` parameter with value `RequestResponse`.
`void` `setLogType(String logType)` You can set this optional parameter to `Tail` in the request only if you specify the `InvocationType` parameter with value `RequestResponse`.
`void` `setPayload(ByteBuffer payload)` JSON that you want to provide to your Lambda function as input.
`void` `setPayload(String payload)` JSON that you want to provide to your Lambda function as input.
`void` `setQualifier(String qualifier)` You can use this optional parameter to specify a Lambda function version or alias name.
`String` `toString()` Returns a string representation of this object; useful for testing and debugging.
`InvokeRequest` `withClientContext(String clientContext)` Using the `ClientContext` you can pass client-specific information to the Lambda function you are invoking.
`InvokeRequest` `withFunctionName(String functionName)` The Lambda function name.
`InvokeRequest` `withInvocationType(InvocationType invocationType)` By default, the `Invoke` API assumes `RequestResponse` invocation type.
`InvokeRequest` `withInvocationType(String invocationType)` By default, the `Invoke` API assumes `RequestResponse` invocation type.
`InvokeRequest` `withLogType(LogType logType)` You can set this optional parameter to `Tail` in the request only if you specify the `InvocationType` parameter with value `RequestResponse`.
`InvokeRequest` `withLogType(String logType)` You can set this optional parameter to `Tail` in the request only if you specify the `InvocationType` parameter with value `RequestResponse`.
`InvokeRequest` `withPayload(ByteBuffer payload)` JSON that you want to provide to your Lambda function as input.
`InvokeRequest` `withPayload(String payload)` JSON that you want to provide to your Lambda function as input.
`InvokeRequest` `withQualifier(String qualifier)` You can use this optional parameter to specify a Lambda function version or alias name.

### Methods inherited from class com.amazonaws.AmazonWebServiceRequest

`copyBaseTo, getCloneRoot, getCloneSource, getCustomQueryParameters, getCustomRequestHeaders, getGeneralProgressListener, getReadLimit, getRequestClientOptions, getRequestCredentials, getRequestCredentialsProvider, getRequestMetricCollector, getSdkClientExecutionTimeout, getSdkRequestTimeout, putCustomQueryParameter, putCustomRequestHeader, setGeneralProgressListener, setRequestCredentials, setRequestCredentialsProvider, setRequestMetricCollector, setSdkClientExecutionTimeout, setSdkRequestTimeout, withGeneralProgressListener, withRequestMetricCollector, withSdkClientExecutionTimeout, withSdkRequestTimeout`

### Methods inherited from class java.lang.Object

`finalize, getClass, notify, notifyAll, wait, wait, wait`

### Constructor Detail

#### InvokeRequest

    public InvokeRequest()

### Method Detail

#### setFunctionName

    public void setFunctionName(String functionName)

The Lambda function name.

You can specify a function name (for example, `Thumbnail`) or you can specify Amazon Resource Name (ARN) of the function (for example, `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda also allows you to specify a partial ARN (for example, `account-id:Thumbnail`). Note that the length constraint applies only to the ARN. If you specify only the function name, it is limited to 64 character in length.

Parameters:
  `functionName` - The Lambda function name.

  You can specify a function name (for example, `Thumbnail`) or you can specify Amazon Resource Name (ARN) of the function (for example, `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda also allows you to specify a partial ARN (for example, `account-id:Thumbnail`). Note that the length constraint applies only to the ARN. If you specify only the function name, it is limited to 64 character in length.

#### getFunctionName

    public String getFunctionName()

The Lambda function name.

You can specify a function name (for example, `Thumbnail`) or you can specify Amazon Resource Name (ARN) of the function (for example, `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda also allows you to specify a partial ARN (for example, `account-id:Thumbnail`). Note that the length constraint applies only to the ARN. If you specify only the function name, it is limited to 64 character in length.

Returns:
  The Lambda function name.

  You can specify a function name (for example, `Thumbnail`) or you can specify Amazon Resource Name (ARN) of the function (for example, `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda also allows you to specify a partial ARN (for example, `account-id:Thumbnail`). Note that the length constraint applies only to the ARN. If you specify only the function name, it is limited to 64 character in length.

#### withFunctionName

    public InvokeRequest withFunctionName(String functionName)

The Lambda function name.

You can specify a function name (for example, `Thumbnail`) or you can specify Amazon Resource Name (ARN) of the function (for example, `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda also allows you to specify a partial ARN (for example, `account-id:Thumbnail`). Note that the length constraint applies only to the ARN. If you specify only the function name, it is limited to 64 character in length.

Parameters:
  `functionName` - The Lambda function name.

  You can specify a function name (for example, `Thumbnail`) or you can specify Amazon Resource Name (ARN) of the function (for example, `arn:aws:lambda:us-west-2:account-id:function:ThumbNail`). AWS Lambda also allows you to specify a partial ARN (for example, `account-id:Thumbnail`). Note that the length constraint applies only to the ARN. If you specify only the function name, it is limited to 64 character in length.

Returns:
  Returns a reference to this object so that method calls can be chained together.

#### setInvocationType

    public void setInvocationType(String invocationType)

By default, the `Invoke` API assumes `RequestResponse` invocation type. You can optionally request asynchronous execution by specifying `Event` as the `InvocationType`. You can also use this parameter to request AWS Lambda to not execute the function but do some verification, such as if the caller is authorized to invoke the function and if the inputs are valid. You request this by specifying `DryRun` as the `InvocationType`. This is useful in a cross-account scenario when you want to verify access to a function without running it.

Parameters:
  `invocationType` - By default, the `Invoke` API assumes `RequestResponse` invocation type. You can optionally request asynchronous execution by specifying `Event` as the `InvocationType`. You can also use this parameter to request AWS Lambda to not execute the function but do some verification, such as if the caller is authorized to invoke the function and if the inputs are valid. You request this by specifying `DryRun` as the `InvocationType`. This is useful in a cross-account scenario when you want to verify access to a function without running it.
See Also:
  `InvocationType`

#### getInvocationType

    public String getInvocationType()

By default, the `Invoke` API assumes `RequestResponse` invocation type. You can optionally request asynchronous execution by specifying `Event` as the `InvocationType`. You can also use this parameter to request AWS Lambda to not execute the function but do some verification, such as if the caller is authorized to invoke the function and if the inputs are valid. You request this by specifying `DryRun` as the `InvocationType`. This is useful in a cross-account scenario when you want to verify access to a function without running it.

Returns:
  By default, the `Invoke` API assumes `RequestResponse` invocation type. You can optionally request asynchronous execution by specifying `Event` as the `InvocationType`. You can also use this parameter to request AWS Lambda to not execute the function but do some verification, such as if the caller is authorized to invoke the function and if the inputs are valid. You request this by specifying `DryRun` as the `InvocationType`. This is useful in a cross-account scenario when you want to verify access to a function without running it.
See Also:
  `InvocationType`

#### withInvocationType

    public InvokeRequest withInvocationType(String invocationType)

By default, the `Invoke` API assumes `RequestResponse` invocation type. You can optionally request asynchronous execution by specifying `Event` as the `InvocationType`. You can also use this parameter to request AWS Lambda to not execute the function but do some verification, such as if the caller is authorized to invoke the function and if the inputs are valid. You request this by specifying `DryRun` as the `InvocationType`. This is useful in a cross-account scenario when you want to verify access to a function without running it.

Parameters:
  `invocationType` - By default, the `Invoke` API assumes `RequestResponse` invocation type. You can optionally request asynchronous execution by specifying `Event` as the `InvocationType`. You can also use this parameter to request AWS Lambda to not execute the function but do some verification, such as if the caller is authorized to invoke the function and if the inputs are valid. You request this by specifying `DryRun` as the `InvocationType`. This is useful in a cross-account scenario when you want to verify access to a function without running it.
Returns:
  Returns a reference to this object so that method calls can be chained together.
See Also:
  `InvocationType`

#### setInvocationType

    public void setInvocationType(InvocationType invocationType)

By default, the `Invoke` API assumes `RequestResponse` invocation type. You can optionally request asynchronous execution by specifying `Event` as the `InvocationType`. You can also use this parameter to request AWS Lambda to not execute the function but do some verification, such as if the caller is authorized to invoke the function and if the inputs are valid. You request this by specifying `DryRun` as the `InvocationType`. This is useful in a cross-account scenario when you want to verify access to a function without running it.

Parameters:
  `invocationType` - By default, the `Invoke` API assumes `RequestResponse` invocation type. You can optionally request asynchronous execution by specifying `Event` as the `InvocationType`. You can also use this parameter to request AWS Lambda to not execute the function but do some verification, such as if the caller is authorized to invoke the function and if the inputs are valid. You request this by specifying `DryRun` as the `InvocationType`. This is useful in a cross-account scenario when you want to verify access to a function without running it.
See Also:
  `InvocationType`

#### withInvocationType

    public InvokeRequest withInvocationType(InvocationType invocationType)

By default, the `Invoke` API assumes `RequestResponse` invocation type. You can optionally request asynchronous execution by specifying `Event` as the `InvocationType`. You can also use this parameter to request AWS Lambda to not execute the function but do some verification, such as if the caller is authorized to invoke the function and if the inputs are valid. You request this by specifying `DryRun` as the `InvocationType`. This is useful in a cross-account scenario when you want to verify access to a function without running it.

Parameters:
  `invocationType` - By default, the `Invoke` API assumes `RequestResponse` invocation type. You can optionally request asynchronous execution by specifying `Event` as the `InvocationType`. You can also use this parameter to request AWS Lambda to not execute the function but do some verification, such as if the caller is authorized to invoke the function and if the inputs are valid. You request this by specifying `DryRun` as the `InvocationType`. This is useful in a cross-account scenario when you want to verify access to a function without running it.
Returns:
  Returns a reference to this object so that method calls can be chained together.
See Also:
  `InvocationType`

#### setLogType

    public void setLogType(String logType)

You can set this optional parameter to `Tail` in the request only if you specify the `InvocationType` parameter with value `RequestResponse`. In this case, AWS Lambda returns the base64-encoded last 4 KB of log data produced by your Lambda function in the `x-amz-log-result` header.

Parameters:
  `logType` - You can set this optional parameter to `Tail` in the request only if you specify the `InvocationType` parameter with value `RequestResponse`. In this case, AWS Lambda returns the base64-encoded last 4 KB of log data produced by your Lambda function in the `x-amz-log-result` header.
See Also:
  `LogType`

#### getLogType

    public String getLogType()

You can set this optional parameter to `Tail` in the request only if you specify the `InvocationType` parameter with value `RequestResponse`. In this case, AWS Lambda returns the base64-encoded last 4 KB of log data produced by your Lambda function in the `x-amz-log-result` header.

Returns:
  You can set this optional parameter to `Tail` in the request only if you specify the `InvocationType` parameter with value `RequestResponse`. In this case, AWS Lambda returns the base64-encoded last 4 KB of log data produced by your Lambda function in the `x-amz-log-result` header.
See Also:
  `LogType`

#### withLogType

    public InvokeRequest withLogType(String logType)

You can set this optional parameter to `Tail` in the request only if you specify the `InvocationType` parameter with value `RequestResponse`. In this case, AWS Lambda returns the base64-encoded last 4 KB of log data produced by your Lambda function in the `x-amz-log-result` header.

Parameters:
  `logType` - You can set this optional parameter to `Tail` in the request only if you specify the `InvocationType` parameter with value `RequestResponse`. In this case, AWS Lambda returns the base64-encoded last 4 KB of log data produced by your Lambda function in the `x-amz-log-result` header.
Returns:
  Returns a reference to this object so that method calls can be chained together.
See Also:
  `LogType`

#### setLogType

    public void setLogType(LogType logType)

You can set this optional parameter to `Tail` in the request only if you specify the `InvocationType` parameter with value `RequestResponse`. In this case, AWS Lambda returns the base64-encoded last 4 KB of log data produced by your Lambda function in the `x-amz-log-result` header.

Parameters:
  `logType` - You can set this optional parameter to `Tail` in the request only if you specify the `InvocationType` parameter with value `RequestResponse`. In this case, AWS Lambda returns the base64-encoded last 4 KB of log data produced by your Lambda function in the `x-amz-log-result` header.
See Also:
  `LogType`

#### withLogType

    public InvokeRequest withLogType(LogType logType)

You can set this optional parameter to `Tail` in the request only if you specify the `InvocationType` parameter with value `RequestResponse`. In this case, AWS Lambda returns the base64-encoded last 4 KB of log data produced by your Lambda function in the `x-amz-log-result` header.

Parameters:
  `logType` - You can set this optional parameter to `Tail` in the request only if you specify the `InvocationType` parameter with value `RequestResponse`. In this case, AWS Lambda returns the base64-encoded last 4 KB of log data produced by your Lambda function in the `x-amz-log-result` header.
Returns:
  Returns a reference to this object so that method calls can be chained together.
See Also:
  `LogType`

#### setClientContext

    public void setClientContext(String clientContext)

Using the `ClientContext` you can pass client-specific information to the Lambda function you are invoking. You can then process the client information in your Lambda function as you choose through the context variable. For an example of a `ClientContext` JSON, see PutEvents in the Amazon Mobile Analytics API Reference and User Guide.

The ClientContext JSON must be base64-encoded.

Parameters:
  `clientContext` - Using the `ClientContext` you can pass client-specific information to the Lambda function you are invoking. You can then process the client information in your Lambda function as you choose through the context variable. For an example of a `ClientContext` JSON, see PutEvents in the Amazon Mobile Analytics API Reference and User Guide.

  The ClientContext JSON must be base64-encoded.

#### getClientContext

    public String getClientContext()

Using the `ClientContext` you can pass client-specific information to the Lambda function you are invoking. You can then process the client information in your Lambda function as you choose through the context variable. For an example of a `ClientContext` JSON, see PutEvents in the Amazon Mobile Analytics API Reference and User Guide.

The ClientContext JSON must be base64-encoded.

Returns:
  Using the `ClientContext` you can pass client-specific information to the Lambda function you are invoking. You can then process the client information in your Lambda function as you choose through the context variable. For an example of a `ClientContext` JSON, see PutEvents in the Amazon Mobile Analytics API Reference and User Guide.

  The ClientContext JSON must be base64-encoded.

#### withClientContext

    public InvokeRequest withClientContext(String clientContext)

Using the `ClientContext` you can pass client-specific information to the Lambda function you are invoking. You can then process the client information in your Lambda function as you choose through the context variable. For an example of a `ClientContext` JSON, see PutEvents in the Amazon Mobile Analytics API Reference and User Guide.

The ClientContext JSON must be base64-encoded.

Parameters:
  `clientContext` - Using the `ClientContext` you can pass client-specific information to the Lambda function you are invoking. You can then process the client information in your Lambda function as you choose through the context variable. For an example of a `ClientContext` JSON, see PutEvents in the Amazon Mobile Analytics API Reference and User Guide.

  The ClientContext JSON must be base64-encoded.

Returns:
  Returns a reference to this object so that method calls can be chained together.

#### setPayload

    public void setPayload(ByteBuffer payload)

JSON that you want to provide to your Lambda function as input.

AWS SDK for Java performs a Base64 encoding on this field before sending this request to AWS service by default. Users of the SDK should not perform Base64 encoding on this field.

Warning: ByteBuffers returned by the SDK are mutable. Changes to the content or position of the byte buffer will be seen by all objects that have a reference to this object. It is recommended to call ByteBuffer.duplicate() or ByteBuffer.asReadOnlyBuffer() before using or reading from the buffer. This behavior will be changed in a future major version of the SDK.

Parameters:
  `payload` - JSON that you want to provide to your Lambda function as input.

#### getPayload

    public ByteBuffer getPayload()

JSON that you want to provide to your Lambda function as input.

`ByteBuffer`s are stateful. Calling their `get` methods changes their `position`. We recommend using `ByteBuffer.asReadOnlyBuffer()` to create a read-only view of the buffer with an independent `position`, and calling `get` methods on this rather than directly on the returned `ByteBuffer`. Doing so will ensure that anyone else using the `ByteBuffer` will not be affected by changes to the `position`.

Returns:
  JSON that you want to provide to your Lambda function as input.

#### withPayload

    public InvokeRequest withPayload(ByteBuffer payload)

JSON that you want to provide to your Lambda function as input.

Parameters:
  `payload` - JSON that you want to provide to your Lambda function as input.
Returns:
  Returns a reference to this object so that method calls can be chained together.

#### setPayload

    public void setPayload(String payload)

JSON that you want to provide to your Lambda function as input.

AWS SDK for Java performs a Base64 encoding on this field before sending this request to AWS service by default. Users of the SDK should not perform Base64 encoding on this field.

Warning: ByteBuffers returned by the SDK are mutable. Changes to the content or position of the byte buffer will be seen by all objects that have a reference to this object. It is recommended to call ByteBuffer.duplicate() or ByteBuffer.asReadOnlyBuffer() before using or reading from the buffer. This behavior will be changed in a future major version of the SDK.

Parameters:
  `payload` - JSON that you want to provide to your Lambda function as input.

#### withPayload

    public InvokeRequest withPayload(String payload)

JSON that you want to provide to your Lambda function as input.

Parameters:
  `payload` - JSON that you want to provide to your Lambda function as input.
Returns:
  Returns a reference to this object so that method calls can be chained together.

#### setQualifier

    public void setQualifier(String qualifier)

You can use this optional parameter to specify a Lambda function version or alias name. If you specify a function version, the API uses the qualified function ARN to invoke a specific Lambda function. If you specify an alias name, the API uses the alias ARN to invoke the Lambda function version to which the alias points.

If you don't provide this parameter, then the API uses unqualified function ARN which results in invocation of the `$LATEST` version.

Parameters:
  `qualifier` - You can use this optional parameter to specify a Lambda function version or alias name. If you specify a function version, the API uses the qualified function ARN to invoke a specific Lambda function. If you specify an alias name, the API uses the alias ARN to invoke the Lambda function version to which the alias points.

  If you don't provide this parameter, then the API uses unqualified function ARN which results in invocation of the `$LATEST` version.

#### getQualifier

    public String getQualifier()

You can use this optional parameter to specify a Lambda function version or alias name. If you specify a function version, the API uses the qualified function ARN to invoke a specific Lambda function. If you specify an alias name, the API uses the alias ARN to invoke the Lambda function version to which the alias points.

If you don't provide this parameter, then the API uses unqualified function ARN which results in invocation of the `$LATEST` version.

Returns:
  You can use this optional parameter to specify a Lambda function version or alias name. If you specify a function version, the API uses the qualified function ARN to invoke a specific Lambda function. If you specify an alias name, the API uses the alias ARN to invoke the Lambda function version to which the alias points.

  If you don't provide this parameter, then the API uses unqualified function ARN which results in invocation of the `$LATEST` version.

#### withQualifier

    public InvokeRequest withQualifier(String qualifier)

You can use this optional parameter to specify a Lambda function version or alias name. If you specify a function version, the API uses the qualified function ARN to invoke a specific Lambda function. If you specify an alias name, the API uses the alias ARN to invoke the Lambda function version to which the alias points.

If you don't provide this parameter, then the API uses unqualified function ARN which results in invocation of the `$LATEST` version.

Parameters:
  `qualifier` - You can use this optional parameter to specify a Lambda function version or alias name. If you specify a function version, the API uses the qualified function ARN to invoke a specific Lambda function. If you specify an alias name, the API uses the alias ARN to invoke the Lambda function version to which the alias points.

  If you don't provide this parameter, then the API uses unqualified function ARN which results in invocation of the `$LATEST` version.

Returns:
  Returns a reference to this object so that method calls can be chained together.

#### toString

    public String toString()

Returns a string representation of this object; useful for testing and debugging.

Overrides:
  `toString` in class `Object`
Returns:
  A string representation of this object.
See Also:
  `Object.toString()`

#### equals

    public boolean equals(Object obj)

Overrides:
  `equals` in class `Object`

#### hashCode

    public int hashCode()

Overrides:
  `hashCode` in class `Object`

#### clone

    public InvokeRequest clone()

Overrides:
  `clone` in class `AmazonWebServiceRequest`