Find an API

Search public APIs with auth details & Postman guides

← All APIs

Amazon DynamoDB

amazonaws · Cloud

Cloud No Auth Free & Open cloud Sandbox

Amazon DynamoDB Amazon DynamoDB is a fully managed NoSQL database service that provides fast and predictable performance with seamless scalability. DynamoDB lets you offload the administrative burdens of operating and scaling a distributed database, so that you don't have to worry about hardware provisioning, setup and configuration, replication, software patching, or cluster scaling. With DynamoDB, you can create database tables that can store and retrieve any amo

Authentication

No authentication requiredFree to use with no key needed.

Sample Requests

POST BatchGetItem

The BatchGetItem operation returns the attributes of one or more items from one or more tables. You identify requested items by primary key. A single operation can retrieve up to 16 MB of data, which can contain as many as 100 items. BatchGetItem returns a partial

https://api.apis.guru/v2/specs/amazonaws.com/dynamodb/2012-08-10/#X-Amz-Target=DynamoDB_20120810.BatchGetItem?RequestItems=example

Hover any highlighted part to learn what it does

Headers — extra info sent with the request
X-Amz-Target DynamoDB_20120810.BatchGetItem
curl -X POST "https://api.apis.guru/v2/specs/amazonaws.com/dynamodb/2012-08-10/#X-Amz-Target=DynamoDB_20120810.BatchGetItem?RequestItems=example" \
  -H "X-Amz-Target: DynamoDB_20120810.BatchGetItem"
import requests
params = {
    "RequestItems": "example"
}
headers = {
    "X-Amz-Target": "DynamoDB_20120810.BatchGetItem"
}
response = requests.post(
    "https://api.apis.guru/v2/specs/amazonaws.com/dynamodb/2012-08-10/#X-Amz-Target=DynamoDB_20120810.BatchGetItem",
    params=params,
    headers=headers,
)
print(response.json())
const url = new URL('https://api.apis.guru/v2/specs/amazonaws.com/dynamodb/2012-08-10/#X-Amz-Target=DynamoDB_20120810.BatchGetItem');
url.searchParams.set('RequestItems', 'example');

const response = await fetch(url, {
  method: 'POST',
  headers: {
    'X-Amz-Target': 'DynamoDB_20120810.BatchGetItem'
  },
}); 
const data = await response.json();
console.log(data);
package main

import (
	"fmt"
	"io"
	"net/http"
	"net/url"
)

func main() {
	baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/amazonaws.com/dynamodb/2012-08-10/#X-Amz-Target=DynamoDB_20120810.BatchGetItem")
	q := baseURL.Query()
	q.Set("RequestItems", "example")
	baseURL.RawQuery = q.Encode()
	targetURL := baseURL.String()
	req, _ := http.NewRequest("POST", targetURL, nil)
	req.Header.Set("X-Amz-Target", "DynamoDB_20120810.BatchGetItem")

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/amazonaws.com/dynamodb/2012-08-10/#X-Amz-Target=DynamoDB_20120810.BatchGetItem")
uri.query = URI.encode_www_form({
  "RequestItems" => "example"
})

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Post.new(uri)
req["X-Amz-Target"] = "DynamoDB_20120810.BatchGetItem"

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/dynamodb/2012-08-10/#X-Amz-Target=DynamoDB_20120810.BatchGetItem?" . http_build_query([
    "RequestItems" => "example"
]);
$opts = ["http" => [
    "method" => "POST",
    "header" => implode("\r\n", [
        "X-Amz-Target: DynamoDB_20120810.BatchGetItem"
    ]),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));
POST ListContributorInsights

Returns a list of ContributorInsightsSummary for a table and all its global secondary indexes.

https://api.apis.guru/v2/specs/amazonaws.com/dynamodb/2012-08-10/#X-Amz-Target=DynamoDB_20120810.ListContributorInsights?NextToken=example&MaxResults=example

Hover any highlighted part to learn what it does

Headers — extra info sent with the request
X-Amz-Target DynamoDB_20120810.ListContributorInsights
curl -X POST "https://api.apis.guru/v2/specs/amazonaws.com/dynamodb/2012-08-10/#X-Amz-Target=DynamoDB_20120810.ListContributorInsights?NextToken=example&MaxResults=example" \
  -H "X-Amz-Target: DynamoDB_20120810.ListContributorInsights"
import requests
params = {
    "NextToken": "example",
    "MaxResults": "example"
}
headers = {
    "X-Amz-Target": "DynamoDB_20120810.ListContributorInsights"
}
response = requests.post(
    "https://api.apis.guru/v2/specs/amazonaws.com/dynamodb/2012-08-10/#X-Amz-Target=DynamoDB_20120810.ListContributorInsights",
    params=params,
    headers=headers,
)
print(response.json())
const url = new URL('https://api.apis.guru/v2/specs/amazonaws.com/dynamodb/2012-08-10/#X-Amz-Target=DynamoDB_20120810.ListContributorInsights');
url.searchParams.set('NextToken', 'example');
url.searchParams.set('MaxResults', 'example');

