ORB360 DAM DOCS
HomeLogin
  • 🚀Getting Started
  • EMBED
    • Single 360 - Hosted
    • Multiple 360 - Hosted
    • Advanced 360 - Hosted
    • 360 Player - Custom
  • API REFERENCE
    • Introduction
    • Specification
    • Authentication
  • ENDPOINTS
    • Integration
    • Integration - JOOR
    • Tenant
    • Shoot
    • Media
    • Tag
    • Image
Powered by GitBook
On this page

Was this helpful?

  1. ENDPOINTS

Media

PreviousShootNextTag

Last updated 1 year ago

Was this helpful?

A media object represents a single 360 capture.

Media are created by uploading a zip archive of image frames, these are processed by the DAM which adds additional generated media assets (mp4, gif and resized frames).

List Media

get

List available Media within the requested Shoot

Authorizations
Path parameters
shootIdstringRequired

Unique shoot id

Example: 683606ee-9788-4d88-adb8-77119de4c6a2
tenantIdstringRequired

Unique tenant id

Example: f700d27e-64ed-4571-ae2e-8c948c1c296e
Query parameters
imgFormatstringOptional

Request an alternative image format for thumbnail images (currently webp and jpeg are supported)

Default: jpegExample: webp
Responses
200
success
application/json
400
bad request
application/json
401
unauthorized
application/json
404
not found
application/json
get
GET /api/tenant/{tenantId}/shoot/{shootId}/media HTTP/1.1
Host: api.orb360.tech
Accept: */*
{
  "media": null
}

Get Media

get

Get an individual media by id

Authorizations
Path parameters
shootIdstringRequired

Unique shoot id

Example: 683606ee-9788-4d88-adb8-77119de4c6a2
tenantIdstringRequired

Unique tenant id

Example: f700d27e-64ed-4571-ae2e-8c948c1c296e
mediaIdstringRequired

Unique media id

Example: daea0774-275b-4e43-9d10-c2f9d5d4d5b6
Query parameters
include360sbooleanOptional

Include signed 360 images and videos in response

Default: falseExample: false
imgFormatstringOptional

Request an alternative image format for 360 frames and thumbnails (currently webp and jpeg are supported)

Default: jpegExample: webp
imgWidthstringOptional

Request an alternative image width for 360 frames and single images (min: 20, max: 3600)

Default: 150,800,1600Example: 150,800,3200
Responses
200
success
application/json
400
bad request
application/json
401
unauthorized
application/json
404
not found
application/json
get
GET /api/tenant/{tenantId}/shoot/{shootId}/media/{mediaId} HTTP/1.1
Host: api.orb360.tech
Accept: */*
{
  "media": {
    "mediaId": "daea0774-275b-4e43-9d10-c2f9d5d4d5b6",
    "version": 123,
    "s3path": "boxerTenants/{tenantId}/shoots/{shootId}/daea0774-275b-4e43-9d10-c2f9d5d4d5b6.zip",
    "size": 7511688,
    "shoot": "683606ee-9788-4d88-adb8-77119de4c6a2",
    "mimeType": "application/zip",
    "meta": {
      "boxerTenantId": "fdb67f2e-219d-4771-b14f-a2ddc24b812b",
      "from": "boxer",
      "type": "360_V2",
      "frames": 72,
      "shootId": "683606ee-9788-4d88-adb8-77119de4c6a2"
    },
    "status": "AVAILABLE",
    "processAs": {
      "zip": [
        {
          "type": "unzip-360",
          "args": {}
        }
      ]
    },
    "originalFilename": "360.zip",
    "generated": {
      "mp4": {
        "ANY_ADDITIONAL_PROPERTY": {
          "size": 4303059,
          "opts": {
            "durationSecs": 4,
            "resolution": {
              "width": 800,
              "height": 1200
            },
            "background": "#FFFFFF"
          },
          "file": "v1_800x1200_4s_1cc67419e21143569e7447f6181e0eab.mp4",
          "url": "https://cdn.orb360.tech/.....ccee12d66ec5-800.mp4"
        }
      },
      "jpg": {
        "ANY_ADDITIONAL_PROPERTY": {
          "size": 4303059,
          "opts": {
            "mode": [
              "resize"
            ],
            "resolution": {
              "width": 800,
              "height": 1200
            },
            "background": "#FFFFFF"
          },
          "file": "800_6677d7dfc0454b958c9a15b38f444885/1e81d25b-fc79-4ab0-9e3e-5476353e3e76-800.zip",
          "url": "https://cdn.orb360.tech/.....ccee12d66ec5-800.zip"
        }
      },
      "gif": {
        "ANY_ADDITIONAL_PROPERTY": {
          "size": 4303059,
          "opts": {
            "durationSecs": 4,
            "resolution": {
              "width": 800
            },
            "loops": 0
          },
          "file": "v1_800_4s_0l_24fb4470fc9a4dc98b0042d2d0debedd.gif",
          "url": "https://cdn.orb360.tech/.....ccee12d66ec5-800.gif"
        }
      },
      "m3u8": {
        "ANY_ADDITIONAL_PROPERTY": {
          "size": 4303059,
          "chunks": 4303059,
          "opts": {
            "resolution": {
              "width": 800
            },
            "audio": {
              "codec": "acc"
            },
            "video": {
              "bitRate": 3000,
              "chunkSize": 4,
              "codec": "h264",
              "crf": 20,
              "keyframe": 48,
              "profile": "main"
            }
          },
          "file": "v1_800_h264_main_crf20_c4_2675k_beaffc7602c8cba3dd970e52ee38f366cac18552/7c7cce40-beda-4963-9391-ccee12d66ec5-800.m3u8",
          "url": "https://cdn.orb360.tech/.....ccee12d66ec5-800.m3u8"
        }
      }
    },
    "dateCreated": 1594988393066,
    "dateUpdated": 1594988393066,
    "errors": {},
    "images": [
      {
        "type": "SINGLE_IMAGE",
        "baseURL": "https://cdn.orb360.tech/image/b1a213d6-8559-45f7-86da-088e6a85d86c/shoots/5b608121-c7b6-4a36-ac2a-54da43d869a2/5dfc5b5e-bc9b-4fde-9af4-e4904ce212a3/",
        "sizes": {
          "ImageWidth": {
            "urls": [
              "800_9fb29dc6a2edc54f2a9851d6bdc23e5df87220fa/5dfc5b5e-bc9b-4fde-9af4-e4904ce212a3-800.jpg?fmt=webp&w=150&s=5c1b7bbeec44a9fa61824b3f6964ece3e419b1fae73855cc97c19b2ea8977ac2"
            ]
          }
        }
      }
    ],
    "tags": {
      "ANY_ADDITIONAL_PROPERTY": [
        {
          "keyValue": "STYLENUMBER-COLOURNAME:12345$BLACK",
          "key": "StyleNumber-ColourName",
          "value": "12345$BLACK",
          "updatedBy": "auth0|dd5e21fb23efe45d1761ddce",
          "createdBy": "auth0|dd5e21fb23efe45d1761ddce",
          "dateCreated": 1574782604487,
          "dateUpdated": 1574782604487
        }
      ]
    },
    "eTag": "text",
    "m3u8Index": "text"
  }
}

