Help Doc Access Show

Media API

Manage media on a slide. Upload videos and audios as multipart/form-data, and delete pictures, videos, and audios.

GET List Pictures

GET https://show.zoho.com/api/v1/presentation/{rid}/slides/{slide_id}/pictures
Required Scopes:
ZohoShow.showdocslist.READ

Lists picture objects on a slide. Use this endpoint to find image object ids, read picture bounds, and inspect media references before updating or deleting images. Pass ids to fetch specific pictures, or omit it to list all picture objects on the slide. Picture content is returned as SDK object data; binary image bytes are not returned by this list operation.

Path parameters

Name Type Required Description
rid string Required Resource id of the presentation. The caller must have the appropriate permission on this presentation.
slide_id string Required Slide id in the presentation. The caller must have the appropriate permission on the presentation.

Query parameters

Name Type Required Description
ids string Optional Comma-separated picture ids to fetch. Omit this parameter to list all pictures on the selected slide.
from integer Optional Zero-based offset for pagination.
count integer Optional Maximum number of records to return. Allowed range: 1-99.
Samples

Responses

200 Pictures Retrieved
400 Invalid Ids
400 Invalid From
403 Permission Denied
{ "data": { "objects": [ { "object_id": "9eab14c2-6a16-4334-827b-8ca91abdc151", "content": { "id": "9eab14c2-6a16-4334-827b-8ca91abdc151", "picture": { "media": { "local_id": "8dbacb9b-9b5b-455d-a86d-873d4be09693" }, "properties": { "layout": { "width": 672, "height": 682 } } } } }, { "object_id": "a477f6ff-35f9-4ecb-990c-ed96204fadb5", "content": { "id": "a477f6ff-35f9-4ecb-990c-ed96204fadb5", "picture": { "media": { "local_id": "2a530f2a-000d-4cde-a921-2e423bba00ee" }, "properties": { "layout": { "width": 672, "height": 682 } } } } }, { "object_id": "e958ab50-42da-4657-8ce2-71fb509effd8", "content": { "id": "e958ab50-42da-4657-8ce2-71fb509effd8", "picture": { "media": { "local_id": "8bc1b835-82e2-4fea-a504-0811f86d37bb" }, "properties": { "layout": { "width": 672, "height": 682 } } } } }, { "object_id": "feff2e81-381a-41f0-887f-6d70598476da", "content": { "id": "feff2e81-381a-41f0-887f-6d70598476da", "picture": { "media": { "local_id": "7327873b-0210-4614-88f7-82cb1844463c" }, "properties": { "layout": { "width": 300, "height": 300 } } } } }, { "object_id": "89df084c-d535-49a2-bd45-c7212b20e02f", "content": { "id": "89df084c-d535-49a2-bd45-c7212b20e02f", "picture": { "media": { "local_id": "b2b8d4aa-ebe1-44cd-9d77-0adebe26d3a0" }, "properties": { "layout": { "width": 672, "height": 682 } } } } } ], "container_id": "54ca442b-63d1-43df-bda9-9f8cd2654e70" }, "message": "Picture(s) content retrieved successfully", "request_uri": "/api/v1/presentation/8i4vv3f345fcf907446a2bdc4e2c871fc585e/slides/54ca442b-63d1-43df-bda9-9f8cd2654e70/pictures", "status": "success" }

Code Examples

cURL
curl -X GET "https://show.zoho.com/api/v1/presentation/{rid}/slides/{slide_id}/pictures?ids=&from=&count=" \ -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \ -H "Content-Type: application/json"

GET List Videos

GET https://show.zoho.com/api/v1/presentation/{rid}/slides/{slide_id}/videos
Required Scopes:
ZohoShow.showdocslist.READ

Lists video objects on a slide. Use this endpoint to discover video object ids and placement metadata before updating slide media or deleting video objects. The response describes video objects in the slide model. It does not stream the video file; use object metadata for document editing workflows.

Path parameters

Name Type Required Description
rid string Required Resource id of the presentation. The caller must have the appropriate permission on this presentation.
slide_id string Required Slide id in the presentation. The caller must have the appropriate permission on the presentation.