const response = await fetch(url, {
  method: 'POST',
  headers: {
    'X-Amz-Target': 'DynamoDB_20120810.ListContributorInsights'
  },
}); 
const data = await response.json();
console.log(data);
package main

import (
	"fmt"
	"io"
	"net/http"
	"net/url"
)

func main() {
	baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/amazonaws.com/dynamodb/2012-08-10/#X-Amz-Target=DynamoDB_20120810.ListContributorInsights")
	q := baseURL.Query()
	q.Set("NextToken", "example")
	q.Set("MaxResults", "example")
	baseURL.RawQuery = q.Encode()
	targetURL := baseURL.String()
	req, _ := http.NewRequest("POST", targetURL, nil)
	req.Header.Set("X-Amz-Target", "DynamoDB_20120810.ListContributorInsights")

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/amazonaws.com/dynamodb/2012-08-10/#X-Amz-Target=DynamoDB_20120810.ListContributorInsights")
uri.query = URI.encode_www_form({
  "NextToken" => "example",
  "MaxResults" => "example"
})

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Post.new(uri)
req["X-Amz-Target"] = "DynamoDB_20120810.ListContributorInsights"

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/dynamodb/2012-08-10/#X-Amz-Target=DynamoDB_20120810.ListContributorInsights?" . http_build_query([
    "NextToken" => "example",
    "MaxResults" => "example"
]);
$opts = ["http" => [
    "method" => "POST",
    "header" => implode("\r\n", [
        "X-Amz-Target: DynamoDB_20120810.ListContributorInsights"
    ]),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));
POST ListExports

Lists completed exports within the past 90 days.

https://api.apis.guru/v2/specs/amazonaws.com/dynamodb/2012-08-10/#X-Amz-Target=DynamoDB_20120810.ListExports?NextToken=example&MaxResults=example

Hover any highlighted part to learn what it does

Headers — extra info sent with the request
X-Amz-Target DynamoDB_20120810.ListExports
curl -X POST "https://api.apis.guru/v2/specs/amazonaws.com/dynamodb/2012-08-10/#X-Amz-Target=DynamoDB_20120810.ListExports?NextToken=example&MaxResults=example" \
  -H "X-Amz-Target: DynamoDB_20120810.ListExports"
import requests
params = {
    "NextToken": "example",
    "MaxResults": "example"
}
headers = {
    "X-Amz-Target": "DynamoDB_20120810.ListExports"
}
response = requests.post(
    "https://api.apis.guru/v2/specs/amazonaws.com/dynamodb/2012-08-10/#X-Amz-Target=DynamoDB_20120810.ListExports",
    params=params,
    headers=headers,
)
print(response.json())
const url = new URL('https://api.apis.guru/v2/specs/amazonaws.com/dynamodb/2012-08-10/#X-Amz-Target=DynamoDB_20120810.ListExports');
url.searchParams.set('NextToken', 'example');
url.searchParams.set('MaxResults', 'example');

const response = await fetch(url, {
  method: 'POST',
  headers: {
    'X-Amz-Target': 'DynamoDB_20120810.ListExports'
  },
}); 
const data = await response.json();
console.log(data);
package main

import (
	"fmt"
	"io"
	"net/http"
	"net/url"
)

func main() {
	baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/amazonaws.com/dynamodb/2012-08-10/#X-Amz-Target=DynamoDB_20120810.ListExports")
	q := baseURL.Query()
	q.Set("NextToken", "example")
	q.Set("MaxResults", "example")
	baseURL.RawQuery = q.Encode()
	targetURL := baseURL.String()
	req, _ := http.NewRequest("POST", targetURL, nil)
	req.Header.Set("X-Amz-Target", "DynamoDB_20120810.ListExports")

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()
	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}
require "net/http"
require "json"

uri = URI("https://api.apis.guru/v2/specs/amazonaws.com/dynamodb/2012-08-10/#X-Amz-Target=DynamoDB_20120810.ListExports")
uri.query = URI.encode_www_form({
  "NextToken" => "example",
  "MaxResults" => "example"
})

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"

req = Net::HTTP::Post.new(uri)
req["X-Amz-Target"] = "DynamoDB_20120810.ListExports"

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/dynamodb/2012-08-10/#X-Amz-Target=DynamoDB_20120810.ListExports?" . http_build_query([
    "NextToken" => "example",
    "MaxResults" => "example"
]);
$opts = ["http" => [
    "method" => "POST",
    "header" => implode("\r\n", [
        "X-Amz-Target: DynamoDB_20120810.ListExports"
    ]),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));

Postman Setup Guide

Get Postman ↗
  1. See official documentation for authentication and setup.

What can you build with Amazon DynamoDB?

Amazon DynamoDB is a Cloud API. Developers commonly use cloud APIs for:

  • provisioning and managing cloud infrastructure
  • automating deployments and container orchestration
  • monitoring uptime and performance metrics
  • managing storage buckets and databases
  • setting up auto-scaling and load balancing

No authentication required. This API is open — no signup or key needed. Ideal for quick prototypes and public-facing features. Amazon DynamoDB is free to use, making it a low-risk choice to experiment with.

New to APIs? Read our beginner's guide · Learn about API keys · What is REST?

Open documentation ↗