---
title: "Object Information"
method: GET
path: "/objects/{objectId}"
tags: ["Objects"]
---

# Object Information

`GET /objects/{objectId}`

Contains Flows that references the init/Media Object and other information.

The paging query parameters and headers are required for the list of Flow references in the Object.
Service implementations should return a complete list of Flow references within reason and API clients should expect paging to happen in some rare cases where a Object is used in many Flows.

## Path parameters

- `objectId` string, required

## Query parameters

- `verbose_storage` boolean
- `accept_get_urls` string — A list of Object GET URL Labels, formatted for use in query string parameters
- `accept_storage_ids` string
- `presigned` boolean
- `flow_tag.{name}` string
- `flow_tag_exists.{name}` boolean
- `page` string
- `limit` integer

## Response `200`

- Object — Provides the location and metadata of the files corresponding to a Object.
  - `id` string, required — The Object identifier.
  - `referenced_by_flows` Uuid[], required — List of Flows that reference this Object via Flow Segments in this store instance. For init Objects, this reference is indirect via Media Objects.
  - `first_referenced_by_flow` string — A Universally Unique Identifier (UUID) as defined in [RFC9562](https://www.rfc-editor.org/rfc/rfc9562)
  - `timerange` string — A timerange of timestamps. It is represented using one or two timestamps with inclusivity and exclusivity markers. E.g. * `[0:0_10:0)` represents 10 seconds of media starting at timestamp `0:0` and ending before `10:0`. * `(5:0_` represents a timerange starting after `5:0` and to eternity. * `_` without timestamps or inclusivity markers represents "eternity" (i.e. the entire timeline). * `()` without timestamps represents "never" (i.e. a range of zero length in no particular position). * `[1694429247:0_1694429248:0)` is a 1 second TAI timerange starting at 2023-09-11T10:46:50.0Z UTC. * `[1694429247:0]` is an instantaneous TAI timerange at 2023-09-11T10:46:50.0Z UTC. This is equivalent to `[1694429247:0_1694429247:0]`. The short syntax is preferred due to ease of identification as instantaneous. Instantaneous TimeRanges cannot use exclusive markers (i.e. `(` or `)`). * A `[` or `]` indicates that bound is inclusive, and a `(` or `)` indicates that bound is exclusive. Details of the format can be found in the [Timestamps in TAMS](https://github.com/bbc/tams/blob/main/docs/appnotes/0008-timestamps-in-TAMS.md) application note.
  - `init_object` object — Provides the location and metadata of the files corresponding to a Object.
    - `id` string, required — The identifier of the initialisation Object.
    - `get_urls` object[] — A list of URLs to which a GET request can be made to directly retrieve the contents of the Object. This is required by the `http_object_store` Storage Backend type, which is the only one currently described. Clients may choose any URL in the list and treat the content returned as identical, however servers may sort the list such that the preferred URL is first. Storage Backend metadata for controlled URLs should be populated by the TAMS instance based on the Storage Backend the Object instance resides in.
      - `store_type` 'http_object_store' — The generic Storage Backend type. Used to identify the required workflow for reading and writing media. Any `store_product` should be compatible, as much is required for basic interoperability between TAMS implementations, with their associated generic `store_type`.
      - `provider` string — The cloud (or other) provider of the Storage Backend
      - `region` string — The region in the cloud this Storage Backend resides
      - `availability_zone` string — The availability zone in the cloud region this Storage Backend resides. Note that many cloud providers randomize availability zone identifiers such that they are consistent within a cloud account, but not necessarily between accounts. Caution should be exercised when using this parameter.
      - `store_product` string — The storage product name.
      - `storage_id` string — A Universally Unique Identifier (UUID) as defined in [RFC9562](https://www.rfc-editor.org/rfc/rfc9562)
      - `url` string, required — A URL to which a GET request can be made to directly retrieve the contents of the Object. Clients should include credentials if the provide URL is on the same origin as the API endpoint. This URL SHOULD support the inclusion of checksums in headers as supported by advertised Storage Backend product. See AppNote 0048 for more details.
      - `presigned` boolean — If `true`, this URL is pre-signed. If this parameter is unset, the URL is NOT pre-signed. The presigned URL SHALL remain valid for the timeframe advertised in [`min_presigned_url_timeout` at the `/service`](#/operations/GET_service) endpoint, which is subject to a specified minimum (see service endpoint schema).
      - `label` string — Label identifying this URL. If the URL is controlled by the service instance, this is the Storage Backend's label. If the URL is uncontrolled, this is the label provided when a client registered the URL. If the 'label' is not set then this URL can't be filtered for using the 'accept_get_urls' API query parameter.
      - `controlled` boolean — If `true`, this URL is on a Storage Backend controlled by this service instance. If `false`, this URL is uncontrolled and does not have it's lifecycle managed by this instance. If this parameter is unset, assume `true`.
  - `key_frame_count` integer — The number of key frames in the Media Object. This should be set greater than zero when the Media Object contains key frames that serve as a stream access point
  - `get_urls` object[] — A list of URLs to which a GET request can be made to directly retrieve the contents of the Object. This is required by the `http_object_store` Storage Backend type, which is the only one currently described. Clients may choose any URL in the list and treat the content returned as identical, however servers may sort the list such that the preferred URL is first. Storage Backend metadata for controlled URLs should be populated by the TAMS instance based on the Storage Backend the Object instance resides in.
    - `store_type` 'http_object_store' — The generic Storage Backend type. Used to identify the required workflow for reading and writing media. Any `store_product` should be compatible, as much is required for basic interoperability between TAMS implementations, with their associated generic `store_type`.
    - `provider` string — The cloud (or other) provider of the Storage Backend
    - `region` string — The region in the cloud this Storage Backend resides
    - `availability_zone` string — The availability zone in the cloud region this Storage Backend resides. Note that many cloud providers randomize availability zone identifiers such that they are consistent within a cloud account, but not necessarily between accounts. Caution should be exercised when using this parameter.
    - `store_product` string — The storage product name.
    - `storage_id` string — A Universally Unique Identifier (UUID) as defined in [RFC9562](https://www.rfc-editor.org/rfc/rfc9562)
    - `url` string, required — A URL to which a GET request can be made to directly retrieve the contents of the Object. Clients should include credentials if the provide URL is on the same origin as the API endpoint. This URL SHOULD support the inclusion of checksums in headers as supported by advertised Storage Backend product. See AppNote 0048 for more details.
    - `presigned` boolean — If `true`, this URL is pre-signed. If this parameter is unset, the URL is NOT pre-signed. The presigned URL SHALL remain valid for the timeframe advertised in [`min_presigned_url_timeout` at the `/service`](#/operations/GET_service) endpoint, which is subject to a specified minimum (see service endpoint schema).
    - `label` string — Label identifying this URL. If the URL is controlled by the service instance, this is the Storage Backend's label. If the URL is uncontrolled, this is the label provided when a client registered the URL. If the 'label' is not set then this URL can't be filtered for using the 'accept_get_urls' API query parameter.
    - `controlled` boolean — If `true`, this URL is on a Storage Backend controlled by this service instance. If `false`, this URL is uncontrolled and does not have it's lifecycle managed by this instance. If this parameter is unset, assume `true`.

## Other responses

- `400` — Bad request. Invalid query options.
- `404` — The requested Object does not exist. 404 MUST be returned if the ID has been assigned via the [`/flows/{flowId}/storage`](#/operations/POST_flows-flowId-storage), but not yet registered against a Flow Segment.

## Changes

- **2026-07-10** `7a9a5cdbb3d2` — 1 breaking, 3 info
  - the response property `allOf[subschema #1]/timerange` became optional for the status `200`
  - added `#/components/schemas/objectmediacore` to the response body `allOf` list for the response status `200`
  - removed `#/components/schemas/objectcore` from the response body `allOf` list for the response status `200`
  - added the optional property `allOf[subschema #1]/init_object` to the response with the `200` status
- **2025-10-21** `4c8d2bfcb854` — 1 info
  - added the required property `allOf[subschema #1]/timerange` to the response with the `200` status
- **2025-10-16** `b23d7880c91d` — 4 info
  - added the new optional `query` request parameter `accept_get_urls`
  - added the new optional `query` request parameter `accept_storage_ids`
  - added the new optional `query` request parameter `presigned`
  - added the new optional `query` request parameter `verbose_storage`
- **2025-10-15** `8639ecff0b6c` — 2 info
  - added the new optional `query` request parameter `flow_tag.{name}`
  - added the new optional `query` request parameter `flow_tag_exists.{name}`
- …earlier changes not shown

[Full history](https://skmtc.dev/aws-samples/apis/time-addressable-media-store/changes/objects/:objectId/get.md)

---

[API](https://skmtc.dev/aws-samples/apis/time-addressable-media-store.md) · [All operations](https://skmtc.dev/aws-samples/apis/time-addressable-media-store/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/aws-samples/time-addressable-media-store/revisions/7a9a5cdbb3d2/schema)