Query parameters

Name Type Required Description
ids string Optional Comma-separated video ids to fetch. Omit this parameter to list all videos on the selected slide.
from integer Optional Zero-based offset for pagination.
count integer Optional Maximum number of records to return. Allowed range: 1-99.
Samples

Responses

200 Videos Retrieved
400 Invalid Ids
400 Invalid From
403 Permission Denied
{ "data": { "objects": [ { "object_id": "9e34f7ff-23b3-483c-87f7-6d11b8c53a42", "content": { "id": "9e34f7ff-23b3-483c-87f7-6d11b8c53a42", "picture": { "media": { "local_id": "12f4a493-bde4-4fae-968c-753b76ef7c69" }, "properties": { "layout": { "top": 117, "left": 48, "width": 864, "height": 486 } } } } }, { "object_id": "ad31a6ad-7628-4b00-a26d-f1f737a10381", "content": { "id": "ad31a6ad-7628-4b00-a26d-f1f737a10381", "picture": { "media": { "local_id": "b4ca7cbd-a8e9-4be2-abc8-c80a8b075198" }, "properties": { "layout": { "top": 117, "left": 48, "width": 864, "height": 486 } } } } }, { "object_id": "0edc9417-d1da-4123-8fbb-a02a7dd78c72", "content": { "id": "0edc9417-d1da-4123-8fbb-a02a7dd78c72", "picture": { "media": { "local_id": "8f131ce7-8ee2-4444-b9dc-73cace369717" }, "properties": { "layout": { "top": 117, "left": 48, "width": 864, "height": 486 } } } } }, { "object_id": "7d93a0aa-d5b1-43e6-9b77-6c03f61ba48f", "content": { "id": "7d93a0aa-d5b1-43e6-9b77-6c03f61ba48f", "picture": { "media": { "local_id": "d6a91d04-05ff-464b-a0b1-c33a4d34c5eb" }, "properties": { "layout": { "top": 117, "left": 48, "width": 864, "height": 486 } } } } }, { "object_id": "70ac68f1-c9d9-4612-b717-0b7b66a125f0", "content": { "id": "70ac68f1-c9d9-4612-b717-0b7b66a125f0", "picture": { "media": { "local_id": "8ddbd3c6-7e96-47c6-be77-048d0f0d1d13" }, "properties": { "layout": { "top": 117, "left": 48, "width": 864, "height": 486 } } } } } ], "container_id": "54ca442b-63d1-43df-bda9-9f8cd2654e70" }, "message": "Video(s) content retrieved successfully", "request_uri": "/api/v1/presentation/8i4vv3f345fcf907446a2bdc4e2c871fc585e/slides/54ca442b-63d1-43df-bda9-9f8cd2654e70/videos", "status": "success" }

Code Examples

cURL
curl -X GET "https://show.zoho.com/api/v1/presentation/{rid}/slides/{slide_id}/videos?ids=&from=&count=" \ -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \ -H "Content-Type: application/json"

GET List Audios

GET https://show.zoho.com/api/v1/presentation/{rid}/slides/{slide_id}/audios
Required Scopes:
ZohoShow.showdocslist.READ

Lists audio objects on a slide. Use this endpoint to discover audio object ids and metadata before deleting or managing audio attachments. Audio objects are slide-level media elements. The response returns object metadata, not the binary audio stream.

Path parameters

Name Type Required Description
rid string Required Resource id of the presentation. The caller must have the appropriate permission on this presentation.
slide_id string Required Slide id in the presentation. The caller must have the appropriate permission on the presentation.

Query parameters

Name Type Required Description
ids string Optional Comma-separated audio ids to fetch. Omit this parameter to list all audios on the selected slide.
from integer Optional Zero-based offset for pagination.
count integer Optional Maximum number of records to return. Allowed range: 1-99.
Samples

Responses

