Find an API

Search public APIs with auth details & Postman guides

← All APIs

Amazon Athena

amazonaws · Cloud

Cloud No Auth Free & Open cloud Sandbox

Amazon Athena is an interactive query service that lets you use standard SQL to analyze data directly in Amazon S3. You can point Athena at your data in Amazon S3 and run ad-hoc queries and get results in seconds. Athena is serverless, so there is no infrastructure to set up or manage. You pay only for the queries you run. Athena scales automatically—executing queries in parallel—so results are fast, even with large datasets and complex queries. For more information, see <a href="http://docs.

Authentication

No authentication requiredFree to use with no key needed.

Sample Requests

POST GetQueryResults

Streams the results of a single query execution specified by QueryExecutionId from the Athena query results location in Amazon S3. For more information, see Working with query results, recent queries, and output fil

https://api.apis.guru/v2/specs/amazonaws.com/athena/2017-05-18/#X-Amz-Target=AmazonAthena.GetQueryResults?NextToken=example&MaxResults=example

Hover any highlighted part to learn what it does

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

const response = await fetch(url, {
  method: 'POST',
  headers: {
    'X-Amz-Target': 'AmazonAthena.GetQueryResults'
  },
}); 
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/athena/2017-05-18/#X-Amz-Target=AmazonAthena.GetQueryResults")
	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", "AmazonAthena.GetQueryResults")

	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/athena/2017-05-18/#X-Amz-Target=AmazonAthena.GetQueryResults")
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"] = "AmazonAthena.GetQueryResults"

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

Returns the supported DPU sizes for the supported application runtimes (for example, Athena notebook version 1 ).

https://api.apis.guru/v2/specs/amazonaws.com/athena/2017-05-18/#X-Amz-Target=AmazonAthena.ListApplicationDPUSizes?NextToken=example&MaxResults=example

Hover any highlighted part to learn what it does

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

const response = await fetch(url, {
  method: 'POST',
  headers: {
    'X-Amz-Target': 'AmazonAthena.ListApplicationDPUSizes'
  },
}); 
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/athena/2017-05-18/#X-Amz-Target=AmazonAthena.ListApplicationDPUSizes")
	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", "AmazonAthena.ListApplicationDPUSizes")

	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/athena/2017-05-18/#X-Amz-Target=AmazonAthena.ListApplicationDPUSizes")
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"] = "AmazonAthena.ListApplicationDPUSizes"

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

Lists the calculations that have been submitted to a session in descending order. Newer calculations are listed first; older calculations are listed later.

https://api.apis.guru/v2/specs/amazonaws.com/athena/2017-05-18/#X-Amz-Target=AmazonAthena.ListCalculationExecutions?NextToken=example&MaxResults=example

Hover any highlighted part to learn what it does

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

const response = await fetch(url, {
  method: 'POST',
  headers: {
    'X-Amz-Target': 'AmazonAthena.ListCalculationExecutions'
  },
}); 
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/athena/2017-05-18/#X-Amz-Target=AmazonAthena.ListCalculationExecutions")
	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", "AmazonAthena.ListCalculationExecutions")

	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/athena/2017-05-18/#X-Amz-Target=AmazonAthena.ListCalculationExecutions")
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"] = "AmazonAthena.ListCalculationExecutions"

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/athena/2017-05-18/#X-Amz-Target=AmazonAthena.ListCalculationExecutions?" . http_build_query([
    "NextToken" => "example",
    "MaxResults" => "example"
]);
$opts = ["http" => [
    "method" => "POST",
    "header" => implode("\r\n", [
        "X-Amz-Target: AmazonAthena.ListCalculationExecutions"
    ]),
]];
$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 Athena?

Amazon Athena 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 Athena 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 ↗