AWS SDK Version 3 for .NET
API Reference

AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

Registers a new task definition from the supplied family and containerDefinitions. Optionally, you can add data volumes to your containers with the volumes parameter. For more information about task definition parameters and defaults, see Amazon ECS Task Definitions in the Amazon Elastic Container Service Developer Guide.

You can specify an IAM role for your task with the taskRoleArn parameter. When you specify an IAM role for a task, its containers can then use the latest versions of the AWS CLI or SDKs to make API requests to the AWS services that are specified in the IAM policy associated with the role. For more information, see IAM Roles for Tasks in the Amazon Elastic Container Service Developer Guide.

You can specify a Docker networking mode for the containers in your task definition with the networkMode parameter. The available network modes correspond to those described in Network settings in the Docker run reference. If you specify the awsvpc network mode, the task is allocated an elastic network interface, and you must specify a NetworkConfiguration when you create a service or run a task with the task definition. For more information, see Task Networking in the Amazon Elastic Container Service Developer Guide.


For .NET Core and PCL this operation is only available in asynchronous form. Please refer to RegisterTaskDefinitionAsync.

Namespace: Amazon.ECS
Assembly: AWSSDK.ECS.dll
Version: 3.x.y.z


public virtual RegisterTaskDefinitionResponse RegisterTaskDefinition(
         RegisterTaskDefinitionRequest request
Type: Amazon.ECS.Model.RegisterTaskDefinitionRequest

Container for the necessary parameters to execute the RegisterTaskDefinition service method.

Return Value
The response from the RegisterTaskDefinition service method, as returned by ECS.


ClientException These errors are usually caused by a client action, such as using an action or resource on behalf of a user that doesn't have permissions to use the action or resource, or specifying an identifier that is not valid.
InvalidParameterException The specified parameter is invalid. Review the available parameters for the API request.
ServerException These errors are usually caused by a server issue.


This example registers a task definition to the specified family.

To register a task definition

var response = client.RegisterTaskDefinition(new RegisterTaskDefinitionRequest 
    ContainerDefinitions = new List {
        new ContainerDefinition {
            Name = "sleep",
            Command = new List {
            Cpu = 10,
            Essential = true,
            Image = "busybox",
            Memory = 10
    Family = "sleep360",
    TaskRoleArn = "",
    Volumes = new List {

TaskDefinition taskDefinition = response.TaskDefinition;


Version Information

.NET Framework:
Supported in: 4.5, 4.0, 3.5

Portable Class Library:
Supported in: Windows Store Apps
Supported in: Windows Phone 8.1
Supported in: Xamarin Android
Supported in: Xamarin iOS (Unified)
Supported in: Xamarin.Forms

See Also