200 Audios Retrieved
400 Invalid Ids
400 Invalid From
403 Permission Denied
{ "data": { "objects": [ { "object_id": "50312a97-dcd9-467e-88db-5371f13b581d", "content": { "shape": { "text": { "paragraphs": [ { "style": { "halign": "CENTER" }, "portions": [ { "style": {} } ] } ], "properties": {} }, "basic": {}, "properties": { "layout": { "top": 100, "left": 100, "width": 54, "height": 54 }, "strokes": [ { "jointype": "MITER", "width": 1.5, "fill": { "solid": { "color": { "rgb": { "red": 45, "green": 141, "blue": 255 } } } } } ], "fills": [ { "solid": { "color": { "rgb": { "red": 45, "green": 141, "blue": 255 } } } } ] } }, "id": "50312a97-dcd9-467e-88db-5371f13b581d" } }, { "object_id": "13dcbead-c8b5-414d-b4b4-e87cd1e4f76f", "content": { "shape": { "text": { "paragraphs": [ { "style": { "halign": "CENTER" }, "portions": [ { "style": {} } ] } ], "properties": {} }, "basic": {}, "properties": { "layout": { "top": 100, "left": 100, "width": 54, "height": 54 }, "strokes": [ { "jointype": "MITER", "width": 1.5, "fill": { "solid": { "color": { "rgb": { "red": 45, "green": 141, "blue": 255 } } } } } ], "fills": [ { "solid": { "color": { "rgb": { "red": 45, "green": 141, "blue": 255 } } } } ] } }, "id": "13dcbead-c8b5-414d-b4b4-e87cd1e4f76f" } }, { "object_id": "3361243a-03b4-45db-9760-3fbf3e2afe59", "content": { "shape": { "text": { "paragraphs": [ { "style": { "halign": "CENTER" }, "portions": [ { "style": {} } ] } ], "properties": {} }, "basic": {}, "properties": { "layout": { "top": 100, "left": 100, "width": 80, "height": 80 }, "strokes": [ { "jointype": "MITER", "width": 1.5, "fill": { "solid": { "color": { "rgb": { "red": 45, "green": 141, "blue": 255 } } } } } ], "fills": [ { "solid": { "color": { "rgb": { "red": 45, "green": 141, "blue": 255 } } } } ] } }, "id": "3361243a-03b4-45db-9760-3fbf3e2afe59" } }, { "object_id": "92e8e477-497e-4b5d-8853-864e38ccdc83", "content": { "shape": { "text": { "paragraphs": [ { "style": { "halign": "CENTER" }, "portions": [ { "style": {} } ] } ], "properties": {} }, "basic": {}, "properties": { "layout": { "top": 150, "left": 200, "width": 60, "height": 60 }, "strokes": [ { "jointype": "MITER", "width": 1.5, "fill": { "solid": { "color": { "rgb": { "red": 45, "green": 141, "blue": 255 } } } } } ], "fills": [ { "solid": { "color": { "rgb": { "red": 45, "green": 141, "blue": 255 } } } } ] } }, "id": "92e8e477-497e-4b5d-8853-864e38ccdc83" } }, { "object_id": "2390bdf3-03f6-414e-9878-b78689ec7865", "content": { "shape": { "text": { "paragraphs": [ { "style": { "halign": "CENTER" }, "portions": [ { "style": {} } ] } ], "properties": {} }, "basic": {}, "properties": { "layout": { "top": 120, "left": 120, "width": 72, "height": 72 }, "strokes": [ { "jointype": "MITER", "width": 1.5, "fill": { "solid": { "color": { "rgb": { "red": 45, "green": 141, "blue": 255 } } } } } ], "fills": [ { "solid": { "color": { "rgb": { "red": 45, "green": 141, "blue": 255 } } } } ] } }, "id": "2390bdf3-03f6-414e-9878-b78689ec7865" } } ], "container_id": "54ca442b-63d1-43df-bda9-9f8cd2654e70" }, "message": "Audio(s) content retrieved successfully", "request_uri": "/api/v1/presentation/8i4vv3f345fcf907446a2bdc4e2c871fc585e/slides/54ca442b-63d1-43df-bda9-9f8cd2654e70/audios", "status": "success" }

Code Examples

