naftiko: 1.0.0-alpha2 info: label: Amazon Kinesis Firehose description: 'Amazon Kinesis Firehose. 12 operations. Lead operation: Amazon Kinesis Firehose. Self-contained Naftiko capability covering one Kinesis business surface.' tags: - Kinesis - Amazon Kinesis Firehose created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: KINESIS_API_KEY: KINESIS_API_KEY capability: consumes: - type: http namespace: amazon-data-firehose baseUri: http://firehose.{region}.amazonaws.com description: Amazon Kinesis Firehose business capability. Self-contained, no shared references. resources: - name: '#X-Amz-Target=Firehose_20150804.CreateDeliveryStream' path: /#X-Amz-Target=Firehose_20150804.CreateDeliveryStream operations: - name: createdeliverystream method: POST description:
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 del outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: X-Amz-Target in: header type: string required: true - name: body in: body type: object description: Request body (JSON). required: true - name: '#X-Amz-Target=Firehose_20150804.DeleteDeliveryStream' path: /#X-Amz-Target=Firehose_20150804.DeleteDeliveryStream operations: - name: deletedeliverystream method: POST description: '
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: Describes the specified delivery stream and its status. For example, after your delivery stream is
created, call Lists your delivery streams in alphabetical order of their names. The number of delivery streams
might be too large to return using a single call to Writes a single data record into an Amazon Kinesis Data Firehose delivery stream. To write multiple
data records into a delivery stream, use PutRecordBatch. Applications using these operations are referred
to as producers.
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: X-Amz-Target
in: header
type: string
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: '#X-Amz-Target=Firehose_20150804.PutRecordBatch'
path: /#X-Amz-Target=Firehose_20150804.PutRecordBatch
operations:
- name: putrecordbatch
method: POST
description: Writes multiple data records into a delivery stream in a single call, which can achieve higher throughput
per producer than when writing single records. To write single data records into a delivery stream, use PutRecord.
Applicati
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: X-Amz-Target
in: header
type: string
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: '#X-Amz-Target=Firehose_20150804.StartDeliveryStreamEncryption'
path: /#X-Amz-Target=Firehose_20150804.StartDeliveryStreamEncryption
operations:
- name: startdeliverystreamencryption
method: POST
description: Enables server-side encryption (SSE) for the delivery stream. This operation is asynchronous.
It returns immediately. When you invoke it, Kinesis Data Firehose first sets the encryption status of the stream
to This operation is asynchronous.
It returns immediately. When you invoke it, Kinesis Data Firehose first sets the encryption status of the stream
to Removes tags from the specified delivery stream. Removed tags are deleted, and you can't recover them
after this operation successfully completes. If you specify a tag that doesn't exist, the operation ignores
it. This oper
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: X-Amz-Target
in: header
type: string
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: '#X-Amz-Target=Firehose_20150804.UpdateDestination'
path: /#X-Amz-Target=Firehose_20150804.UpdateDestination
operations:
- name: updatedestination
method: POST
description: Updates the specified destination of the specified delivery stream. Use this operation to change
the destination type (for example, to replace the Amazon S3 destination with Amazon Redshift) or change the parameters
associated wit
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: X-Amz-Target
in: header
type: string
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
authentication:
type: apikey
key: Authorization
value: '{{env.KINESIS_API_KEY}}'
placement: header
exposes:
- type: rest
namespace: amazon-data-firehose-rest
port: 8080
description: REST adapter for Amazon Kinesis Firehose. One Spectral-compliant resource per consumed operation, prefixed
with /v1.
resources:
- path: /v1/x-amz-target-firehose-20150804-createdeliverystream
name: x-amz-target-firehose-20150804-createdeliverystream
description: 'REST surface for #X-Amz-Target=Firehose_20150804.CreateDeliveryStream.'
operations:
- method: POST
name: createdeliverystream
description: 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 del
call: amazon-data-firehose.createdeliverystream
with:
X-Amz-Target: rest.X-Amz-Target
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/x-amz-target-firehose-20150804-deletedeliverystream
name: x-amz-target-firehose-20150804-deletedeliverystream
description: 'REST surface for #X-Amz-Target=Firehose_20150804.DeleteDeliveryStream.'
operations:
- method: POST
name: deletedeliverystream
description: ' 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: Describes the specified delivery stream and its status. For example, after your delivery stream is
created, call Lists your delivery streams in alphabetical order of their names. The number of delivery streams
might be too large to return using a single call to Writes a single data record into an Amazon Kinesis Data Firehose delivery stream. To write multiple
data records into a delivery stream, use PutRecordBatch. Applications using these operations are referred
to as producers.
call: amazon-data-firehose.putrecord
with:
X-Amz-Target: rest.X-Amz-Target
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/x-amz-target-firehose-20150804-putrecordbatch
name: x-amz-target-firehose-20150804-putrecordbatch
description: 'REST surface for #X-Amz-Target=Firehose_20150804.PutRecordBatch.'
operations:
- method: POST
name: putrecordbatch
description: Writes multiple data records into a delivery stream in a single call, which can achieve higher throughput
per producer than when writing single records. To write single data records into a delivery stream, use PutRecord.
Applicati
call: amazon-data-firehose.putrecordbatch
with:
X-Amz-Target: rest.X-Amz-Target
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/x-amz-target-firehose-20150804-startdeliverystreamencryption
name: x-amz-target-firehose-20150804-startdeliverystreamencryption
description: 'REST surface for #X-Amz-Target=Firehose_20150804.StartDeliveryStreamEncryption.'
operations:
- method: POST
name: startdeliverystreamencryption
description: Enables server-side encryption (SSE) for the delivery stream. This operation is asynchronous.
It returns immediately. When you invoke it, Kinesis Data Firehose first sets the encryption status of the stream
to This operation is asynchronous.
It returns immediately. When you invoke it, Kinesis Data Firehose first sets the encryption status of the stream
to Removes tags from the specified delivery stream. Removed tags are deleted, and you can't recover them
after this operation successfully completes. If you specify a tag that doesn't exist, the operation ignores
it. This oper
call: amazon-data-firehose.untagdeliverystream
with:
X-Amz-Target: rest.X-Amz-Target
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/x-amz-target-firehose-20150804-updatedestination
name: x-amz-target-firehose-20150804-updatedestination
description: 'REST surface for #X-Amz-Target=Firehose_20150804.UpdateDestination.'
operations:
- method: POST
name: updatedestination
description: Updates the specified destination of the specified delivery stream. Use this operation to change
the destination type (for example, to replace the Amazon S3 destination with Amazon Redshift) or change the parameters
associated wit
call: amazon-data-firehose.updatedestination
with:
X-Amz-Target: rest.X-Amz-Target
body: rest.body
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: amazon-data-firehose-mcp
port: 9090
transport: http
description: MCP adapter for Amazon Kinesis Firehose. One tool per consumed operation, routed inline through this capability's
consumes block.
tools:
- name: p-creates-kinesis-data-firehose-delivery
description: 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 del
hints:
readOnly: false
destructive: false
idempotent: false
call: amazon-data-firehose.createdeliverystream
with:
X-Amz-Target: tools.X-Amz-Target
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: p-deletes-delivery-stream-and-its
description: ' 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: Describes the specified delivery stream and its status. For example, after your delivery stream is created,
call Lists your delivery streams in alphabetical order of their names. The number of delivery streams
might be too large to return using a single call to Writes a single data record into an Amazon Kinesis Data Firehose delivery stream. To write multiple
data records into a delivery stream, use PutRecordBatch. Applications using these operations are referred to
as producers.
hints:
readOnly: false
destructive: false
idempotent: false
call: amazon-data-firehose.putrecord
with:
X-Amz-Target: tools.X-Amz-Target
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: p-writes-multiple-data-records-delivery
description: Writes multiple data records into a delivery stream in a single call, which can achieve higher throughput
per producer than when writing single records. To write single data records into a delivery stream, use PutRecord.
Applicati
hints:
readOnly: false
destructive: false
idempotent: false
call: amazon-data-firehose.putrecordbatch
with:
X-Amz-Target: tools.X-Amz-Target
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: p-enables-server-side-encryption-sse
description: Enables server-side encryption (SSE) for the delivery stream. This operation is asynchronous.
It returns immediately. When you invoke it, Kinesis Data Firehose first sets the encryption status of the stream to
This operation is asynchronous.
It returns immediately. When you invoke it, Kinesis Data Firehose first sets the encryption status of the stream to
Removes tags from the specified delivery stream. Removed tags are deleted, and you can't recover them
after this operation successfully completes. If you specify a tag that doesn't exist, the operation ignores
it. This oper
hints:
readOnly: false
destructive: false
idempotent: false
call: amazon-data-firehose.untagdeliverystream
with:
X-Amz-Target: tools.X-Amz-Target
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: p-updates-specified-destination-specified-delivery
description: Updates the specified destination of the specified delivery stream. Use this operation to change
the destination type (for example, to replace the Amazon S3 destination with Amazon Redshift) or change the parameters
associated wit
hints:
readOnly: false
destructive: false
idempotent: false
call: amazon-data-firehose.updatedestination
with:
X-Amz-Target: tools.X-Amz-Target
body: tools.body
outputParameters:
- type: object
mapping: $.
ACTIVE, DELETING'
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: X-Amz-Target
in: header
type: string
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: '#X-Amz-Target=Firehose_20150804.DescribeDeliveryStream'
path: /#X-Amz-Target=Firehose_20150804.DescribeDeliveryStream
operations:
- name: describedeliverystream
method: POST
description: DescribeDeliveryStream to see whether the delivery stream is ACTIVE and
therefore ready for data t
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: X-Amz-Target
in: header
type: string
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: '#X-Amz-Target=Firehose_20150804.ListDeliveryStreams'
path: /#X-Amz-Target=Firehose_20150804.ListDeliveryStreams
operations:
- name: listdeliverystreams
method: POST
description: ListDeliveryStreams. You can limit the number of
delivery streams re
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: X-Amz-Target
in: header
type: string
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: '#X-Amz-Target=Firehose_20150804.ListTagsForDeliveryStream'
path: /#X-Amz-Target=Firehose_20150804.ListTagsForDeliveryStream
operations:
- name: listtagsfordeliverystream
method: POST
description: Lists the tags for the specified delivery stream. This operation has a limit of five transactions per
second per account.
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: X-Amz-Target
in: header
type: string
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: '#X-Amz-Target=Firehose_20150804.PutRecord'
path: /#X-Amz-Target=Firehose_20150804.PutRecord
operations:
- name: putrecord
method: POST
description: ENABLINGDisables server-side encryption (SSE) for the delivery stream. DISABLINGAdds or updates tags for the specified delivery stream. A tag is a key-value pair that you can define
and assign to Amazon Web Services resources. If you specify a tag that already exists, the tag value is replaced
with the value that yo
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: X-Amz-Target
in: header
type: string
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: '#X-Amz-Target=Firehose_20150804.UntagDeliveryStream'
path: /#X-Amz-Target=Firehose_20150804.UntagDeliveryStream
operations:
- name: untagdeliverystream
method: POST
description: ACTIVE, DELETING'
call: amazon-data-firehose.deletedeliverystream
with:
X-Amz-Target: rest.X-Amz-Target
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/x-amz-target-firehose-20150804-describedeliverystream
name: x-amz-target-firehose-20150804-describedeliverystream
description: 'REST surface for #X-Amz-Target=Firehose_20150804.DescribeDeliveryStream.'
operations:
- method: POST
name: describedeliverystream
description: DescribeDeliveryStream to see whether the delivery stream is ACTIVE and
therefore ready for data t
call: amazon-data-firehose.describedeliverystream
with:
X-Amz-Target: rest.X-Amz-Target
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/x-amz-target-firehose-20150804-listdeliverystreams
name: x-amz-target-firehose-20150804-listdeliverystreams
description: 'REST surface for #X-Amz-Target=Firehose_20150804.ListDeliveryStreams.'
operations:
- method: POST
name: listdeliverystreams
description: ListDeliveryStreams. You can limit the number of
delivery streams re
call: amazon-data-firehose.listdeliverystreams
with:
X-Amz-Target: rest.X-Amz-Target
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/x-amz-target-firehose-20150804-listtagsfordeliverystream
name: x-amz-target-firehose-20150804-listtagsfordeliverystream
description: 'REST surface for #X-Amz-Target=Firehose_20150804.ListTagsForDeliveryStream.'
operations:
- method: POST
name: listtagsfordeliverystream
description: Lists the tags for the specified delivery stream. This operation has a limit of five transactions per
second per account.
call: amazon-data-firehose.listtagsfordeliverystream
with:
X-Amz-Target: rest.X-Amz-Target
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/x-amz-target-firehose-20150804-putrecord
name: x-amz-target-firehose-20150804-putrecord
description: 'REST surface for #X-Amz-Target=Firehose_20150804.PutRecord.'
operations:
- method: POST
name: putrecord
description: ENABLINGDisables server-side encryption (SSE) for the delivery stream. DISABLINGAdds or updates tags for the specified delivery stream. A tag is a key-value pair that you can define
and assign to Amazon Web Services resources. If you specify a tag that already exists, the tag value is replaced
with the value that yo
call: amazon-data-firehose.tagdeliverystream
with:
X-Amz-Target: rest.X-Amz-Target
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/x-amz-target-firehose-20150804-untagdeliverystream
name: x-amz-target-firehose-20150804-untagdeliverystream
description: 'REST surface for #X-Amz-Target=Firehose_20150804.UntagDeliveryStream.'
operations:
- method: POST
name: untagdeliverystream
description: ACTIVE, DELETING'
hints:
readOnly: true
destructive: false
idempotent: false
call: amazon-data-firehose.deletedeliverystream
with:
X-Amz-Target: tools.X-Amz-Target
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: p-describes-specified-delivery-stream-and
description: DescribeDeliveryStream to see whether the delivery stream is ACTIVE and therefore ready
for data t
hints:
readOnly: false
destructive: false
idempotent: false
call: amazon-data-firehose.describedeliverystream
with:
X-Amz-Target: tools.X-Amz-Target
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: p-lists-your-delivery-streams-alphabetical
description: ListDeliveryStreams. You can limit the number of
delivery streams re
hints:
readOnly: false
destructive: false
idempotent: false
call: amazon-data-firehose.listdeliverystreams
with:
X-Amz-Target: tools.X-Amz-Target
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: lists-tags-specified-delivery-stream
description: Lists the tags for the specified delivery stream. This operation has a limit of five transactions per second
per account.
hints:
readOnly: false
destructive: false
idempotent: false
call: amazon-data-firehose.listtagsfordeliverystream
with:
X-Amz-Target: tools.X-Amz-Target
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: p-writes-single-data-record-amazon
description: ENABLINGDisables server-side encryption (SSE) for the delivery stream. DISABLINGAdds or updates tags for the specified delivery stream. A tag is a key-value pair that you can define
and assign to Amazon Web Services resources. If you specify a tag that already exists, the tag value is replaced with
the value that yo
hints:
readOnly: false
destructive: false
idempotent: false
call: amazon-data-firehose.tagdeliverystream
with:
X-Amz-Target: tools.X-Amz-Target
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: p-removes-tags-specified-delivery-stream
description: