---
title: Error Handling & Best Practices
url: https://docs.kaltura.com/docs/rich-media-cms-apis/content-management/multi-stream-reference
---

## Error Handling & Best Practices

### Error Handling


| Error Code | Meaning | Resolution |
|------------|---------|------------|
| `ENTRY_ID_NOT_FOUND` | Entry ID does not exist | Verify the entry ID; entry may have been deleted |
| `INVALID_ENTRY_TYPE` | Operation not supported for this entry type | Multi-stream requires `mediaType=1` (VIDEO) entries |
| `PROPERTY_VALIDATION_NOT_UPDATABLE` | Attempted to change a read-only property | Some entry fields are immutable after creation; check the field name in the error details |
| `MAX_ENTRIES_REACHED` | Partner entry limit reached | Delete unused entries or contact account manager |

**Retry strategy:** For transient errors (HTTP 5xx, timeouts), retry with exponential backoff: 1s, 2s, 4s, with jitter, up to 3 retries. For client errors (`ENTRY_ID_NOT_FOUND`, `INVALID_ENTRY_TYPE`, `PROPERTY_VALIDATION_NOT_UPDATABLE`), fix the request before retrying — these will not resolve on their own.



### Best Practices


- **Create child entries with the correct `parentEntryId` from the start.** Setting `parentEntryId` during creation is more reliable than updating it later.
- **Use USER KS (type=0)** for player-side operations. The Dual Screen player needs a KS to discover child entries via the API, but a scoped user session is sufficient.
- **Poll for child entry READY status** before embedding. Multi-stream playback requires all entries to be transcoded.
- **Use `KalturaUrlResource` with direct MP4 URLs** for child entries. Redirect URLs (e.g., `playManifest`) cause import failures.
- **Leverage REACH for all streams.** Order captions on both parent and child entries for complete accessibility coverage.