cURL
curl -X GET "https://show.zoho.com/api/v1/presentation/{rid}/slides/{slide_id}/audios?ids=&from=&count=" \ -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \ -H "Content-Type: application/json"

POST Insert Pictures

POST https://show.zoho.com/api/v1/presentation/{rid}/slides/{slide_id}/pictures
Required Scopes:
ZohoShow.showdocslist.CREATE

Uploads an image file and inserts it as a picture object on a slide. Use this endpoint to upload image bytes that should become part of the presentation. Send multipart form data with the file part and, when needed, a JSON payload that carries placement details. Use layout fields to control position and size; otherwise Show uses default placement behavior. Do not set a Content-Type header yourself — your HTTP client sets multipart/form-data with the correct boundary automatically.

Path parameters

Name Type Required Description
rid string Required Resource id of the presentation. The caller must have the appropriate permission on this presentation.
slide_id string Required Slide id in the presentation. The caller must have the appropriate permission on the presentation.

Request Body

Interactive structure. Expand fields and select optional schema parts.

Schema Catalog
Samples

Request Body

JSON
{ "file": "example_file", "shapePayload": "example_shapePayload" }

Responses

200 Pictures Inserted
400 Unsupported Proto
403 Permission Denied
401 Invalid or Missing OAuth Token
{ "data": { "shapes_inserted": [ "a477f6ff-35f9-4ecb-990c-ed96204fadb5" ], "shape_id": "a477f6ff-35f9-4ecb-990c-ed96204fadb5", "media": { "local_id": "5000000287041" }, "picture_id": "2a530f2a-000d-4cde-a921-2e423bba00ee", "slide_id": "54ca442b-63d1-43df-bda9-9f8cd2654e70", "document_id": "5000000282907", "shape_content": { "id": "a477f6ff-35f9-4ecb-990c-ed96204fadb5", "picture": { "media": { "local_id": "2a530f2a-000d-4cde-a921-2e423bba00ee" }, "properties": { "layout": { "width": 672, "height": 682 } } } }, "last_saved_version": "403" }, "message": "Picture added successfully", "request_uri": "/api/v1/presentation/8i4vv3f345fcf907446a2bdc4e2c871fc585e/slides/54ca442b-63d1-43df-bda9-9f8cd2654e70/pictures", "status": "success" }

Code Examples

cURL
curl -X POST "https://show.zoho.com/api/v1/presentation/{rid}/slides/{slide_id}/pictures" \ -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \ -F "file=@/path/to/image.png" \ -F "shapePayload={\"picture\":{\"properties\":{\"layout\":{\"left\":100,\"top\":100,\"width\":300,\"height\":200}}}}"

POST Insert Videos

POST https://show.zoho.com/api/v1/presentation/{rid}/slides/{slide_id}/videos
Required Scopes:
ZohoShow.showdocslist.CREATE

Uploads a video file and inserts it into a slide. Use this endpoint to attach playable video content to a presentation. Send multipart form data with the video file part (file) and the required thumbnail image part (thumbnail). Include an optional JSON payload (proto) to control position and size. Do not set a Content-Type header yourself — your HTTP client sets multipart/form-data with the correct boundary automatically.

Path parameters

Name Type Required Description
rid string Required Resource id of the presentation. The caller must have the appropriate permission on this presentation.
slide_id string Required Slide id in the presentation. The caller must have the appropriate permission on the presentation.

Request Body

Interactive structure. Expand fields and select optional schema parts.

Schema Catalog
Samples

Request Body

JSON
{ "file": "example_file", "thumbnail": "example_thumbnail", "proto": "example_proto" }

Responses

200 Videos Inserted
400 Missing Thumbnail File
400 Missing Video File
403 Permission Denied
{ "data": { "shape_id": "ad31a6ad-7628-4b00-a26d-f1f737a10381", "slide_id": "54ca442b-63d1-43df-bda9-9f8cd2654e70", "document_id": "5000000282907", "shape_content": { "id": "ad31a6ad-7628-4b00-a26d-f1f737a10381", "picture": { "media": { "local_id": "b4ca7cbd-a8e9-4be2-abc8-c80a8b075198" }, "properties": { "layout": { "top": 117, "left": 48, "width": 864, "height": 486 } } } }, "last_saved_version": "427", "video_id": "5000000287370" }, "message": "Video added successfully", "request_uri": "/api/v1/presentation/8i4vv3f345fcf907446a2bdc4e2c871fc585e/slides/54ca442b-63d1-43df-bda9-9f8cd2654e70/videos", "status": "success" }

