# peertube.VideoUploadApi All URIs are relative to *https://peertube2.cpy.re* Method | HTTP request | Description ------------- | ------------- | ------------- [**import_video**](VideoUploadApi.md#import_video) | **POST** /api/v1/videos/imports | Import a video [**replace_video_source_resumable**](VideoUploadApi.md#replace_video_source_resumable) | **PUT** /api/v1/videos/{id}/source/replace-resumable | Send chunk for the resumable replacement of a video [**replace_video_source_resumable_cancel**](VideoUploadApi.md#replace_video_source_resumable_cancel) | **DELETE** /api/v1/videos/{id}/source/replace-resumable | Cancel the resumable replacement of a video [**replace_video_source_resumable_init**](VideoUploadApi.md#replace_video_source_resumable_init) | **POST** /api/v1/videos/{id}/source/replace-resumable | Initialize the resumable replacement of a video [**upload_legacy**](VideoUploadApi.md#upload_legacy) | **POST** /api/v1/videos/upload | Upload a video [**upload_resumable**](VideoUploadApi.md#upload_resumable) | **PUT** /api/v1/videos/upload-resumable | Send chunk for the resumable upload of a video [**upload_resumable_cancel**](VideoUploadApi.md#upload_resumable_cancel) | **DELETE** /api/v1/videos/upload-resumable | Cancel the resumable upload of a video, deleting any data uploaded so far [**upload_resumable_init**](VideoUploadApi.md#upload_resumable_init) | **POST** /api/v1/videos/upload-resumable | Initialize the resumable upload of a video # **import_video** > VideoUploadResponse import_video(name, channel_id, privacy=privacy, category=category, licence=licence, language=language, description=description, wait_transcoding=wait_transcoding, support=support, nsfw=nsfw, tags=tags, comments_enabled=comments_enabled, download_enabled=download_enabled, originally_published_at=originally_published_at, schedule_update=schedule_update, thumbnailfile=thumbnailfile, previewfile=previewfile, video_passwords=video_passwords) Import a video Import a torrent or magnetURI or HTTP resource (if enabled by the instance administrator) ### Example * OAuth Authentication (OAuth2): ```python import peertube from peertube.models.video_privacy_set import VideoPrivacySet from peertube.models.video_scheduled_update import VideoScheduledUpdate from peertube.models.video_upload_response import VideoUploadResponse from peertube.rest import ApiException from pprint import pprint # Defining the host is optional and defaults to https://peertube2.cpy.re # See configuration.py for a list of all supported configuration parameters. configuration = peertube.Configuration( host = "https://peertube2.cpy.re" ) # The client must configure the authentication and authorization parameters # in accordance with the API server security policy. # Examples for each auth method are provided below, use the example that # satisfies your auth use case. configuration.access_token = os.environ["ACCESS_TOKEN"] # Enter a context with an instance of the API client with peertube.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = peertube.VideoUploadApi(api_client) name = 'name_example' # str | Video name channel_id = 56 # int | Channel id that will contain this video privacy = peertube.VideoPrivacySet() # VideoPrivacySet | (optional) category = 56 # int | category id of the video (see [/videos/categories](#operation/getCategories)) (optional) licence = 56 # int | licence id of the video (see [/videos/licences](#operation/getLicences)) (optional) language = 'language_example' # str | language id of the video (see [/videos/languages](#operation/getLanguages)) (optional) description = 'description_example' # str | Video description (optional) wait_transcoding = True # bool | Whether or not we wait transcoding before publish the video (optional) support = 'support_example' # str | A text tell the audience how to support the video creator (optional) nsfw = True # bool | Whether or not this video contains sensitive content (optional) tags = ['tags_example'] # List[str] | Video tags (maximum 5 tags each between 2 and 30 characters) (optional) comments_enabled = True # bool | Enable or disable comments for this video (optional) download_enabled = True # bool | Enable or disable downloading for this video (optional) originally_published_at = '2013-10-20T19:20:30+01:00' # datetime | Date when the content was originally published (optional) schedule_update = peertube.VideoScheduledUpdate() # VideoScheduledUpdate | (optional) thumbnailfile = None # bytearray | Video thumbnail file (optional) previewfile = None # bytearray | Video preview file (optional) video_passwords = ['video_passwords_example'] # List[str] | (optional) try: # Import a video api_response = api_instance.import_video(name, channel_id, privacy=privacy, category=category, licence=licence, language=language, description=description, wait_transcoding=wait_transcoding, support=support, nsfw=nsfw, tags=tags, comments_enabled=comments_enabled, download_enabled=download_enabled, originally_published_at=originally_published_at, schedule_update=schedule_update, thumbnailfile=thumbnailfile, previewfile=previewfile, video_passwords=video_passwords) print("The response of VideoUploadApi->import_video:\n") pprint(api_response) except Exception as e: print("Exception when calling VideoUploadApi->import_video: %s\n" % e) ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **name** | **str**| Video name | **channel_id** | **int**| Channel id that will contain this video | **privacy** | [**VideoPrivacySet**](VideoPrivacySet.md)| | [optional] **category** | **int**| category id of the video (see [/videos/categories](#operation/getCategories)) | [optional] **licence** | **int**| licence id of the video (see [/videos/licences](#operation/getLicences)) | [optional] **language** | **str**| language id of the video (see [/videos/languages](#operation/getLanguages)) | [optional] **description** | **str**| Video description | [optional] **wait_transcoding** | **bool**| Whether or not we wait transcoding before publish the video | [optional] **support** | **str**| A text tell the audience how to support the video creator | [optional] **nsfw** | **bool**| Whether or not this video contains sensitive content | [optional] **tags** | [**List[str]**](str.md)| Video tags (maximum 5 tags each between 2 and 30 characters) | [optional] **comments_enabled** | **bool**| Enable or disable comments for this video | [optional] **download_enabled** | **bool**| Enable or disable downloading for this video | [optional] **originally_published_at** | **datetime**| Date when the content was originally published | [optional] **schedule_update** | [**VideoScheduledUpdate**](VideoScheduledUpdate.md)| | [optional] **thumbnailfile** | **bytearray**| Video thumbnail file | [optional] **previewfile** | **bytearray**| Video preview file | [optional] **video_passwords** | [**List[str]**](str.md)| | [optional] ### Return type [**VideoUploadResponse**](VideoUploadResponse.md) ### Authorization [OAuth2](../README.md#OAuth2) ### HTTP request headers - **Content-Type**: multipart/form-data - **Accept**: application/json ### HTTP response details | Status code | Description | Response headers | |-------------|-------------|------------------| **200** | successful operation | - | **400** | `magnetUri` or `targetUrl` or a torrent file missing | - | **403** | video didn't pass pre-import filter | - | **409** | HTTP or Torrent/magnetURI import not enabled | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) # **replace_video_source_resumable** > replace_video_source_resumable(upload_id, content_range, content_length, body=body) Send chunk for the resumable replacement of a video **PeerTube >= 6.0** Uses [a resumable protocol](https://github.com/kukhariev/node-uploadx/blob/master/proto.md) to continue, pause or resume the replacement of a video ### Example * OAuth Authentication (OAuth2): ```python import peertube from peertube.rest import ApiException from pprint import pprint # Defining the host is optional and defaults to https://peertube2.cpy.re # See configuration.py for a list of all supported configuration parameters. configuration = peertube.Configuration( host = "https://peertube2.cpy.re" ) # The client must configure the authentication and authorization parameters # in accordance with the API server security policy. # Examples for each auth method are provided below, use the example that # satisfies your auth use case. configuration.access_token = os.environ["ACCESS_TOKEN"] # Enter a context with an instance of the API client with peertube.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = peertube.VideoUploadApi(api_client) upload_id = 'upload_id_example' # str | Created session id to proceed with. If you didn't send chunks in the last hour, it is not valid anymore and you need to initialize a new upload. content_range = 'bytes 0-262143/2469036' # str | Specifies the bytes in the file that the request is uploading. For example, a value of `bytes 0-262143/1000000` shows that the request is sending the first 262144 bytes (256 x 1024) in a 2,469,036 byte file. content_length = 262144 # float | Size of the chunk that the request is sending. Remember that larger chunks are more efficient. PeerTube's web client uses chunks varying from 1048576 bytes (~1MB) and increases or reduces size depending on connection health. body = None # bytearray | (optional) try: # Send chunk for the resumable replacement of a video api_instance.replace_video_source_resumable(upload_id, content_range, content_length, body=body) except Exception as e: print("Exception when calling VideoUploadApi->replace_video_source_resumable: %s\n" % e) ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **upload_id** | **str**| Created session id to proceed with. If you didn't send chunks in the last hour, it is not valid anymore and you need to initialize a new upload. | **content_range** | **str**| Specifies the bytes in the file that the request is uploading. For example, a value of `bytes 0-262143/1000000` shows that the request is sending the first 262144 bytes (256 x 1024) in a 2,469,036 byte file. | **content_length** | **float**| Size of the chunk that the request is sending. Remember that larger chunks are more efficient. PeerTube's web client uses chunks varying from 1048576 bytes (~1MB) and increases or reduces size depending on connection health. | **body** | **bytearray**| | [optional] ### Return type void (empty response body) ### Authorization [OAuth2](../README.md#OAuth2) ### HTTP request headers - **Content-Type**: application/octet-stream - **Accept**: Not defined ### HTTP response details | Status code | Description | Response headers | |-------------|-------------|------------------| **204** | last chunk received: successful operation | - | **308** | resume incomplete | * Range -
* Content-Length -
| **403** | video didn't pass file replacement filter | - | **404** | replace upload not found | - | **409** | chunk doesn't match range | - | **422** | video unreadable | - | **429** | too many concurrent requests | - | **503** | upload is already being processed | * Retry-After -
| [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) # **replace_video_source_resumable_cancel** > replace_video_source_resumable_cancel(upload_id, content_length) Cancel the resumable replacement of a video **PeerTube >= 6.0** Uses [a resumable protocol](https://github.com/kukhariev/node-uploadx/blob/master/proto.md) to cancel the replacement of a video ### Example * OAuth Authentication (OAuth2): ```python import peertube from peertube.rest import ApiException from pprint import pprint # Defining the host is optional and defaults to https://peertube2.cpy.re # See configuration.py for a list of all supported configuration parameters. configuration = peertube.Configuration( host = "https://peertube2.cpy.re" ) # The client must configure the authentication and authorization parameters # in accordance with the API server security policy. # Examples for each auth method are provided below, use the example that # satisfies your auth use case. configuration.access_token = os.environ["ACCESS_TOKEN"] # Enter a context with an instance of the API client with peertube.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = peertube.VideoUploadApi(api_client) upload_id = 'upload_id_example' # str | Created session id to proceed with. If you didn't send chunks in the last hour, it is not valid anymore and you need to initialize a new upload. content_length = 0 # float | try: # Cancel the resumable replacement of a video api_instance.replace_video_source_resumable_cancel(upload_id, content_length) except Exception as e: print("Exception when calling VideoUploadApi->replace_video_source_resumable_cancel: %s\n" % e) ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **upload_id** | **str**| Created session id to proceed with. If you didn't send chunks in the last hour, it is not valid anymore and you need to initialize a new upload. | **content_length** | **float**| | ### Return type void (empty response body) ### Authorization [OAuth2](../README.md#OAuth2) ### HTTP request headers - **Content-Type**: Not defined - **Accept**: Not defined ### HTTP response details | Status code | Description | Response headers | |-------------|-------------|------------------| **204** | source file replacement cancelled | * Content-Length -
| **404** | source file replacement not found | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) # **replace_video_source_resumable_init** > replace_video_source_resumable_init(x_upload_content_length, x_upload_content_type, video_replace_source_request_resumable=video_replace_source_request_resumable) Initialize the resumable replacement of a video **PeerTube >= 6.0** Uses [a resumable protocol](https://github.com/kukhariev/node-uploadx/blob/master/proto.md) to initialize the replacement of a video ### Example * OAuth Authentication (OAuth2): ```python import peertube from peertube.models.video_replace_source_request_resumable import VideoReplaceSourceRequestResumable from peertube.rest import ApiException from pprint import pprint # Defining the host is optional and defaults to https://peertube2.cpy.re # See configuration.py for a list of all supported configuration parameters. configuration = peertube.Configuration( host = "https://peertube2.cpy.re" ) # The client must configure the authentication and authorization parameters # in accordance with the API server security policy. # Examples for each auth method are provided below, use the example that # satisfies your auth use case. configuration.access_token = os.environ["ACCESS_TOKEN"] # Enter a context with an instance of the API client with peertube.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = peertube.VideoUploadApi(api_client) x_upload_content_length = 2469036 # float | Number of bytes that will be uploaded in subsequent requests. Set this value to the size of the file you are uploading. x_upload_content_type = 'video/mp4' # str | MIME type of the file that you are uploading. Depending on your instance settings, acceptable values might vary. video_replace_source_request_resumable = peertube.VideoReplaceSourceRequestResumable() # VideoReplaceSourceRequestResumable | (optional) try: # Initialize the resumable replacement of a video api_instance.replace_video_source_resumable_init(x_upload_content_length, x_upload_content_type, video_replace_source_request_resumable=video_replace_source_request_resumable) except Exception as e: print("Exception when calling VideoUploadApi->replace_video_source_resumable_init: %s\n" % e) ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **x_upload_content_length** | **float**| Number of bytes that will be uploaded in subsequent requests. Set this value to the size of the file you are uploading. | **x_upload_content_type** | **str**| MIME type of the file that you are uploading. Depending on your instance settings, acceptable values might vary. | **video_replace_source_request_resumable** | [**VideoReplaceSourceRequestResumable**](VideoReplaceSourceRequestResumable.md)| | [optional] ### Return type void (empty response body) ### Authorization [OAuth2](../README.md#OAuth2) ### HTTP request headers - **Content-Type**: application/json - **Accept**: Not defined ### HTTP response details | Status code | Description | Response headers | |-------------|-------------|------------------| **200** | file already exists, send a [`resume`](https://github.com/kukhariev/node-uploadx/blob/master/proto.md) request instead | - | **201** | created | * Location -
* Content-Length -
| **413** | Disambiguate via `type`: - `max_file_size_reached` for the absolute file size limit - `quota_reached` for quota limits whether daily or global | - | **415** | video type unsupported | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) # **upload_legacy** > VideoUploadResponse upload_legacy(name, videofile, channel_id=channel_id, privacy=privacy, category=category, licence=licence, language=language, description=description, wait_transcoding=wait_transcoding, support=support, nsfw=nsfw, tags=tags, comments_enabled=comments_enabled, download_enabled=download_enabled, originally_published_at=originally_published_at, schedule_update=schedule_update, thumbnailfile=thumbnailfile, previewfile=previewfile, video_passwords=video_passwords) Upload a video Uses a single request to upload a video. ### Example * OAuth Authentication (OAuth2): ```python import peertube from peertube.models.video_privacy_set import VideoPrivacySet from peertube.models.video_scheduled_update import VideoScheduledUpdate from peertube.models.video_upload_response import VideoUploadResponse from peertube.rest import ApiException from pprint import pprint # Defining the host is optional and defaults to https://peertube2.cpy.re # See configuration.py for a list of all supported configuration parameters. configuration = peertube.Configuration( host = "https://peertube2.cpy.re" ) # The client must configure the authentication and authorization parameters # in accordance with the API server security policy. # Examples for each auth method are provided below, use the example that # satisfies your auth use case. configuration.access_token = os.environ["ACCESS_TOKEN"] # Enter a context with an instance of the API client with peertube.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = peertube.VideoUploadApi(api_client) name = 'name_example' # str | Video name videofile = None # bytearray | Video file channel_id = 56 # int | Channel id that will contain this video (optional) privacy = peertube.VideoPrivacySet() # VideoPrivacySet | (optional) category = 56 # int | category id of the video (see [/videos/categories](#operation/getCategories)) (optional) licence = 56 # int | licence id of the video (see [/videos/licences](#operation/getLicences)) (optional) language = 'language_example' # str | language id of the video (see [/videos/languages](#operation/getLanguages)) (optional) description = 'description_example' # str | Video description (optional) wait_transcoding = True # bool | Whether or not we wait transcoding before publish the video (optional) support = 'support_example' # str | A text tell the audience how to support the video creator (optional) nsfw = True # bool | Whether or not this video contains sensitive content (optional) tags = ['tags_example'] # List[str] | Video tags (maximum 5 tags each between 2 and 30 characters) (optional) comments_enabled = True # bool | Enable or disable comments for this video (optional) download_enabled = True # bool | Enable or disable downloading for this video (optional) originally_published_at = '2013-10-20T19:20:30+01:00' # datetime | Date when the content was originally published (optional) schedule_update = peertube.VideoScheduledUpdate() # VideoScheduledUpdate | (optional) thumbnailfile = None # bytearray | Video thumbnail file (optional) previewfile = None # bytearray | Video preview file (optional) video_passwords = ['video_passwords_example'] # List[str] | (optional) try: # Upload a video api_response = api_instance.upload_legacy(name, videofile, channel_id=channel_id, privacy=privacy, category=category, licence=licence, language=language, description=description, wait_transcoding=wait_transcoding, support=support, nsfw=nsfw, tags=tags, comments_enabled=comments_enabled, download_enabled=download_enabled, originally_published_at=originally_published_at, schedule_update=schedule_update, thumbnailfile=thumbnailfile, previewfile=previewfile, video_passwords=video_passwords) print("The response of VideoUploadApi->upload_legacy:\n") pprint(api_response) except Exception as e: print("Exception when calling VideoUploadApi->upload_legacy: %s\n" % e) ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **name** | **str**| Video name | **videofile** | **bytearray**| Video file | **channel_id** | **int**| Channel id that will contain this video | [optional] **privacy** | [**VideoPrivacySet**](VideoPrivacySet.md)| | [optional] **category** | **int**| category id of the video (see [/videos/categories](#operation/getCategories)) | [optional] **licence** | **int**| licence id of the video (see [/videos/licences](#operation/getLicences)) | [optional] **language** | **str**| language id of the video (see [/videos/languages](#operation/getLanguages)) | [optional] **description** | **str**| Video description | [optional] **wait_transcoding** | **bool**| Whether or not we wait transcoding before publish the video | [optional] **support** | **str**| A text tell the audience how to support the video creator | [optional] **nsfw** | **bool**| Whether or not this video contains sensitive content | [optional] **tags** | [**List[str]**](str.md)| Video tags (maximum 5 tags each between 2 and 30 characters) | [optional] **comments_enabled** | **bool**| Enable or disable comments for this video | [optional] **download_enabled** | **bool**| Enable or disable downloading for this video | [optional] **originally_published_at** | **datetime**| Date when the content was originally published | [optional] **schedule_update** | [**VideoScheduledUpdate**](VideoScheduledUpdate.md)| | [optional] **thumbnailfile** | **bytearray**| Video thumbnail file | [optional] **previewfile** | **bytearray**| Video preview file | [optional] **video_passwords** | [**List[str]**](str.md)| | [optional] ### Return type [**VideoUploadResponse**](VideoUploadResponse.md) ### Authorization [OAuth2](../README.md#OAuth2) ### HTTP request headers - **Content-Type**: multipart/form-data - **Accept**: application/json ### HTTP response details | Status code | Description | Response headers | |-------------|-------------|------------------| **200** | successful operation | - | **403** | video didn't pass upload filter | - | **408** | upload has timed out | - | **413** | If the response has no body, it means the reverse-proxy didn't let it through. Otherwise disambiguate via `type`: - `quota_reached` for quota limits whether daily or global | * X-File-Maximum-Size - Maximum file size for the banner
| **415** | video type unsupported | - | **422** | video unreadable | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) # **upload_resumable** > VideoUploadResponse upload_resumable(upload_id, content_range, content_length, body=body) Send chunk for the resumable upload of a video Uses [a resumable protocol](https://github.com/kukhariev/node-uploadx/blob/master/proto.md) to continue, pause or resume the upload of a video ### Example * OAuth Authentication (OAuth2): ```python import peertube from peertube.models.video_upload_response import VideoUploadResponse from peertube.rest import ApiException from pprint import pprint # Defining the host is optional and defaults to https://peertube2.cpy.re # See configuration.py for a list of all supported configuration parameters. configuration = peertube.Configuration( host = "https://peertube2.cpy.re" ) # The client must configure the authentication and authorization parameters # in accordance with the API server security policy. # Examples for each auth method are provided below, use the example that # satisfies your auth use case. configuration.access_token = os.environ["ACCESS_TOKEN"] # Enter a context with an instance of the API client with peertube.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = peertube.VideoUploadApi(api_client) upload_id = 'upload_id_example' # str | Created session id to proceed with. If you didn't send chunks in the last hour, it is not valid anymore and you need to initialize a new upload. content_range = 'bytes 0-262143/2469036' # str | Specifies the bytes in the file that the request is uploading. For example, a value of `bytes 0-262143/1000000` shows that the request is sending the first 262144 bytes (256 x 1024) in a 2,469,036 byte file. content_length = 262144 # float | Size of the chunk that the request is sending. Remember that larger chunks are more efficient. PeerTube's web client uses chunks varying from 1048576 bytes (~1MB) and increases or reduces size depending on connection health. body = None # bytearray | (optional) try: # Send chunk for the resumable upload of a video api_response = api_instance.upload_resumable(upload_id, content_range, content_length, body=body) print("The response of VideoUploadApi->upload_resumable:\n") pprint(api_response) except Exception as e: print("Exception when calling VideoUploadApi->upload_resumable: %s\n" % e) ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **upload_id** | **str**| Created session id to proceed with. If you didn't send chunks in the last hour, it is not valid anymore and you need to initialize a new upload. | **content_range** | **str**| Specifies the bytes in the file that the request is uploading. For example, a value of `bytes 0-262143/1000000` shows that the request is sending the first 262144 bytes (256 x 1024) in a 2,469,036 byte file. | **content_length** | **float**| Size of the chunk that the request is sending. Remember that larger chunks are more efficient. PeerTube's web client uses chunks varying from 1048576 bytes (~1MB) and increases or reduces size depending on connection health. | **body** | **bytearray**| | [optional] ### Return type [**VideoUploadResponse**](VideoUploadResponse.md) ### Authorization [OAuth2](../README.md#OAuth2) ### HTTP request headers - **Content-Type**: application/octet-stream - **Accept**: application/json ### HTTP response details | Status code | Description | Response headers | |-------------|-------------|------------------| **200** | last chunk received | * Content-Length -
| **308** | resume incomplete | * Range -
* Content-Length -
| **403** | video didn't pass upload filter | - | **404** | upload not found | - | **409** | chunk doesn't match range | - | **422** | video unreadable | - | **429** | too many concurrent requests | - | **503** | upload is already being processed | * Retry-After -
| [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) # **upload_resumable_cancel** > upload_resumable_cancel(upload_id, content_length) Cancel the resumable upload of a video, deleting any data uploaded so far Uses [a resumable protocol](https://github.com/kukhariev/node-uploadx/blob/master/proto.md) to cancel the upload of a video ### Example * OAuth Authentication (OAuth2): ```python import peertube from peertube.rest import ApiException from pprint import pprint # Defining the host is optional and defaults to https://peertube2.cpy.re # See configuration.py for a list of all supported configuration parameters. configuration = peertube.Configuration( host = "https://peertube2.cpy.re" ) # The client must configure the authentication and authorization parameters # in accordance with the API server security policy. # Examples for each auth method are provided below, use the example that # satisfies your auth use case. configuration.access_token = os.environ["ACCESS_TOKEN"] # Enter a context with an instance of the API client with peertube.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = peertube.VideoUploadApi(api_client) upload_id = 'upload_id_example' # str | Created session id to proceed with. If you didn't send chunks in the last hour, it is not valid anymore and you need to initialize a new upload. content_length = 0 # float | try: # Cancel the resumable upload of a video, deleting any data uploaded so far api_instance.upload_resumable_cancel(upload_id, content_length) except Exception as e: print("Exception when calling VideoUploadApi->upload_resumable_cancel: %s\n" % e) ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **upload_id** | **str**| Created session id to proceed with. If you didn't send chunks in the last hour, it is not valid anymore and you need to initialize a new upload. | **content_length** | **float**| | ### Return type void (empty response body) ### Authorization [OAuth2](../README.md#OAuth2) ### HTTP request headers - **Content-Type**: Not defined - **Accept**: Not defined ### HTTP response details | Status code | Description | Response headers | |-------------|-------------|------------------| **204** | upload cancelled | * Content-Length -
| **404** | upload not found | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) # **upload_resumable_init** > upload_resumable_init(x_upload_content_length, x_upload_content_type, video_upload_request_resumable=video_upload_request_resumable) Initialize the resumable upload of a video Uses [a resumable protocol](https://github.com/kukhariev/node-uploadx/blob/master/proto.md) to initialize the upload of a video ### Example * OAuth Authentication (OAuth2): ```python import peertube from peertube.models.video_upload_request_resumable import VideoUploadRequestResumable from peertube.rest import ApiException from pprint import pprint # Defining the host is optional and defaults to https://peertube2.cpy.re # See configuration.py for a list of all supported configuration parameters. configuration = peertube.Configuration( host = "https://peertube2.cpy.re" ) # The client must configure the authentication and authorization parameters # in accordance with the API server security policy. # Examples for each auth method are provided below, use the example that # satisfies your auth use case. configuration.access_token = os.environ["ACCESS_TOKEN"] # Enter a context with an instance of the API client with peertube.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = peertube.VideoUploadApi(api_client) x_upload_content_length = 2469036 # float | Number of bytes that will be uploaded in subsequent requests. Set this value to the size of the file you are uploading. x_upload_content_type = 'video/mp4' # str | MIME type of the file that you are uploading. Depending on your instance settings, acceptable values might vary. video_upload_request_resumable = peertube.VideoUploadRequestResumable() # VideoUploadRequestResumable | (optional) try: # Initialize the resumable upload of a video api_instance.upload_resumable_init(x_upload_content_length, x_upload_content_type, video_upload_request_resumable=video_upload_request_resumable) except Exception as e: print("Exception when calling VideoUploadApi->upload_resumable_init: %s\n" % e) ``` ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **x_upload_content_length** | **float**| Number of bytes that will be uploaded in subsequent requests. Set this value to the size of the file you are uploading. | **x_upload_content_type** | **str**| MIME type of the file that you are uploading. Depending on your instance settings, acceptable values might vary. | **video_upload_request_resumable** | [**VideoUploadRequestResumable**](VideoUploadRequestResumable.md)| | [optional] ### Return type void (empty response body) ### Authorization [OAuth2](../README.md#OAuth2) ### HTTP request headers - **Content-Type**: application/json - **Accept**: Not defined ### HTTP response details | Status code | Description | Response headers | |-------------|-------------|------------------| **200** | file already exists, send a [`resume`](https://github.com/kukhariev/node-uploadx/blob/master/proto.md) request instead | - | **201** | created | * Location -
* Content-Length -
| **413** | Disambiguate via `type`: - `max_file_size_reached` for the absolute file size limit - `quota_reached` for quota limits whether daily or global | - | **415** | video type unsupported | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)