Pravega Controller APIs¶
Overview¶
List of admin REST APIs for the Pravega controller service.
Version information¶
Version : 0.0.1
License information¶
License : Apache 2.0
License URL : http://www.apache.org/licenses/LICENSE-2.0
Terms of service : null
URI scheme¶
BasePath : /v1
Schemes : HTTP
Tags¶
- Health : Health check related APIs
- ReaderGroups : Reader group related APIs
- Scopes : Scope related APIs
- Streams : Stream related APIs
Paths¶
GET /health¶
Description¶
Return the Health of the Controller service.
Responses¶
| HTTP Code | Description | Schema | 
|---|---|---|
| 200 | The Health result of the Controller. | HealthResult | 
| 500 | Internal server error while fetching the Health. | No Content | 
Produces¶
- application/json
Tags¶
- Health
Example HTTP request¶
Request path¶
/health
Example HTTP response¶
Response 200¶
{
  "name" : "string",
  "status" : { },
  "readiness" : true,
  "liveness" : true,
  "details" : { },
  "children" : {
    "string" : "[healthresult](#healthresult)"
  }
}
GET /health/details¶
Description¶
Fetch the details of the Controller service.
Responses¶
| HTTP Code | Description | Schema | 
|---|---|---|
| 200 | The list of details. | HealthDetails | 
| 500 | Internal server error while fetching the health details of the Controller. | No Content | 
Produces¶
- application/json
Tags¶
- Health
Example HTTP request¶
Request path¶
/health/details
Example HTTP response¶
Response 200¶
{ }
GET /health/details/{id}¶
Description¶
Fetch the details of a specific health contributor.
Parameters¶
| Type | Name | Description | Schema | 
|---|---|---|---|
| Path | id required | The id of an existing health contributor. | string | 
Responses¶
| HTTP Code | Description | Schema | 
|---|---|---|
| 200 | The list of details for the health contributor with a given id. | HealthDetails | 
| 404 | The health details for the contributor with given id was not found. | No Content | 
| 500 | Internal server error while fetching the health details for a given health contributor. | No Content | 
Produces¶
- application/json
Tags¶
- Health
Example HTTP request¶
Request path¶
/health/details/string
Example HTTP response¶
Response 200¶
{ }
GET /health/liveness¶
Description¶
Fetch the liveness state of the Controller service.
Responses¶
| HTTP Code | Description | Schema | 
|---|---|---|
| 200 | The alive status. | boolean | 
| 500 | Internal server error while fetching the liveness state of the Controller. | No Content | 
Produces¶
- application/json
Tags¶
- Health
Example HTTP request¶
Request path¶
/health/liveness
Example HTTP response¶
Response 200¶
true
GET /health/liveness/{id}¶
Description¶
Fetch the liveness state of the specified health contributor.
Parameters¶
| Type | Name | Description | Schema | 
|---|---|---|---|
| Path | id required | The id of an existing health contributor. | string | 
Responses¶
| HTTP Code | Description | Schema | 
|---|---|---|
| 200 | The alive status for the specified health contributor. | boolean | 
| 404 | The liveness status for the contributor with given id was not found. | No Content | 
| 500 | Internal server error while fetching the liveness state for a given health contributor. | No Content | 
Produces¶
- application/json
Tags¶
- Health
Example HTTP request¶
Request path¶
/health/liveness/string
Example HTTP response¶
Response 200¶
true
GET /health/readiness¶
Description¶
Fetch the ready state of the Controller service.
Responses¶
| HTTP Code | Description | Schema | 
|---|---|---|
| 200 | The ready status. | boolean | 
| 500 | Internal server error while fetching the ready state of the Controller. | No Content | 
Produces¶
- application/json
Tags¶
- Health
Example HTTP request¶
Request path¶
/health/readiness
Example HTTP response¶
Response 200¶
true
GET /health/readiness/{id}¶
Description¶
Fetch the ready state of the health contributor.
Parameters¶
| Type | Name | Description | Schema | 
|---|---|---|---|
| Path | id required | The id of an existing health contributor. | string | 
Responses¶
| HTTP Code | Description | Schema | 
|---|---|---|
| 200 | The readiness status for the health contributor with given id. | boolean | 
| 404 | The readiness status for the contributor with given id was not found. | No Content | 
| 500 | Internal server error while fetching the ready state for a given health contributor. | No Content | 
Produces¶
- application/json
Tags¶
- Health
Example HTTP request¶
Request path¶
/health/readiness/string
Example HTTP response¶
Response 200¶
true
GET /health/status¶
Description¶
Fetch the status of the Controller service.
Responses¶
| HTTP Code | Description | Schema | 
|---|---|---|
| 200 | The health status of the Controller. | HealthStatus | 
| 500 | Internal server error while fetching the health status of the Controller. | No Content | 
Produces¶
- application/json
Tags¶
- Health
Example HTTP request¶
Request path¶
/health/status
Example HTTP response¶
Response 200¶
{ }
GET /health/status/{id}¶
Description¶
Fetch the status of a specific health contributor.
Parameters¶
| Type | Name | Description | Schema | 
|---|---|---|---|
| Path | id required | The id of an existing health contributor. | string | 
Responses¶
| HTTP Code | Description | Schema | 
|---|---|---|
| 200 | The health status of the Controller. | HealthStatus | 
| 404 | The health status for the contributor with given id was not found. | No Content | 
| 500 | Internal server error while fetching the health status of a given health contributor. | No Content | 
Produces¶
- application/json
Tags¶
- Health
Example HTTP request¶
Request path¶
/health/status/string
Example HTTP response¶
Response 200¶
{ }
GET /health/{id}¶
Description¶
Return the Health of a health contributor with a given id.
Parameters¶
| Type | Name | Description | Schema | 
|---|---|---|---|
| Path | id required | The id of an existing health contributor. | string | 
Responses¶
| HTTP Code | Description | Schema | 
|---|---|---|
| 200 | The Health result of the Controller. | HealthResult | 
| 404 | A health provider for the given id could not be found. | No Content | 
| 500 | Internal server error while fetching the health for a given contributor. | No Content | 
Produces¶
- application/json
Tags¶
- Health
Example HTTP request¶
Request path¶
/health/string
Example HTTP response¶
Response 200¶
{
  "name" : "string",
  "status" : { },
  "readiness" : true,
  "liveness" : true,
  "details" : { },
  "children" : {
    "string" : "[healthresult](#healthresult)"
  }
}
POST /scopes¶
Description¶
Create a new scope
Parameters¶
| Type | Name | Description | Schema | 
|---|---|---|---|
| Body | CreateScopeRequest required | The scope configuration | CreateScopeRequest | 
| Name | Description | Schema | 
|---|---|---|
| scopeName optional | Example : "string" | string | 
Responses¶
| HTTP Code | Description | Schema | 
|---|---|---|
| 201 | Successfully created the scope | ScopeProperty | 
| 409 | Scope with the given name already exists | No Content | 
| 500 | Internal server error while creating a scope | No Content | 
Consumes¶
- application/json
Produces¶
- application/json
Tags¶
- Scopes
Example HTTP request¶
Request path¶
/scopes
Request body¶
{
  "scopeName" : "string"
}
Example HTTP response¶
Response 201¶
{
  "scopeName" : "string"
}
GET /scopes¶
Description¶
List all available scopes in Pravega
Responses¶
| HTTP Code | Description | Schema | 
|---|---|---|
| 200 | List of currently available scopes | ScopesList | 
| 500 | Internal server error while fetching list of scopes | No Content | 
Produces¶
- application/json
Tags¶
- Scopes
Example HTTP request¶
Request path¶
/scopes
Example HTTP response¶
Response 200¶
{
  "scopes" : [ {
    "scopeName" : "string"
  } ]
}
GET /scopes/{scopeName}¶
Description¶
Retrieve details of an existing scope
Parameters¶
| Type | Name | Description | Schema | 
|---|---|---|---|
| Path | scopeName required | Scope name | string | 
Responses¶
| HTTP Code | Description | Schema | 
|---|---|---|
| 200 | Successfully retrieved the scope details | ScopeProperty | 
| 404 | Scope with the given name not found | No Content | 
| 500 | Internal server error while fetching scope details | No Content | 
Produces¶
- application/json
Tags¶
- Scopes
Example HTTP request¶
Request path¶
/scopes/string
Example HTTP response¶
Response 200¶
{
  "scopeName" : "string"
}
DELETE /scopes/{scopeName}¶
Description¶
Delete a scope
Parameters¶
| Type | Name | Description | Schema | 
|---|---|---|---|
| Path | scopeName required | Scope name | string | 
Responses¶
| HTTP Code | Description | Schema | 
|---|---|---|
| 204 | Successfully deleted the scope | No Content | 
| 404 | Scope not found | No Content | 
| 412 | Cannot delete scope since it has non-empty list of streams | No Content | 
| 500 | Internal server error while deleting a scope | No Content | 
Tags¶
- Scopes
Example HTTP request¶
Request path¶
/scopes/string
GET /scopes/{scopeName}/readergroups¶
Description¶
List reader groups within the given scope
Parameters¶
| Type | Name | Description | Schema | 
|---|---|---|---|
| Path | scopeName required | Scope name | string | 
Responses¶
| HTTP Code | Description | Schema | 
|---|---|---|
| 200 | List of all reader groups configured for the given scope | ReaderGroupsList | 
| 404 | Scope not found | No Content | 
| 500 | Internal server error while fetching the list of reader groups for the given scope | No Content | 
Produces¶
- application/json
Tags¶
- ReaderGroups
Example HTTP request¶
Request path¶
/scopes/string/readergroups
Example HTTP response¶
Response 200¶
{
  "readerGroups" : [ "object" ]
}
GET /scopes/{scopeName}/readergroups/{readerGroupName}¶
Description¶
Fetch the properties of an existing reader group
Parameters¶
| Type | Name | Description | Schema | 
|---|---|---|---|
| Path | readerGroupName required | Reader group name | string | 
| Path | scopeName required | Scope name | string | 
Responses¶
| HTTP Code | Description | Schema | 
|---|---|---|
| 200 | Found reader group properties | ReaderGroupProperty | 
| 404 | Scope or reader group with given name not found | No Content | 
| 500 | Internal server error while fetching reader group details | No Content | 
Produces¶
- application/json
Tags¶
- ReaderGroups
Example HTTP request¶
Request path¶
/scopes/string/readergroups/string
Example HTTP response¶
Response 200¶
{
  "scopeName" : "string",
  "readerGroupName" : "string",
  "streamList" : [ "string" ],
  "onlineReaderIds" : [ "string" ]
}
POST /scopes/{scopeName}/streams¶
Description¶
Create a new stream
Parameters¶
| Type | Name | Description | Schema | 
|---|---|---|---|
| Path | scopeName required | Scope name | string | 
| Body | CreateStreamRequest required | The stream configuration | CreateStreamRequest | 
| Name | Description | Schema | 
|---|---|---|
| retentionPolicy optional | Example : "[retentionconfig](#retentionconfig)" | RetentionConfig | 
| rolloverSizeBytes optional | Example : "[rolloversizebytes](#rolloversizebytes)" | RolloverSizeBytes | 
| scalingPolicy optional | Example : "[scalingconfig](#scalingconfig)" | ScalingConfig | 
| streamName optional | Example : "string" | string | 
| streamTags optional | Example : "[tagslist](#tagslist)" | TagsList | 
| timestampAggregationTimeout optional | Example : "[timestampaggregationtimeout](#timestampaggregationtimeout)" | TimestampAggregationTimeout | 
Responses¶
| HTTP Code | Description | Schema | 
|---|---|---|
| 201 | Successfully created the stream with the given configuration | StreamProperty | 
| 404 | Scope not found | No Content | 
| 409 | Stream with given name already exists | No Content | 
| 500 | Internal server error while creating a stream | No Content | 
Consumes¶
- application/json
Produces¶
- application/json
Tags¶
- Streams
Example HTTP request¶
Request path¶
/scopes/string/streams
Request body¶
{
  "streamName" : "string",
  "scalingPolicy" : {
    "type" : "string",
    "targetRate" : 0,
    "scaleFactor" : 0,
    "minSegments" : 0
  },
  "retentionPolicy" : {
    "type" : "string",
    "value" : 0,
    "timeBasedRetention" : {
      "days" : 0,
      "hours" : 0,
      "minutes" : 0
    },
    "maxValue" : 0,
    "maxTimeBasedRetention" : {
      "days" : 0,
      "hours" : 0,
      "minutes" : 0
    }
  },
  "streamTags" : { },
  "timestampAggregationTimeout" : { },
  "rolloverSizeBytes" : { }
}
Example HTTP response¶
Response 201¶
{
  "scopeName" : "string",
  "streamName" : "string",
  "scalingPolicy" : {
    "type" : "string",
    "targetRate" : 0,
    "scaleFactor" : 0,
    "minSegments" : 0
  },
  "retentionPolicy" : {
    "type" : "string",
    "value" : 0,
    "timeBasedRetention" : {
      "days" : 0,
      "hours" : 0,
      "minutes" : 0
    },
    "maxValue" : 0,
    "maxTimeBasedRetention" : {
      "days" : 0,
      "hours" : 0,
      "minutes" : 0
    }
  },
  "tags" : { }
}
GET /scopes/{scopeName}/streams¶
Description¶
List streams within the given scope
Parameters¶
| Type | Name | Description | Schema | 
|---|---|---|---|
| Path | scopeName required | Scope name | string | 
| Query | filter_type optional | Filter options | enum (showInternalStreams, tag) | 
| Query | filter_value optional | value to be passed. must match the type passed with it. | string | 
Responses¶
| HTTP Code | Description | Schema | 
|---|---|---|
| 200 | List of all streams configured for the given scope | StreamsList | 
| 404 | Scope not found | No Content | 
| 500 | Internal server error while fetching the list of streams for the given scope | No Content | 
Produces¶
- application/json
Tags¶
- Streams
Example HTTP request¶
Request path¶
/scopes/string/streams
Example HTTP response¶
Response 200¶
{
  "streams" : [ {
    "scopeName" : "string",
    "streamName" : "string",
    "scalingPolicy" : {
      "type" : "string",
      "targetRate" : 0,
      "scaleFactor" : 0,
      "minSegments" : 0
    },
    "retentionPolicy" : {
      "type" : "string",
      "value" : 0,
      "timeBasedRetention" : {
        "days" : 0,
        "hours" : 0,
        "minutes" : 0
      },
      "maxValue" : 0,
      "maxTimeBasedRetention" : {
        "days" : 0,
        "hours" : 0,
        "minutes" : 0
      }
    },
    "tags" : { }
  } ]
}
GET /scopes/{scopeName}/streams/{streamName}¶
Description¶
Fetch the properties of an existing stream
Parameters¶
| Type | Name | Description | Schema | 
|---|---|---|---|
| Path | scopeName required | Scope name | string | 
| Path | streamName required | Stream name | string | 
Responses¶
| HTTP Code | Description | Schema | 
|---|---|---|
| 200 | Found stream properties | StreamProperty | 
| 404 | Scope or stream with given name not found | No Content | 
| 500 | Internal server error while fetching stream details | No Content | 
Produces¶
- application/json
Tags¶
- Streams
Example HTTP request¶
Request path¶
/scopes/string/streams/string
Example HTTP response¶
Response 200¶
{
  "scopeName" : "string",
  "streamName" : "string",
  "scalingPolicy" : {
    "type" : "string",
    "targetRate" : 0,
    "scaleFactor" : 0,
    "minSegments" : 0
  },
  "retentionPolicy" : {
    "type" : "string",
    "value" : 0,
    "timeBasedRetention" : {
      "days" : 0,
      "hours" : 0,
      "minutes" : 0
    },
    "maxValue" : 0,
    "maxTimeBasedRetention" : {
      "days" : 0,
      "hours" : 0,
      "minutes" : 0
    }
  },
  "tags" : { }
}
PUT /scopes/{scopeName}/streams/{streamName}¶
Description¶
Update configuration of an existing stream
Parameters¶
| Type | Name | Description | Schema | 
|---|---|---|---|
| Path | scopeName required | Scope name | string | 
| Path | streamName required | Stream name | string | 
| Body | UpdateStreamRequest required | The new stream configuration | UpdateStreamRequest | 
| Name | Description | Schema | 
|---|---|---|
| retentionPolicy optional | Example : "[retentionconfig](#retentionconfig)" | RetentionConfig | 
| rolloverSizeBytes optional | Example : "[rolloversizebytes](#rolloversizebytes)" | RolloverSizeBytes | 
| scalingPolicy optional | Example : "[scalingconfig](#scalingconfig)" | ScalingConfig | 
| streamTags optional | Example : "[tagslist](#tagslist)" | TagsList | 
| timestampAggregationTimeout optional | Example : "[timestampaggregationtimeout](#timestampaggregationtimeout)" | TimestampAggregationTimeout | 
Responses¶
| HTTP Code | Description | Schema | 
|---|---|---|
| 200 | Successfully updated the stream configuration | StreamProperty | 
| 404 | Scope or stream with given name not found | No Content | 
| 500 | Internal server error while updating the stream | No Content | 
Consumes¶
- application/json
Produces¶
- application/json
Tags¶
- Streams
Example HTTP request¶
Request path¶
/scopes/string/streams/string
Request body¶
{
  "scalingPolicy" : {
    "type" : "string",
    "targetRate" : 0,
    "scaleFactor" : 0,
    "minSegments" : 0
  },
  "retentionPolicy" : {
    "type" : "string",
    "value" : 0,
    "timeBasedRetention" : {
      "days" : 0,
      "hours" : 0,
      "minutes" : 0
    },
    "maxValue" : 0,
    "maxTimeBasedRetention" : {
      "days" : 0,
      "hours" : 0,
      "minutes" : 0
    }
  },
  "streamTags" : { },
  "timestampAggregationTimeout" : { },
  "rolloverSizeBytes" : { }
}
Example HTTP response¶
Response 200¶
{
  "scopeName" : "string",
  "streamName" : "string",
  "scalingPolicy" : {
    "type" : "string",
    "targetRate" : 0,
    "scaleFactor" : 0,
    "minSegments" : 0
  },
  "retentionPolicy" : {
    "type" : "string",
    "value" : 0,
    "timeBasedRetention" : {
      "days" : 0,
      "hours" : 0,
      "minutes" : 0
    },
    "maxValue" : 0,
    "maxTimeBasedRetention" : {
      "days" : 0,
      "hours" : 0,
      "minutes" : 0
    }
  },
  "tags" : { }
}
DELETE /scopes/{scopeName}/streams/{streamName}¶
Description¶
Delete a stream
Parameters¶
| Type | Name | Description | Schema | 
|---|---|---|---|
| Path | scopeName required | Scope name | string | 
| Path | streamName required | Stream name | string | 
Responses¶
| HTTP Code | Description | Schema | 
|---|---|---|
| 204 | Successfully deleted the stream | No Content | 
| 404 | Stream not found | No Content | 
| 412 | Cannot delete stream since it is not sealed | No Content | 
| 500 | Internal server error while deleting the stream | No Content | 
Tags¶
- Streams
Example HTTP request¶
Request path¶
/scopes/string/streams/string
GET /scopes/{scopeName}/streams/{streamName}/scaling-events¶
Description¶
Get scaling events for a given datetime period.
Parameters¶
| Type | Name | Description | Schema | 
|---|---|---|---|
| Path | scopeName required | Scope name | string | 
| Path | streamName required | Stream name | string | 
| Query | from required | Parameter to display scaling events from that particular datetime. Input should be milliseconds from Jan 1 1970. | integer (int64) | 
| Query | to required | Parameter to display scaling events to that particular datetime. Input should be milliseconds from Jan 1 1970. | integer (int64) | 
Responses¶
| HTTP Code | Description | Schema | 
|---|---|---|
| 200 | Successfully fetched list of scaling events. | ScalingEventList | 
| 404 | Scope/Stream not found. | No Content | 
| 500 | Internal Server error while fetching scaling events. | No Content | 
Produces¶
- application/json
Tags¶
- Streams
Example HTTP request¶
Request path¶
/scopes/string/streams/string/scaling-events?from=0&to=0
Example HTTP response¶
Response 200¶
{
  "scalingEvents" : [ {
    "timestamp" : 0,
    "segmentList" : [ {
      "number" : 0,
      "startTime" : 0,
      "keyStart" : 0,
      "keyEnd" : 0
    } ],
    "splits" : 0,
    "merges" : 0
  } ]
}
PUT /scopes/{scopeName}/streams/{streamName}/state¶
Description¶
Updates the current state of the stream
Parameters¶
| Type | Name | Description | Schema | 
|---|---|---|---|
| Path | scopeName required | Scope name | string | 
| Path | streamName required | Stream name | string | 
| Body | UpdateStreamStateRequest required | The state info to be updated | StreamState | 
Responses¶
| HTTP Code | Description | Schema | 
|---|---|---|
| 200 | Successfully updated the stream state | StreamState | 
| 404 | Scope or stream with given name not found | No Content | 
| 500 | Internal server error while updating the stream state | No Content | 
Consumes¶
- application/json
Produces¶
- application/json
Tags¶
- Streams
Example HTTP request¶
Request path¶
/scopes/string/streams/string/state
Request body¶
{
  "streamState" : "string"
}
Example HTTP response¶
Response 200¶
{
  "streamState" : "string"
}
Definitions¶
HealthDetails¶
Type : < string, string > map
HealthResult¶
| Name | Description | Schema | 
|---|---|---|
| children optional | Example : {<br>  "string" : "[healthresult](#healthresult)"<br>} | < string, HealthResult > map | 
| details optional | Example : "[healthdetails](#healthdetails)" | HealthDetails | 
| liveness optional | Example : true | boolean | 
| name optional | Example : "string" | string | 
| readiness optional | Example : true | boolean | 
| status optional | Example : "[healthstatus](#healthstatus)" | HealthStatus | 
HealthStatus¶
Type : enum (UP, STARTING, NEW, UNKNOWN, FAILED, DOWN)
ReaderGroupProperty¶
| Name | Description | Schema | 
|---|---|---|
| onlineReaderIds optional | Example : [ "string" ] | < string > array | 
| readerGroupName optional | Example : "string" | string | 
| scopeName optional | Example : "string" | string | 
| streamList optional | Example : [ "string" ] | < string > array | 
ReaderGroupsList¶
| Name | Description | Schema | 
|---|---|---|
| readerGroups optional | Example : [ "object" ] | < readerGroups > array | 
| Name | Description | Schema | 
|---|---|---|
| readerGroupName optional | Example : "string" | string | 
RetentionConfig¶
| Name | Description | Schema | 
|---|---|---|
| maxTimeBasedRetention optional | Example : "[timebasedretention](#timebasedretention)" | TimeBasedRetention | 
| maxValue optional | Example : 0 | integer (int64) | 
| timeBasedRetention optional | Example : "[timebasedretention](#timebasedretention)" | TimeBasedRetention | 
| type optional | Indicates if retention is by space or time. Example : "string" | enum (LIMITED_DAYS, LIMITED_SIZE_MB) | 
| value optional | Example : 0 | integer (int64) | 
RolloverSizeBytes¶
Type : long
ScaleMetadata¶
| Name | Description | Schema | 
|---|---|---|
| merges optional | Example : 0 | integer (int64) | 
| segmentList optional | Example : [ "[segment](#segment)" ] | < Segment > array | 
| splits optional | Example : 0 | integer (int64) | 
| timestamp optional | Example : 0 | integer (int64) | 
ScalingConfig¶
| Name | Description | Schema | 
|---|---|---|
| minSegments optional | Example : 0 | integer (int32) | 
| scaleFactor optional | Example : 0 | integer (int32) | 
| targetRate optional | Example : 0 | integer (int32) | 
| type optional | Example : "string" | enum (FIXED_NUM_SEGMENTS, BY_RATE_IN_KBYTES_PER_SEC, BY_RATE_IN_EVENTS_PER_SEC) | 
ScalingEventList¶
| Name | Description | Schema | 
|---|---|---|
| scalingEvents optional | Example : [ "[scalemetadata](#scalemetadata)" ] | < ScaleMetadata > array | 
ScopeProperty¶
| Name | Description | Schema | 
|---|---|---|
| scopeName optional | Example : "string" | string | 
ScopesList¶
| Name | Description | Schema | 
|---|---|---|
| scopes optional | Example : [ "[scopeproperty](#scopeproperty)" ] | < ScopeProperty > array | 
Segment¶
| Name | Description | Schema | 
|---|---|---|
| keyEnd optional | Example : 0 | integer (double) | 
| keyStart optional | Example : 0 | integer (double) | 
| number optional | Example : 0 | integer (int32) | 
| startTime optional | Example : 0 | integer (int64) | 
StreamProperty¶
| Name | Description | Schema | 
|---|---|---|
| retentionPolicy optional | Example : "[retentionconfig](#retentionconfig)" | RetentionConfig | 
| scalingPolicy optional | Example : "[scalingconfig](#scalingconfig)" | ScalingConfig | 
| scopeName optional | Example : "string" | string | 
| streamName optional | Example : "string" | string | 
| tags optional | Example : "[tagslist](#tagslist)" | TagsList | 
StreamState¶
| Name | Description | Schema | 
|---|---|---|
| streamState optional | Example : "string" | enum (SEALED) | 
StreamsList¶
| Name | Description | Schema | 
|---|---|---|
| streams optional | Example : [ "[streamproperty](#streamproperty)" ] | < StreamProperty > array | 
TagsList¶
Type : < string > array
TimeBasedRetention¶
| Name | Description | Schema | 
|---|---|---|
| days optional | Example : 0 | integer (int64) | 
| hours optional | Example : 0 | integer (int64) | 
| minutes optional | Example : 0 | integer (int64) | 
TimestampAggregationTimeout¶
Type : long