Code Examples

cURL
curl -X POST "https://show.zoho.com/api/v1/presentation/{rid}/slides/{slide_id}/videos" \ -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \ -F "file=@/path/to/video.mp4" \ -F "thumbnail=@/path/to/thumbnail.png" \ -F "proto={\"shape\":{\"properties\":{\"layout\":{\"left\":100,\"top\":100,\"width\":400,\"height\":225}}}}"

POST Insert Audios

POST https://show.zoho.com/api/v1/presentation/{rid}/slides/{slide_id}/audios
Required Scopes:
ZohoShow.showdocslist.CREATE

Uploads an audio file and inserts it into a slide. Use this endpoint to add narration, sound effects, or audio attachments to a presentation. Send multipart form data with the audio file part (file) and an optional JSON payload (proto) for placement. The inserted object can later be listed or deleted through the audio endpoints. Do not set a Content-Type header yourself — your HTTP client sets multipart/form-data with the correct boundary automatically.

Path parameters

Name Type Required Description
rid string Required Resource id of the presentation. The caller must have the appropriate permission on this presentation.
slide_id string Required Slide id in the presentation. The caller must have the appropriate permission on the presentation.

Request Body

Interactive structure. Expand fields and select optional schema parts.

Schema Catalog
Samples

Request Body

JSON
{ "file": "example_file", "proto": "example_proto" }

Responses

200 Audios Inserted
400 Missing Audio File
403 Permission Denied
401 Invalid or Missing OAuth Token
{ "data": { "shape_id": "13dcbead-c8b5-414d-b4b4-e87cd1e4f76f", "slide_id": "54ca442b-63d1-43df-bda9-9f8cd2654e70", "document_id": "5000000282907", "shape_content": { "shape": { "text": { "paragraphs": [ { "style": { "halign": "CENTER" }, "portions": [ { "style": {} } ] } ], "properties": {} }, "basic": {}, "properties": { "layout": { "top": 100, "left": 100, "width": 54, "height": 54 }, "strokes": [ { "jointype": "MITER", "width": 1.5, "fill": { "solid": { "color": { "rgb": { "red": 45, "green": 141, "blue": 255 } } } } } ], "fills": [ { "solid": { "color": { "rgb": { "red": 45, "green": 141, "blue": 255 } } } } ] } }, "id": "13dcbead-c8b5-414d-b4b4-e87cd1e4f76f" }, "last_saved_version": "391", "audio_id": "5000000286786" }, "message": "Audio added successfully", "request_uri": "/api/v1/presentation/8i4vv3f345fcf907446a2bdc4e2c871fc585e/slides/54ca442b-63d1-43df-bda9-9f8cd2654e70/audios", "status": "success" }

Code Examples

cURL
curl -X POST "https://show.zoho.com/api/v1/presentation/{rid}/slides/{slide_id}/audios" \ -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \ -F "file=@/path/to/audio.mp3" \ -F "proto={\"shape\":{\"properties\":{\"layout\":{\"left\":100,\"top\":100,\"width\":200,\"height\":80}}}}"

DELETE Remove Pictures

DELETE https://show.zoho.com/api/v1/presentation/{rid}/slides/{slide_id}/pictures
Required Scopes:
ZohoShow.showdocslist.DELETE

Deletes one or more picture objects from a slide. Use this to remove image objects while leaving other slide content intact. Pass picture object ids in ids. This removes the picture objects from the slide canvas; list pictures first if they need to confirm object ids.

Path parameters

Name Type Required Description
rid string Required Resource id of the presentation. The caller must have the appropriate permission on this presentation.
slide_id string Required Slide id in the presentation. The caller must have the appropriate permission on the presentation.