Delete Media

delete

Delete media by id

Requires Admin role on the requested tenant

Authorizations
Path parameters
shootIdstringRequired

Unique shoot id

Example: 683606ee-9788-4d88-adb8-77119de4c6a2
tenantIdstringRequired

Unique tenant id

Example: f700d27e-64ed-4571-ae2e-8c948c1c296e
mediaIdstringRequired

Unique media id

Example: daea0774-275b-4e43-9d10-c2f9d5d4d5b6
Responses
200
200 response
application/json
401
unauthorized
application/json
403
forbidden
application/json
404
not found
application/json
delete
DELETE /api/tenant/{tenantId}/shoot/{shootId}/media/{mediaId} HTTP/1.1
Host: api.orb360.tech
Accept: */*
{
  "message": "[200] media deletion successful"
}
  • GETList Media
  • GETGet Media
  • PUTCreate Media
  • DELETEDelete Media

Create Media

put

Endpoint

Upload new media to the specified shoot

Requires Admin role on the requested tenant

Using the response from this request, subsequently upload the media payload (zip, jpg or png) to S3.

Perform a POST request to the url property in this response, including all the fields key-values and the file data as a property named file as a multipart-formdata request.

AWS S3 Docs - Uploading objects using presigned URLs

The DAM processor will subsequently validate and perform processing on a successfully uploaded file.

File format

Expected input file formats:

  • 360_V2 (default): is a zip file containing JPG image frames in the root of the zip (no folders). The frames must be named with the format img01.jpg, img02.jpg, etc. Frame numbers must be sequential (no gaps).

    Any non-zero number of frames is permitted, but for optimal use the number of frames should be divisible by 4.

    The maximum upload file size for a zip is 800mb.

  • SINGLE_IMAGE: is a single JPG or PNG image file. The maximum upload file size for a JPG or PNG is 20mb.

  • VIDEO: is a single MP4 video file. The maximum upload file size for a MP4 is 850mb.

Authorizations
Path parameters
shootIdstringRequired

Unique shoot id

Example: 683606ee-9788-4d88-adb8-77119de4c6a2
tenantIdstringRequired

Unique tenant id

Example: f700d27e-64ed-4571-ae2e-8c948c1c296e
Body
filenamestringOptional

Filename of the media being uploaded - Allowed extensions are based on the meta.type value

Pattern: ^[a-zA-Z0-9_\\s\\.,-\\[\\]()]+\\.(zip|jpg|png|mp4|ZIP|JPG|PNG|MP4)$
tagsall ofOptional

Tag key-pairs to associate with the created media

Responses
200
success
application/json
400
bad request
application/json
401
unauthorized
application/json
403
forbidden
application/json
404
not found
application/json
put
PUT /api/tenant/{tenantId}/shoot/{shootId}/media HTTP/1.1
Host: api.orb360.tech
Content-Type: application/json
Accept: */*
Content-Length: 52

