This document provides a comprehensive guide to the AWS SDK for Go, which allows developers to build applications that interact with AWS services.

Getting Started

Before diving into the API reference, make sure you have the AWS SDK for Go installed. You can find installation instructions here.

API Reference

The AWS SDK for Go provides a rich set of APIs to interact with various AWS services. Below is a list of some of the key services and their corresponding modules:

Amazon S3

Amazon S3 is an object storage service that offers a range of storage classes to meet different use cases.

  • Create a Bucket: Use the CreateBucket API to create a new bucket.
    err := svc.CreateBucket(&s3.CreateBucketInput{
      Bucket: aws.String("my-bucket"),
    })
    if err != nil {
      // Handle error
    }
    
  • List Objects: Use the ListObjectsV2 API to list objects in a bucket.
    output, err := svc.ListObjectsV2(&s3.ListObjectsV2Input{
      Bucket: aws.String("my-bucket"),
    })
    if err != nil {
      // Handle error
    }
    

Amazon EC2

Amazon EC2 is a web service that provides resizable compute capacity in the cloud.

  • Launch an Instance: Use the RunInstances API to launch a new EC2 instance.
    input := &ec2.RunInstancesInput{
      ImageId: aws.String("ami-0c55b159cbfafe1f0"),
      InstanceType: aws.String("t2.micro"),
      MinCount: aws.Int64(1),
      MaxCount: aws.Int64(1),
    }
    instances, err := svc.RunInstances(input)
    if err != nil {
      // Handle error
    }
    

Amazon DynamoDB

Amazon DynamoDB is a managed NoSQL database service that provides fast and predictable performance with seamless scalability.

  • Create a Table: Use the CreateTable API to create a new table.
    input := &dynamodb.CreateTableInput{
      TableName: aws.String("my-table"),
      AttributeDefinitions: []*dynamodb.AttributeDefinition{
        {
          AttributeName: aws.String("id"),
          AttributeType: aws.String("S"),
        },
      },
      KeySchema: []*dynamodb.KeySchemaElement{
        {
          AttributeName: aws.String("id"),
          KeyType: aws.String("HASH"),
        },
      },
      ProvisionedThroughput: &dynamodb.ProvisionedThroughput{
        ReadCapacityUnits: aws.Int64(5),
        WriteCapacityUnits: aws.Int64(5),
      },
    }
    _, err := svc.CreateTable(input)
    if err != nil {
      // Handle error
    }
    

For more detailed information, please refer to the AWS SDK for Go API Reference.


AWS Logo