Query parameters

Name Type Required Description
ids string Required Comma-separated picture ids to delete. These ids select the objects to remove; the path parameters identify the container that holds them.
Samples

Responses

200 Pictures Deleted
400 Missing Ids
404 Object Not Found
400 Invalid Ids
{ "data": { "success_count": "1", "failure_count": "0", "results": [ { "new_revision_id": "421", "object_id": "21dd0a2a-5b74-4d83-ae36-1a16fb3713fa" } ] }, "message": "Media deleted successfully", "request_uri": "/api/v1/presentation/8i4vv3f345fcf907446a2bdc4e2c871fc585e/slides/54ca442b-63d1-43df-bda9-9f8cd2654e70/pictures", "status": "success" }

Code Examples

cURL
curl -X DELETE "https://show.zoho.com/api/v1/presentation/{rid}/slides/{slide_id}/pictures?ids={{ids}}" \ -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \ -H "Content-Type: application/json"

DELETE Remove Videos

DELETE https://show.zoho.com/api/v1/presentation/{rid}/slides/{slide_id}/videos
Required Scopes:
ZohoShow.showdocslist.DELETE

Deletes one or more video objects from a slide. Use this when embedded videos should be removed from the canvas without changing other slide objects. Pass comma-separated video object ids in ids. The response reports which deletions succeeded so clients can update local media lists.

Path parameters

Name Type Required Description
rid string Required Resource id of the presentation. The caller must have the appropriate permission on this presentation.
slide_id string Required Slide id in the presentation. The caller must have the appropriate permission on the presentation.

Query parameters

Name Type Required Description
ids string Required Comma-separated video ids to delete. These ids select the objects to remove; the path parameters identify the container that holds them.
Samples

Responses

200 Videos Deleted
400 Missing Ids
404 Object Not Found
400 Invalid Ids
{ "data": { "success_count": "1", "failure_count": "0", "results": [ { "new_revision_id": "437", "object_id": "680c6761-4e73-48f5-9e94-82e8bc9c8a11" } ] }, "message": "Media deleted successfully", "request_uri": "/api/v1/presentation/8i4vv3f345fcf907446a2bdc4e2c871fc585e/slides/54ca442b-63d1-43df-bda9-9f8cd2654e70/videos", "status": "success" }

Code Examples

cURL
curl -X DELETE "https://show.zoho.com/api/v1/presentation/{rid}/slides/{slide_id}/videos?ids={{ids}}" \ -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \ -H "Content-Type: application/json"

DELETE Remove Audios

DELETE https://show.zoho.com/api/v1/presentation/{rid}/slides/{slide_id}/audios
Required Scopes:
ZohoShow.showdocslist.DELETE

Deletes one or more audio objects from a slide. Use this to remove narration or audio attachments from the presentation. Pass comma-separated audio object ids in ids. The call removes only the audio objects named in the query parameter.

Path parameters

Name Type Required Description
rid string Required Resource id of the presentation. The caller must have the appropriate permission on this presentation.
slide_id string Required Slide id in the presentation. The caller must have the appropriate permission on the presentation.

Query parameters

Name Type Required Description
ids string Required Comma-separated audio ids to delete. These ids select the objects to remove; the path parameters identify the container that holds them.
Samples

Responses

200 Audios Deleted
400 Missing Ids
404 Object Not Found
400 Invalid Ids
{ "data": { "success_count": "1", "failure_count": "0", "results": [ { "new_revision_id": "400", "object_id": "e8030f88-6f76-4393-af43-e69ef690d93e" } ] }, "message": "Media deleted successfully", "request_uri": "/api/v1/presentation/8i4vv3f345fcf907446a2bdc4e2c871fc585e/slides/54ca442b-63d1-43df-bda9-9f8cd2654e70/audios", "status": "success" }

Code Examples

cURL
curl -X DELETE "https://show.zoho.com/api/v1/presentation/{rid}/slides/{slide_id}/audios?ids={{ids}}" \ -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \ -H "Content-Type: application/json"