{
  "filename": "text",
  "tags": [],
  "meta": {
    "type": "text"
  }
}
{
  "ANY_ADDITIONAL_PROPERTY": {
    "fields": {
      "Policy": "text",
      "X-Amz-Algorithm": "text",
      "X-Amz-Credential": "text",
      "X-Amz-Date": "text",
      "X-Amz-Security-Token": "text",
      "X-Amz-Signature": "text",
      "acl": "text",
      "bucket": "text",
      "key": "text",
      "success_action_status": "text"
    },
    "mediaId": "daea0774-275b-4e43-9d10-c2f9d5d4d5b6",
    "mediaItem": {
      "mediaId": "daea0774-275b-4e43-9d10-c2f9d5d4d5b6",
      "version": 123,
      "s3path": "boxerTenants/{tenantId}/shoots/{shootId}/daea0774-275b-4e43-9d10-c2f9d5d4d5b6.zip",
      "size": 7511688,
      "shoot": "683606ee-9788-4d88-adb8-77119de4c6a2",
      "mimeType": "application/zip",
      "meta": {
        "boxerTenantId": "fdb67f2e-219d-4771-b14f-a2ddc24b812b",
        "from": "boxer",
        "type": "360_V2",
        "frames": 72,
        "shootId": "683606ee-9788-4d88-adb8-77119de4c6a2"
      },
      "status": "AVAILABLE",
      "processAs": {
        "zip": [
          {
            "type": "unzip-360",
            "args": {}
          }
        ]
      },
      "originalFilename": "360.zip",
      "generated": {
        "mp4": {
          "ANY_ADDITIONAL_PROPERTY": {
            "size": 4303059,
            "opts": {
              "durationSecs": 4,
              "resolution": {
                "width": 800,
                "height": 1200
              },
              "background": "#FFFFFF"
            },
            "file": "v1_800x1200_4s_1cc67419e21143569e7447f6181e0eab.mp4",
            "url": "https://cdn.orb360.tech/.....ccee12d66ec5-800.mp4"
          }
        },
        "jpg": {
          "ANY_ADDITIONAL_PROPERTY": {
            "size": 4303059,
            "opts": {
              "mode": [
                "resize"
              ],
              "resolution": {
                "width": 800,
                "height": 1200
              },
              "background": "#FFFFFF"
            },
            "file": "800_6677d7dfc0454b958c9a15b38f444885/1e81d25b-fc79-4ab0-9e3e-5476353e3e76-800.zip",
            "url": "https://cdn.orb360.tech/.....ccee12d66ec5-800.zip"
          }
        },
        "gif": {
          "ANY_ADDITIONAL_PROPERTY": {
            "size": 4303059,
            "opts": {
              "durationSecs": 4,
              "resolution": {
                "width": 800
              },
              "loops": 0
            },
            "file": "v1_800_4s_0l_24fb4470fc9a4dc98b0042d2d0debedd.gif",
            "url": "https://cdn.orb360.tech/.....ccee12d66ec5-800.gif"
          }
        },
        "m3u8": {
          "ANY_ADDITIONAL_PROPERTY": {
            "size": 4303059,
            "chunks": 4303059,
            "opts": {
              "resolution": {
                "width": 800
              },
              "audio": {
                "codec": "acc"
              },
              "video": {
                "bitRate": 3000,
                "chunkSize": 4,
                "codec": "h264",
                "crf": 20,
                "keyframe": 48,
                "profile": "main"
              }
            },
            "file": "v1_800_h264_main_crf20_c4_2675k_beaffc7602c8cba3dd970e52ee38f366cac18552/7c7cce40-beda-4963-9391-ccee12d66ec5-800.m3u8",
            "url": "https://cdn.orb360.tech/.....ccee12d66ec5-800.m3u8"
          }
        }
      },
      "dateCreated": 1594988393066,
      "dateUpdated": 1594988393066,
      "errors": {},
      "images": [
        {
          "type": "SINGLE_IMAGE",
          "baseURL": "https://cdn.orb360.tech/image/b1a213d6-8559-45f7-86da-088e6a85d86c/shoots/5b608121-c7b6-4a36-ac2a-54da43d869a2/5dfc5b5e-bc9b-4fde-9af4-e4904ce212a3/",
          "sizes": {
            "ImageWidth": {
              "urls": [
                "800_9fb29dc6a2edc54f2a9851d6bdc23e5df87220fa/5dfc5b5e-bc9b-4fde-9af4-e4904ce212a3-800.jpg?fmt=webp&w=150&s=5c1b7bbeec44a9fa61824b3f6964ece3e419b1fae73855cc97c19b2ea8977ac2"
              ]
            }
          }
        }
      ],
      "tags": {
        "ANY_ADDITIONAL_PROPERTY": [
          {
            "keyValue": "STYLENUMBER-COLOURNAME:12345$BLACK",
            "key": "StyleNumber-ColourName",
            "value": "12345$BLACK",
            "updatedBy": "auth0|dd5e21fb23efe45d1761ddce",
            "createdBy": "auth0|dd5e21fb23efe45d1761ddce",
            "dateCreated": 1574782604487,
            "dateUpdated": 1574782604487
          }
        ]
      },
      "eTag": "text",
      "m3u8Index": "text"
    },
    "mediaItemToken": "text",
    "path": "text",
    "url": "text"
  }
}