> For the complete documentation index, see [llms.txt](https://docs.decentraland.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.decentraland.org/apis/apis/comms-gatekeeper/scene-stream-access.md).

# Scene Stream Access

## List scene stream access

> Lists streaming access information for a specific scene or world.\
> Only scene owners or administrators can access this endpoint.\
> Requires Signed Fetch authentication from decentraland-kernel-scene.\
> Must include the complete identity header chain: x-identity-auth-chain-0, x-identity-auth-chain-1, x-identity-auth-chain-2, x-identity-timestamp, and x-identity-metadata.<br>

```json
{"openapi":"3.0.0","info":{"title":"Comms Gatekeeper API","version":"1.0.0"},"servers":[{"url":"https://comms-gatekeeper.decentraland.org","description":"Production server"},{"url":"https://comms-gatekeeper.decentraland.zone","description":"Development server"}],"security":[{"SignedFetch":[]}],"components":{"securitySchemes":{"SignedFetch":{"type":"apiKey","in":"header","name":"x-identity","description":"Signed Fetch authentication for scene-based requests.\nRequires a chain of identity headers:\n- x-identity-auth-chain-0: Signer information\n- x-identity-auth-chain-1: Ephemeral key information  \n- x-identity-auth-chain-2: Signed entity information\n- x-identity-timestamp: Request timestamp\n- x-identity-metadata: Request metadata\nUsed for authentication from decentraland-kernel-scene.\n"}}},"paths":{"/scene-stream-access":{"get":{"operationId":"getSceneStreamAccess","summary":"List scene stream access","description":"Lists streaming access information for a specific scene or world.\nOnly scene owners or administrators can access this endpoint.\nRequires Signed Fetch authentication from decentraland-kernel-scene.\nMust include the complete identity header chain: x-identity-auth-chain-0, x-identity-auth-chain-1, x-identity-auth-chain-2, x-identity-timestamp, and x-identity-metadata.\n","responses":{"200":{"description":"Stream access information retrieved successfully","content":{"application/json":{"schema":{"type":"object","required":["id","place_id","streaming_key","streaming_url","ingress_id","created_at","active","streaming","streaming_start_time"],"properties":{"id":{"type":"string","description":"Unique identifier of the stream access"},"place_id":{"type":"string","description":"ID of the place"},"streaming_key":{"type":"string","description":"Streaming key for the stream"},"streaming_url":{"type":"string","description":"URL for the stream"},"ingress_id":{"type":"string","description":"LiveKit ingress ID"},"created_at":{"type":"integer","format":"int64","description":"Timestamp when the access was created"},"active":{"type":"boolean","description":"Whether the stream access is active"},"streaming":{"type":"boolean","description":"Whether the stream is currently active"},"streaming_start_time":{"type":"integer","format":"int64","description":"Timestamp when streaming started"}}}}}},"401":{"description":"Unauthorized - Authentication required","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Error message describing what went wrong"}}}}}},"404":{"description":"Stream access not found","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Error message describing what went wrong"}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Error message describing what went wrong"}}}}}}},"tags":["Scene Stream Access"]}}}}
```

## Add scene stream access

> Adds streaming access for a specific scene or world.\
> Only scene owners or administrators can add stream access.\
> Requires Signed Fetch authentication from decentraland-kernel-scene.\
> Must include the complete identity header chain: x-identity-auth-chain-0, x-identity-auth-chain-1, x-identity-auth-chain-2, x-identity-timestamp, and x-identity-metadata.<br>

```json
{"openapi":"3.0.0","info":{"title":"Comms Gatekeeper API","version":"1.0.0"},"servers":[{"url":"https://comms-gatekeeper.decentraland.org","description":"Production server"},{"url":"https://comms-gatekeeper.decentraland.zone","description":"Development server"}],"security":[{"SignedFetch":[]}],"components":{"securitySchemes":{"SignedFetch":{"type":"apiKey","in":"header","name":"x-identity","description":"Signed Fetch authentication for scene-based requests.\nRequires a chain of identity headers:\n- x-identity-auth-chain-0: Signer information\n- x-identity-auth-chain-1: Ephemeral key information  \n- x-identity-auth-chain-2: Signed entity information\n- x-identity-timestamp: Request timestamp\n- x-identity-metadata: Request metadata\nUsed for authentication from decentraland-kernel-scene.\n"}}},"paths":{"/scene-stream-access":{"post":{"operationId":"addSceneStreamAccess","summary":"Add scene stream access","description":"Adds streaming access for a specific scene or world.\nOnly scene owners or administrators can add stream access.\nRequires Signed Fetch authentication from decentraland-kernel-scene.\nMust include the complete identity header chain: x-identity-auth-chain-0, x-identity-auth-chain-1, x-identity-auth-chain-2, x-identity-timestamp, and x-identity-metadata.\n","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["streaming_url","streaming_key","ingress_id"],"properties":{"streaming_url":{"type":"string","description":"URL for the stream"},"streaming_key":{"type":"string","description":"Streaming key for the stream"},"ingress_id":{"type":"string","description":"LiveKit ingress ID"}}}}}},"responses":{"201":{"description":"Stream access added successfully","content":{"application/json":{"schema":{"type":"object","required":["id","place_id","streaming_key","streaming_url","ingress_id","created_at","active","streaming","streaming_start_time"],"properties":{"id":{"type":"string","description":"Unique identifier of the stream access"},"place_id":{"type":"string","description":"ID of the place"},"streaming_key":{"type":"string","description":"Streaming key for the stream"},"streaming_url":{"type":"string","description":"URL for the stream"},"ingress_id":{"type":"string","description":"LiveKit ingress ID"},"created_at":{"type":"integer","format":"int64","description":"Timestamp when the access was created"},"active":{"type":"boolean","description":"Whether the stream access is active"},"streaming":{"type":"boolean","description":"Whether the stream is currently active"},"streaming_start_time":{"type":"integer","format":"int64","description":"Timestamp when streaming started"}}}}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Error message describing what went wrong"}}}}}},"401":{"description":"Unauthorized - Authentication required","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Error message describing what went wrong"}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Error message describing what went wrong"}}}}}}},"tags":["Scene Stream Access"]}}}}
```

## Reset scene stream access

> Resets streaming access for a specific scene or world.\
> This will stop any active streaming and reset the access configuration.\
> Only scene owners or administrators can reset stream access.\
> Requires Signed Fetch authentication from decentraland-kernel-scene.\
> Must include the complete identity header chain: x-identity-auth-chain-0, x-identity-auth-chain-1, x-identity-auth-chain-2, x-identity-timestamp, and x-identity-metadata.<br>

```json
{"openapi":"3.0.0","info":{"title":"Comms Gatekeeper API","version":"1.0.0"},"servers":[{"url":"https://comms-gatekeeper.decentraland.org","description":"Production server"},{"url":"https://comms-gatekeeper.decentraland.zone","description":"Development server"}],"security":[{"SignedFetch":[]}],"components":{"securitySchemes":{"SignedFetch":{"type":"apiKey","in":"header","name":"x-identity","description":"Signed Fetch authentication for scene-based requests.\nRequires a chain of identity headers:\n- x-identity-auth-chain-0: Signer information\n- x-identity-auth-chain-1: Ephemeral key information  \n- x-identity-auth-chain-2: Signed entity information\n- x-identity-timestamp: Request timestamp\n- x-identity-metadata: Request metadata\nUsed for authentication from decentraland-kernel-scene.\n"}}},"paths":{"/scene-stream-access":{"put":{"operationId":"resetSceneStreamAccess","summary":"Reset scene stream access","description":"Resets streaming access for a specific scene or world.\nThis will stop any active streaming and reset the access configuration.\nOnly scene owners or administrators can reset stream access.\nRequires Signed Fetch authentication from decentraland-kernel-scene.\nMust include the complete identity header chain: x-identity-auth-chain-0, x-identity-auth-chain-1, x-identity-auth-chain-2, x-identity-timestamp, and x-identity-metadata.\n","responses":{"204":{"description":"Stream access reset successfully"},"401":{"description":"Unauthorized - Authentication required","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Error message describing what went wrong"}}}}}},"404":{"description":"Stream access not found","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Error message describing what went wrong"}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Error message describing what went wrong"}}}}}}},"tags":["Scene Stream Access"]}}}}
```

## Remove scene stream access

> Removes streaming access for a specific scene or world.\
> Only scene owners or administrators can remove stream access.\
> Requires Signed Fetch authentication from decentraland-kernel-scene.\
> Must include the complete identity header chain: x-identity-auth-chain-0, x-identity-auth-chain-1, x-identity-auth-chain-2, x-identity-timestamp, and x-identity-metadata.<br>

```json
{"openapi":"3.0.0","info":{"title":"Comms Gatekeeper API","version":"1.0.0"},"servers":[{"url":"https://comms-gatekeeper.decentraland.org","description":"Production server"},{"url":"https://comms-gatekeeper.decentraland.zone","description":"Development server"}],"security":[{"SignedFetch":[]}],"components":{"securitySchemes":{"SignedFetch":{"type":"apiKey","in":"header","name":"x-identity","description":"Signed Fetch authentication for scene-based requests.\nRequires a chain of identity headers:\n- x-identity-auth-chain-0: Signer information\n- x-identity-auth-chain-1: Ephemeral key information  \n- x-identity-auth-chain-2: Signed entity information\n- x-identity-timestamp: Request timestamp\n- x-identity-metadata: Request metadata\nUsed for authentication from decentraland-kernel-scene.\n"}}},"paths":{"/scene-stream-access":{"delete":{"operationId":"removeSceneStreamAccess","summary":"Remove scene stream access","description":"Removes streaming access for a specific scene or world.\nOnly scene owners or administrators can remove stream access.\nRequires Signed Fetch authentication from decentraland-kernel-scene.\nMust include the complete identity header chain: x-identity-auth-chain-0, x-identity-auth-chain-1, x-identity-auth-chain-2, x-identity-timestamp, and x-identity-metadata.\n","responses":{"204":{"description":"Stream access removed successfully"},"401":{"description":"Unauthorized - Authentication required","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Error message describing what went wrong"}}}}}},"404":{"description":"Stream access not found","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Error message describing what went wrong"}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Error message describing what went wrong"}}}}}}},"tags":["Scene Stream Access"]}}}}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.decentraland.org/apis/apis/comms-gatekeeper/scene-stream-access.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
