Find an API

Search public APIs with auth details & Postman guides

← All APIs

Amazon Kinesis Firehose

amazonaws · Cloud

Cloud No Auth Free & Open cloud

Amazon Kinesis Data Firehose API Reference Amazon Kinesis Data Firehose is a fully managed service that delivers real-time streaming data to destinations such as Amazon Simple Storage Service (Amazon S3), Amazon OpenSearch Service, Amazon Redshift, Splunk, and various other supportd destinations.

Authentication

No authentication requiredFree to use with no key needed.

Sample Requests

POST CreateDeliveryStream

Creates a Kinesis Data Firehose delivery stream. By default, you can create up to 50 delivery streams per Amazon Web Services Region. This is an asynchronous operation that immediately returns. The initial status of the delivery stream is CREATING . After the delivery st

https://api.apis.guru/v2/specs/amazonaws.com/firehose/2015-08-04/#X-Amz-Target=Firehose_20150804.CreateDeliveryStream

Hover any highlighted part to learn what it does

Headers — extra info sent with the request
X-Amz-Target Firehose_20150804.CreateDeliveryStream
curl -X POST "https://api.apis.guru/v2/specs/amazonaws.com/firehose/2015-08-04/#X-Amz-Target=Firehose_20150804.CreateDeliveryStream" \
  -H "X-Amz-Target: Firehose_20150804.CreateDeliveryStream"
import requests
headers = {
    "X-Amz-Target": "Firehose_20150804.CreateDeliveryStream"
}
response = requests.post(
    "https://api.apis.guru/v2/specs/amazonaws.com/firehose/2015-08-04/#X-Amz-Target=Firehose_20150804.CreateDeliveryStream",
    headers=headers,
)
print(response.json())
const url = 'https://api.apis.guru/v2/specs/amazonaws.com/firehose/2015-08-04/#X-Amz-Target=Firehose_20150804.CreateDeliveryStream';

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

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

func main() {
	targetURL := "https://api.apis.guru/v2/specs/amazonaws.com/firehose/2015-08-04/#X-Amz-Target=Firehose_20150804.CreateDeliveryStream"
	req, _ := http.NewRequest("POST", targetURL, nil)
	req.Header.Set("X-Amz-Target", "Firehose_20150804.CreateDeliveryStream")

	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/firehose/2015-08-04/#X-Amz-Target=Firehose_20150804.CreateDeliveryStream")

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

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

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/firehose/2015-08-04/#X-Amz-Target=Firehose_20150804.CreateDeliveryStream";
$opts = ["http" => [
    "method" => "POST",
    "header" => implode("\r\n", [
        "X-Amz-Target: Firehose_20150804.CreateDeliveryStream"
    ]),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));
POST DeleteDeliveryStream

Deletes a delivery stream and its data. To check the state of a delivery stream, use DescribeDeliveryStream . You can delete a delivery stream only if it is in one of the following states: ACTIVE , DELETING , CREATING_FAILED , or DELETING_FAI

https://api.apis.guru/v2/specs/amazonaws.com/firehose/2015-08-04/#X-Amz-Target=Firehose_20150804.DeleteDeliveryStream

Hover any highlighted part to learn what it does

Headers — extra info sent with the request
X-Amz-Target Firehose_20150804.DeleteDeliveryStream
curl -X POST "https://api.apis.guru/v2/specs/amazonaws.com/firehose/2015-08-04/#X-Amz-Target=Firehose_20150804.DeleteDeliveryStream" \
  -H "X-Amz-Target: Firehose_20150804.DeleteDeliveryStream"
import requests
headers = {
    "X-Amz-Target": "Firehose_20150804.DeleteDeliveryStream"
}
response = requests.post(
    "https://api.apis.guru/v2/specs/amazonaws.com/firehose/2015-08-04/#X-Amz-Target=Firehose_20150804.DeleteDeliveryStream",
    headers=headers,
)
print(response.json())
const url = 'https://api.apis.guru/v2/specs/amazonaws.com/firehose/2015-08-04/#X-Amz-Target=Firehose_20150804.DeleteDeliveryStream';

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

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

func main() {
	targetURL := "https://api.apis.guru/v2/specs/amazonaws.com/firehose/2015-08-04/#X-Amz-Target=Firehose_20150804.DeleteDeliveryStream"
	req, _ := http.NewRequest("POST", targetURL, nil)
	req.Header.Set("X-Amz-Target", "Firehose_20150804.DeleteDeliveryStream")

	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/firehose/2015-08-04/#X-Amz-Target=Firehose_20150804.DeleteDeliveryStream")

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

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

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/firehose/2015-08-04/#X-Amz-Target=Firehose_20150804.DeleteDeliveryStream";
$opts = ["http" => [
    "method" => "POST",
    "header" => implode("\r\n", [
        "X-Amz-Target: Firehose_20150804.DeleteDeliveryStream"
    ]),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));
POST DescribeDeliveryStream

Describes the specified delivery stream and its status. For example, after your delivery stream is created, call DescribeDeliveryStream to see whether the delivery stream is ACTIVE and therefore ready for data to be sent to it. If the status of a delivery stream

https://api.apis.guru/v2/specs/amazonaws.com/firehose/2015-08-04/#X-Amz-Target=Firehose_20150804.DescribeDeliveryStream

Hover any highlighted part to learn what it does

Headers — extra info sent with the request
X-Amz-Target Firehose_20150804.DescribeDeliveryStream
curl -X POST "https://api.apis.guru/v2/specs/amazonaws.com/firehose/2015-08-04/#X-Amz-Target=Firehose_20150804.DescribeDeliveryStream" \
  -H "X-Amz-Target: Firehose_20150804.DescribeDeliveryStream"
import requests
headers = {
    "X-Amz-Target": "Firehose_20150804.DescribeDeliveryStream"
}
response = requests.post(
    "https://api.apis.guru/v2/specs/amazonaws.com/firehose/2015-08-04/#X-Amz-Target=Firehose_20150804.DescribeDeliveryStream",
    headers=headers,
)
print(response.json())
const url = 'https://api.apis.guru/v2/specs/amazonaws.com/firehose/2015-08-04/#X-Amz-Target=Firehose_20150804.DescribeDeliveryStream';

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

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

func main() {
	targetURL := "https://api.apis.guru/v2/specs/amazonaws.com/firehose/2015-08-04/#X-Amz-Target=Firehose_20150804.DescribeDeliveryStream"
	req, _ := http.NewRequest("POST", targetURL, nil)
	req.Header.Set("X-Amz-Target", "Firehose_20150804.DescribeDeliveryStream")

	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/firehose/2015-08-04/#X-Amz-Target=Firehose_20150804.DescribeDeliveryStream")

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

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

res = http.request(req)
puts JSON.parse(res.body)
<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/firehose/2015-08-04/#X-Amz-Target=Firehose_20150804.DescribeDeliveryStream";
$opts = ["http" => [
    "method" => "POST",
    "header" => implode("\r\n", [
        "X-Amz-Target: Firehose_20150804.DescribeDeliveryStream"
    ]),
]];
$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 Kinesis Firehose?

Amazon Kinesis Firehose 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 Kinesis Firehose 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 ↗