Synadia Communications Object Bucket API
The object-bucket API from Synadia Communications — 5 operation(s) for object-bucket.
The object-bucket API from Synadia Communications — 5 operation(s) for object-bucket.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/synadia-communications-object-bucket-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
description: API for Synadia Control Plane / Synadia Cloud
title: Synadia Control Plane / Synadia Cloud Object Bucket API
version: beta
servers:
- description: Path to Synadia Control Plane Server Api
url: '{baseUrl}/api'
variables:
baseUrl:
default: ''
security:
- bearerAuth: []
sessionAuth: []
tags:
- name: object-bucket
paths:
/core/beta/jetstream/object-bucket/{streamId}:
delete:
description: Deletes Object Bucket
operationId: deleteObjectBucket
parameters:
- explode: false
in: path
name: streamId
required: true
schema:
type: string
style: simple
responses:
'204':
description: No Content
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
summary: Delete Object Bucket
tags:
- object-bucket
x-doc-tags:
- 'JetStream: Object Buckets'
get:
description: Returns JetStream Object bucket info
operationId: getObjectBucket
parameters:
- explode: false
in: path
name: streamId
required: true
schema:
type: string
style: simple
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/JSObjectBucketViewResponse'
description: Success
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
summary: Get Object Bucket
tags:
- object-bucket
x-doc-tags:
- 'JetStream: Object Buckets'
patch:
operationId: updateObjectBucket
parameters:
- explode: false
in: path
name: streamId
required: true
schema:
type: string
style: simple
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/JSObjectBucketUpdateRequest'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/JSObjectBucketViewResponse'
description: Success
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
summary: Update Object Bucket
tags:
- object-bucket
x-doc-tags:
- 'JetStream: Object Buckets'
/core/beta/jetstream/object-bucket/{streamId}/consumers:
get:
operationId: listObjConsumers
parameters:
- explode: false
in: path
name: streamId
required: true
schema:
type: string
style: simple
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/JSConsumerInfoListResponse'
description: Success
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
summary: List Consumers
tags:
- object-bucket
x-doc-tags:
- 'JetStream: Object Buckets'
/core/beta/jetstream/object-bucket/{streamId}/consumers/pull:
post:
description: Creates Pull Consumer
operationId: createObjPullConsumer
parameters:
- explode: false
in: path
name: streamId
required: true
schema:
type: string
style: simple
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/JSPullConsumerConfigRequest'
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/JSPullConsumerInfoResponse'
description: Success
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
summary: Create Pull Consumer
tags:
- object-bucket
x-doc-tags:
- 'JetStream: Object Buckets'
/core/beta/jetstream/object-bucket/{streamId}/consumers/push:
post:
description: Creates Push Consumer
operationId: createObjPushConsumer
parameters:
- explode: false
in: path
name: streamId
required: true
schema:
type: string
style: simple
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/JSPushConsumerConfigRequest'
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/JSPushConsumerInfoResponse'
description: Success
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
summary: Create Push Consumer
tags:
- object-bucket
x-doc-tags:
- 'JetStream: Object Buckets'
/core/beta/jetstream/object-bucket/{streamId}/purge:
delete:
description: Purges Object Bucket
operationId: purgeObjBucket
parameters:
- explode: false
in: path
name: streamId
required: true
schema:
type: string
style: simple
responses:
'204':
description: No Content
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
summary: Purge Object Bucket
tags:
- object-bucket
x-doc-tags:
- 'JetStream: Streams'
components:
schemas:
PriorityGroupState:
description: PriorityGroupState is the state of a consumer priority group.
example:
pinned_client_id: pinned_client_id
pinned_ts: 2000-01-23 04:56:07+00:00
group: group
properties:
group:
type: string
pinned_client_id:
type: string
pinned_ts:
format: date-time
type: string
required:
- group
type: object
UpdatableObjectBucketConfig:
description: ObjectStoreConfig is the config for the object store.
example:
max_age: 0
metadata:
key: metadata
num_replicas: 1
description: description
max_bytes: 6
placement:
cluster: cluster
tags:
- tags
- tags
compression: true
properties:
compression:
description: Enable underlying stream compression.
type: boolean
description:
type: string
max_age:
format: int64
type: integer
max_bytes:
format: int64
type: integer
metadata:
additionalProperties:
type: string
description: Bucket-specific metadata
type: object
num_replicas:
type: integer
placement:
$ref: '#/components/schemas/Placement'
type: object
ConsumerInfo:
description: ConsumerInfo reports the current state of a consumer
properties:
ack_floor:
$ref: '#/components/schemas/SequenceInfo'
cluster:
$ref: '#/components/schemas/ConsumerInfo_cluster'
config:
$ref: '#/components/schemas/ConsumerConfig'
created:
format: date-time
type: string
delivered:
$ref: '#/components/schemas/SequenceInfo'
name:
type: string
num_ack_pending:
type: integer
num_pending:
maximum: 18446744073709551615
minimum: 0
type: integer
num_redelivered:
type: integer
num_waiting:
type: integer
pause_remaining:
format: int64
type: integer
paused:
type: boolean
priority_groups:
items:
$ref: '#/components/schemas/PriorityGroupState'
type: array
push_bound:
type: boolean
stream_name:
type: string
ts:
format: date-time
type: string
required:
- ack_floor
- config
- created
- delivered
- name
- num_ack_pending
- num_pending
- num_redelivered
- num_waiting
- stream_name
- ts
type: object
DeliverPolicy:
enum:
- all
- last
- new
- by_start_sequence
- by_start_time
- last_per_subject
type: string
JSConsumerType:
enum:
- push
- pull
type: string
ConsumerInfo_cluster:
allOf:
- $ref: '#/components/schemas/ClusterInfo'
type:
- object
- 'null'
JSConsumerInfoResponse:
allOf:
- $ref: '#/components/schemas/ConsumerInfo'
- required:
- consumer_type
- id
example:
consumer_type: null
id: id
properties:
consumer_type:
$ref: '#/components/schemas/JSConsumerType'
id:
type: string
type: object
SequenceInfo:
description: SequenceInfo is the consumer and stream sequence that uniquely identify a message
example:
consumer_seq: 2147483647
last_active: last_active
stream_seq: 2147483647
properties:
consumer_seq:
maximum: 18446744073709551615
minimum: 0
type: integer
last_active:
type:
- string
- 'null'
stream_seq:
maximum: 18446744073709551615
minimum: 0
type: integer
required:
- consumer_seq
- stream_seq
type: object
JSObjectBucketUpdateRequest:
example:
sealed: true
really_sealed: true
config:
max_age: 0
metadata:
key: metadata
num_replicas: 1
description: description
max_bytes: 6
placement:
cluster: cluster
tags:
- tags
- tags
compression: true
properties:
config:
$ref: '#/components/schemas/UpdatableObjectBucketConfig'
really_sealed:
type: boolean
sealed:
type: boolean
required:
- config
type: object
ReplayPolicy:
enum:
- instant
- original
type: string
JSCommonConsumerConfigRequest:
properties:
ack_policy:
$ref: '#/components/schemas/AckPolicy'
ack_wait:
format: int64
type: integer
backoff:
items:
format: int64
type: integer
type: array
deliver_policy:
$ref: '#/components/schemas/DeliverPolicy'
description:
type: string
direct:
type: boolean
durable_name:
type: string
filter_subjects:
items:
type: string
type: array
inactive_threshold:
format: int64
type: integer
max_ack_pending:
type: integer
max_deliver:
type: integer
mem_storage:
type: boolean
metadata:
additionalProperties:
type: string
type: object
name:
type: string
num_replicas:
type: integer
opt_start_seq:
maximum: 18446744073709551615
minimum: 0
type: integer
opt_start_time:
format: date-time
type: string
pause_until:
format: date-time
type: string
replay_policy:
$ref: '#/components/schemas/ReplayPolicy'
sample_freq:
type: string
required:
- ack_policy
- deliver_policy
- num_replicas
- replay_policy
type: object
JSObjectBucketViewResponse:
example:
stream_name: stream_name
bytes: 2147483647
id: id
config:
storage: null
properties:
bytes:
maximum: 18446744073709551615
minimum: 0
type: integer
config:
$ref: '#/components/schemas/JSObjectBucketConfig'
id:
type: string
stream_name:
type: string
required:
- bytes
- config
- id
- stream_name
type: object
StorageType:
enum:
- file
- memory
type: string
ConsumerConfig:
description: 'ConsumerConfig is the configuration for a JetStream consumes
NATS Schema Type io.nats.jetstream.api.v1.consumer_configuration'
properties:
ack_policy:
$ref: '#/components/schemas/AckPolicy'
ack_wait:
format: int64
type: integer
backoff:
items:
format: int64
type: integer
type: array
deliver_group:
type: string
deliver_policy:
$ref: '#/components/schemas/DeliverPolicy'
deliver_subject:
type: string
description:
type: string
direct:
description: Don't add to general clients.
type: boolean
durable_name:
type: string
filter_subject:
type: string
filter_subjects:
items:
type: string
type: array
flow_control:
type: boolean
headers_only:
type: boolean
idle_heartbeat:
format: int64
type: integer
inactive_threshold:
format: int64
type: integer
max_ack_pending:
type: integer
max_batch:
type: integer
max_bytes:
type: integer
max_deliver:
type: integer
max_expires:
format: int64
type: integer
max_waiting:
type: integer
mem_storage:
type: boolean
metadata:
additionalProperties:
type: string
description: Metadata is additional metadata for the Consumer.
type: object
name:
type: string
num_replicas:
type: integer
opt_start_seq:
maximum: 18446744073709551615
minimum: 0
type: integer
opt_start_time:
type:
- string
- 'null'
pause_until:
description: PauseUntil suspends the consumer until the deadline.
format: date-time
type: string
priority_groups:
items:
type: string
type: array
priority_policy:
$ref: '#/components/schemas/PriorityPolicy'
priority_timeout:
format: int64
type: integer
rate_limit_bps:
maximum: 18446744073709551615
minimum: 0
type: integer
replay_policy:
$ref: '#/components/schemas/ReplayPolicy'
sample_freq:
type: string
required:
- ack_policy
- deliver_policy
- num_replicas
- replay_policy
type: object
JSPushConsumerConfigRequest:
allOf:
- $ref: '#/components/schemas/JSCommonConsumerConfigRequest'
example:
deliver_group: deliver_group
deliver_subject: deliver_subject
rate_limit_bps: 2147483647
headers_only: true
flow_control: true
idle_heartbeat: 0
properties:
deliver_group:
type: string
deliver_subject:
description: Push based options.
type: string
flow_control:
type: boolean
headers_only:
type: boolean
idle_heartbeat:
format: int64
type: integer
rate_limit_bps:
maximum: 18446744073709551615
minimum: 0
type: integer
type: object
JSPullConsumerConfigRequest:
allOf:
- $ref: '#/components/schemas/JSCommonConsumerConfigRequest'
example:
max_waiting: 2
priority_timeout: 7
priority_groups:
- priority_groups
- priority_groups
priority_policy: null
max_expires: 5
max_bytes: 5
max_batch: 1
properties:
max_batch:
type: integer
max_bytes:
type: integer
max_expires:
format: int64
type: integer
max_waiting:
description: Pull based options.
type: integer
priority_groups:
items:
type: string
type: array
priority_policy:
$ref: '#/components/schemas/PriorityPolicy'
priority_timeout:
format: int64
type: integer
type: object
JSPushConsumerInfoResponse:
example:
cluster:
leader: leader
system_account: true
replicas:
- null
- null
raft_group: raft_group
name: name
traffic_account: traffic_account
leader_since: leader_since
num_redelivered: 5
paused: true
created: 2000-01-23 04:56:07+00:00
num_pending: 2147483647
pause_remaining: 2
delivered:
consumer_seq: 2147483647
last_active: last_active
stream_seq: 2147483647
num_ack_pending: 1
push_bound: true
stream_name: stream_name
name: name
id: id
config:
deliver_group: deliver_group
deliver_subject: deliver_subject
rate_limit_bps: 2147483647
headers_only: true
flow_control: true
idle_heartbeat: 0
ack_floor:
consumer_seq: 2147483647
last_active: last_active
stream_seq: 2147483647
ts: 2000-01-23 04:56:07+00:00
properties:
ack_floor:
$ref: '#/components/schemas/SequenceInfo'
cluster:
$ref: '#/components/schemas/ClusterInfo'
config:
$ref: '#/components/schemas/JSPushConsumerConfigRequest'
created:
format: date-time
type: string
delivered:
$ref: '#/components/schemas/SequenceInfo'
id:
type: string
name:
type: string
num_ack_pending:
type: integer
num_pending:
maximum: 18446744073709551615
minimum: 0
type: integer
num_redelivered:
type: integer
pause_remaining:
format: int64
type: integer
paused:
type: boolean
push_bound:
type: boolean
stream_name:
type: string
ts:
format: date-time
type: string
required:
- ack_floor
- created
- delivered
- id
- name
- num_ack_pending
- num_pending
- num_redelivered
- stream_name
- ts
type: object
JSConsumerInfoListResponse:
example:
items:
- consumer_type: null
id: id
- consumer_type: null
id: id
properties:
items:
items:
$ref: '#/components/schemas/JSConsumerInfoResponse'
type: array
required:
- items
type: object
PriorityPolicy:
description: PriorityPolicy determines how messages are selected from priority groups.
enum:
- none
- overflow
- pinned_client
- prioritized
type: string
ClusterInfo_replicas_inner:
allOf:
- $ref: '#/components/schemas/PeerInfo'
type:
- object
- 'null'
AckPolicy:
description: enums have been changed to match UnmarshalJSON in https://github.com/nats-io/jsm.go/blob/main/api/consumers.go
enum:
- none
- all
- explicit
- flow_control
type: string
ObjectStoreConfig:
description: ObjectStoreConfig is the config for the object store.
properties:
bucket:
type: string
compression:
description: Enable underlying stream compression.
type: boolean
description:
type: string
max_age:
format: int64
type: integer
max_bytes:
format: int64
type: integer
metadata:
additionalProperties:
type: string
description: Bucket-specific metadata
type: object
num_replicas:
type: integer
placement:
$ref: '#/components/schemas/Placement'
storage:
$ref: '#/components/schemas/StorageType'
required:
- bucket
type: object
ClusterInfo:
description: 'ClusterInfo shows information about the underlying set of servers
that make up the stream or consumer.'
example:
leader: leader
system_account: true
replicas:
- null
- null
raft_group: raft_group
name: name
traffic_account: traffic_account
leader_since: leader_since
properties:
leader:
type: string
leader_since:
type:
- string
- 'null'
name:
type: string
raft_group:
type: string
replicas:
items:
$ref: '#/components/schemas/ClusterInfo_replicas_inner'
type: array
system_account:
type: boolean
traffic_account:
type: string
type: object
PeerInfo:
description: 'PeerInfo shows information about all the peers in the cluster that
are supporting the stream or consumer.'
properties:
active:
format: int64
type: integer
current:
type: boolean
lag:
maximum: 18446744073709551615
minimum: 0
type: integer
name:
type: string
offline:
type: boolean
peer:
type: string
required:
- active
- current
- name
- peer
type: object
JSObjectBucketConfig:
allOf:
- $ref: '#/components/schemas/ObjectStoreConfig'
example:
storage: null
properties:
storage:
$ref: '#/components/schemas/StorageType'
type: object
JSPullConsumerInfoResponse:
example:
cluster:
leader: leader
system_account: true
replicas:
- null
- null
raft_group: raft_group
name: name
traffic_account: traffic_account
leader_since: leader_since
num_redelivered: 2
paused: true
created: 2000-01-23 04:56:07+00:00
num_pending: 2147483647
num_waiting: 4
pause_remaining: 7
delivered:
consumer_seq: 2147483647
last_active: last_active
stream_seq: 2147483647
num_ack_pending: 9
priority_groups:
- pinned_client_id: pinned_client_id
pinned_ts: 2000-01-23 04:56:07+00:00
group: group
- pinned_client_id: pinned_client_id
pinned_ts: 2000-01-23 04:56:07+00:00
group: group
stream_name: stream_name
name: name
id: id
config:
max_waiting: 2
priority_timeout: 7
priority_groups:
- priority_groups
- priority_groups
priority_policy: null
max_expires: 5
max_bytes: 5
max_batch: 1
ack_floor:
consumer_seq: 2147483647
last_active: last_active
stream_seq: 2147483647
ts: 2000-01-23 04:56:07+00:00
properties:
ack_floor:
$ref: '#/components/schemas/SequenceInfo'
cluster:
$ref: '#/components/schemas/ClusterInfo'
config:
$ref: '#/components/schemas/JSPullConsumerConfigRequest'
created:
format: date-time
type: string
delivered:
$ref: '#/components/schemas/SequenceInfo'
id:
type: string
name:
type: string
num_ack_pending:
type: integer
num_pending:
maximum: 18446744073709551615
minimum: 0
type: integer
num_redelivered:
type: integer
num_waiting:
type: integer
pause_remaining:
format: int64
type: integer
paused:
type: boolean
priority_groups:
items:
$ref: '#/components/schemas/PriorityGroupState'
type: array
stream_name:
type: string
ts:
format: date-time
type: string
required:
- ack_floor
- created
- delivered
- id
- name
- num_ack_pending
- num_pending
- num_redelivered
- num_waiting
- stream_name
- ts
type: object
Placement:
description: Placement describes stream placement requirements for a stream or leader.
example:
cluster: cluster
tags:
- tags
- tags
properties:
cluster:
type: string
tags:
items:
type: string
type: array
type: object
securitySchemes:
bearerAuth:
bearerFormat: Personal Access Token
scheme: bearer
type: http
sessionAuth:
in: cookie
name: control_plane_session
type: apiKey