# Clip ## Clip videos given a start and end time `stream.clip.create(ClipCreateParams**kwargs) -> Clip` **post** `/accounts/{account_id}/stream/clip` Clips a video based on the specified start and end times provided in seconds. ### Parameters - `account_id: str` The account identifier tag. - `clipped_from_video_uid: str` The unique video identifier (UID). - `end_time_seconds: int` Specifies the end time for the video clip in seconds. - `start_time_seconds: int` Specifies the start time for the video clip in seconds. - `allowed_origins: Optional[SequenceNotStr[AllowedOrigins]]` Lists the origins allowed to display the video. Enter allowed origin domains in an array and use `*` for wildcard subdomains. Empty arrays allow the video to be viewed on any origin. - `creator: Optional[str]` A user-defined identifier for the media creator. - `max_duration_seconds: Optional[int]` The maximum duration in seconds for a video upload. Can be set for a video that is not yet uploaded to limit its duration. Uploads that exceed the specified duration will fail during processing. A value of `-1` means the value is unknown. - `require_signed_urls: Optional[bool]` Indicates whether the video can be a accessed using the UID. When set to `true`, a signed token must be generated with a signing key to view the video. - `thumbnail_timestamp_pct: Optional[float]` The timestamp for a thumbnail image calculated as a percentage value of the video's duration. To convert from a second-wise timestamp to a percentage, divide the desired timestamp by the total duration of the video. If this value is not set, the default thumbnail image is taken from 0s of the video. - `watermark: Optional[Watermark]` - `uid: Optional[str]` The unique identifier for the watermark profile. ### Returns - `class Clip: …` - `allowed_origins: Optional[List[AllowedOrigins]]` Lists the origins allowed to display the video. Enter allowed origin domains in an array and use `*` for wildcard subdomains. Empty arrays allow the video to be viewed on any origin. - `clipped_from_video_uid: Optional[str]` The unique video identifier (UID). - `created: Optional[datetime]` The date and time the clip was created. - `creator: Optional[str]` A user-defined identifier for the media creator. - `end_time_seconds: Optional[int]` Specifies the end time for the video clip in seconds. - `max_duration_seconds: Optional[int]` The maximum duration in seconds for a video upload. Can be set for a video that is not yet uploaded to limit its duration. Uploads that exceed the specified duration will fail during processing. A value of `-1` means the value is unknown. - `meta: Optional[object]` A user modifiable key-value store used to reference other systems of record for managing videos. - `modified: Optional[datetime]` The date and time the live input was last modified. - `playback: Optional[Playback]` - `dash: Optional[str]` DASH Media Presentation Description for the video. - `hls: Optional[str]` The HLS manifest for the video. - `preview: Optional[str]` The video's preview page URI. This field is omitted until encoding is complete. - `require_signed_urls: Optional[bool]` Indicates whether the video can be a accessed using the UID. When set to `true`, a signed token must be generated with a signing key to view the video. - `start_time_seconds: Optional[int]` Specifies the start time for the video clip in seconds. - `status: Optional[Literal["pendingupload", "downloading", "queued", 4 more]]` Specifies the processing status for all quality levels for a video. - `"pendingupload"` - `"downloading"` - `"queued"` - `"inprogress"` - `"ready"` - `"error"` - `"live-inprogress"` - `thumbnail_timestamp_pct: Optional[float]` The timestamp for a thumbnail image calculated as a percentage value of the video's duration. To convert from a second-wise timestamp to a percentage, divide the desired timestamp by the total duration of the video. If this value is not set, the default thumbnail image is taken from 0s of the video. - `watermark: Optional[Watermark]` - `uid: Optional[str]` The unique identifier for the watermark profile. ### Example ```python import os from cloudflare import Cloudflare client = Cloudflare( api_token=os.environ.get("CLOUDFLARE_API_TOKEN"), # This is the default and can be omitted ) clip = client.stream.clip.create( account_id="023e105f4ecef8ad9ca31a8372d0c353", clipped_from_video_uid="023e105f4ecef8ad9ca31a8372d0c353", end_time_seconds=0, start_time_seconds=0, ) print(clip.clipped_from_video_uid) ``` #### Response ```json { "errors": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "messages": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "success": true, "result": { "allowedOrigins": [ "example.com" ], "clippedFromVideoUID": "023e105f4ecef8ad9ca31a8372d0c353", "created": "2014-01-02T02:20:00Z", "creator": "creator-id_abcde12345", "endTimeSeconds": 0, "maxDurationSeconds": 1, "meta": { "name": "video12345.mp4" }, "modified": "2014-01-02T02:20:00Z", "playback": { "dash": "https://customer-m033z5x00ks6nunl.cloudflarestream.com/ea95132c15732412d22c1476fa83f27a/manifest/video.mpd", "hls": "https://customer-m033z5x00ks6nunl.cloudflarestream.com/ea95132c15732412d22c1476fa83f27a/manifest/video.m3u8" }, "preview": "https://customer-m033z5x00ks6nunl.cloudflarestream.com/ea95132c15732412d22c1476fa83f27a/watch", "requireSignedURLs": true, "startTimeSeconds": 0, "status": "inprogress", "thumbnailTimestampPct": 0.529241, "watermark": { "uid": "ea95132c15732412d22c1476fa83f27a" } } } ``` ## Domain Types ### Clip - `class Clip: …` - `allowed_origins: Optional[List[AllowedOrigins]]` Lists the origins allowed to display the video. Enter allowed origin domains in an array and use `*` for wildcard subdomains. Empty arrays allow the video to be viewed on any origin. - `clipped_from_video_uid: Optional[str]` The unique video identifier (UID). - `created: Optional[datetime]` The date and time the clip was created. - `creator: Optional[str]` A user-defined identifier for the media creator. - `end_time_seconds: Optional[int]` Specifies the end time for the video clip in seconds. - `max_duration_seconds: Optional[int]` The maximum duration in seconds for a video upload. Can be set for a video that is not yet uploaded to limit its duration. Uploads that exceed the specified duration will fail during processing. A value of `-1` means the value is unknown. - `meta: Optional[object]` A user modifiable key-value store used to reference other systems of record for managing videos. - `modified: Optional[datetime]` The date and time the live input was last modified. - `playback: Optional[Playback]` - `dash: Optional[str]` DASH Media Presentation Description for the video. - `hls: Optional[str]` The HLS manifest for the video. - `preview: Optional[str]` The video's preview page URI. This field is omitted until encoding is complete. - `require_signed_urls: Optional[bool]` Indicates whether the video can be a accessed using the UID. When set to `true`, a signed token must be generated with a signing key to view the video. - `start_time_seconds: Optional[int]` Specifies the start time for the video clip in seconds. - `status: Optional[Literal["pendingupload", "downloading", "queued", 4 more]]` Specifies the processing status for all quality levels for a video. - `"pendingupload"` - `"downloading"` - `"queued"` - `"inprogress"` - `"ready"` - `"error"` - `"live-inprogress"` - `thumbnail_timestamp_pct: Optional[float]` The timestamp for a thumbnail image calculated as a percentage value of the video's duration. To convert from a second-wise timestamp to a percentage, divide the desired timestamp by the total duration of the video. If this value is not set, the default thumbnail image is taken from 0s of the video. - `watermark: Optional[Watermark]` - `uid: Optional[str]` The unique identifier for the watermark profile.