Paws::SageMaker::CreateNotebookInstance - Arguments for method CreateNotebookInstance on Paws::SageMaker


This class represents the parameters used for calling the method CreateNotebookInstance on the Amazon SageMaker Service service. Use the attributes of this class as arguments to method CreateNotebookInstance.

You shouldn't make instances of this class. Each attribute should be used as a named argument in the call to CreateNotebookInstance.


    my $api.sagemaker = Paws->service('SageMaker');
    my $CreateNotebookInstanceOutput = $api . sagemaker->CreateNotebookInstance(
      InstanceType         => 'ml.t2.medium',
      NotebookInstanceName => 'MyNotebookInstanceName',
      RoleArn              => 'MyRoleArn',
      AcceleratorTypes     => [
        ...    # values: ml.eia1.medium, ml.eia1.large, ml.eia1.xlarge
      ],       # OPTIONAL
      AdditionalCodeRepositories => [
        'MyCodeRepositoryNameOrUrl', ...    # min: 1, max: 1024
      ],                                    # OPTIONAL
      DefaultCodeRepository => 'MyCodeRepositoryNameOrUrl',    # OPTIONAL
      DirectInternetAccess  => 'Enabled',                      # OPTIONAL
      KmsKeyId              => 'MyKmsKeyId',                   # OPTIONAL
      LifecycleConfigName => 'MyNotebookInstanceLifecycleConfigName', # OPTIONAL
      SecurityGroupIds    => [
        'MySecurityGroupId', ...                                      # max: 32
      ],                                                              # OPTIONAL
      SubnetId => 'MySubnetId',                                       # OPTIONAL
      Tags     => [
          Key   => 'MyTagKey',      # min: 1, max: 128
          Value => 'MyTagValue',    # max: 256

      ],                            # OPTIONAL
      VolumeSizeInGB => 1,          # OPTIONAL

    # Results:
    my $NotebookInstanceArn =

    # Returns a L<Paws::SageMaker::CreateNotebookInstanceOutput> object.

Values for attributes that are native types (Int, String, Float, etc) can passed as-is (scalar values). Values for complex Types (objects) can be passed as a HashRef. The keys and values of the hashref will be used to instance the underlying object. For the AWS API documentation, see


AcceleratorTypes => ArrayRef[Str|Undef]

A list of Elastic Inference (EI) instance types to associate with this notebook instance. Currently, only one instance type can be associated with a notebook instance. For more information, see Using Elastic Inference in Amazon SageMaker (

AdditionalCodeRepositories => ArrayRef[Str|Undef]

An array of up to three Git repositories to associate with the notebook instance. These can be either the names of Git repositories stored as resources in your account, or the URL of Git repositories in AWS CodeCommit ( or in any other Git repository. These repositories are cloned at the same level as the default repository of your notebook instance. For more information, see Associating Git Repositories with Amazon SageMaker Notebook Instances (

DefaultCodeRepository => Str

A Git repository to associate with the notebook instance as its default code repository. This can be either the name of a Git repository stored as a resource in your account, or the URL of a Git repository in AWS CodeCommit ( or in any other Git repository. When you open a notebook instance, it opens in the directory that contains this repository. For more information, see Associating Git Repositories with Amazon SageMaker Notebook Instances (

DirectInternetAccess => Str

Sets whether Amazon SageMaker provides internet access to the notebook instance. If you set this to Disabled this notebook instance will be able to access resources only in your VPC, and will not be able to connect to Amazon SageMaker training and endpoint services unless your configure a NAT Gateway in your VPC.

For more information, see Notebook Instances Are Internet-Enabled by Default ( You can set the value of this parameter to Disabled only if you set a value for the SubnetId parameter.

Valid values are: "Enabled", "Disabled"

REQUIRED InstanceType => Str

The type of ML compute instance to launch for the notebook instance.

Valid values are: "ml.t2.medium", "ml.t2.large", "ml.t2.xlarge", "ml.t2.2xlarge", "ml.t3.medium", "ml.t3.large", "ml.t3.xlarge", "ml.t3.2xlarge", "ml.m4.xlarge", "ml.m4.2xlarge", "ml.m4.4xlarge", "ml.m4.10xlarge", "ml.m4.16xlarge", "ml.m5.xlarge", "ml.m5.2xlarge", "ml.m5.4xlarge", "ml.m5.12xlarge", "ml.m5.24xlarge", "ml.c4.xlarge", "ml.c4.2xlarge", "ml.c4.4xlarge", "ml.c4.8xlarge", "ml.c5.xlarge", "ml.c5.2xlarge", "ml.c5.4xlarge", "ml.c5.9xlarge", "ml.c5.18xlarge", "ml.c5d.xlarge", "ml.c5d.2xlarge", "ml.c5d.4xlarge", "ml.c5d.9xlarge", "ml.c5d.18xlarge", "ml.p2.xlarge", "ml.p2.8xlarge", "ml.p2.16xlarge", "ml.p3.2xlarge", "ml.p3.8xlarge", "ml.p3.16xlarge"

KmsKeyId => Str

If you provide a AWS KMS key ID, Amazon SageMaker uses it to encrypt data at rest on the ML storage volume that is attached to your notebook instance. The KMS key you provide must be enabled. For information, see Enabling and Disabling Keys ( in the AWS Key Management Service Developer Guide.

LifecycleConfigName => Str

The name of a lifecycle configuration to associate with the notebook instance. For information about lifestyle configurations, see Step 2.1: (Optional) Customize a Notebook Instance (

REQUIRED NotebookInstanceName => Str

The name of the new notebook instance.

REQUIRED RoleArn => Str

When you send any requests to AWS resources from the notebook instance, Amazon SageMaker assumes this role to perform tasks on your behalf. You must grant this role necessary permissions so Amazon SageMaker can perform these tasks. The policy must allow the Amazon SageMaker service principal ( permissions to assume this role. For more information, see Amazon SageMaker Roles (

To be able to pass this role to Amazon SageMaker, the caller of this API must have the iam:PassRole permission.

SecurityGroupIds => ArrayRef[Str|Undef]

The VPC security group IDs, in the form sg-xxxxxxxx. The security groups must be for the same VPC as specified in the subnet.

SubnetId => Str

The ID of the subnet in a VPC to which you would like to have a connectivity from your ML compute instance.

Tags => ArrayRef[Paws::SageMaker::Tag]

A list of tags to associate with the notebook instance. You can add tags later by using the CreateTags API.

VolumeSizeInGB => Int

The size, in GB, of the ML storage volume to attach to the notebook instance. The default value is 5 GB.


This class forms part of Paws, documenting arguments for method CreateNotebookInstance in Paws::SageMaker


The source code is located here:

Please report bugs to: