diff --git a/setup.py b/setup.py
index f48116a..679e57b 100644
--- a/setup.py
+++ b/setup.py
@@ -11,7 +11,7 @@
from setuptools import setup, find_packages # noqa: H301
NAME = "shotstack-sdk"
-VERSION = "0.0.1"
+VERSION = "0.2.0"
# To install the library, run the following
#
# python setup.py install
diff --git a/shotstack_sdk/__init__.py b/shotstack_sdk/__init__.py
index 0db04d6..ed90f48 100644
--- a/shotstack_sdk/__init__.py
+++ b/shotstack_sdk/__init__.py
@@ -3,7 +3,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
diff --git a/shotstack_sdk/api/edit_api.py b/shotstack_sdk/api/edit_api.py
index 9539283..1245007 100644
--- a/shotstack_sdk/api/edit_api.py
+++ b/shotstack_sdk/api/edit_api.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
@@ -25,6 +25,11 @@
from shotstack_sdk.model.probe_response import ProbeResponse
from shotstack_sdk.model.queued_response import QueuedResponse
from shotstack_sdk.model.render_response import RenderResponse
+from shotstack_sdk.model.template import Template
+from shotstack_sdk.model.template_data_response import TemplateDataResponse
+from shotstack_sdk.model.template_list_response import TemplateListResponse
+from shotstack_sdk.model.template_render import TemplateRender
+from shotstack_sdk.model.template_response import TemplateResponse
class EditApi(object):
@@ -38,6 +43,62 @@ def __init__(self, api_client=None):
if api_client is None:
api_client = ApiClient()
self.api_client = api_client
+ self.delete_template_endpoint = _Endpoint(
+ settings={
+ 'response_type': None,
+ 'auth': [
+ 'DeveloperKey'
+ ],
+ 'endpoint_path': '/templates/{id}',
+ 'operation_id': 'delete_template',
+ 'http_method': 'DELETE',
+ 'servers': None,
+ },
+ params_map={
+ 'all': [
+ 'id',
+ ],
+ 'required': [
+ 'id',
+ ],
+ 'nullable': [
+ ],
+ 'enum': [
+ ],
+ 'validation': [
+ 'id',
+ ]
+ },
+ root_map={
+ 'validations': {
+ ('id',): {
+
+ 'regex': {
+ 'pattern': r'^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$', # noqa: E501
+ },
+ },
+ },
+ 'allowed_values': {
+ },
+ 'openapi_types': {
+ 'id':
+ (str,),
+ },
+ 'attribute_map': {
+ 'id': 'id',
+ },
+ 'location_map': {
+ 'id': 'path',
+ },
+ 'collection_format_map': {
+ }
+ },
+ headers_map={
+ 'accept': [],
+ 'content_type': [],
+ },
+ api_client=api_client
+ )
self.get_render_endpoint = _Endpoint(
settings={
'response_type': (RenderResponse,),
@@ -106,6 +167,108 @@ def __init__(self, api_client=None):
},
api_client=api_client
)
+ self.get_template_endpoint = _Endpoint(
+ settings={
+ 'response_type': (TemplateDataResponse,),
+ 'auth': [
+ 'DeveloperKey'
+ ],
+ 'endpoint_path': '/templates/{id}',
+ 'operation_id': 'get_template',
+ 'http_method': 'GET',
+ 'servers': None,
+ },
+ params_map={
+ 'all': [
+ 'id',
+ ],
+ 'required': [
+ 'id',
+ ],
+ 'nullable': [
+ ],
+ 'enum': [
+ ],
+ 'validation': [
+ 'id',
+ ]
+ },
+ root_map={
+ 'validations': {
+ ('id',): {
+
+ 'regex': {
+ 'pattern': r'^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$', # noqa: E501
+ },
+ },
+ },
+ 'allowed_values': {
+ },
+ 'openapi_types': {
+ 'id':
+ (str,),
+ },
+ 'attribute_map': {
+ 'id': 'id',
+ },
+ 'location_map': {
+ 'id': 'path',
+ },
+ 'collection_format_map': {
+ }
+ },
+ headers_map={
+ 'accept': [
+ 'application/json'
+ ],
+ 'content_type': [],
+ },
+ api_client=api_client
+ )
+ self.get_templates_endpoint = _Endpoint(
+ settings={
+ 'response_type': (TemplateListResponse,),
+ 'auth': [
+ 'DeveloperKey'
+ ],
+ 'endpoint_path': '/templates',
+ 'operation_id': 'get_templates',
+ 'http_method': 'GET',
+ 'servers': None,
+ },
+ params_map={
+ 'all': [
+ ],
+ 'required': [],
+ 'nullable': [
+ ],
+ 'enum': [
+ ],
+ 'validation': [
+ ]
+ },
+ root_map={
+ 'validations': {
+ },
+ 'allowed_values': {
+ },
+ 'openapi_types': {
+ },
+ 'attribute_map': {
+ },
+ 'location_map': {
+ },
+ 'collection_format_map': {
+ }
+ },
+ headers_map={
+ 'accept': [
+ 'application/json'
+ ],
+ 'content_type': [],
+ },
+ api_client=api_client
+ )
self.post_render_endpoint = _Endpoint(
settings={
'response_type': (QueuedResponse,),
@@ -158,6 +321,110 @@ def __init__(self, api_client=None):
},
api_client=api_client
)
+ self.post_template_endpoint = _Endpoint(
+ settings={
+ 'response_type': (TemplateResponse,),
+ 'auth': [
+ 'DeveloperKey'
+ ],
+ 'endpoint_path': '/templates',
+ 'operation_id': 'post_template',
+ 'http_method': 'POST',
+ 'servers': None,
+ },
+ params_map={
+ 'all': [
+ 'template',
+ ],
+ 'required': [
+ 'template',
+ ],
+ 'nullable': [
+ ],
+ 'enum': [
+ ],
+ 'validation': [
+ ]
+ },
+ root_map={
+ 'validations': {
+ },
+ 'allowed_values': {
+ },
+ 'openapi_types': {
+ 'template':
+ (Template,),
+ },
+ 'attribute_map': {
+ },
+ 'location_map': {
+ 'template': 'body',
+ },
+ 'collection_format_map': {
+ }
+ },
+ headers_map={
+ 'accept': [
+ 'application/json'
+ ],
+ 'content_type': [
+ 'application/json'
+ ]
+ },
+ api_client=api_client
+ )
+ self.post_template_render_endpoint = _Endpoint(
+ settings={
+ 'response_type': (QueuedResponse,),
+ 'auth': [
+ 'DeveloperKey'
+ ],
+ 'endpoint_path': '/templates/render',
+ 'operation_id': 'post_template_render',
+ 'http_method': 'POST',
+ 'servers': None,
+ },
+ params_map={
+ 'all': [
+ 'template_render',
+ ],
+ 'required': [
+ 'template_render',
+ ],
+ 'nullable': [
+ ],
+ 'enum': [
+ ],
+ 'validation': [
+ ]
+ },
+ root_map={
+ 'validations': {
+ },
+ 'allowed_values': {
+ },
+ 'openapi_types': {
+ 'template_render':
+ (TemplateRender,),
+ },
+ 'attribute_map': {
+ },
+ 'location_map': {
+ 'template_render': 'body',
+ },
+ 'collection_format_map': {
+ }
+ },
+ headers_map={
+ 'accept': [
+ 'application/json'
+ ],
+ 'content_type': [
+ 'application/json'
+ ]
+ },
+ api_client=api_client
+ )
self.probe_endpoint = _Endpoint(
settings={
'response_type': (ProbeResponse,),
@@ -209,27 +476,323 @@ def __init__(self, api_client=None):
},
api_client=api_client
)
+ self.put_template_endpoint = _Endpoint(
+ settings={
+ 'response_type': (TemplateResponse,),
+ 'auth': [
+ 'DeveloperKey'
+ ],
+ 'endpoint_path': '/templates/{id}',
+ 'operation_id': 'put_template',
+ 'http_method': 'PUT',
+ 'servers': None,
+ },
+ params_map={
+ 'all': [
+ 'id',
+ 'template',
+ ],
+ 'required': [
+ 'id',
+ 'template',
+ ],
+ 'nullable': [
+ ],
+ 'enum': [
+ ],
+ 'validation': [
+ 'id',
+ ]
+ },
+ root_map={
+ 'validations': {
+ ('id',): {
+
+ 'regex': {
+ 'pattern': r'^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$', # noqa: E501
+ },
+ },
+ },
+ 'allowed_values': {
+ },
+ 'openapi_types': {
+ 'id':
+ (str,),
+ 'template':
+ (Template,),
+ },
+ 'attribute_map': {
+ 'id': 'id',
+ },
+ 'location_map': {
+ 'id': 'path',
+ 'template': 'body',
+ },
+ 'collection_format_map': {
+ }
+ },
+ headers_map={
+ 'accept': [
+ 'application/json'
+ ],
+ 'content_type': [
+ 'application/json'
+ ]
+ },
+ api_client=api_client
+ )
+
+ def delete_template(
+ self,
+ id,
+ **kwargs
+ ):
+ """Delete Template # noqa: E501
+
+ Delete a template by its template id. **Base URL:** https://api.shotstack.io/{version} # noqa: E501
+ This method makes a synchronous HTTP request by default. To make an
+ asynchronous HTTP request, please pass async_req=True
+
+ >>> thread = api.delete_template(id, async_req=True)
+ >>> result = thread.get()
+
+ Args:
+ id (str): The id of the template in UUID format
+
+ Keyword Args:
+ _return_http_data_only (bool): response data without head status
+ code and headers. Default is True.
+ _preload_content (bool): if False, the urllib3.HTTPResponse object
+ will be returned without reading/decoding response data.
+ Default is True.
+ _request_timeout (int/float/tuple): timeout setting for this request. If
+ one number provided, it will be total request timeout. It can also
+ be a pair (tuple) of (connection, read) timeouts.
+ Default is None.
+ _check_input_type (bool): specifies if type checking
+ should be done one the data sent to the server.
+ Default is True.
+ _check_return_type (bool): specifies if type checking
+ should be done one the data received from the server.
+ Default is True.
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _content_type (str/None): force body content-type.
+ Default is None and content-type will be predicted by allowed
+ content-types and body.
+ _host_index (int/None): specifies the index of the server
+ that we want to use.
+ Default is read from the configuration.
+ async_req (bool): execute request asynchronously
+
+ Returns:
+ None
+ If the method is called asynchronously, returns the request
+ thread.
+ """
+ kwargs['async_req'] = kwargs.get(
+ 'async_req', False
+ )
+ kwargs['_return_http_data_only'] = kwargs.get(
+ '_return_http_data_only', True
+ )
+ kwargs['_preload_content'] = kwargs.get(
+ '_preload_content', True
+ )
+ kwargs['_request_timeout'] = kwargs.get(
+ '_request_timeout', None
+ )
+ kwargs['_check_input_type'] = kwargs.get(
+ '_check_input_type', True
+ )
+ kwargs['_check_return_type'] = kwargs.get(
+ '_check_return_type', True
+ )
+ kwargs['_spec_property_naming'] = kwargs.get(
+ '_spec_property_naming', False
+ )
+ kwargs['_content_type'] = kwargs.get(
+ '_content_type')
+ kwargs['_host_index'] = kwargs.get('_host_index')
+ kwargs['id'] = \
+ id
+ return self.delete_template_endpoint.call_with_http_info(**kwargs)
+
+ def get_render(
+ self,
+ id,
+ **kwargs
+ ):
+ """Get Render Status # noqa: E501
+
+ Get the rendering status, temporary asset url and details of a render by ID. **Base URL:** https://api.shotstack.io/{version} # noqa: E501
+ This method makes a synchronous HTTP request by default. To make an
+ asynchronous HTTP request, please pass async_req=True
+
+ >>> thread = api.get_render(id, async_req=True)
+ >>> result = thread.get()
+
+ Args:
+ id (str): The id of the timeline render task in UUID format
+
+ Keyword Args:
+ data (bool): Include the data parameter in the response. The data parameter includes the original timeline, output and other settings sent to the API.
Note: the default is currently `true`, this is deprecated and the default will soon be `false`. If you rely on the data being returned in the response you should explicitly set the parameter to `true`.. [optional]
+ merged (bool): Used when data is set to true, it will show the [merge fields](#tocs_mergefield) merged in to the data response.. [optional]
+ _return_http_data_only (bool): response data without head status
+ code and headers. Default is True.
+ _preload_content (bool): if False, the urllib3.HTTPResponse object
+ will be returned without reading/decoding response data.
+ Default is True.
+ _request_timeout (int/float/tuple): timeout setting for this request. If
+ one number provided, it will be total request timeout. It can also
+ be a pair (tuple) of (connection, read) timeouts.
+ Default is None.
+ _check_input_type (bool): specifies if type checking
+ should be done one the data sent to the server.
+ Default is True.
+ _check_return_type (bool): specifies if type checking
+ should be done one the data received from the server.
+ Default is True.
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _content_type (str/None): force body content-type.
+ Default is None and content-type will be predicted by allowed
+ content-types and body.
+ _host_index (int/None): specifies the index of the server
+ that we want to use.
+ Default is read from the configuration.
+ async_req (bool): execute request asynchronously
+
+ Returns:
+ RenderResponse
+ If the method is called asynchronously, returns the request
+ thread.
+ """
+ kwargs['async_req'] = kwargs.get(
+ 'async_req', False
+ )
+ kwargs['_return_http_data_only'] = kwargs.get(
+ '_return_http_data_only', True
+ )
+ kwargs['_preload_content'] = kwargs.get(
+ '_preload_content', True
+ )
+ kwargs['_request_timeout'] = kwargs.get(
+ '_request_timeout', None
+ )
+ kwargs['_check_input_type'] = kwargs.get(
+ '_check_input_type', True
+ )
+ kwargs['_check_return_type'] = kwargs.get(
+ '_check_return_type', True
+ )
+ kwargs['_spec_property_naming'] = kwargs.get(
+ '_spec_property_naming', False
+ )
+ kwargs['_content_type'] = kwargs.get(
+ '_content_type')
+ kwargs['_host_index'] = kwargs.get('_host_index')
+ kwargs['id'] = \
+ id
+ return self.get_render_endpoint.call_with_http_info(**kwargs)
+
+ def get_template(
+ self,
+ id,
+ **kwargs
+ ):
+ """Retrieve Template # noqa: E501
+
+ Retrieve a template by template id. **Base URL:** https://api.shotstack.io/{version} # noqa: E501
+ This method makes a synchronous HTTP request by default. To make an
+ asynchronous HTTP request, please pass async_req=True
+
+ >>> thread = api.get_template(id, async_req=True)
+ >>> result = thread.get()
+
+ Args:
+ id (str): The id of the template in UUID format
+
+ Keyword Args:
+ _return_http_data_only (bool): response data without head status
+ code and headers. Default is True.
+ _preload_content (bool): if False, the urllib3.HTTPResponse object
+ will be returned without reading/decoding response data.
+ Default is True.
+ _request_timeout (int/float/tuple): timeout setting for this request. If
+ one number provided, it will be total request timeout. It can also
+ be a pair (tuple) of (connection, read) timeouts.
+ Default is None.
+ _check_input_type (bool): specifies if type checking
+ should be done one the data sent to the server.
+ Default is True.
+ _check_return_type (bool): specifies if type checking
+ should be done one the data received from the server.
+ Default is True.
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _content_type (str/None): force body content-type.
+ Default is None and content-type will be predicted by allowed
+ content-types and body.
+ _host_index (int/None): specifies the index of the server
+ that we want to use.
+ Default is read from the configuration.
+ async_req (bool): execute request asynchronously
+
+ Returns:
+ TemplateDataResponse
+ If the method is called asynchronously, returns the request
+ thread.
+ """
+ kwargs['async_req'] = kwargs.get(
+ 'async_req', False
+ )
+ kwargs['_return_http_data_only'] = kwargs.get(
+ '_return_http_data_only', True
+ )
+ kwargs['_preload_content'] = kwargs.get(
+ '_preload_content', True
+ )
+ kwargs['_request_timeout'] = kwargs.get(
+ '_request_timeout', None
+ )
+ kwargs['_check_input_type'] = kwargs.get(
+ '_check_input_type', True
+ )
+ kwargs['_check_return_type'] = kwargs.get(
+ '_check_return_type', True
+ )
+ kwargs['_spec_property_naming'] = kwargs.get(
+ '_spec_property_naming', False
+ )
+ kwargs['_content_type'] = kwargs.get(
+ '_content_type')
+ kwargs['_host_index'] = kwargs.get('_host_index')
+ kwargs['id'] = \
+ id
+ return self.get_template_endpoint.call_with_http_info(**kwargs)
- def get_render(
+ def get_templates(
self,
- id,
**kwargs
):
- """Get Render Status # noqa: E501
+ """List Templates # noqa: E501
- Get the rendering status, temporary asset url and details of a render by ID. **Base URL:** https://api.shotstack.io/{version} # noqa: E501
+ Retrieve a list of templates stored against a users account. The API key is used to determine which templates are associated to the user. **Base URL:** https://api.shotstack.io/{version} # noqa: E501
This method makes a synchronous HTTP request by default. To make an
asynchronous HTTP request, please pass async_req=True
- >>> thread = api.get_render(id, async_req=True)
+ >>> thread = api.get_templates(async_req=True)
>>> result = thread.get()
- Args:
- id (str): The id of the timeline render task in UUID format
Keyword Args:
- data (bool): Include the data parameter in the response. The data parameter includes the original timeline, output and other settings sent to the API.
Note: the default is currently `true`, this is deprecated and the default will soon be `false`. If you rely on the data being returned in the response you should explicitly set the parameter to `true`.. [optional]
- merged (bool): Used when data is set to true, it will show the [merge fields](#tocs_mergefield) merged in to the data response.. [optional]
_return_http_data_only (bool): response data without head status
code and headers. Default is True.
_preload_content (bool): if False, the urllib3.HTTPResponse object
@@ -258,7 +821,7 @@ def get_render(
async_req (bool): execute request asynchronously
Returns:
- RenderResponse
+ TemplateListResponse
If the method is called asynchronously, returns the request
thread.
"""
@@ -286,10 +849,7 @@ def get_render(
kwargs['_content_type'] = kwargs.get(
'_content_type')
kwargs['_host_index'] = kwargs.get('_host_index')
- kwargs['id'] = \
- id
-
- return self.get_render_endpoint.call_with_http_info(**kwargs)
+ return self.get_templates_endpoint.call_with_http_info(**kwargs)
def post_render(
self,
@@ -298,7 +858,7 @@ def post_render(
):
"""Render Asset # noqa: E501
- Queue and render the contents of a timeline as a video, image or audio file. **Base URL:** https://api.shotstack.io/{version} # noqa: E501
+ Queue and render the contents of an [Edit](#tocs_edit) as a video, image or audio file. **Base URL:** https://api.shotstack.io/{version} # noqa: E501
This method makes a synchronous HTTP request by default. To make an
asynchronous HTTP request, please pass async_req=True
@@ -367,9 +927,164 @@ def post_render(
kwargs['_host_index'] = kwargs.get('_host_index')
kwargs['edit'] = \
edit
-
return self.post_render_endpoint.call_with_http_info(**kwargs)
+ def post_template(
+ self,
+ template,
+ **kwargs
+ ):
+ """Create Template # noqa: E501
+
+ Save an [Edit](#tocs_edit) as a re-usable template. Templates can be retrieved and modified in your application before being rendered. [Merge fields](#tocs_mergefield) can be also used to merge data in to a template and [render](#render-template) it in a single request. **Base URL:** https://api.shotstack.io/{version} # noqa: E501
+ This method makes a synchronous HTTP request by default. To make an
+ asynchronous HTTP request, please pass async_req=True
+
+ >>> thread = api.post_template(template, async_req=True)
+ >>> result = thread.get()
+
+ Args:
+ template (Template): Create a template with a name and [Edit](#tocs_edit).
+
+ Keyword Args:
+ _return_http_data_only (bool): response data without head status
+ code and headers. Default is True.
+ _preload_content (bool): if False, the urllib3.HTTPResponse object
+ will be returned without reading/decoding response data.
+ Default is True.
+ _request_timeout (int/float/tuple): timeout setting for this request. If
+ one number provided, it will be total request timeout. It can also
+ be a pair (tuple) of (connection, read) timeouts.
+ Default is None.
+ _check_input_type (bool): specifies if type checking
+ should be done one the data sent to the server.
+ Default is True.
+ _check_return_type (bool): specifies if type checking
+ should be done one the data received from the server.
+ Default is True.
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _content_type (str/None): force body content-type.
+ Default is None and content-type will be predicted by allowed
+ content-types and body.
+ _host_index (int/None): specifies the index of the server
+ that we want to use.
+ Default is read from the configuration.
+ async_req (bool): execute request asynchronously
+
+ Returns:
+ TemplateResponse
+ If the method is called asynchronously, returns the request
+ thread.
+ """
+ kwargs['async_req'] = kwargs.get(
+ 'async_req', False
+ )
+ kwargs['_return_http_data_only'] = kwargs.get(
+ '_return_http_data_only', True
+ )
+ kwargs['_preload_content'] = kwargs.get(
+ '_preload_content', True
+ )
+ kwargs['_request_timeout'] = kwargs.get(
+ '_request_timeout', None
+ )
+ kwargs['_check_input_type'] = kwargs.get(
+ '_check_input_type', True
+ )
+ kwargs['_check_return_type'] = kwargs.get(
+ '_check_return_type', True
+ )
+ kwargs['_spec_property_naming'] = kwargs.get(
+ '_spec_property_naming', False
+ )
+ kwargs['_content_type'] = kwargs.get(
+ '_content_type')
+ kwargs['_host_index'] = kwargs.get('_host_index')
+ kwargs['template'] = \
+ template
+ return self.post_template_endpoint.call_with_http_info(**kwargs)
+
+ def post_template_render(
+ self,
+ template_render,
+ **kwargs
+ ):
+ """Render Template # noqa: E501
+
+ Render an asset from a template id and optional merge fields. Merge fields can be used to replace placeholder variables within the [Edit](#tocs_edit). **Base URL:** https://api.shotstack.io/{version} # noqa: E501
+ This method makes a synchronous HTTP request by default. To make an
+ asynchronous HTTP request, please pass async_req=True
+
+ >>> thread = api.post_template_render(template_render, async_req=True)
+ >>> result = thread.get()
+
+ Args:
+ template_render (TemplateRender): Render a template by template id.
+
+ Keyword Args:
+ _return_http_data_only (bool): response data without head status
+ code and headers. Default is True.
+ _preload_content (bool): if False, the urllib3.HTTPResponse object
+ will be returned without reading/decoding response data.
+ Default is True.
+ _request_timeout (int/float/tuple): timeout setting for this request. If
+ one number provided, it will be total request timeout. It can also
+ be a pair (tuple) of (connection, read) timeouts.
+ Default is None.
+ _check_input_type (bool): specifies if type checking
+ should be done one the data sent to the server.
+ Default is True.
+ _check_return_type (bool): specifies if type checking
+ should be done one the data received from the server.
+ Default is True.
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _content_type (str/None): force body content-type.
+ Default is None and content-type will be predicted by allowed
+ content-types and body.
+ _host_index (int/None): specifies the index of the server
+ that we want to use.
+ Default is read from the configuration.
+ async_req (bool): execute request asynchronously
+
+ Returns:
+ QueuedResponse
+ If the method is called asynchronously, returns the request
+ thread.
+ """
+ kwargs['async_req'] = kwargs.get(
+ 'async_req', False
+ )
+ kwargs['_return_http_data_only'] = kwargs.get(
+ '_return_http_data_only', True
+ )
+ kwargs['_preload_content'] = kwargs.get(
+ '_preload_content', True
+ )
+ kwargs['_request_timeout'] = kwargs.get(
+ '_request_timeout', None
+ )
+ kwargs['_check_input_type'] = kwargs.get(
+ '_check_input_type', True
+ )
+ kwargs['_check_return_type'] = kwargs.get(
+ '_check_return_type', True
+ )
+ kwargs['_spec_property_naming'] = kwargs.get(
+ '_spec_property_naming', False
+ )
+ kwargs['_content_type'] = kwargs.get(
+ '_content_type')
+ kwargs['_host_index'] = kwargs.get('_host_index')
+ kwargs['template_render'] = \
+ template_render
+ return self.post_template_render_endpoint.call_with_http_info(**kwargs)
+
def probe(
self,
url,
@@ -377,7 +1092,7 @@ def probe(
):
"""Inspect Media # noqa: E501
- Inspects any media asset (image, video, audio) on the internet using a hosted version of [FFprobe](https://ffmpeg.org/ffprobe.html). The probe endpoint returns useful information about an asset such as width, height, duration, rotation, framerate, etc... **Base URL:** https://api.shotstack.io/{version} # noqa: E501
+ Inspects any media asset (image, video, audio) on the internet using a hosted version of [FFprobe](https://ffmpeg.org/ffprobe.html). The probe endpoint returns useful information about an asset such as width, height, duration, rotation, framerate, etc... **Base URL:** https://api.shotstack.io/{version} # noqa: E501
This method makes a synchronous HTTP request by default. To make an
asynchronous HTTP request, please pass async_req=True
@@ -448,3 +1163,85 @@ def probe(
url
return self.probe_endpoint.call_with_http_info(**kwargs)
+ def put_template(
+ self,
+ id,
+ template,
+ **kwargs
+ ):
+ """Update Template # noqa: E501
+
+ Update an existing template by template id. **Base URL:** https://api.shotstack.io/{version} # noqa: E501
+ This method makes a synchronous HTTP request by default. To make an
+ asynchronous HTTP request, please pass async_req=True
+
+ >>> thread = api.put_template(id, template, async_req=True)
+ >>> result = thread.get()
+
+ Args:
+ id (str): The id of the template in UUID format
+ template (Template): Update an individual templates name and [Edit](#tocs_edit). Both template name and template must be provided. If the template parameter is omitted a blank template will be saved.
+
+ Keyword Args:
+ _return_http_data_only (bool): response data without head status
+ code and headers. Default is True.
+ _preload_content (bool): if False, the urllib3.HTTPResponse object
+ will be returned without reading/decoding response data.
+ Default is True.
+ _request_timeout (int/float/tuple): timeout setting for this request. If
+ one number provided, it will be total request timeout. It can also
+ be a pair (tuple) of (connection, read) timeouts.
+ Default is None.
+ _check_input_type (bool): specifies if type checking
+ should be done one the data sent to the server.
+ Default is True.
+ _check_return_type (bool): specifies if type checking
+ should be done one the data received from the server.
+ Default is True.
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _content_type (str/None): force body content-type.
+ Default is None and content-type will be predicted by allowed
+ content-types and body.
+ _host_index (int/None): specifies the index of the server
+ that we want to use.
+ Default is read from the configuration.
+ async_req (bool): execute request asynchronously
+
+ Returns:
+ TemplateResponse
+ If the method is called asynchronously, returns the request
+ thread.
+ """
+ kwargs['async_req'] = kwargs.get(
+ 'async_req', False
+ )
+ kwargs['_return_http_data_only'] = kwargs.get(
+ '_return_http_data_only', True
+ )
+ kwargs['_preload_content'] = kwargs.get(
+ '_preload_content', True
+ )
+ kwargs['_request_timeout'] = kwargs.get(
+ '_request_timeout', None
+ )
+ kwargs['_check_input_type'] = kwargs.get(
+ '_check_input_type', True
+ )
+ kwargs['_check_return_type'] = kwargs.get(
+ '_check_return_type', True
+ )
+ kwargs['_spec_property_naming'] = kwargs.get(
+ '_spec_property_naming', False
+ )
+ kwargs['_content_type'] = kwargs.get(
+ '_content_type')
+ kwargs['_host_index'] = kwargs.get('_host_index')
+ kwargs['id'] = \
+ id
+ kwargs['template'] = \
+ template
+ return self.put_template_endpoint.call_with_http_info(**kwargs)
+
diff --git a/shotstack_sdk/api/serve_api.py b/shotstack_sdk/api/serve_api.py
index fae79f1..d4ac871 100644
--- a/shotstack_sdk/api/serve_api.py
+++ b/shotstack_sdk/api/serve_api.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
@@ -216,7 +216,7 @@ def delete_asset(
):
"""Delete Asset # noqa: E501
- Delete an asset by its asset id. If a render creates multiple assets, such as thumbnail and poster images, each asset must be deleted individually by the asset id. **Base URL:** https://api.shotstack.io/serve/{version} # noqa: E501
+ Delete an asset by its asset id. If a render creates multiple assets, such as thumbnail and poster images, each asset must be deleted individually by the asset id. **Base URL:** https://api.shotstack.io/serve/{version} # noqa: E501
This method makes a synchronous HTTP request by default. To make an
asynchronous HTTP request, please pass async_req=True
@@ -294,7 +294,7 @@ def get_asset(
):
"""Get Asset # noqa: E501
- The Serve API is used to interact with, and delete hosted assets including videos, images, audio files, thumbnails and poster images. Use this endpoint to fetch an asset by asset id. Note that an asset id is unique for each asset and different from the render id. **Base URL:** https://api.shotstack.io/serve/{version} # noqa: E501
+ The Serve API is used to interact with, and delete hosted assets including videos, images, audio files, thumbnails and poster images. Use this endpoint to fetch an asset by asset id. Note that an asset id is unique for each asset and different from the render id. **Base URL:** https://api.shotstack.io/serve/{version} # noqa: E501
This method makes a synchronous HTTP request by default. To make an
asynchronous HTTP request, please pass async_req=True
@@ -372,7 +372,7 @@ def get_asset_by_render_id(
):
"""Get Asset by Render ID # noqa: E501
- A render may generate more than one file, such as a video, thumbnail and poster image. When the assets are created the only known id is the render id returned by the original [render request](#render-video), status request or webhook. This endpoint lets you look up one or more assets by the render id. **Base URL:** https://api.shotstack.io/serve/{version} # noqa: E501
+ A render may generate more than one file, such as a video, thumbnail and poster image. When the assets are created the only known id is the render id returned by the original [render request](#render-video), status request or webhook. This endpoint lets you look up one or more assets by the render id. **Base URL:** https://api.shotstack.io/serve/{version} # noqa: E501
This method makes a synchronous HTTP request by default. To make an
asynchronous HTTP request, please pass async_req=True
diff --git a/shotstack_sdk/api_client.py b/shotstack_sdk/api_client.py
index 2b62e32..176ea6e 100644
--- a/shotstack_sdk/api_client.py
+++ b/shotstack_sdk/api_client.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
@@ -774,10 +774,10 @@ def __call__(self, *args, **kwargs):
Example:
api_instance = EditApi()
- api_instance.get_render # this is an instance of the class Endpoint
- api_instance.get_render() # this invokes api_instance.get_render.__call__()
+ api_instance.delete_template # this is an instance of the class Endpoint
+ api_instance.delete_template() # this invokes api_instance.delete_template.__call__()
which then invokes the callable functions stored in that endpoint at
- api_instance.get_render.callable or self.callable in this class
+ api_instance.delete_template.callable or self.callable in this class
"""
return self.callable(self, *args, **kwargs)
diff --git a/shotstack_sdk/configuration.py b/shotstack_sdk/configuration.py
index a57b012..2c9bc8c 100644
--- a/shotstack_sdk/configuration.py
+++ b/shotstack_sdk/configuration.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
diff --git a/shotstack_sdk/exceptions.py b/shotstack_sdk/exceptions.py
index 0907b20..4c80d16 100644
--- a/shotstack_sdk/exceptions.py
+++ b/shotstack_sdk/exceptions.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
diff --git a/shotstack_sdk/model/asset.py b/shotstack_sdk/model/asset.py
new file mode 100644
index 0000000..dfec024
--- /dev/null
+++ b/shotstack_sdk/model/asset.py
@@ -0,0 +1,434 @@
+"""
+ Shotstack
+
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+
+ The version of the OpenAPI document: v1
+ Generated by: https://openapi-generator.tech
+"""
+
+
+import re # noqa: F401
+import sys # noqa: F401
+
+from shotstack_sdk.model_utils import ( # noqa: F401
+ ApiTypeError,
+ ModelComposed,
+ ModelNormal,
+ ModelSimple,
+ cached_property,
+ change_keys_js_to_python,
+ convert_js_args_to_python_args,
+ date,
+ datetime,
+ file_type,
+ none_type,
+ validate_get_composed_info,
+ OpenApiModel
+)
+from shotstack_sdk.exceptions import ApiAttributeError
+
+
+def lazy_import():
+ from shotstack_sdk.model.audio_asset import AudioAsset
+ from shotstack_sdk.model.crop import Crop
+ from shotstack_sdk.model.html_asset import HtmlAsset
+ from shotstack_sdk.model.image_asset import ImageAsset
+ from shotstack_sdk.model.luma_asset import LumaAsset
+ from shotstack_sdk.model.offset import Offset
+ from shotstack_sdk.model.title_asset import TitleAsset
+ from shotstack_sdk.model.video_asset import VideoAsset
+ globals()['AudioAsset'] = AudioAsset
+ globals()['Crop'] = Crop
+ globals()['HtmlAsset'] = HtmlAsset
+ globals()['ImageAsset'] = ImageAsset
+ globals()['LumaAsset'] = LumaAsset
+ globals()['Offset'] = Offset
+ globals()['TitleAsset'] = TitleAsset
+ globals()['VideoAsset'] = VideoAsset
+
+
+class Asset(ModelComposed):
+ """NOTE: This class is auto generated by OpenAPI Generator.
+ Ref: https://openapi-generator.tech
+
+ Do not edit the class manually.
+
+ Attributes:
+ allowed_values (dict): The key is the tuple path to the attribute
+ and the for var_name this is (var_name,). The value is a dict
+ with a capitalized key describing the allowed value and an allowed
+ value. These dicts store the allowed enum values.
+ attribute_map (dict): The key is attribute name
+ and the value is json key in definition.
+ discriminator_value_class_map (dict): A dict to go from the discriminator
+ variable value to the discriminator class name.
+ validations (dict): The key is the tuple path to the attribute
+ and the for var_name this is (var_name,). The value is a dict
+ that stores validations for max_length, min_length, max_items,
+ min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum,
+ inclusive_minimum, and regex.
+ additional_properties_type (tuple): A tuple of classes accepted
+ as additional properties values.
+ """
+
+ allowed_values = {
+ ('style',): {
+ 'MINIMAL': "minimal",
+ 'BLOCKBUSTER': "blockbuster",
+ 'VOGUE': "vogue",
+ 'SKETCHY': "sketchy",
+ 'SKINNY': "skinny",
+ 'CHUNK': "chunk",
+ 'CHUNKLIGHT': "chunkLight",
+ 'MARKER': "marker",
+ 'FUTURE': "future",
+ 'SUBTITLE': "subtitle",
+ },
+ ('size',): {
+ 'XX-SMALL': "xx-small",
+ 'X-SMALL': "x-small",
+ 'SMALL': "small",
+ 'MEDIUM': "medium",
+ 'LARGE': "large",
+ 'X-LARGE': "x-large",
+ 'XX-LARGE': "xx-large",
+ },
+ ('position',): {
+ 'TOP': "top",
+ 'TOPRIGHT': "topRight",
+ 'RIGHT': "right",
+ 'BOTTOMRIGHT': "bottomRight",
+ 'BOTTOM': "bottom",
+ 'BOTTOMLEFT': "bottomLeft",
+ 'LEFT': "left",
+ 'TOPLEFT': "topLeft",
+ 'CENTER': "center",
+ },
+ ('effect',): {
+ 'FADEIN': "fadeIn",
+ 'FADEOUT': "fadeOut",
+ 'FADEINFADEOUT': "fadeInFadeOut",
+ },
+ }
+
+ validations = {
+ }
+
+ additional_properties_type = None
+
+ _nullable = False
+
+ @cached_property
+ def openapi_types():
+ """
+ This must be a method because a model may have properties that are
+ of type self, this must run after the class is loaded
+
+ Returns
+ openapi_types (dict): The key is attribute name
+ and the value is attribute type.
+ """
+ lazy_import()
+ return {
+ 'trim': (float,), # noqa: E501
+ 'volume': (float,), # noqa: E501
+ 'crop': (Crop,), # noqa: E501
+ 'style': (str,), # noqa: E501
+ 'color': (str,), # noqa: E501
+ 'size': (str,), # noqa: E501
+ 'background': (str,), # noqa: E501
+ 'position': (str,), # noqa: E501
+ 'offset': (Offset,), # noqa: E501
+ 'css': (str,), # noqa: E501
+ 'width': (int,), # noqa: E501
+ 'height': (int,), # noqa: E501
+ 'effect': (str,), # noqa: E501
+ 'type': (str,), # noqa: E501
+ 'src': (str,), # noqa: E501
+ 'text': (str,), # noqa: E501
+ 'html': (str,), # noqa: E501
+ }
+
+ @cached_property
+ def discriminator():
+ lazy_import()
+ val = {
+ 'AudioAsset': AudioAsset,
+ 'HtmlAsset': HtmlAsset,
+ 'ImageAsset': ImageAsset,
+ 'LumaAsset': LumaAsset,
+ 'TitleAsset': TitleAsset,
+ 'VideoAsset': VideoAsset,
+ }
+ if not val:
+ return None
+ return {'asset': val}
+
+ attribute_map = {
+ 'trim': 'trim', # noqa: E501
+ 'volume': 'volume', # noqa: E501
+ 'crop': 'crop', # noqa: E501
+ 'style': 'style', # noqa: E501
+ 'color': 'color', # noqa: E501
+ 'size': 'size', # noqa: E501
+ 'background': 'background', # noqa: E501
+ 'position': 'position', # noqa: E501
+ 'offset': 'offset', # noqa: E501
+ 'css': 'css', # noqa: E501
+ 'width': 'width', # noqa: E501
+ 'height': 'height', # noqa: E501
+ 'effect': 'effect', # noqa: E501
+ 'type': 'type', # noqa: E501
+ 'src': 'src', # noqa: E501
+ 'text': 'text', # noqa: E501
+ 'html': 'html', # noqa: E501
+ }
+
+ read_only_vars = {
+ }
+
+ @classmethod
+ @convert_js_args_to_python_args
+ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501
+ """Asset - a model defined in OpenAPI
+
+ Keyword Args:
+ _check_type (bool): if True, values for parameters in openapi_types
+ will be type checked and a TypeError will be
+ raised if the wrong type is input.
+ Defaults to True
+ _path_to_item (tuple/list): This is a list of keys or values to
+ drill down to the model in received_data
+ when deserializing a response
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _configuration (Configuration): the instance to use when
+ deserializing a file_type parameter.
+ If passed, type conversion is attempted
+ If omitted no type conversion is done.
+ _visited_composed_classes (tuple): This stores a tuple of
+ classes that we have traveled through so that
+ if we see that class again we will not use its
+ discriminator again.
+ When traveling through a discriminator, the
+ composed schema that is
+ is traveled through is added to this set.
+ For example if Animal has a discriminator
+ petType and we pass in "Dog", and the class Dog
+ allOf includes Animal, we move through Animal
+ once using the discriminator, and pick Dog.
+ Then in Dog, we will make an instance of the
+ Animal class but this time we won't travel
+ through its discriminator because we passed in
+ _visited_composed_classes = (Animal,)
+ trim (float): The start trim point of the luma matte clip, in seconds (defaults to 0). Videos will start from the in trim point. A luma matte video will play until the file ends or the Clip length is reached.. [optional] # noqa: E501
+ volume (float): Set the volume for the audio clip between 0 and 1 where 0 is muted and 1 is full volume (defaults to 1).. [optional] if omitted the server will use the default value of 1 # noqa: E501
+ crop (Crop): [optional] # noqa: E501
+ style (str): Uses a preset to apply font properties and styling to the title.
- `minimal`
- `blockbuster`
- `vogue`
- `sketchy`
- `skinny`
- `chunk`
- `chunkLight`
- `marker`
- `future`
- `subtitle`
. [optional] # noqa: E501
+ color (str): Set the text color using hexadecimal color notation. Transparency is supported by setting the first two characters of the hex string (opposite to HTML), i.e. #80ffffff will be white with 50% transparency.. [optional] if omitted the server will use the default value of "#ffffff" # noqa: E501
+ size (str): Set the relative size of the text using predefined sizes from xx-small to xx-large. - `xx-small`
- `x-small`
- `small`
- `medium`
- `large`
- `x-large`
- `xx-large`
. [optional] if omitted the server will use the default value of "medium" # noqa: E501
+ background (str): Apply a background color behind the HTML bounding box using. Set the text color using hexadecimal color notation. Transparency is supported by setting the first two characters of the hex string (opposite to HTML), i.e. #80ffffff will be white with 50% transparency.. [optional] if omitted the server will use the default value of "transparent" # noqa: E501
+ position (str): Place the HTML in one of nine predefined positions within the HTML area. - `top` - top (center)
- `topRight` - top right
- `right` - right (center)
- `bottomRight` - bottom right
- `bottom` - bottom (center)
- `bottomLeft` - bottom left
- `left` - left (center)
- `topLeft` - top left
- `center` - center
. [optional] if omitted the server will use the default value of "center" # noqa: E501
+ offset (Offset): [optional] # noqa: E501
+ css (str): The CSS text string to apply styling to the HTML. See list of [support CSS properties](https://shotstack.io/docs/guide/architecting-an-application/html-support#supported-css-properties).. [optional] # noqa: E501
+ width (int): Set the width of the HTML asset bounding box in pixels. Text will wrap to fill the bounding box.. [optional] # noqa: E501
+ height (int): Set the width of the HTML asset bounding box in pixels. Text and elements will be masked if they exceed the height of the bounding box.. [optional] # noqa: E501
+ effect (str): The effect to apply to the audio asset - `fadeIn` - fade volume in only
- `fadeOut` - fade volume out only
- `fadeInFadeOut` - fade volume in and out
. [optional] # noqa: E501
+ type (str): The type of asset - set to `luma` for luma mattes.. [optional] if omitted the server will use the default value of "luma" # noqa: E501
+ src (str): The luma matte source URL. The URL must be publicly accessible or include credentials.. [optional] # noqa: E501
+ text (str): The title text string - i.e. \"My Title\".. [optional] # noqa: E501
+ html (str): The HTML text string. See list of [supported HTML tags](https://shotstack.io/docs/guide/architecting-an-application/html-support#supported-html-tags).. [optional] # noqa: E501
+ """
+
+ _check_type = kwargs.pop('_check_type', True)
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
+ _path_to_item = kwargs.pop('_path_to_item', ())
+ _configuration = kwargs.pop('_configuration', None)
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
+
+ self = super(OpenApiModel, cls).__new__(cls)
+
+ if args:
+ raise ApiTypeError(
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
+ args,
+ self.__class__.__name__,
+ ),
+ path_to_item=_path_to_item,
+ valid_classes=(self.__class__,),
+ )
+
+ self._data_store = {}
+ self._check_type = _check_type
+ self._spec_property_naming = _spec_property_naming
+ self._path_to_item = _path_to_item
+ self._configuration = _configuration
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+
+ constant_args = {
+ '_check_type': _check_type,
+ '_path_to_item': _path_to_item,
+ '_spec_property_naming': _spec_property_naming,
+ '_configuration': _configuration,
+ '_visited_composed_classes': self._visited_composed_classes,
+ }
+ composed_info = validate_get_composed_info(
+ constant_args, kwargs, self)
+ self._composed_instances = composed_info[0]
+ self._var_name_to_model_instances = composed_info[1]
+ self._additional_properties_model_instances = composed_info[2]
+ discarded_args = composed_info[3]
+
+ for var_name, var_value in kwargs.items():
+ if var_name in discarded_args and \
+ self._configuration is not None and \
+ self._configuration.discard_unknown_keys and \
+ self._additional_properties_model_instances:
+ # discard variable.
+ continue
+ setattr(self, var_name, var_value)
+
+ return self
+
+ required_properties = set([
+ '_data_store',
+ '_check_type',
+ '_spec_property_naming',
+ '_path_to_item',
+ '_configuration',
+ '_visited_composed_classes',
+ '_composed_instances',
+ '_var_name_to_model_instances',
+ '_additional_properties_model_instances',
+ ])
+
+ @convert_js_args_to_python_args
+ def __init__(self, *args, **kwargs): # noqa: E501
+ """Asset - a model defined in OpenAPI
+
+ Keyword Args:
+ _check_type (bool): if True, values for parameters in openapi_types
+ will be type checked and a TypeError will be
+ raised if the wrong type is input.
+ Defaults to True
+ _path_to_item (tuple/list): This is a list of keys or values to
+ drill down to the model in received_data
+ when deserializing a response
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _configuration (Configuration): the instance to use when
+ deserializing a file_type parameter.
+ If passed, type conversion is attempted
+ If omitted no type conversion is done.
+ _visited_composed_classes (tuple): This stores a tuple of
+ classes that we have traveled through so that
+ if we see that class again we will not use its
+ discriminator again.
+ When traveling through a discriminator, the
+ composed schema that is
+ is traveled through is added to this set.
+ For example if Animal has a discriminator
+ petType and we pass in "Dog", and the class Dog
+ allOf includes Animal, we move through Animal
+ once using the discriminator, and pick Dog.
+ Then in Dog, we will make an instance of the
+ Animal class but this time we won't travel
+ through its discriminator because we passed in
+ _visited_composed_classes = (Animal,)
+ trim (float): The start trim point of the luma matte clip, in seconds (defaults to 0). Videos will start from the in trim point. A luma matte video will play until the file ends or the Clip length is reached.. [optional] # noqa: E501
+ volume (float): Set the volume for the audio clip between 0 and 1 where 0 is muted and 1 is full volume (defaults to 1).. [optional] if omitted the server will use the default value of 1 # noqa: E501
+ crop (Crop): [optional] # noqa: E501
+ style (str): Uses a preset to apply font properties and styling to the title. - `minimal`
- `blockbuster`
- `vogue`
- `sketchy`
- `skinny`
- `chunk`
- `chunkLight`
- `marker`
- `future`
- `subtitle`
. [optional] # noqa: E501
+ color (str): Set the text color using hexadecimal color notation. Transparency is supported by setting the first two characters of the hex string (opposite to HTML), i.e. #80ffffff will be white with 50% transparency.. [optional] if omitted the server will use the default value of "#ffffff" # noqa: E501
+ size (str): Set the relative size of the text using predefined sizes from xx-small to xx-large. - `xx-small`
- `x-small`
- `small`
- `medium`
- `large`
- `x-large`
- `xx-large`
. [optional] if omitted the server will use the default value of "medium" # noqa: E501
+ background (str): Apply a background color behind the HTML bounding box using. Set the text color using hexadecimal color notation. Transparency is supported by setting the first two characters of the hex string (opposite to HTML), i.e. #80ffffff will be white with 50% transparency.. [optional] if omitted the server will use the default value of "transparent" # noqa: E501
+ position (str): Place the HTML in one of nine predefined positions within the HTML area. - `top` - top (center)
- `topRight` - top right
- `right` - right (center)
- `bottomRight` - bottom right
- `bottom` - bottom (center)
- `bottomLeft` - bottom left
- `left` - left (center)
- `topLeft` - top left
- `center` - center
. [optional] if omitted the server will use the default value of "center" # noqa: E501
+ offset (Offset): [optional] # noqa: E501
+ css (str): The CSS text string to apply styling to the HTML. See list of [support CSS properties](https://shotstack.io/docs/guide/architecting-an-application/html-support#supported-css-properties).. [optional] # noqa: E501
+ width (int): Set the width of the HTML asset bounding box in pixels. Text will wrap to fill the bounding box.. [optional] # noqa: E501
+ height (int): Set the width of the HTML asset bounding box in pixels. Text and elements will be masked if they exceed the height of the bounding box.. [optional] # noqa: E501
+ effect (str): The effect to apply to the audio asset - `fadeIn` - fade volume in only
- `fadeOut` - fade volume out only
- `fadeInFadeOut` - fade volume in and out
. [optional] # noqa: E501
+ type (str): The type of asset - set to `luma` for luma mattes.. [optional] if omitted the server will use the default value of "luma" # noqa: E501
+ src (str): The luma matte source URL. The URL must be publicly accessible or include credentials.. [optional] # noqa: E501
+ text (str): The title text string - i.e. \"My Title\".. [optional] # noqa: E501
+ html (str): The HTML text string. See list of [supported HTML tags](https://shotstack.io/docs/guide/architecting-an-application/html-support#supported-html-tags).. [optional] # noqa: E501
+ """
+
+ _check_type = kwargs.pop('_check_type', True)
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
+ _path_to_item = kwargs.pop('_path_to_item', ())
+ _configuration = kwargs.pop('_configuration', None)
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
+
+ if args:
+ raise ApiTypeError(
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
+ args,
+ self.__class__.__name__,
+ ),
+ path_to_item=_path_to_item,
+ valid_classes=(self.__class__,),
+ )
+
+ self._data_store = {}
+ self._check_type = _check_type
+ self._spec_property_naming = _spec_property_naming
+ self._path_to_item = _path_to_item
+ self._configuration = _configuration
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+
+ constant_args = {
+ '_check_type': _check_type,
+ '_path_to_item': _path_to_item,
+ '_spec_property_naming': _spec_property_naming,
+ '_configuration': _configuration,
+ '_visited_composed_classes': self._visited_composed_classes,
+ }
+ composed_info = validate_get_composed_info(
+ constant_args, kwargs, self)
+ self._composed_instances = composed_info[0]
+ self._var_name_to_model_instances = composed_info[1]
+ self._additional_properties_model_instances = composed_info[2]
+ discarded_args = composed_info[3]
+
+ for var_name, var_value in kwargs.items():
+ if var_name in discarded_args and \
+ self._configuration is not None and \
+ self._configuration.discard_unknown_keys and \
+ self._additional_properties_model_instances:
+ # discard variable.
+ continue
+ setattr(self, var_name, var_value)
+ if var_name in self.read_only_vars:
+ raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate "
+ f"class with read only attributes.")
+
+ @cached_property
+ def _composed_schemas():
+ # we need this here to make our import statements work
+ # we must store _composed_schemas in here so the code is only run
+ # when we invoke this method. If we kept this at the class
+ # level we would get an error because the class level
+ # code would be run when this module is imported, and these composed
+ # classes don't exist yet because their module has not finished
+ # loading
+ lazy_import()
+ return {
+ 'anyOf': [
+ ],
+ 'allOf': [
+ ],
+ 'oneOf': [
+ AudioAsset,
+ HtmlAsset,
+ ImageAsset,
+ LumaAsset,
+ TitleAsset,
+ VideoAsset,
+ ],
+ }
diff --git a/shotstack_sdk/model/asset_render_response.py b/shotstack_sdk/model/asset_render_response.py
index d1ab518..d622599 100644
--- a/shotstack_sdk/model/asset_render_response.py
+++ b/shotstack_sdk/model/asset_render_response.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
@@ -106,9 +106,12 @@ def discriminator():
@classmethod
@convert_js_args_to_python_args
- def _from_openapi_data(cls, *args, **kwargs): # noqa: E501
+ def _from_openapi_data(cls, data, *args, **kwargs): # noqa: E501
"""AssetRenderResponse - a model defined in OpenAPI
+ Args:
+ data ([AssetResponseData]): An array of asset resources grouped by render id.
+
Keyword Args:
_check_type (bool): if True, values for parameters in openapi_types
will be type checked and a TypeError will be
@@ -140,7 +143,6 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501
Animal class but this time we won't travel
through its discriminator because we passed in
_visited_composed_classes = (Animal,)
- data ([AssetResponseData]): An array of asset resources grouped by render id.. [optional] # noqa: E501
"""
_check_type = kwargs.pop('_check_type', True)
@@ -168,6 +170,7 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+ self.data = data
for var_name, var_value in kwargs.items():
if var_name not in self.attribute_map and \
self._configuration is not None and \
@@ -188,9 +191,12 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501
])
@convert_js_args_to_python_args
- def __init__(self, *args, **kwargs): # noqa: E501
+ def __init__(self, data, *args, **kwargs): # noqa: E501
"""AssetRenderResponse - a model defined in OpenAPI
+ Args:
+ data ([AssetResponseData]): An array of asset resources grouped by render id.
+
Keyword Args:
_check_type (bool): if True, values for parameters in openapi_types
will be type checked and a TypeError will be
@@ -222,7 +228,6 @@ def __init__(self, *args, **kwargs): # noqa: E501
Animal class but this time we won't travel
through its discriminator because we passed in
_visited_composed_classes = (Animal,)
- data ([AssetResponseData]): An array of asset resources grouped by render id.. [optional] # noqa: E501
"""
_check_type = kwargs.pop('_check_type', True)
@@ -248,6 +253,7 @@ def __init__(self, *args, **kwargs): # noqa: E501
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+ self.data = data
for var_name, var_value in kwargs.items():
if var_name not in self.attribute_map and \
self._configuration is not None and \
diff --git a/shotstack_sdk/model/asset_response.py b/shotstack_sdk/model/asset_response.py
index 3d97abc..0c9d35e 100644
--- a/shotstack_sdk/model/asset_response.py
+++ b/shotstack_sdk/model/asset_response.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
@@ -106,9 +106,12 @@ def discriminator():
@classmethod
@convert_js_args_to_python_args
- def _from_openapi_data(cls, *args, **kwargs): # noqa: E501
+ def _from_openapi_data(cls, data, *args, **kwargs): # noqa: E501
"""AssetResponse - a model defined in OpenAPI
+ Args:
+ data (AssetResponseData):
+
Keyword Args:
_check_type (bool): if True, values for parameters in openapi_types
will be type checked and a TypeError will be
@@ -140,7 +143,6 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501
Animal class but this time we won't travel
through its discriminator because we passed in
_visited_composed_classes = (Animal,)
- data (AssetResponseData): [optional] # noqa: E501
"""
_check_type = kwargs.pop('_check_type', True)
@@ -168,6 +170,7 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+ self.data = data
for var_name, var_value in kwargs.items():
if var_name not in self.attribute_map and \
self._configuration is not None and \
@@ -188,9 +191,12 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501
])
@convert_js_args_to_python_args
- def __init__(self, *args, **kwargs): # noqa: E501
+ def __init__(self, data, *args, **kwargs): # noqa: E501
"""AssetResponse - a model defined in OpenAPI
+ Args:
+ data (AssetResponseData):
+
Keyword Args:
_check_type (bool): if True, values for parameters in openapi_types
will be type checked and a TypeError will be
@@ -222,7 +228,6 @@ def __init__(self, *args, **kwargs): # noqa: E501
Animal class but this time we won't travel
through its discriminator because we passed in
_visited_composed_classes = (Animal,)
- data (AssetResponseData): [optional] # noqa: E501
"""
_check_type = kwargs.pop('_check_type', True)
@@ -248,6 +253,7 @@ def __init__(self, *args, **kwargs): # noqa: E501
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+ self.data = data
for var_name, var_value in kwargs.items():
if var_name not in self.attribute_map and \
self._configuration is not None and \
diff --git a/shotstack_sdk/model/asset_response_attributes.py b/shotstack_sdk/model/asset_response_attributes.py
index 9b303b8..2784a9d 100644
--- a/shotstack_sdk/model/asset_response_attributes.py
+++ b/shotstack_sdk/model/asset_response_attributes.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
@@ -89,13 +89,14 @@ def openapi_types():
return {
'id': (str,), # noqa: E501
'owner': (str,), # noqa: E501
- 'region': (str,), # noqa: E501
- 'render_id': (str,), # noqa: E501
'filename': (str,), # noqa: E501
- 'url': (str,), # noqa: E501
'status': (str,), # noqa: E501
'created': (str,), # noqa: E501
'updated': (str,), # noqa: E501
+ 'region': (str,), # noqa: E501
+ 'render_id': (str,), # noqa: E501
+ 'provider_id': (str,), # noqa: E501
+ 'url': (str,), # noqa: E501
}
@cached_property
@@ -106,13 +107,14 @@ def discriminator():
attribute_map = {
'id': 'id', # noqa: E501
'owner': 'owner', # noqa: E501
- 'region': 'region', # noqa: E501
- 'render_id': 'renderId', # noqa: E501
'filename': 'filename', # noqa: E501
- 'url': 'url', # noqa: E501
'status': 'status', # noqa: E501
'created': 'created', # noqa: E501
'updated': 'updated', # noqa: E501
+ 'region': 'region', # noqa: E501
+ 'render_id': 'renderId', # noqa: E501
+ 'provider_id': 'providerId', # noqa: E501
+ 'url': 'url', # noqa: E501
}
read_only_vars = {
@@ -122,9 +124,17 @@ def discriminator():
@classmethod
@convert_js_args_to_python_args
- def _from_openapi_data(cls, *args, **kwargs): # noqa: E501
+ def _from_openapi_data(cls, id, owner, filename, status, created, updated, *args, **kwargs): # noqa: E501
"""AssetResponseAttributes - a model defined in OpenAPI
+ Args:
+ id (str): The unique id of the hosted asset in UUID format.
+ owner (str): The owner id of the render task.
+ filename (str): The asset file name.
+ status (str): The status of the asset. - `importing` - the asset is being copied to the hosting service
- `ready` - the asset is ready to be served to users
- `failed` - the asset failed to copy or delete
- `deleted` - the asset has been deleted
+ created (str): The time the asset was created.
+ updated (str): The time the asset status was last updated.
+
Keyword Args:
_check_type (bool): if True, values for parameters in openapi_types
will be type checked and a TypeError will be
@@ -156,15 +166,10 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501
Animal class but this time we won't travel
through its discriminator because we passed in
_visited_composed_classes = (Animal,)
- id (str): The unique id of the hosted asset in UUID format.. [optional] # noqa: E501
- owner (str): The owner id of the render task.. [optional] # noqa: E501
region (str): The region the asset is hosted, currently only `au` (Australia).. [optional] # noqa: E501
render_id (str): The original render id that created the asset in UUID format. Multiple assets can share the same render id.. [optional] # noqa: E501
- filename (str): The asset file name.. [optional] # noqa: E501
+ provider_id (str): The third party id of an asset transferred to an external provider, i.e. Mux, YouTube or S3. If the provider is Shotstack, the providerID is the same as the asset id.. [optional] # noqa: E501
url (str): The asset file name.. [optional] # noqa: E501
- status (str): The status of the asset. - `importing` - the asset is being copied to the hosting service
- `ready` - the asset is ready to be served to users
- `failed` - the asset failed to copy or delete
- `deleted` - the asset has been deleted
. [optional] # noqa: E501
- created (str): The time the asset was created.. [optional] # noqa: E501
- updated (str): The time the asset status was last updated.. [optional] # noqa: E501
"""
_check_type = kwargs.pop('_check_type', True)
@@ -192,6 +197,12 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+ self.id = id
+ self.owner = owner
+ self.filename = filename
+ self.status = status
+ self.created = created
+ self.updated = updated
for var_name, var_value in kwargs.items():
if var_name not in self.attribute_map and \
self._configuration is not None and \
@@ -212,9 +223,17 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501
])
@convert_js_args_to_python_args
- def __init__(self, *args, **kwargs): # noqa: E501
+ def __init__(self, id, owner, filename, status, created, updated, *args, **kwargs): # noqa: E501
"""AssetResponseAttributes - a model defined in OpenAPI
+ Args:
+ id (str): The unique id of the hosted asset in UUID format.
+ owner (str): The owner id of the render task.
+ filename (str): The asset file name.
+ status (str): The status of the asset. - `importing` - the asset is being copied to the hosting service
- `ready` - the asset is ready to be served to users
- `failed` - the asset failed to copy or delete
- `deleted` - the asset has been deleted
+ created (str): The time the asset was created.
+ updated (str): The time the asset status was last updated.
+
Keyword Args:
_check_type (bool): if True, values for parameters in openapi_types
will be type checked and a TypeError will be
@@ -246,15 +265,10 @@ def __init__(self, *args, **kwargs): # noqa: E501
Animal class but this time we won't travel
through its discriminator because we passed in
_visited_composed_classes = (Animal,)
- id (str): The unique id of the hosted asset in UUID format.. [optional] # noqa: E501
- owner (str): The owner id of the render task.. [optional] # noqa: E501
region (str): The region the asset is hosted, currently only `au` (Australia).. [optional] # noqa: E501
render_id (str): The original render id that created the asset in UUID format. Multiple assets can share the same render id.. [optional] # noqa: E501
- filename (str): The asset file name.. [optional] # noqa: E501
+ provider_id (str): The third party id of an asset transferred to an external provider, i.e. Mux, YouTube or S3. If the provider is Shotstack, the providerID is the same as the asset id.. [optional] # noqa: E501
url (str): The asset file name.. [optional] # noqa: E501
- status (str): The status of the asset. - `importing` - the asset is being copied to the hosting service
- `ready` - the asset is ready to be served to users
- `failed` - the asset failed to copy or delete
- `deleted` - the asset has been deleted
. [optional] # noqa: E501
- created (str): The time the asset was created.. [optional] # noqa: E501
- updated (str): The time the asset status was last updated.. [optional] # noqa: E501
"""
_check_type = kwargs.pop('_check_type', True)
@@ -280,6 +294,12 @@ def __init__(self, *args, **kwargs): # noqa: E501
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+ self.id = id
+ self.owner = owner
+ self.filename = filename
+ self.status = status
+ self.created = created
+ self.updated = updated
for var_name, var_value in kwargs.items():
if var_name not in self.attribute_map and \
self._configuration is not None and \
diff --git a/shotstack_sdk/model/asset_response_data.py b/shotstack_sdk/model/asset_response_data.py
index 4780eab..e9d4ede 100644
--- a/shotstack_sdk/model/asset_response_data.py
+++ b/shotstack_sdk/model/asset_response_data.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
@@ -108,9 +108,13 @@ def discriminator():
@classmethod
@convert_js_args_to_python_args
- def _from_openapi_data(cls, *args, **kwargs): # noqa: E501
+ def _from_openapi_data(cls, type, attributes, *args, **kwargs): # noqa: E501
"""AssetResponseData - a model defined in OpenAPI
+ Args:
+ type (str): The type of resource, in this case it is an assets.
+ attributes (AssetResponseAttributes):
+
Keyword Args:
_check_type (bool): if True, values for parameters in openapi_types
will be type checked and a TypeError will be
@@ -142,8 +146,6 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501
Animal class but this time we won't travel
through its discriminator because we passed in
_visited_composed_classes = (Animal,)
- type (str): The type of resource, in this case it is an assets.. [optional] # noqa: E501
- attributes (AssetResponseAttributes): [optional] # noqa: E501
"""
_check_type = kwargs.pop('_check_type', True)
@@ -171,6 +173,8 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+ self.type = type
+ self.attributes = attributes
for var_name, var_value in kwargs.items():
if var_name not in self.attribute_map and \
self._configuration is not None and \
@@ -191,9 +195,13 @@ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501
])
@convert_js_args_to_python_args
- def __init__(self, *args, **kwargs): # noqa: E501
+ def __init__(self, type, attributes, *args, **kwargs): # noqa: E501
"""AssetResponseData - a model defined in OpenAPI
+ Args:
+ type (str): The type of resource, in this case it is an assets.
+ attributes (AssetResponseAttributes):
+
Keyword Args:
_check_type (bool): if True, values for parameters in openapi_types
will be type checked and a TypeError will be
@@ -225,8 +233,6 @@ def __init__(self, *args, **kwargs): # noqa: E501
Animal class but this time we won't travel
through its discriminator because we passed in
_visited_composed_classes = (Animal,)
- type (str): The type of resource, in this case it is an assets.. [optional] # noqa: E501
- attributes (AssetResponseAttributes): [optional] # noqa: E501
"""
_check_type = kwargs.pop('_check_type', True)
@@ -252,6 +258,8 @@ def __init__(self, *args, **kwargs): # noqa: E501
self._configuration = _configuration
self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+ self.type = type
+ self.attributes = attributes
for var_name, var_value in kwargs.items():
if var_name not in self.attribute_map and \
self._configuration is not None and \
diff --git a/shotstack_sdk/model/audio_asset.py b/shotstack_sdk/model/audio_asset.py
index a51b823..1e9ac22 100644
--- a/shotstack_sdk/model/audio_asset.py
+++ b/shotstack_sdk/model/audio_asset.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
diff --git a/shotstack_sdk/model/clip.py b/shotstack_sdk/model/clip.py
index 9b63810..7329034 100644
--- a/shotstack_sdk/model/clip.py
+++ b/shotstack_sdk/model/clip.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
@@ -30,24 +30,14 @@
def lazy_import():
- from shotstack_sdk.model.audio_asset import AudioAsset
- from shotstack_sdk.model.html_asset import HtmlAsset
- from shotstack_sdk.model.image_asset import ImageAsset
- from shotstack_sdk.model.luma_asset import LumaAsset
+ from shotstack_sdk.model.asset import Asset
from shotstack_sdk.model.offset import Offset
- from shotstack_sdk.model.title_asset import TitleAsset
from shotstack_sdk.model.transformation import Transformation
from shotstack_sdk.model.transition import Transition
- from shotstack_sdk.model.video_asset import VideoAsset
- globals()['AudioAsset'] = AudioAsset
- globals()['HtmlAsset'] = HtmlAsset
- globals()['ImageAsset'] = ImageAsset
- globals()['LumaAsset'] = LumaAsset
+ globals()['Asset'] = Asset
globals()['Offset'] = Offset
- globals()['TitleAsset'] = TitleAsset
globals()['Transformation'] = Transformation
globals()['Transition'] = Transition
- globals()['VideoAsset'] = VideoAsset
class Clip(ModelNormal):
@@ -137,7 +127,7 @@ def openapi_types():
"""
lazy_import()
return {
- 'asset': (bool, date, datetime, dict, float, int, list, str, none_type,), # noqa: E501
+ 'asset': (Asset,), # noqa: E501
'start': (float,), # noqa: E501
'length': (float,), # noqa: E501
'fit': (str,), # noqa: E501
@@ -182,7 +172,7 @@ def _from_openapi_data(cls, asset, start, length, *args, **kwargs): # noqa: E50
"""Clip - a model defined in OpenAPI
Args:
- asset (bool, date, datetime, dict, float, int, list, str, none_type): The type of asset to display for the duration of this Clip. Value must be one of:
+ asset (Asset):
start (float): The start position of the Clip on the timeline, in seconds.
length (float): The length, in seconds, the Clip should play for.
@@ -280,7 +270,7 @@ def __init__(self, asset, start, length, *args, **kwargs): # noqa: E501
"""Clip - a model defined in OpenAPI
Args:
- asset (bool, date, datetime, dict, float, int, list, str, none_type): The type of asset to display for the duration of this Clip. Value must be one of:
+ asset (Asset):
start (float): The start position of the Clip on the timeline, in seconds.
length (float): The length, in seconds, the Clip should play for.
diff --git a/shotstack_sdk/model/crop.py b/shotstack_sdk/model/crop.py
index 16f4a10..d9f3669 100644
--- a/shotstack_sdk/model/crop.py
+++ b/shotstack_sdk/model/crop.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
diff --git a/shotstack_sdk/model/destinations.py b/shotstack_sdk/model/destinations.py
new file mode 100644
index 0000000..bfaf571
--- /dev/null
+++ b/shotstack_sdk/model/destinations.py
@@ -0,0 +1,330 @@
+"""
+ Shotstack
+
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+
+ The version of the OpenAPI document: v1
+ Generated by: https://openapi-generator.tech
+"""
+
+
+import re # noqa: F401
+import sys # noqa: F401
+
+from shotstack_sdk.model_utils import ( # noqa: F401
+ ApiTypeError,
+ ModelComposed,
+ ModelNormal,
+ ModelSimple,
+ cached_property,
+ change_keys_js_to_python,
+ convert_js_args_to_python_args,
+ date,
+ datetime,
+ file_type,
+ none_type,
+ validate_get_composed_info,
+ OpenApiModel
+)
+from shotstack_sdk.exceptions import ApiAttributeError
+
+
+def lazy_import():
+ from shotstack_sdk.model.mux_destination import MuxDestination
+ from shotstack_sdk.model.mux_destination_options import MuxDestinationOptions
+ from shotstack_sdk.model.shotstack_destination import ShotstackDestination
+ globals()['MuxDestination'] = MuxDestination
+ globals()['MuxDestinationOptions'] = MuxDestinationOptions
+ globals()['ShotstackDestination'] = ShotstackDestination
+
+
+class Destinations(ModelComposed):
+ """NOTE: This class is auto generated by OpenAPI Generator.
+ Ref: https://openapi-generator.tech
+
+ Do not edit the class manually.
+
+ Attributes:
+ allowed_values (dict): The key is the tuple path to the attribute
+ and the for var_name this is (var_name,). The value is a dict
+ with a capitalized key describing the allowed value and an allowed
+ value. These dicts store the allowed enum values.
+ attribute_map (dict): The key is attribute name
+ and the value is json key in definition.
+ discriminator_value_class_map (dict): A dict to go from the discriminator
+ variable value to the discriminator class name.
+ validations (dict): The key is the tuple path to the attribute
+ and the for var_name this is (var_name,). The value is a dict
+ that stores validations for max_length, min_length, max_items,
+ min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum,
+ inclusive_minimum, and regex.
+ additional_properties_type (tuple): A tuple of classes accepted
+ as additional properties values.
+ """
+
+ allowed_values = {
+ }
+
+ validations = {
+ }
+
+ @cached_property
+ def additional_properties_type():
+ """
+ This must be a method because a model may have properties that are
+ of type self, this must run after the class is loaded
+ """
+ lazy_import()
+ return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
+
+ _nullable = False
+
+ @cached_property
+ def openapi_types():
+ """
+ This must be a method because a model may have properties that are
+ of type self, this must run after the class is loaded
+
+ Returns
+ openapi_types (dict): The key is attribute name
+ and the value is attribute type.
+ """
+ lazy_import()
+ return {
+ 'exclude': (bool,), # noqa: E501
+ 'options': (MuxDestinationOptions,), # noqa: E501
+ 'provider': (str,), # noqa: E501
+ }
+
+ @cached_property
+ def discriminator():
+ lazy_import()
+ val = {
+ 'MuxDestination': MuxDestination,
+ 'ShotstackDestination': ShotstackDestination,
+ }
+ if not val:
+ return None
+ return {'destinations': val}
+
+ attribute_map = {
+ 'exclude': 'exclude', # noqa: E501
+ 'options': 'options', # noqa: E501
+ 'provider': 'provider', # noqa: E501
+ }
+
+ read_only_vars = {
+ }
+
+ @classmethod
+ @convert_js_args_to_python_args
+ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501
+ """Destinations - a model defined in OpenAPI
+
+ Keyword Args:
+ _check_type (bool): if True, values for parameters in openapi_types
+ will be type checked and a TypeError will be
+ raised if the wrong type is input.
+ Defaults to True
+ _path_to_item (tuple/list): This is a list of keys or values to
+ drill down to the model in received_data
+ when deserializing a response
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _configuration (Configuration): the instance to use when
+ deserializing a file_type parameter.
+ If passed, type conversion is attempted
+ If omitted no type conversion is done.
+ _visited_composed_classes (tuple): This stores a tuple of
+ classes that we have traveled through so that
+ if we see that class again we will not use its
+ discriminator again.
+ When traveling through a discriminator, the
+ composed schema that is
+ is traveled through is added to this set.
+ For example if Animal has a discriminator
+ petType and we pass in "Dog", and the class Dog
+ allOf includes Animal, we move through Animal
+ once using the discriminator, and pick Dog.
+ Then in Dog, we will make an instance of the
+ Animal class but this time we won't travel
+ through its discriminator because we passed in
+ _visited_composed_classes = (Animal,)
+ exclude (bool): Set to `true` to opt-out from the Shotstack hosting and CDN service. All files must be downloaded within 24 hours of rendering.. [optional] if omitted the server will use the default value of False # noqa: E501
+ options (MuxDestinationOptions): [optional] # noqa: E501
+ provider (str): The destination to send rendered assets to - set to `mux` for Mux.. [optional] if omitted the server will use the default value of "mux" # noqa: E501
+ """
+
+ _check_type = kwargs.pop('_check_type', True)
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
+ _path_to_item = kwargs.pop('_path_to_item', ())
+ _configuration = kwargs.pop('_configuration', None)
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
+
+ self = super(OpenApiModel, cls).__new__(cls)
+
+ if args:
+ raise ApiTypeError(
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
+ args,
+ self.__class__.__name__,
+ ),
+ path_to_item=_path_to_item,
+ valid_classes=(self.__class__,),
+ )
+
+ self._data_store = {}
+ self._check_type = _check_type
+ self._spec_property_naming = _spec_property_naming
+ self._path_to_item = _path_to_item
+ self._configuration = _configuration
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+
+ constant_args = {
+ '_check_type': _check_type,
+ '_path_to_item': _path_to_item,
+ '_spec_property_naming': _spec_property_naming,
+ '_configuration': _configuration,
+ '_visited_composed_classes': self._visited_composed_classes,
+ }
+ composed_info = validate_get_composed_info(
+ constant_args, kwargs, self)
+ self._composed_instances = composed_info[0]
+ self._var_name_to_model_instances = composed_info[1]
+ self._additional_properties_model_instances = composed_info[2]
+ discarded_args = composed_info[3]
+
+ for var_name, var_value in kwargs.items():
+ if var_name in discarded_args and \
+ self._configuration is not None and \
+ self._configuration.discard_unknown_keys and \
+ self._additional_properties_model_instances:
+ # discard variable.
+ continue
+ setattr(self, var_name, var_value)
+
+ return self
+
+ required_properties = set([
+ '_data_store',
+ '_check_type',
+ '_spec_property_naming',
+ '_path_to_item',
+ '_configuration',
+ '_visited_composed_classes',
+ '_composed_instances',
+ '_var_name_to_model_instances',
+ '_additional_properties_model_instances',
+ ])
+
+ @convert_js_args_to_python_args
+ def __init__(self, *args, **kwargs): # noqa: E501
+ """Destinations - a model defined in OpenAPI
+
+ Keyword Args:
+ _check_type (bool): if True, values for parameters in openapi_types
+ will be type checked and a TypeError will be
+ raised if the wrong type is input.
+ Defaults to True
+ _path_to_item (tuple/list): This is a list of keys or values to
+ drill down to the model in received_data
+ when deserializing a response
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _configuration (Configuration): the instance to use when
+ deserializing a file_type parameter.
+ If passed, type conversion is attempted
+ If omitted no type conversion is done.
+ _visited_composed_classes (tuple): This stores a tuple of
+ classes that we have traveled through so that
+ if we see that class again we will not use its
+ discriminator again.
+ When traveling through a discriminator, the
+ composed schema that is
+ is traveled through is added to this set.
+ For example if Animal has a discriminator
+ petType and we pass in "Dog", and the class Dog
+ allOf includes Animal, we move through Animal
+ once using the discriminator, and pick Dog.
+ Then in Dog, we will make an instance of the
+ Animal class but this time we won't travel
+ through its discriminator because we passed in
+ _visited_composed_classes = (Animal,)
+ exclude (bool): Set to `true` to opt-out from the Shotstack hosting and CDN service. All files must be downloaded within 24 hours of rendering.. [optional] if omitted the server will use the default value of False # noqa: E501
+ options (MuxDestinationOptions): [optional] # noqa: E501
+ provider (str): The destination to send rendered assets to - set to `mux` for Mux.. [optional] if omitted the server will use the default value of "mux" # noqa: E501
+ """
+
+ _check_type = kwargs.pop('_check_type', True)
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
+ _path_to_item = kwargs.pop('_path_to_item', ())
+ _configuration = kwargs.pop('_configuration', None)
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
+
+ if args:
+ raise ApiTypeError(
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
+ args,
+ self.__class__.__name__,
+ ),
+ path_to_item=_path_to_item,
+ valid_classes=(self.__class__,),
+ )
+
+ self._data_store = {}
+ self._check_type = _check_type
+ self._spec_property_naming = _spec_property_naming
+ self._path_to_item = _path_to_item
+ self._configuration = _configuration
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+
+ constant_args = {
+ '_check_type': _check_type,
+ '_path_to_item': _path_to_item,
+ '_spec_property_naming': _spec_property_naming,
+ '_configuration': _configuration,
+ '_visited_composed_classes': self._visited_composed_classes,
+ }
+ composed_info = validate_get_composed_info(
+ constant_args, kwargs, self)
+ self._composed_instances = composed_info[0]
+ self._var_name_to_model_instances = composed_info[1]
+ self._additional_properties_model_instances = composed_info[2]
+ discarded_args = composed_info[3]
+
+ for var_name, var_value in kwargs.items():
+ if var_name in discarded_args and \
+ self._configuration is not None and \
+ self._configuration.discard_unknown_keys and \
+ self._additional_properties_model_instances:
+ # discard variable.
+ continue
+ setattr(self, var_name, var_value)
+ if var_name in self.read_only_vars:
+ raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate "
+ f"class with read only attributes.")
+
+ @cached_property
+ def _composed_schemas():
+ # we need this here to make our import statements work
+ # we must store _composed_schemas in here so the code is only run
+ # when we invoke this method. If we kept this at the class
+ # level we would get an error because the class level
+ # code would be run when this module is imported, and these composed
+ # classes don't exist yet because their module has not finished
+ # loading
+ lazy_import()
+ return {
+ 'anyOf': [
+ MuxDestination,
+ ShotstackDestination,
+ ],
+ 'allOf': [
+ ],
+ 'oneOf': [
+ ],
+ }
diff --git a/shotstack_sdk/model/edit.py b/shotstack_sdk/model/edit.py
index 0113705..194442b 100644
--- a/shotstack_sdk/model/edit.py
+++ b/shotstack_sdk/model/edit.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
@@ -161,8 +161,8 @@ def _from_openapi_data(cls, timeline, output, *args, **kwargs): # noqa: E501
through its discriminator because we passed in
_visited_composed_classes = (Animal,)
merge ([MergeField]): An array of key/value pairs that provides an easy way to create templates with placeholders. The placeholders can be used to find and replace keys with values. For example you can search for the placeholder `{{NAME}}` and replace it with the value `Jane`. . [optional] # noqa: E501
- callback (str): An optional webhook callback URL used to receive status notifications when a render completes or fails. See [webhooks](https://shotstack.gitbook.io/docs/guides/architecting-an-application/webhooks) for more details.. [optional] # noqa: E501
- disk (str): The disk type to use for storing footage and assets for each render. See [disk types](https://shotstack.gitbook.io/docs/guides/architecting-an-application/disk-types) for more details. - `local` - optimized for high speed rendering with up to 512MB storage
- `mount` - optimized for larger file sizes and longer videos with 5GB for source footage and 512MB for output render
. [optional] if omitted the server will use the default value of "local" # noqa: E501
+ callback (str): An optional webhook callback URL used to receive status notifications when a render completes or fails. See [webhooks](https://shotstack.io/docs/guide/architecting-an-application/webhooks) for more details.. [optional] # noqa: E501
+ disk (str): The disk type to use for storing footage and assets for each render. See [disk types](https://shotstack.io/docs/guide/architecting-an-application/disk-types) for more details. - `local` - optimized for high speed rendering with up to 512MB storage
- `mount` - optimized for larger file sizes and longer videos with 5GB for source footage and 512MB for output render
. [optional] if omitted the server will use the default value of "local" # noqa: E501
"""
_check_type = kwargs.pop('_check_type', True)
@@ -251,8 +251,8 @@ def __init__(self, timeline, output, *args, **kwargs): # noqa: E501
through its discriminator because we passed in
_visited_composed_classes = (Animal,)
merge ([MergeField]): An array of key/value pairs that provides an easy way to create templates with placeholders. The placeholders can be used to find and replace keys with values. For example you can search for the placeholder `{{NAME}}` and replace it with the value `Jane`. . [optional] # noqa: E501
- callback (str): An optional webhook callback URL used to receive status notifications when a render completes or fails. See [webhooks](https://shotstack.gitbook.io/docs/guides/architecting-an-application/webhooks) for more details.. [optional] # noqa: E501
- disk (str): The disk type to use for storing footage and assets for each render. See [disk types](https://shotstack.gitbook.io/docs/guides/architecting-an-application/disk-types) for more details. - `local` - optimized for high speed rendering with up to 512MB storage
- `mount` - optimized for larger file sizes and longer videos with 5GB for source footage and 512MB for output render
. [optional] if omitted the server will use the default value of "local" # noqa: E501
+ callback (str): An optional webhook callback URL used to receive status notifications when a render completes or fails. See [webhooks](https://shotstack.io/docs/guide/architecting-an-application/webhooks) for more details.. [optional] # noqa: E501
+ disk (str): The disk type to use for storing footage and assets for each render. See [disk types](https://shotstack.io/docs/guide/architecting-an-application/disk-types) for more details. - `local` - optimized for high speed rendering with up to 512MB storage
- `mount` - optimized for larger file sizes and longer videos with 5GB for source footage and 512MB for output render
. [optional] if omitted the server will use the default value of "local" # noqa: E501
"""
_check_type = kwargs.pop('_check_type', True)
diff --git a/shotstack_sdk/model/flip_transformation.py b/shotstack_sdk/model/flip_transformation.py
index ddd4180..566c11c 100644
--- a/shotstack_sdk/model/flip_transformation.py
+++ b/shotstack_sdk/model/flip_transformation.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
diff --git a/shotstack_sdk/model/font.py b/shotstack_sdk/model/font.py
index 04d8a47..4b9716f 100644
--- a/shotstack_sdk/model/font.py
+++ b/shotstack_sdk/model/font.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
diff --git a/shotstack_sdk/model/html_asset.py b/shotstack_sdk/model/html_asset.py
index 3252f6e..9c26514 100644
--- a/shotstack_sdk/model/html_asset.py
+++ b/shotstack_sdk/model/html_asset.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
@@ -127,7 +127,7 @@ def _from_openapi_data(cls, html, *args, **kwargs): # noqa: E501
"""HtmlAsset - a model defined in OpenAPI
Args:
- html (str): The HTML text string. See list of [supported HTML tags](https://shotstack.gitbook.io/docs/guides/architecting-an-application/html-support#supported-html-tags).
+ html (str): The HTML text string. See list of [supported HTML tags](https://shotstack.io/docs/guide/architecting-an-application/html-support#supported-html-tags).
Keyword Args:
type (str): The type of asset - set to `html` for HTML.. defaults to "html" # noqa: E501
@@ -161,7 +161,7 @@ def _from_openapi_data(cls, html, *args, **kwargs): # noqa: E501
Animal class but this time we won't travel
through its discriminator because we passed in
_visited_composed_classes = (Animal,)
- css (str): The CSS text string to apply styling to the HTML. See list of [support CSS properties](https://shotstack.gitbook.io/docs/guides/architecting-an-application/html-support#supported-html-tags).. [optional] # noqa: E501
+ css (str): The CSS text string to apply styling to the HTML. See list of [support CSS properties](https://shotstack.io/docs/guide/architecting-an-application/html-support#supported-css-properties).. [optional] # noqa: E501
width (int): Set the width of the HTML asset bounding box in pixels. Text will wrap to fill the bounding box.. [optional] # noqa: E501
height (int): Set the width of the HTML asset bounding box in pixels. Text and elements will be masked if they exceed the height of the bounding box.. [optional] # noqa: E501
background (str): Apply a background color behind the HTML bounding box using. Set the text color using hexadecimal color notation. Transparency is supported by setting the first two characters of the hex string (opposite to HTML), i.e. #80ffffff will be white with 50% transparency.. [optional] if omitted the server will use the default value of "transparent" # noqa: E501
@@ -220,7 +220,7 @@ def __init__(self, html, *args, **kwargs): # noqa: E501
"""HtmlAsset - a model defined in OpenAPI
Args:
- html (str): The HTML text string. See list of [supported HTML tags](https://shotstack.gitbook.io/docs/guides/architecting-an-application/html-support#supported-html-tags).
+ html (str): The HTML text string. See list of [supported HTML tags](https://shotstack.io/docs/guide/architecting-an-application/html-support#supported-html-tags).
Keyword Args:
type (str): The type of asset - set to `html` for HTML.. defaults to "html" # noqa: E501
@@ -254,7 +254,7 @@ def __init__(self, html, *args, **kwargs): # noqa: E501
Animal class but this time we won't travel
through its discriminator because we passed in
_visited_composed_classes = (Animal,)
- css (str): The CSS text string to apply styling to the HTML. See list of [support CSS properties](https://shotstack.gitbook.io/docs/guides/architecting-an-application/html-support#supported-html-tags).. [optional] # noqa: E501
+ css (str): The CSS text string to apply styling to the HTML. See list of [support CSS properties](https://shotstack.io/docs/guide/architecting-an-application/html-support#supported-css-properties).. [optional] # noqa: E501
width (int): Set the width of the HTML asset bounding box in pixels. Text will wrap to fill the bounding box.. [optional] # noqa: E501
height (int): Set the width of the HTML asset bounding box in pixels. Text and elements will be masked if they exceed the height of the bounding box.. [optional] # noqa: E501
background (str): Apply a background color behind the HTML bounding box using. Set the text color using hexadecimal color notation. Transparency is supported by setting the first two characters of the hex string (opposite to HTML), i.e. #80ffffff will be white with 50% transparency.. [optional] if omitted the server will use the default value of "transparent" # noqa: E501
diff --git a/shotstack_sdk/model/image_asset.py b/shotstack_sdk/model/image_asset.py
index 53b539b..2b52b68 100644
--- a/shotstack_sdk/model/image_asset.py
+++ b/shotstack_sdk/model/image_asset.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
diff --git a/shotstack_sdk/model/luma_asset.py b/shotstack_sdk/model/luma_asset.py
index f61b0cd..49ffe22 100644
--- a/shotstack_sdk/model/luma_asset.py
+++ b/shotstack_sdk/model/luma_asset.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
diff --git a/shotstack_sdk/model/merge_field.py b/shotstack_sdk/model/merge_field.py
index b92353c..ee3241a 100644
--- a/shotstack_sdk/model/merge_field.py
+++ b/shotstack_sdk/model/merge_field.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
diff --git a/shotstack_sdk/model/mux_destination.py b/shotstack_sdk/model/mux_destination.py
new file mode 100644
index 0000000..08f9fd6
--- /dev/null
+++ b/shotstack_sdk/model/mux_destination.py
@@ -0,0 +1,273 @@
+"""
+ Shotstack
+
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+
+ The version of the OpenAPI document: v1
+ Generated by: https://openapi-generator.tech
+"""
+
+
+import re # noqa: F401
+import sys # noqa: F401
+
+from shotstack_sdk.model_utils import ( # noqa: F401
+ ApiTypeError,
+ ModelComposed,
+ ModelNormal,
+ ModelSimple,
+ cached_property,
+ change_keys_js_to_python,
+ convert_js_args_to_python_args,
+ date,
+ datetime,
+ file_type,
+ none_type,
+ validate_get_composed_info,
+ OpenApiModel
+)
+from shotstack_sdk.exceptions import ApiAttributeError
+
+
+def lazy_import():
+ from shotstack_sdk.model.mux_destination_options import MuxDestinationOptions
+ globals()['MuxDestinationOptions'] = MuxDestinationOptions
+
+
+class MuxDestination(ModelNormal):
+ """NOTE: This class is auto generated by OpenAPI Generator.
+ Ref: https://openapi-generator.tech
+
+ Do not edit the class manually.
+
+ Attributes:
+ allowed_values (dict): The key is the tuple path to the attribute
+ and the for var_name this is (var_name,). The value is a dict
+ with a capitalized key describing the allowed value and an allowed
+ value. These dicts store the allowed enum values.
+ attribute_map (dict): The key is attribute name
+ and the value is json key in definition.
+ discriminator_value_class_map (dict): A dict to go from the discriminator
+ variable value to the discriminator class name.
+ validations (dict): The key is the tuple path to the attribute
+ and the for var_name this is (var_name,). The value is a dict
+ that stores validations for max_length, min_length, max_items,
+ min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum,
+ inclusive_minimum, and regex.
+ additional_properties_type (tuple): A tuple of classes accepted
+ as additional properties values.
+ """
+
+ allowed_values = {
+ }
+
+ validations = {
+ }
+
+ @cached_property
+ def additional_properties_type():
+ """
+ This must be a method because a model may have properties that are
+ of type self, this must run after the class is loaded
+ """
+ lazy_import()
+ return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
+
+ _nullable = False
+
+ @cached_property
+ def openapi_types():
+ """
+ This must be a method because a model may have properties that are
+ of type self, this must run after the class is loaded
+
+ Returns
+ openapi_types (dict): The key is attribute name
+ and the value is attribute type.
+ """
+ lazy_import()
+ return {
+ 'provider': (str,), # noqa: E501
+ 'options': (MuxDestinationOptions,), # noqa: E501
+ }
+
+ @cached_property
+ def discriminator():
+ return None
+
+
+ attribute_map = {
+ 'provider': 'provider', # noqa: E501
+ 'options': 'options', # noqa: E501
+ }
+
+ read_only_vars = {
+ }
+
+ _composed_schemas = {}
+
+ @classmethod
+ @convert_js_args_to_python_args
+ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501
+ """MuxDestination - a model defined in OpenAPI
+
+ Args:
+
+ Keyword Args:
+ provider (str): The destination to send rendered assets to - set to `mux` for Mux.. defaults to "mux" # noqa: E501
+ _check_type (bool): if True, values for parameters in openapi_types
+ will be type checked and a TypeError will be
+ raised if the wrong type is input.
+ Defaults to True
+ _path_to_item (tuple/list): This is a list of keys or values to
+ drill down to the model in received_data
+ when deserializing a response
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _configuration (Configuration): the instance to use when
+ deserializing a file_type parameter.
+ If passed, type conversion is attempted
+ If omitted no type conversion is done.
+ _visited_composed_classes (tuple): This stores a tuple of
+ classes that we have traveled through so that
+ if we see that class again we will not use its
+ discriminator again.
+ When traveling through a discriminator, the
+ composed schema that is
+ is traveled through is added to this set.
+ For example if Animal has a discriminator
+ petType and we pass in "Dog", and the class Dog
+ allOf includes Animal, we move through Animal
+ once using the discriminator, and pick Dog.
+ Then in Dog, we will make an instance of the
+ Animal class but this time we won't travel
+ through its discriminator because we passed in
+ _visited_composed_classes = (Animal,)
+ options (MuxDestinationOptions): [optional] # noqa: E501
+ """
+
+ provider = kwargs.get('provider', "mux")
+ _check_type = kwargs.pop('_check_type', True)
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
+ _path_to_item = kwargs.pop('_path_to_item', ())
+ _configuration = kwargs.pop('_configuration', None)
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
+
+ self = super(OpenApiModel, cls).__new__(cls)
+
+ if args:
+ raise ApiTypeError(
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
+ args,
+ self.__class__.__name__,
+ ),
+ path_to_item=_path_to_item,
+ valid_classes=(self.__class__,),
+ )
+
+ self._data_store = {}
+ self._check_type = _check_type
+ self._spec_property_naming = _spec_property_naming
+ self._path_to_item = _path_to_item
+ self._configuration = _configuration
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+
+ self.provider = provider
+ for var_name, var_value in kwargs.items():
+ if var_name not in self.attribute_map and \
+ self._configuration is not None and \
+ self._configuration.discard_unknown_keys and \
+ self.additional_properties_type is None:
+ # discard variable.
+ continue
+ setattr(self, var_name, var_value)
+ return self
+
+ required_properties = set([
+ '_data_store',
+ '_check_type',
+ '_spec_property_naming',
+ '_path_to_item',
+ '_configuration',
+ '_visited_composed_classes',
+ ])
+
+ @convert_js_args_to_python_args
+ def __init__(self, *args, **kwargs): # noqa: E501
+ """MuxDestination - a model defined in OpenAPI
+
+ Args:
+
+ Keyword Args:
+ provider (str): The destination to send rendered assets to - set to `mux` for Mux.. defaults to "mux" # noqa: E501
+ _check_type (bool): if True, values for parameters in openapi_types
+ will be type checked and a TypeError will be
+ raised if the wrong type is input.
+ Defaults to True
+ _path_to_item (tuple/list): This is a list of keys or values to
+ drill down to the model in received_data
+ when deserializing a response
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _configuration (Configuration): the instance to use when
+ deserializing a file_type parameter.
+ If passed, type conversion is attempted
+ If omitted no type conversion is done.
+ _visited_composed_classes (tuple): This stores a tuple of
+ classes that we have traveled through so that
+ if we see that class again we will not use its
+ discriminator again.
+ When traveling through a discriminator, the
+ composed schema that is
+ is traveled through is added to this set.
+ For example if Animal has a discriminator
+ petType and we pass in "Dog", and the class Dog
+ allOf includes Animal, we move through Animal
+ once using the discriminator, and pick Dog.
+ Then in Dog, we will make an instance of the
+ Animal class but this time we won't travel
+ through its discriminator because we passed in
+ _visited_composed_classes = (Animal,)
+ options (MuxDestinationOptions): [optional] # noqa: E501
+ """
+
+ provider = kwargs.get('provider', "mux")
+ _check_type = kwargs.pop('_check_type', True)
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
+ _path_to_item = kwargs.pop('_path_to_item', ())
+ _configuration = kwargs.pop('_configuration', None)
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
+
+ if args:
+ raise ApiTypeError(
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
+ args,
+ self.__class__.__name__,
+ ),
+ path_to_item=_path_to_item,
+ valid_classes=(self.__class__,),
+ )
+
+ self._data_store = {}
+ self._check_type = _check_type
+ self._spec_property_naming = _spec_property_naming
+ self._path_to_item = _path_to_item
+ self._configuration = _configuration
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+
+ self.provider = provider
+ for var_name, var_value in kwargs.items():
+ if var_name not in self.attribute_map and \
+ self._configuration is not None and \
+ self._configuration.discard_unknown_keys and \
+ self.additional_properties_type is None:
+ # discard variable.
+ continue
+ setattr(self, var_name, var_value)
+ if var_name in self.read_only_vars:
+ raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate "
+ f"class with read only attributes.")
diff --git a/shotstack_sdk/model/mux_destination_options.py b/shotstack_sdk/model/mux_destination_options.py
new file mode 100644
index 0000000..93a6140
--- /dev/null
+++ b/shotstack_sdk/model/mux_destination_options.py
@@ -0,0 +1,259 @@
+"""
+ Shotstack
+
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+
+ The version of the OpenAPI document: v1
+ Generated by: https://openapi-generator.tech
+"""
+
+
+import re # noqa: F401
+import sys # noqa: F401
+
+from shotstack_sdk.model_utils import ( # noqa: F401
+ ApiTypeError,
+ ModelComposed,
+ ModelNormal,
+ ModelSimple,
+ cached_property,
+ change_keys_js_to_python,
+ convert_js_args_to_python_args,
+ date,
+ datetime,
+ file_type,
+ none_type,
+ validate_get_composed_info,
+ OpenApiModel
+)
+from shotstack_sdk.exceptions import ApiAttributeError
+
+
+
+class MuxDestinationOptions(ModelNormal):
+ """NOTE: This class is auto generated by OpenAPI Generator.
+ Ref: https://openapi-generator.tech
+
+ Do not edit the class manually.
+
+ Attributes:
+ allowed_values (dict): The key is the tuple path to the attribute
+ and the for var_name this is (var_name,). The value is a dict
+ with a capitalized key describing the allowed value and an allowed
+ value. These dicts store the allowed enum values.
+ attribute_map (dict): The key is attribute name
+ and the value is json key in definition.
+ discriminator_value_class_map (dict): A dict to go from the discriminator
+ variable value to the discriminator class name.
+ validations (dict): The key is the tuple path to the attribute
+ and the for var_name this is (var_name,). The value is a dict
+ that stores validations for max_length, min_length, max_items,
+ min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum,
+ inclusive_minimum, and regex.
+ additional_properties_type (tuple): A tuple of classes accepted
+ as additional properties values.
+ """
+
+ allowed_values = {
+ ('playback_policy',): {
+ 'PUBLIC': "public",
+ 'SIGNED': "signed",
+ },
+ }
+
+ validations = {
+ }
+
+ @cached_property
+ def additional_properties_type():
+ """
+ This must be a method because a model may have properties that are
+ of type self, this must run after the class is loaded
+ """
+ return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
+
+ _nullable = False
+
+ @cached_property
+ def openapi_types():
+ """
+ This must be a method because a model may have properties that are
+ of type self, this must run after the class is loaded
+
+ Returns
+ openapi_types (dict): The key is attribute name
+ and the value is attribute type.
+ """
+ return {
+ 'playback_policy': ([str],), # noqa: E501
+ }
+
+ @cached_property
+ def discriminator():
+ return None
+
+
+ attribute_map = {
+ 'playback_policy': 'playbackPolicy', # noqa: E501
+ }
+
+ read_only_vars = {
+ }
+
+ _composed_schemas = {}
+
+ @classmethod
+ @convert_js_args_to_python_args
+ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501
+ """MuxDestinationOptions - a model defined in OpenAPI
+
+ Keyword Args:
+ _check_type (bool): if True, values for parameters in openapi_types
+ will be type checked and a TypeError will be
+ raised if the wrong type is input.
+ Defaults to True
+ _path_to_item (tuple/list): This is a list of keys or values to
+ drill down to the model in received_data
+ when deserializing a response
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _configuration (Configuration): the instance to use when
+ deserializing a file_type parameter.
+ If passed, type conversion is attempted
+ If omitted no type conversion is done.
+ _visited_composed_classes (tuple): This stores a tuple of
+ classes that we have traveled through so that
+ if we see that class again we will not use its
+ discriminator again.
+ When traveling through a discriminator, the
+ composed schema that is
+ is traveled through is added to this set.
+ For example if Animal has a discriminator
+ petType and we pass in "Dog", and the class Dog
+ allOf includes Animal, we move through Animal
+ once using the discriminator, and pick Dog.
+ Then in Dog, we will make an instance of the
+ Animal class but this time we won't travel
+ through its discriminator because we passed in
+ _visited_composed_classes = (Animal,)
+ playback_policy ([str]): Sets the Mux `playback_policy` option. Value is an array of strings - use `public`, `signed`, or both.. [optional] # noqa: E501
+ """
+
+ _check_type = kwargs.pop('_check_type', True)
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
+ _path_to_item = kwargs.pop('_path_to_item', ())
+ _configuration = kwargs.pop('_configuration', None)
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
+
+ self = super(OpenApiModel, cls).__new__(cls)
+
+ if args:
+ raise ApiTypeError(
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
+ args,
+ self.__class__.__name__,
+ ),
+ path_to_item=_path_to_item,
+ valid_classes=(self.__class__,),
+ )
+
+ self._data_store = {}
+ self._check_type = _check_type
+ self._spec_property_naming = _spec_property_naming
+ self._path_to_item = _path_to_item
+ self._configuration = _configuration
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+
+ for var_name, var_value in kwargs.items():
+ if var_name not in self.attribute_map and \
+ self._configuration is not None and \
+ self._configuration.discard_unknown_keys and \
+ self.additional_properties_type is None:
+ # discard variable.
+ continue
+ setattr(self, var_name, var_value)
+ return self
+
+ required_properties = set([
+ '_data_store',
+ '_check_type',
+ '_spec_property_naming',
+ '_path_to_item',
+ '_configuration',
+ '_visited_composed_classes',
+ ])
+
+ @convert_js_args_to_python_args
+ def __init__(self, *args, **kwargs): # noqa: E501
+ """MuxDestinationOptions - a model defined in OpenAPI
+
+ Keyword Args:
+ _check_type (bool): if True, values for parameters in openapi_types
+ will be type checked and a TypeError will be
+ raised if the wrong type is input.
+ Defaults to True
+ _path_to_item (tuple/list): This is a list of keys or values to
+ drill down to the model in received_data
+ when deserializing a response
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _configuration (Configuration): the instance to use when
+ deserializing a file_type parameter.
+ If passed, type conversion is attempted
+ If omitted no type conversion is done.
+ _visited_composed_classes (tuple): This stores a tuple of
+ classes that we have traveled through so that
+ if we see that class again we will not use its
+ discriminator again.
+ When traveling through a discriminator, the
+ composed schema that is
+ is traveled through is added to this set.
+ For example if Animal has a discriminator
+ petType and we pass in "Dog", and the class Dog
+ allOf includes Animal, we move through Animal
+ once using the discriminator, and pick Dog.
+ Then in Dog, we will make an instance of the
+ Animal class but this time we won't travel
+ through its discriminator because we passed in
+ _visited_composed_classes = (Animal,)
+ playback_policy ([str]): Sets the Mux `playback_policy` option. Value is an array of strings - use `public`, `signed`, or both.. [optional] # noqa: E501
+ """
+
+ _check_type = kwargs.pop('_check_type', True)
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
+ _path_to_item = kwargs.pop('_path_to_item', ())
+ _configuration = kwargs.pop('_configuration', None)
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
+
+ if args:
+ raise ApiTypeError(
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
+ args,
+ self.__class__.__name__,
+ ),
+ path_to_item=_path_to_item,
+ valid_classes=(self.__class__,),
+ )
+
+ self._data_store = {}
+ self._check_type = _check_type
+ self._spec_property_naming = _spec_property_naming
+ self._path_to_item = _path_to_item
+ self._configuration = _configuration
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+
+ for var_name, var_value in kwargs.items():
+ if var_name not in self.attribute_map and \
+ self._configuration is not None and \
+ self._configuration.discard_unknown_keys and \
+ self.additional_properties_type is None:
+ # discard variable.
+ continue
+ setattr(self, var_name, var_value)
+ if var_name in self.read_only_vars:
+ raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate "
+ f"class with read only attributes.")
diff --git a/shotstack_sdk/model/offset.py b/shotstack_sdk/model/offset.py
index d48f7fd..31701ca 100644
--- a/shotstack_sdk/model/offset.py
+++ b/shotstack_sdk/model/offset.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
diff --git a/shotstack_sdk/model/output.py b/shotstack_sdk/model/output.py
index f355989..1fafe72 100644
--- a/shotstack_sdk/model/output.py
+++ b/shotstack_sdk/model/output.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
@@ -30,10 +30,12 @@
def lazy_import():
+ from shotstack_sdk.model.destinations import Destinations
from shotstack_sdk.model.poster import Poster
from shotstack_sdk.model.range import Range
from shotstack_sdk.model.size import Size
from shotstack_sdk.model.thumbnail import Thumbnail
+ globals()['Destinations'] = Destinations
globals()['Poster'] = Poster
globals()['Range'] = Range
globals()['Size'] = Size
@@ -147,7 +149,7 @@ def openapi_types():
'range': (Range,), # noqa: E501
'poster': (Poster,), # noqa: E501
'thumbnail': (Thumbnail,), # noqa: E501
- 'destinations': ([bool, date, datetime, dict, float, int, list, str, none_type],), # noqa: E501
+ 'destinations': ([Destinations],), # noqa: E501
}
@cached_property
@@ -224,7 +226,7 @@ def _from_openapi_data(cls, format, *args, **kwargs): # noqa: E501
range (Range): [optional] # noqa: E501
poster (Poster): [optional] # noqa: E501
thumbnail (Thumbnail): [optional] # noqa: E501
- destinations ([bool, date, datetime, dict, float, int, list, str, none_type]): A destination is a location where output files can be sent to for serving or hosting. By default all rendered assets are automatically sent to the Shotstack hosting destination. [DestinationShotstack](/#tocs_shotstackdestination) is currently the only option with plans to add more in the future such as S3, YouTube, Vimeo and Mux. If you do not require hosting you can opt-out using the `exclude` property.. [optional] # noqa: E501
+ destinations ([Destinations]): [optional] # noqa: E501
"""
_check_type = kwargs.pop('_check_type', True)
@@ -320,7 +322,7 @@ def __init__(self, format, *args, **kwargs): # noqa: E501
range (Range): [optional] # noqa: E501
poster (Poster): [optional] # noqa: E501
thumbnail (Thumbnail): [optional] # noqa: E501
- destinations ([bool, date, datetime, dict, float, int, list, str, none_type]): A destination is a location where output files can be sent to for serving or hosting. By default all rendered assets are automatically sent to the Shotstack hosting destination. [DestinationShotstack](/#tocs_shotstackdestination) is currently the only option with plans to add more in the future such as S3, YouTube, Vimeo and Mux. If you do not require hosting you can opt-out using the `exclude` property.. [optional] # noqa: E501
+ destinations ([Destinations]): [optional] # noqa: E501
"""
_check_type = kwargs.pop('_check_type', True)
diff --git a/shotstack_sdk/model/poster.py b/shotstack_sdk/model/poster.py
index 3defd56..eb940a0 100644
--- a/shotstack_sdk/model/poster.py
+++ b/shotstack_sdk/model/poster.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
diff --git a/shotstack_sdk/model/probe_response.py b/shotstack_sdk/model/probe_response.py
index 75d07b7..ed6742a 100644
--- a/shotstack_sdk/model/probe_response.py
+++ b/shotstack_sdk/model/probe_response.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
@@ -110,7 +110,7 @@ def _from_openapi_data(cls, success, message, response, *args, **kwargs): # noq
Args:
success (bool): `true` if media successfully read, else `false`.
message (str): `Created`, `Bad Request` or an error message.
- response ({str: (bool, date, datetime, dict, float, int, list, str, none_type)}): The response from FFprobe in JSON format
+ response ({str: (bool, date, datetime, dict, float, int, list, str, none_type)}): The response from FFprobe in JSON format.
Keyword Args:
_check_type (bool): if True, values for parameters in openapi_types
@@ -199,7 +199,7 @@ def __init__(self, success, message, response, *args, **kwargs): # noqa: E501
Args:
success (bool): `true` if media successfully read, else `false`.
message (str): `Created`, `Bad Request` or an error message.
- response ({str: (bool, date, datetime, dict, float, int, list, str, none_type)}): The response from FFprobe in JSON format
+ response ({str: (bool, date, datetime, dict, float, int, list, str, none_type)}): The response from FFprobe in JSON format.
Keyword Args:
_check_type (bool): if True, values for parameters in openapi_types
diff --git a/shotstack_sdk/model/queued_response.py b/shotstack_sdk/model/queued_response.py
index e7a3635..02e8a32 100644
--- a/shotstack_sdk/model/queued_response.py
+++ b/shotstack_sdk/model/queued_response.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
diff --git a/shotstack_sdk/model/queued_response_data.py b/shotstack_sdk/model/queued_response_data.py
index 71c3a35..31833a0 100644
--- a/shotstack_sdk/model/queued_response_data.py
+++ b/shotstack_sdk/model/queued_response_data.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
diff --git a/shotstack_sdk/model/range.py b/shotstack_sdk/model/range.py
index 1c90f1e..d77cf37 100644
--- a/shotstack_sdk/model/range.py
+++ b/shotstack_sdk/model/range.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
diff --git a/shotstack_sdk/model/render_response.py b/shotstack_sdk/model/render_response.py
index 090811c..adb0eec 100644
--- a/shotstack_sdk/model/render_response.py
+++ b/shotstack_sdk/model/render_response.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
diff --git a/shotstack_sdk/model/render_response_data.py b/shotstack_sdk/model/render_response_data.py
index 28c2de3..49d7a25 100644
--- a/shotstack_sdk/model/render_response_data.py
+++ b/shotstack_sdk/model/render_response_data.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
@@ -220,15 +220,13 @@ def _from_openapi_data(cls, id, owner, status, data, created, updated, *args, **
self.data = data
self.created = created
self.updated = updated
-
for var_name, var_value in kwargs.items():
if var_name not in self.attribute_map and \
self._configuration is not None and \
self._configuration.discard_unknown_keys and \
- self.additional_properties_type is None or var_value is None:
+ self.additional_properties_type is None:
# discard variable.
continue
-
setattr(self, var_name, var_value)
return self
diff --git a/shotstack_sdk/model/rotate_transformation.py b/shotstack_sdk/model/rotate_transformation.py
index 38946df..fa01a55 100644
--- a/shotstack_sdk/model/rotate_transformation.py
+++ b/shotstack_sdk/model/rotate_transformation.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
diff --git a/shotstack_sdk/model/shotstack_destination.py b/shotstack_sdk/model/shotstack_destination.py
index 8da7b50..0490397 100644
--- a/shotstack_sdk/model/shotstack_destination.py
+++ b/shotstack_sdk/model/shotstack_destination.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
diff --git a/shotstack_sdk/model/size.py b/shotstack_sdk/model/size.py
index 7ddec3b..a3df725 100644
--- a/shotstack_sdk/model/size.py
+++ b/shotstack_sdk/model/size.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
diff --git a/shotstack_sdk/model/skew_transformation.py b/shotstack_sdk/model/skew_transformation.py
index 00d540e..c21f4d7 100644
--- a/shotstack_sdk/model/skew_transformation.py
+++ b/shotstack_sdk/model/skew_transformation.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
diff --git a/shotstack_sdk/model/soundtrack.py b/shotstack_sdk/model/soundtrack.py
index 49edc6f..a3c9626 100644
--- a/shotstack_sdk/model/soundtrack.py
+++ b/shotstack_sdk/model/soundtrack.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
diff --git a/shotstack_sdk/model/template.py b/shotstack_sdk/model/template.py
new file mode 100644
index 0000000..ce43f98
--- /dev/null
+++ b/shotstack_sdk/model/template.py
@@ -0,0 +1,271 @@
+"""
+ Shotstack
+
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+
+ The version of the OpenAPI document: v1
+ Generated by: https://openapi-generator.tech
+"""
+
+
+import re # noqa: F401
+import sys # noqa: F401
+
+from shotstack_sdk.model_utils import ( # noqa: F401
+ ApiTypeError,
+ ModelComposed,
+ ModelNormal,
+ ModelSimple,
+ cached_property,
+ change_keys_js_to_python,
+ convert_js_args_to_python_args,
+ date,
+ datetime,
+ file_type,
+ none_type,
+ validate_get_composed_info,
+ OpenApiModel
+)
+from shotstack_sdk.exceptions import ApiAttributeError
+
+
+def lazy_import():
+ from shotstack_sdk.model.edit import Edit
+ globals()['Edit'] = Edit
+
+
+class Template(ModelNormal):
+ """NOTE: This class is auto generated by OpenAPI Generator.
+ Ref: https://openapi-generator.tech
+
+ Do not edit the class manually.
+
+ Attributes:
+ allowed_values (dict): The key is the tuple path to the attribute
+ and the for var_name this is (var_name,). The value is a dict
+ with a capitalized key describing the allowed value and an allowed
+ value. These dicts store the allowed enum values.
+ attribute_map (dict): The key is attribute name
+ and the value is json key in definition.
+ discriminator_value_class_map (dict): A dict to go from the discriminator
+ variable value to the discriminator class name.
+ validations (dict): The key is the tuple path to the attribute
+ and the for var_name this is (var_name,). The value is a dict
+ that stores validations for max_length, min_length, max_items,
+ min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum,
+ inclusive_minimum, and regex.
+ additional_properties_type (tuple): A tuple of classes accepted
+ as additional properties values.
+ """
+
+ allowed_values = {
+ }
+
+ validations = {
+ }
+
+ @cached_property
+ def additional_properties_type():
+ """
+ This must be a method because a model may have properties that are
+ of type self, this must run after the class is loaded
+ """
+ lazy_import()
+ return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
+
+ _nullable = False
+
+ @cached_property
+ def openapi_types():
+ """
+ This must be a method because a model may have properties that are
+ of type self, this must run after the class is loaded
+
+ Returns
+ openapi_types (dict): The key is attribute name
+ and the value is attribute type.
+ """
+ lazy_import()
+ return {
+ 'name': (str,), # noqa: E501
+ 'template': (Edit,), # noqa: E501
+ }
+
+ @cached_property
+ def discriminator():
+ return None
+
+
+ attribute_map = {
+ 'name': 'name', # noqa: E501
+ 'template': 'template', # noqa: E501
+ }
+
+ read_only_vars = {
+ }
+
+ _composed_schemas = {}
+
+ @classmethod
+ @convert_js_args_to_python_args
+ def _from_openapi_data(cls, name, *args, **kwargs): # noqa: E501
+ """Template - a model defined in OpenAPI
+
+ Args:
+ name (str): The template name
+
+ Keyword Args:
+ _check_type (bool): if True, values for parameters in openapi_types
+ will be type checked and a TypeError will be
+ raised if the wrong type is input.
+ Defaults to True
+ _path_to_item (tuple/list): This is a list of keys or values to
+ drill down to the model in received_data
+ when deserializing a response
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _configuration (Configuration): the instance to use when
+ deserializing a file_type parameter.
+ If passed, type conversion is attempted
+ If omitted no type conversion is done.
+ _visited_composed_classes (tuple): This stores a tuple of
+ classes that we have traveled through so that
+ if we see that class again we will not use its
+ discriminator again.
+ When traveling through a discriminator, the
+ composed schema that is
+ is traveled through is added to this set.
+ For example if Animal has a discriminator
+ petType and we pass in "Dog", and the class Dog
+ allOf includes Animal, we move through Animal
+ once using the discriminator, and pick Dog.
+ Then in Dog, we will make an instance of the
+ Animal class but this time we won't travel
+ through its discriminator because we passed in
+ _visited_composed_classes = (Animal,)
+ template (Edit): [optional] # noqa: E501
+ """
+
+ _check_type = kwargs.pop('_check_type', True)
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
+ _path_to_item = kwargs.pop('_path_to_item', ())
+ _configuration = kwargs.pop('_configuration', None)
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
+
+ self = super(OpenApiModel, cls).__new__(cls)
+
+ if args:
+ raise ApiTypeError(
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
+ args,
+ self.__class__.__name__,
+ ),
+ path_to_item=_path_to_item,
+ valid_classes=(self.__class__,),
+ )
+
+ self._data_store = {}
+ self._check_type = _check_type
+ self._spec_property_naming = _spec_property_naming
+ self._path_to_item = _path_to_item
+ self._configuration = _configuration
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+
+ self.name = name
+ for var_name, var_value in kwargs.items():
+ if var_name not in self.attribute_map and \
+ self._configuration is not None and \
+ self._configuration.discard_unknown_keys and \
+ self.additional_properties_type is None:
+ # discard variable.
+ continue
+ setattr(self, var_name, var_value)
+ return self
+
+ required_properties = set([
+ '_data_store',
+ '_check_type',
+ '_spec_property_naming',
+ '_path_to_item',
+ '_configuration',
+ '_visited_composed_classes',
+ ])
+
+ @convert_js_args_to_python_args
+ def __init__(self, name, *args, **kwargs): # noqa: E501
+ """Template - a model defined in OpenAPI
+
+ Args:
+ name (str): The template name
+
+ Keyword Args:
+ _check_type (bool): if True, values for parameters in openapi_types
+ will be type checked and a TypeError will be
+ raised if the wrong type is input.
+ Defaults to True
+ _path_to_item (tuple/list): This is a list of keys or values to
+ drill down to the model in received_data
+ when deserializing a response
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _configuration (Configuration): the instance to use when
+ deserializing a file_type parameter.
+ If passed, type conversion is attempted
+ If omitted no type conversion is done.
+ _visited_composed_classes (tuple): This stores a tuple of
+ classes that we have traveled through so that
+ if we see that class again we will not use its
+ discriminator again.
+ When traveling through a discriminator, the
+ composed schema that is
+ is traveled through is added to this set.
+ For example if Animal has a discriminator
+ petType and we pass in "Dog", and the class Dog
+ allOf includes Animal, we move through Animal
+ once using the discriminator, and pick Dog.
+ Then in Dog, we will make an instance of the
+ Animal class but this time we won't travel
+ through its discriminator because we passed in
+ _visited_composed_classes = (Animal,)
+ template (Edit): [optional] # noqa: E501
+ """
+
+ _check_type = kwargs.pop('_check_type', True)
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
+ _path_to_item = kwargs.pop('_path_to_item', ())
+ _configuration = kwargs.pop('_configuration', None)
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
+
+ if args:
+ raise ApiTypeError(
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
+ args,
+ self.__class__.__name__,
+ ),
+ path_to_item=_path_to_item,
+ valid_classes=(self.__class__,),
+ )
+
+ self._data_store = {}
+ self._check_type = _check_type
+ self._spec_property_naming = _spec_property_naming
+ self._path_to_item = _path_to_item
+ self._configuration = _configuration
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+
+ self.name = name
+ for var_name, var_value in kwargs.items():
+ if var_name not in self.attribute_map and \
+ self._configuration is not None and \
+ self._configuration.discard_unknown_keys and \
+ self.additional_properties_type is None:
+ # discard variable.
+ continue
+ setattr(self, var_name, var_value)
+ if var_name in self.read_only_vars:
+ raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate "
+ f"class with read only attributes.")
diff --git a/shotstack_sdk/model/template_data_response.py b/shotstack_sdk/model/template_data_response.py
new file mode 100644
index 0000000..3ecfb08
--- /dev/null
+++ b/shotstack_sdk/model/template_data_response.py
@@ -0,0 +1,279 @@
+"""
+ Shotstack
+
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+
+ The version of the OpenAPI document: v1
+ Generated by: https://openapi-generator.tech
+"""
+
+
+import re # noqa: F401
+import sys # noqa: F401
+
+from shotstack_sdk.model_utils import ( # noqa: F401
+ ApiTypeError,
+ ModelComposed,
+ ModelNormal,
+ ModelSimple,
+ cached_property,
+ change_keys_js_to_python,
+ convert_js_args_to_python_args,
+ date,
+ datetime,
+ file_type,
+ none_type,
+ validate_get_composed_info,
+ OpenApiModel
+)
+from shotstack_sdk.exceptions import ApiAttributeError
+
+
+def lazy_import():
+ from shotstack_sdk.model.template_data_response_data import TemplateDataResponseData
+ globals()['TemplateDataResponseData'] = TemplateDataResponseData
+
+
+class TemplateDataResponse(ModelNormal):
+ """NOTE: This class is auto generated by OpenAPI Generator.
+ Ref: https://openapi-generator.tech
+
+ Do not edit the class manually.
+
+ Attributes:
+ allowed_values (dict): The key is the tuple path to the attribute
+ and the for var_name this is (var_name,). The value is a dict
+ with a capitalized key describing the allowed value and an allowed
+ value. These dicts store the allowed enum values.
+ attribute_map (dict): The key is attribute name
+ and the value is json key in definition.
+ discriminator_value_class_map (dict): A dict to go from the discriminator
+ variable value to the discriminator class name.
+ validations (dict): The key is the tuple path to the attribute
+ and the for var_name this is (var_name,). The value is a dict
+ that stores validations for max_length, min_length, max_items,
+ min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum,
+ inclusive_minimum, and regex.
+ additional_properties_type (tuple): A tuple of classes accepted
+ as additional properties values.
+ """
+
+ allowed_values = {
+ }
+
+ validations = {
+ }
+
+ @cached_property
+ def additional_properties_type():
+ """
+ This must be a method because a model may have properties that are
+ of type self, this must run after the class is loaded
+ """
+ lazy_import()
+ return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
+
+ _nullable = False
+
+ @cached_property
+ def openapi_types():
+ """
+ This must be a method because a model may have properties that are
+ of type self, this must run after the class is loaded
+
+ Returns
+ openapi_types (dict): The key is attribute name
+ and the value is attribute type.
+ """
+ lazy_import()
+ return {
+ 'success': (bool,), # noqa: E501
+ 'message': (str,), # noqa: E501
+ 'response': (TemplateDataResponseData,), # noqa: E501
+ }
+
+ @cached_property
+ def discriminator():
+ return None
+
+
+ attribute_map = {
+ 'success': 'success', # noqa: E501
+ 'message': 'message', # noqa: E501
+ 'response': 'response', # noqa: E501
+ }
+
+ read_only_vars = {
+ }
+
+ _composed_schemas = {}
+
+ @classmethod
+ @convert_js_args_to_python_args
+ def _from_openapi_data(cls, success, message, response, *args, **kwargs): # noqa: E501
+ """TemplateDataResponse - a model defined in OpenAPI
+
+ Args:
+ success (bool): `true` if successfully created, else `false`.
+ message (str): `OK`, `Bad Request` or an error message.
+ response (TemplateDataResponseData):
+
+ Keyword Args:
+ _check_type (bool): if True, values for parameters in openapi_types
+ will be type checked and a TypeError will be
+ raised if the wrong type is input.
+ Defaults to True
+ _path_to_item (tuple/list): This is a list of keys or values to
+ drill down to the model in received_data
+ when deserializing a response
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _configuration (Configuration): the instance to use when
+ deserializing a file_type parameter.
+ If passed, type conversion is attempted
+ If omitted no type conversion is done.
+ _visited_composed_classes (tuple): This stores a tuple of
+ classes that we have traveled through so that
+ if we see that class again we will not use its
+ discriminator again.
+ When traveling through a discriminator, the
+ composed schema that is
+ is traveled through is added to this set.
+ For example if Animal has a discriminator
+ petType and we pass in "Dog", and the class Dog
+ allOf includes Animal, we move through Animal
+ once using the discriminator, and pick Dog.
+ Then in Dog, we will make an instance of the
+ Animal class but this time we won't travel
+ through its discriminator because we passed in
+ _visited_composed_classes = (Animal,)
+ """
+
+ _check_type = kwargs.pop('_check_type', True)
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
+ _path_to_item = kwargs.pop('_path_to_item', ())
+ _configuration = kwargs.pop('_configuration', None)
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
+
+ self = super(OpenApiModel, cls).__new__(cls)
+
+ if args:
+ raise ApiTypeError(
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
+ args,
+ self.__class__.__name__,
+ ),
+ path_to_item=_path_to_item,
+ valid_classes=(self.__class__,),
+ )
+
+ self._data_store = {}
+ self._check_type = _check_type
+ self._spec_property_naming = _spec_property_naming
+ self._path_to_item = _path_to_item
+ self._configuration = _configuration
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+
+ self.success = success
+ self.message = message
+ self.response = response
+ for var_name, var_value in kwargs.items():
+ if var_name not in self.attribute_map and \
+ self._configuration is not None and \
+ self._configuration.discard_unknown_keys and \
+ self.additional_properties_type is None:
+ # discard variable.
+ continue
+ setattr(self, var_name, var_value)
+ return self
+
+ required_properties = set([
+ '_data_store',
+ '_check_type',
+ '_spec_property_naming',
+ '_path_to_item',
+ '_configuration',
+ '_visited_composed_classes',
+ ])
+
+ @convert_js_args_to_python_args
+ def __init__(self, success, message, response, *args, **kwargs): # noqa: E501
+ """TemplateDataResponse - a model defined in OpenAPI
+
+ Args:
+ success (bool): `true` if successfully created, else `false`.
+ message (str): `OK`, `Bad Request` or an error message.
+ response (TemplateDataResponseData):
+
+ Keyword Args:
+ _check_type (bool): if True, values for parameters in openapi_types
+ will be type checked and a TypeError will be
+ raised if the wrong type is input.
+ Defaults to True
+ _path_to_item (tuple/list): This is a list of keys or values to
+ drill down to the model in received_data
+ when deserializing a response
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _configuration (Configuration): the instance to use when
+ deserializing a file_type parameter.
+ If passed, type conversion is attempted
+ If omitted no type conversion is done.
+ _visited_composed_classes (tuple): This stores a tuple of
+ classes that we have traveled through so that
+ if we see that class again we will not use its
+ discriminator again.
+ When traveling through a discriminator, the
+ composed schema that is
+ is traveled through is added to this set.
+ For example if Animal has a discriminator
+ petType and we pass in "Dog", and the class Dog
+ allOf includes Animal, we move through Animal
+ once using the discriminator, and pick Dog.
+ Then in Dog, we will make an instance of the
+ Animal class but this time we won't travel
+ through its discriminator because we passed in
+ _visited_composed_classes = (Animal,)
+ """
+
+ _check_type = kwargs.pop('_check_type', True)
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
+ _path_to_item = kwargs.pop('_path_to_item', ())
+ _configuration = kwargs.pop('_configuration', None)
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
+
+ if args:
+ raise ApiTypeError(
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
+ args,
+ self.__class__.__name__,
+ ),
+ path_to_item=_path_to_item,
+ valid_classes=(self.__class__,),
+ )
+
+ self._data_store = {}
+ self._check_type = _check_type
+ self._spec_property_naming = _spec_property_naming
+ self._path_to_item = _path_to_item
+ self._configuration = _configuration
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+
+ self.success = success
+ self.message = message
+ self.response = response
+ for var_name, var_value in kwargs.items():
+ if var_name not in self.attribute_map and \
+ self._configuration is not None and \
+ self._configuration.discard_unknown_keys and \
+ self.additional_properties_type is None:
+ # discard variable.
+ continue
+ setattr(self, var_name, var_value)
+ if var_name in self.read_only_vars:
+ raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate "
+ f"class with read only attributes.")
diff --git a/shotstack_sdk/model/template_data_response_data.py b/shotstack_sdk/model/template_data_response_data.py
new file mode 100644
index 0000000..ec757c0
--- /dev/null
+++ b/shotstack_sdk/model/template_data_response_data.py
@@ -0,0 +1,279 @@
+"""
+ Shotstack
+
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+
+ The version of the OpenAPI document: v1
+ Generated by: https://openapi-generator.tech
+"""
+
+
+import re # noqa: F401
+import sys # noqa: F401
+
+from shotstack_sdk.model_utils import ( # noqa: F401
+ ApiTypeError,
+ ModelComposed,
+ ModelNormal,
+ ModelSimple,
+ cached_property,
+ change_keys_js_to_python,
+ convert_js_args_to_python_args,
+ date,
+ datetime,
+ file_type,
+ none_type,
+ validate_get_composed_info,
+ OpenApiModel
+)
+from shotstack_sdk.exceptions import ApiAttributeError
+
+
+
+class TemplateDataResponseData(ModelNormal):
+ """NOTE: This class is auto generated by OpenAPI Generator.
+ Ref: https://openapi-generator.tech
+
+ Do not edit the class manually.
+
+ Attributes:
+ allowed_values (dict): The key is the tuple path to the attribute
+ and the for var_name this is (var_name,). The value is a dict
+ with a capitalized key describing the allowed value and an allowed
+ value. These dicts store the allowed enum values.
+ attribute_map (dict): The key is attribute name
+ and the value is json key in definition.
+ discriminator_value_class_map (dict): A dict to go from the discriminator
+ variable value to the discriminator class name.
+ validations (dict): The key is the tuple path to the attribute
+ and the for var_name this is (var_name,). The value is a dict
+ that stores validations for max_length, min_length, max_items,
+ min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum,
+ inclusive_minimum, and regex.
+ additional_properties_type (tuple): A tuple of classes accepted
+ as additional properties values.
+ """
+
+ allowed_values = {
+ }
+
+ validations = {
+ }
+
+ @cached_property
+ def additional_properties_type():
+ """
+ This must be a method because a model may have properties that are
+ of type self, this must run after the class is loaded
+ """
+ return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
+
+ _nullable = False
+
+ @cached_property
+ def openapi_types():
+ """
+ This must be a method because a model may have properties that are
+ of type self, this must run after the class is loaded
+
+ Returns
+ openapi_types (dict): The key is attribute name
+ and the value is attribute type.
+ """
+ return {
+ 'id': (str,), # noqa: E501
+ 'name': (str,), # noqa: E501
+ 'owner': (str,), # noqa: E501
+ 'template': (str,), # noqa: E501
+ }
+
+ @cached_property
+ def discriminator():
+ return None
+
+
+ attribute_map = {
+ 'id': 'id', # noqa: E501
+ 'name': 'name', # noqa: E501
+ 'owner': 'owner', # noqa: E501
+ 'template': 'template', # noqa: E501
+ }
+
+ read_only_vars = {
+ }
+
+ _composed_schemas = {}
+
+ @classmethod
+ @convert_js_args_to_python_args
+ def _from_openapi_data(cls, id, name, owner, template, *args, **kwargs): # noqa: E501
+ """TemplateDataResponseData - a model defined in OpenAPI
+
+ Args:
+ id (str): The unique id of the template in UUID format.
+ name (str): The template name.
+ owner (str): The owner id of the templates.
+ template (str): The [Edit](#tocs_edit) template.
+
+ Keyword Args:
+ _check_type (bool): if True, values for parameters in openapi_types
+ will be type checked and a TypeError will be
+ raised if the wrong type is input.
+ Defaults to True
+ _path_to_item (tuple/list): This is a list of keys or values to
+ drill down to the model in received_data
+ when deserializing a response
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _configuration (Configuration): the instance to use when
+ deserializing a file_type parameter.
+ If passed, type conversion is attempted
+ If omitted no type conversion is done.
+ _visited_composed_classes (tuple): This stores a tuple of
+ classes that we have traveled through so that
+ if we see that class again we will not use its
+ discriminator again.
+ When traveling through a discriminator, the
+ composed schema that is
+ is traveled through is added to this set.
+ For example if Animal has a discriminator
+ petType and we pass in "Dog", and the class Dog
+ allOf includes Animal, we move through Animal
+ once using the discriminator, and pick Dog.
+ Then in Dog, we will make an instance of the
+ Animal class but this time we won't travel
+ through its discriminator because we passed in
+ _visited_composed_classes = (Animal,)
+ """
+
+ _check_type = kwargs.pop('_check_type', True)
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
+ _path_to_item = kwargs.pop('_path_to_item', ())
+ _configuration = kwargs.pop('_configuration', None)
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
+
+ self = super(OpenApiModel, cls).__new__(cls)
+
+ if args:
+ raise ApiTypeError(
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
+ args,
+ self.__class__.__name__,
+ ),
+ path_to_item=_path_to_item,
+ valid_classes=(self.__class__,),
+ )
+
+ self._data_store = {}
+ self._check_type = _check_type
+ self._spec_property_naming = _spec_property_naming
+ self._path_to_item = _path_to_item
+ self._configuration = _configuration
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+
+ self.id = id
+ self.name = name
+ self.owner = owner
+ self.template = template
+ for var_name, var_value in kwargs.items():
+ if var_name not in self.attribute_map and \
+ self._configuration is not None and \
+ self._configuration.discard_unknown_keys and \
+ self.additional_properties_type is None:
+ # discard variable.
+ continue
+ setattr(self, var_name, var_value)
+ return self
+
+ required_properties = set([
+ '_data_store',
+ '_check_type',
+ '_spec_property_naming',
+ '_path_to_item',
+ '_configuration',
+ '_visited_composed_classes',
+ ])
+
+ @convert_js_args_to_python_args
+ def __init__(self, id, name, owner, template, *args, **kwargs): # noqa: E501
+ """TemplateDataResponseData - a model defined in OpenAPI
+
+ Args:
+ id (str): The unique id of the template in UUID format.
+ name (str): The template name.
+ owner (str): The owner id of the templates.
+ template (str): The [Edit](#tocs_edit) template.
+
+ Keyword Args:
+ _check_type (bool): if True, values for parameters in openapi_types
+ will be type checked and a TypeError will be
+ raised if the wrong type is input.
+ Defaults to True
+ _path_to_item (tuple/list): This is a list of keys or values to
+ drill down to the model in received_data
+ when deserializing a response
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _configuration (Configuration): the instance to use when
+ deserializing a file_type parameter.
+ If passed, type conversion is attempted
+ If omitted no type conversion is done.
+ _visited_composed_classes (tuple): This stores a tuple of
+ classes that we have traveled through so that
+ if we see that class again we will not use its
+ discriminator again.
+ When traveling through a discriminator, the
+ composed schema that is
+ is traveled through is added to this set.
+ For example if Animal has a discriminator
+ petType and we pass in "Dog", and the class Dog
+ allOf includes Animal, we move through Animal
+ once using the discriminator, and pick Dog.
+ Then in Dog, we will make an instance of the
+ Animal class but this time we won't travel
+ through its discriminator because we passed in
+ _visited_composed_classes = (Animal,)
+ """
+
+ _check_type = kwargs.pop('_check_type', True)
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
+ _path_to_item = kwargs.pop('_path_to_item', ())
+ _configuration = kwargs.pop('_configuration', None)
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
+
+ if args:
+ raise ApiTypeError(
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
+ args,
+ self.__class__.__name__,
+ ),
+ path_to_item=_path_to_item,
+ valid_classes=(self.__class__,),
+ )
+
+ self._data_store = {}
+ self._check_type = _check_type
+ self._spec_property_naming = _spec_property_naming
+ self._path_to_item = _path_to_item
+ self._configuration = _configuration
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+
+ self.id = id
+ self.name = name
+ self.owner = owner
+ self.template = template
+ for var_name, var_value in kwargs.items():
+ if var_name not in self.attribute_map and \
+ self._configuration is not None and \
+ self._configuration.discard_unknown_keys and \
+ self.additional_properties_type is None:
+ # discard variable.
+ continue
+ setattr(self, var_name, var_value)
+ if var_name in self.read_only_vars:
+ raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate "
+ f"class with read only attributes.")
diff --git a/shotstack_sdk/model/template_list_response.py b/shotstack_sdk/model/template_list_response.py
new file mode 100644
index 0000000..858645d
--- /dev/null
+++ b/shotstack_sdk/model/template_list_response.py
@@ -0,0 +1,279 @@
+"""
+ Shotstack
+
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+
+ The version of the OpenAPI document: v1
+ Generated by: https://openapi-generator.tech
+"""
+
+
+import re # noqa: F401
+import sys # noqa: F401
+
+from shotstack_sdk.model_utils import ( # noqa: F401
+ ApiTypeError,
+ ModelComposed,
+ ModelNormal,
+ ModelSimple,
+ cached_property,
+ change_keys_js_to_python,
+ convert_js_args_to_python_args,
+ date,
+ datetime,
+ file_type,
+ none_type,
+ validate_get_composed_info,
+ OpenApiModel
+)
+from shotstack_sdk.exceptions import ApiAttributeError
+
+
+def lazy_import():
+ from shotstack_sdk.model.template_list_response_data import TemplateListResponseData
+ globals()['TemplateListResponseData'] = TemplateListResponseData
+
+
+class TemplateListResponse(ModelNormal):
+ """NOTE: This class is auto generated by OpenAPI Generator.
+ Ref: https://openapi-generator.tech
+
+ Do not edit the class manually.
+
+ Attributes:
+ allowed_values (dict): The key is the tuple path to the attribute
+ and the for var_name this is (var_name,). The value is a dict
+ with a capitalized key describing the allowed value and an allowed
+ value. These dicts store the allowed enum values.
+ attribute_map (dict): The key is attribute name
+ and the value is json key in definition.
+ discriminator_value_class_map (dict): A dict to go from the discriminator
+ variable value to the discriminator class name.
+ validations (dict): The key is the tuple path to the attribute
+ and the for var_name this is (var_name,). The value is a dict
+ that stores validations for max_length, min_length, max_items,
+ min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum,
+ inclusive_minimum, and regex.
+ additional_properties_type (tuple): A tuple of classes accepted
+ as additional properties values.
+ """
+
+ allowed_values = {
+ }
+
+ validations = {
+ }
+
+ @cached_property
+ def additional_properties_type():
+ """
+ This must be a method because a model may have properties that are
+ of type self, this must run after the class is loaded
+ """
+ lazy_import()
+ return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
+
+ _nullable = False
+
+ @cached_property
+ def openapi_types():
+ """
+ This must be a method because a model may have properties that are
+ of type self, this must run after the class is loaded
+
+ Returns
+ openapi_types (dict): The key is attribute name
+ and the value is attribute type.
+ """
+ lazy_import()
+ return {
+ 'success': (bool,), # noqa: E501
+ 'message': (str,), # noqa: E501
+ 'response': (TemplateListResponseData,), # noqa: E501
+ }
+
+ @cached_property
+ def discriminator():
+ return None
+
+
+ attribute_map = {
+ 'success': 'success', # noqa: E501
+ 'message': 'message', # noqa: E501
+ 'response': 'response', # noqa: E501
+ }
+
+ read_only_vars = {
+ }
+
+ _composed_schemas = {}
+
+ @classmethod
+ @convert_js_args_to_python_args
+ def _from_openapi_data(cls, success, message, response, *args, **kwargs): # noqa: E501
+ """TemplateListResponse - a model defined in OpenAPI
+
+ Args:
+ success (bool): `true` if successfully created, else `false`.
+ message (str): `Created`, `Bad Request` or an error message.
+ response (TemplateListResponseData):
+
+ Keyword Args:
+ _check_type (bool): if True, values for parameters in openapi_types
+ will be type checked and a TypeError will be
+ raised if the wrong type is input.
+ Defaults to True
+ _path_to_item (tuple/list): This is a list of keys or values to
+ drill down to the model in received_data
+ when deserializing a response
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _configuration (Configuration): the instance to use when
+ deserializing a file_type parameter.
+ If passed, type conversion is attempted
+ If omitted no type conversion is done.
+ _visited_composed_classes (tuple): This stores a tuple of
+ classes that we have traveled through so that
+ if we see that class again we will not use its
+ discriminator again.
+ When traveling through a discriminator, the
+ composed schema that is
+ is traveled through is added to this set.
+ For example if Animal has a discriminator
+ petType and we pass in "Dog", and the class Dog
+ allOf includes Animal, we move through Animal
+ once using the discriminator, and pick Dog.
+ Then in Dog, we will make an instance of the
+ Animal class but this time we won't travel
+ through its discriminator because we passed in
+ _visited_composed_classes = (Animal,)
+ """
+
+ _check_type = kwargs.pop('_check_type', True)
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
+ _path_to_item = kwargs.pop('_path_to_item', ())
+ _configuration = kwargs.pop('_configuration', None)
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
+
+ self = super(OpenApiModel, cls).__new__(cls)
+
+ if args:
+ raise ApiTypeError(
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
+ args,
+ self.__class__.__name__,
+ ),
+ path_to_item=_path_to_item,
+ valid_classes=(self.__class__,),
+ )
+
+ self._data_store = {}
+ self._check_type = _check_type
+ self._spec_property_naming = _spec_property_naming
+ self._path_to_item = _path_to_item
+ self._configuration = _configuration
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+
+ self.success = success
+ self.message = message
+ self.response = response
+ for var_name, var_value in kwargs.items():
+ if var_name not in self.attribute_map and \
+ self._configuration is not None and \
+ self._configuration.discard_unknown_keys and \
+ self.additional_properties_type is None:
+ # discard variable.
+ continue
+ setattr(self, var_name, var_value)
+ return self
+
+ required_properties = set([
+ '_data_store',
+ '_check_type',
+ '_spec_property_naming',
+ '_path_to_item',
+ '_configuration',
+ '_visited_composed_classes',
+ ])
+
+ @convert_js_args_to_python_args
+ def __init__(self, success, message, response, *args, **kwargs): # noqa: E501
+ """TemplateListResponse - a model defined in OpenAPI
+
+ Args:
+ success (bool): `true` if successfully created, else `false`.
+ message (str): `Created`, `Bad Request` or an error message.
+ response (TemplateListResponseData):
+
+ Keyword Args:
+ _check_type (bool): if True, values for parameters in openapi_types
+ will be type checked and a TypeError will be
+ raised if the wrong type is input.
+ Defaults to True
+ _path_to_item (tuple/list): This is a list of keys or values to
+ drill down to the model in received_data
+ when deserializing a response
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _configuration (Configuration): the instance to use when
+ deserializing a file_type parameter.
+ If passed, type conversion is attempted
+ If omitted no type conversion is done.
+ _visited_composed_classes (tuple): This stores a tuple of
+ classes that we have traveled through so that
+ if we see that class again we will not use its
+ discriminator again.
+ When traveling through a discriminator, the
+ composed schema that is
+ is traveled through is added to this set.
+ For example if Animal has a discriminator
+ petType and we pass in "Dog", and the class Dog
+ allOf includes Animal, we move through Animal
+ once using the discriminator, and pick Dog.
+ Then in Dog, we will make an instance of the
+ Animal class but this time we won't travel
+ through its discriminator because we passed in
+ _visited_composed_classes = (Animal,)
+ """
+
+ _check_type = kwargs.pop('_check_type', True)
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
+ _path_to_item = kwargs.pop('_path_to_item', ())
+ _configuration = kwargs.pop('_configuration', None)
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
+
+ if args:
+ raise ApiTypeError(
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
+ args,
+ self.__class__.__name__,
+ ),
+ path_to_item=_path_to_item,
+ valid_classes=(self.__class__,),
+ )
+
+ self._data_store = {}
+ self._check_type = _check_type
+ self._spec_property_naming = _spec_property_naming
+ self._path_to_item = _path_to_item
+ self._configuration = _configuration
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+
+ self.success = success
+ self.message = message
+ self.response = response
+ for var_name, var_value in kwargs.items():
+ if var_name not in self.attribute_map and \
+ self._configuration is not None and \
+ self._configuration.discard_unknown_keys and \
+ self.additional_properties_type is None:
+ # discard variable.
+ continue
+ setattr(self, var_name, var_value)
+ if var_name in self.read_only_vars:
+ raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate "
+ f"class with read only attributes.")
diff --git a/shotstack_sdk/model/template_list_response_data.py b/shotstack_sdk/model/template_list_response_data.py
new file mode 100644
index 0000000..d0be522
--- /dev/null
+++ b/shotstack_sdk/model/template_list_response_data.py
@@ -0,0 +1,273 @@
+"""
+ Shotstack
+
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+
+ The version of the OpenAPI document: v1
+ Generated by: https://openapi-generator.tech
+"""
+
+
+import re # noqa: F401
+import sys # noqa: F401
+
+from shotstack_sdk.model_utils import ( # noqa: F401
+ ApiTypeError,
+ ModelComposed,
+ ModelNormal,
+ ModelSimple,
+ cached_property,
+ change_keys_js_to_python,
+ convert_js_args_to_python_args,
+ date,
+ datetime,
+ file_type,
+ none_type,
+ validate_get_composed_info,
+ OpenApiModel
+)
+from shotstack_sdk.exceptions import ApiAttributeError
+
+
+def lazy_import():
+ from shotstack_sdk.model.template_list_response_item import TemplateListResponseItem
+ globals()['TemplateListResponseItem'] = TemplateListResponseItem
+
+
+class TemplateListResponseData(ModelNormal):
+ """NOTE: This class is auto generated by OpenAPI Generator.
+ Ref: https://openapi-generator.tech
+
+ Do not edit the class manually.
+
+ Attributes:
+ allowed_values (dict): The key is the tuple path to the attribute
+ and the for var_name this is (var_name,). The value is a dict
+ with a capitalized key describing the allowed value and an allowed
+ value. These dicts store the allowed enum values.
+ attribute_map (dict): The key is attribute name
+ and the value is json key in definition.
+ discriminator_value_class_map (dict): A dict to go from the discriminator
+ variable value to the discriminator class name.
+ validations (dict): The key is the tuple path to the attribute
+ and the for var_name this is (var_name,). The value is a dict
+ that stores validations for max_length, min_length, max_items,
+ min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum,
+ inclusive_minimum, and regex.
+ additional_properties_type (tuple): A tuple of classes accepted
+ as additional properties values.
+ """
+
+ allowed_values = {
+ }
+
+ validations = {
+ }
+
+ @cached_property
+ def additional_properties_type():
+ """
+ This must be a method because a model may have properties that are
+ of type self, this must run after the class is loaded
+ """
+ lazy_import()
+ return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
+
+ _nullable = False
+
+ @cached_property
+ def openapi_types():
+ """
+ This must be a method because a model may have properties that are
+ of type self, this must run after the class is loaded
+
+ Returns
+ openapi_types (dict): The key is attribute name
+ and the value is attribute type.
+ """
+ lazy_import()
+ return {
+ 'owner': (str,), # noqa: E501
+ 'templates': ([TemplateListResponseItem],), # noqa: E501
+ }
+
+ @cached_property
+ def discriminator():
+ return None
+
+
+ attribute_map = {
+ 'owner': 'owner', # noqa: E501
+ 'templates': 'templates', # noqa: E501
+ }
+
+ read_only_vars = {
+ }
+
+ _composed_schemas = {}
+
+ @classmethod
+ @convert_js_args_to_python_args
+ def _from_openapi_data(cls, owner, templates, *args, **kwargs): # noqa: E501
+ """TemplateListResponseData - a model defined in OpenAPI
+
+ Args:
+ owner (str): The owner id of the templates.
+ templates ([TemplateListResponseItem]): The list of templates.
+
+ Keyword Args:
+ _check_type (bool): if True, values for parameters in openapi_types
+ will be type checked and a TypeError will be
+ raised if the wrong type is input.
+ Defaults to True
+ _path_to_item (tuple/list): This is a list of keys or values to
+ drill down to the model in received_data
+ when deserializing a response
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _configuration (Configuration): the instance to use when
+ deserializing a file_type parameter.
+ If passed, type conversion is attempted
+ If omitted no type conversion is done.
+ _visited_composed_classes (tuple): This stores a tuple of
+ classes that we have traveled through so that
+ if we see that class again we will not use its
+ discriminator again.
+ When traveling through a discriminator, the
+ composed schema that is
+ is traveled through is added to this set.
+ For example if Animal has a discriminator
+ petType and we pass in "Dog", and the class Dog
+ allOf includes Animal, we move through Animal
+ once using the discriminator, and pick Dog.
+ Then in Dog, we will make an instance of the
+ Animal class but this time we won't travel
+ through its discriminator because we passed in
+ _visited_composed_classes = (Animal,)
+ """
+
+ _check_type = kwargs.pop('_check_type', True)
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
+ _path_to_item = kwargs.pop('_path_to_item', ())
+ _configuration = kwargs.pop('_configuration', None)
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
+
+ self = super(OpenApiModel, cls).__new__(cls)
+
+ if args:
+ raise ApiTypeError(
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
+ args,
+ self.__class__.__name__,
+ ),
+ path_to_item=_path_to_item,
+ valid_classes=(self.__class__,),
+ )
+
+ self._data_store = {}
+ self._check_type = _check_type
+ self._spec_property_naming = _spec_property_naming
+ self._path_to_item = _path_to_item
+ self._configuration = _configuration
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+
+ self.owner = owner
+ self.templates = templates
+ for var_name, var_value in kwargs.items():
+ if var_name not in self.attribute_map and \
+ self._configuration is not None and \
+ self._configuration.discard_unknown_keys and \
+ self.additional_properties_type is None:
+ # discard variable.
+ continue
+ setattr(self, var_name, var_value)
+ return self
+
+ required_properties = set([
+ '_data_store',
+ '_check_type',
+ '_spec_property_naming',
+ '_path_to_item',
+ '_configuration',
+ '_visited_composed_classes',
+ ])
+
+ @convert_js_args_to_python_args
+ def __init__(self, owner, templates, *args, **kwargs): # noqa: E501
+ """TemplateListResponseData - a model defined in OpenAPI
+
+ Args:
+ owner (str): The owner id of the templates.
+ templates ([TemplateListResponseItem]): The list of templates.
+
+ Keyword Args:
+ _check_type (bool): if True, values for parameters in openapi_types
+ will be type checked and a TypeError will be
+ raised if the wrong type is input.
+ Defaults to True
+ _path_to_item (tuple/list): This is a list of keys or values to
+ drill down to the model in received_data
+ when deserializing a response
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _configuration (Configuration): the instance to use when
+ deserializing a file_type parameter.
+ If passed, type conversion is attempted
+ If omitted no type conversion is done.
+ _visited_composed_classes (tuple): This stores a tuple of
+ classes that we have traveled through so that
+ if we see that class again we will not use its
+ discriminator again.
+ When traveling through a discriminator, the
+ composed schema that is
+ is traveled through is added to this set.
+ For example if Animal has a discriminator
+ petType and we pass in "Dog", and the class Dog
+ allOf includes Animal, we move through Animal
+ once using the discriminator, and pick Dog.
+ Then in Dog, we will make an instance of the
+ Animal class but this time we won't travel
+ through its discriminator because we passed in
+ _visited_composed_classes = (Animal,)
+ """
+
+ _check_type = kwargs.pop('_check_type', True)
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
+ _path_to_item = kwargs.pop('_path_to_item', ())
+ _configuration = kwargs.pop('_configuration', None)
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
+
+ if args:
+ raise ApiTypeError(
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
+ args,
+ self.__class__.__name__,
+ ),
+ path_to_item=_path_to_item,
+ valid_classes=(self.__class__,),
+ )
+
+ self._data_store = {}
+ self._check_type = _check_type
+ self._spec_property_naming = _spec_property_naming
+ self._path_to_item = _path_to_item
+ self._configuration = _configuration
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+
+ self.owner = owner
+ self.templates = templates
+ for var_name, var_value in kwargs.items():
+ if var_name not in self.attribute_map and \
+ self._configuration is not None and \
+ self._configuration.discard_unknown_keys and \
+ self.additional_properties_type is None:
+ # discard variable.
+ continue
+ setattr(self, var_name, var_value)
+ if var_name in self.read_only_vars:
+ raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate "
+ f"class with read only attributes.")
diff --git a/shotstack_sdk/model/template_list_response_item.py b/shotstack_sdk/model/template_list_response_item.py
new file mode 100644
index 0000000..0c6904b
--- /dev/null
+++ b/shotstack_sdk/model/template_list_response_item.py
@@ -0,0 +1,279 @@
+"""
+ Shotstack
+
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+
+ The version of the OpenAPI document: v1
+ Generated by: https://openapi-generator.tech
+"""
+
+
+import re # noqa: F401
+import sys # noqa: F401
+
+from shotstack_sdk.model_utils import ( # noqa: F401
+ ApiTypeError,
+ ModelComposed,
+ ModelNormal,
+ ModelSimple,
+ cached_property,
+ change_keys_js_to_python,
+ convert_js_args_to_python_args,
+ date,
+ datetime,
+ file_type,
+ none_type,
+ validate_get_composed_info,
+ OpenApiModel
+)
+from shotstack_sdk.exceptions import ApiAttributeError
+
+
+
+class TemplateListResponseItem(ModelNormal):
+ """NOTE: This class is auto generated by OpenAPI Generator.
+ Ref: https://openapi-generator.tech
+
+ Do not edit the class manually.
+
+ Attributes:
+ allowed_values (dict): The key is the tuple path to the attribute
+ and the for var_name this is (var_name,). The value is a dict
+ with a capitalized key describing the allowed value and an allowed
+ value. These dicts store the allowed enum values.
+ attribute_map (dict): The key is attribute name
+ and the value is json key in definition.
+ discriminator_value_class_map (dict): A dict to go from the discriminator
+ variable value to the discriminator class name.
+ validations (dict): The key is the tuple path to the attribute
+ and the for var_name this is (var_name,). The value is a dict
+ that stores validations for max_length, min_length, max_items,
+ min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum,
+ inclusive_minimum, and regex.
+ additional_properties_type (tuple): A tuple of classes accepted
+ as additional properties values.
+ """
+
+ allowed_values = {
+ }
+
+ validations = {
+ }
+
+ @cached_property
+ def additional_properties_type():
+ """
+ This must be a method because a model may have properties that are
+ of type self, this must run after the class is loaded
+ """
+ return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
+
+ _nullable = False
+
+ @cached_property
+ def openapi_types():
+ """
+ This must be a method because a model may have properties that are
+ of type self, this must run after the class is loaded
+
+ Returns
+ openapi_types (dict): The key is attribute name
+ and the value is attribute type.
+ """
+ return {
+ 'id': (str,), # noqa: E501
+ 'name': (str,), # noqa: E501
+ 'created': (str,), # noqa: E501
+ 'updated': (str,), # noqa: E501
+ }
+
+ @cached_property
+ def discriminator():
+ return None
+
+
+ attribute_map = {
+ 'id': 'id', # noqa: E501
+ 'name': 'name', # noqa: E501
+ 'created': 'created', # noqa: E501
+ 'updated': 'updated', # noqa: E501
+ }
+
+ read_only_vars = {
+ }
+
+ _composed_schemas = {}
+
+ @classmethod
+ @convert_js_args_to_python_args
+ def _from_openapi_data(cls, id, name, created, updated, *args, **kwargs): # noqa: E501
+ """TemplateListResponseItem - a model defined in OpenAPI
+
+ Args:
+ id (str): The unique id of the template in UUID format.
+ name (str): The template name
+ created (str): The time the template was created.
+ updated (str): The time the template was last updated.
+
+ Keyword Args:
+ _check_type (bool): if True, values for parameters in openapi_types
+ will be type checked and a TypeError will be
+ raised if the wrong type is input.
+ Defaults to True
+ _path_to_item (tuple/list): This is a list of keys or values to
+ drill down to the model in received_data
+ when deserializing a response
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _configuration (Configuration): the instance to use when
+ deserializing a file_type parameter.
+ If passed, type conversion is attempted
+ If omitted no type conversion is done.
+ _visited_composed_classes (tuple): This stores a tuple of
+ classes that we have traveled through so that
+ if we see that class again we will not use its
+ discriminator again.
+ When traveling through a discriminator, the
+ composed schema that is
+ is traveled through is added to this set.
+ For example if Animal has a discriminator
+ petType and we pass in "Dog", and the class Dog
+ allOf includes Animal, we move through Animal
+ once using the discriminator, and pick Dog.
+ Then in Dog, we will make an instance of the
+ Animal class but this time we won't travel
+ through its discriminator because we passed in
+ _visited_composed_classes = (Animal,)
+ """
+
+ _check_type = kwargs.pop('_check_type', True)
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
+ _path_to_item = kwargs.pop('_path_to_item', ())
+ _configuration = kwargs.pop('_configuration', None)
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
+
+ self = super(OpenApiModel, cls).__new__(cls)
+
+ if args:
+ raise ApiTypeError(
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
+ args,
+ self.__class__.__name__,
+ ),
+ path_to_item=_path_to_item,
+ valid_classes=(self.__class__,),
+ )
+
+ self._data_store = {}
+ self._check_type = _check_type
+ self._spec_property_naming = _spec_property_naming
+ self._path_to_item = _path_to_item
+ self._configuration = _configuration
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+
+ self.id = id
+ self.name = name
+ self.created = created
+ self.updated = updated
+ for var_name, var_value in kwargs.items():
+ if var_name not in self.attribute_map and \
+ self._configuration is not None and \
+ self._configuration.discard_unknown_keys and \
+ self.additional_properties_type is None:
+ # discard variable.
+ continue
+ setattr(self, var_name, var_value)
+ return self
+
+ required_properties = set([
+ '_data_store',
+ '_check_type',
+ '_spec_property_naming',
+ '_path_to_item',
+ '_configuration',
+ '_visited_composed_classes',
+ ])
+
+ @convert_js_args_to_python_args
+ def __init__(self, id, name, created, updated, *args, **kwargs): # noqa: E501
+ """TemplateListResponseItem - a model defined in OpenAPI
+
+ Args:
+ id (str): The unique id of the template in UUID format.
+ name (str): The template name
+ created (str): The time the template was created.
+ updated (str): The time the template was last updated.
+
+ Keyword Args:
+ _check_type (bool): if True, values for parameters in openapi_types
+ will be type checked and a TypeError will be
+ raised if the wrong type is input.
+ Defaults to True
+ _path_to_item (tuple/list): This is a list of keys or values to
+ drill down to the model in received_data
+ when deserializing a response
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _configuration (Configuration): the instance to use when
+ deserializing a file_type parameter.
+ If passed, type conversion is attempted
+ If omitted no type conversion is done.
+ _visited_composed_classes (tuple): This stores a tuple of
+ classes that we have traveled through so that
+ if we see that class again we will not use its
+ discriminator again.
+ When traveling through a discriminator, the
+ composed schema that is
+ is traveled through is added to this set.
+ For example if Animal has a discriminator
+ petType and we pass in "Dog", and the class Dog
+ allOf includes Animal, we move through Animal
+ once using the discriminator, and pick Dog.
+ Then in Dog, we will make an instance of the
+ Animal class but this time we won't travel
+ through its discriminator because we passed in
+ _visited_composed_classes = (Animal,)
+ """
+
+ _check_type = kwargs.pop('_check_type', True)
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
+ _path_to_item = kwargs.pop('_path_to_item', ())
+ _configuration = kwargs.pop('_configuration', None)
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
+
+ if args:
+ raise ApiTypeError(
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
+ args,
+ self.__class__.__name__,
+ ),
+ path_to_item=_path_to_item,
+ valid_classes=(self.__class__,),
+ )
+
+ self._data_store = {}
+ self._check_type = _check_type
+ self._spec_property_naming = _spec_property_naming
+ self._path_to_item = _path_to_item
+ self._configuration = _configuration
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+
+ self.id = id
+ self.name = name
+ self.created = created
+ self.updated = updated
+ for var_name, var_value in kwargs.items():
+ if var_name not in self.attribute_map and \
+ self._configuration is not None and \
+ self._configuration.discard_unknown_keys and \
+ self.additional_properties_type is None:
+ # discard variable.
+ continue
+ setattr(self, var_name, var_value)
+ if var_name in self.read_only_vars:
+ raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate "
+ f"class with read only attributes.")
diff --git a/shotstack_sdk/model/template_render.py b/shotstack_sdk/model/template_render.py
new file mode 100644
index 0000000..e341c5e
--- /dev/null
+++ b/shotstack_sdk/model/template_render.py
@@ -0,0 +1,271 @@
+"""
+ Shotstack
+
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+
+ The version of the OpenAPI document: v1
+ Generated by: https://openapi-generator.tech
+"""
+
+
+import re # noqa: F401
+import sys # noqa: F401
+
+from shotstack_sdk.model_utils import ( # noqa: F401
+ ApiTypeError,
+ ModelComposed,
+ ModelNormal,
+ ModelSimple,
+ cached_property,
+ change_keys_js_to_python,
+ convert_js_args_to_python_args,
+ date,
+ datetime,
+ file_type,
+ none_type,
+ validate_get_composed_info,
+ OpenApiModel
+)
+from shotstack_sdk.exceptions import ApiAttributeError
+
+
+def lazy_import():
+ from shotstack_sdk.model.merge_field import MergeField
+ globals()['MergeField'] = MergeField
+
+
+class TemplateRender(ModelNormal):
+ """NOTE: This class is auto generated by OpenAPI Generator.
+ Ref: https://openapi-generator.tech
+
+ Do not edit the class manually.
+
+ Attributes:
+ allowed_values (dict): The key is the tuple path to the attribute
+ and the for var_name this is (var_name,). The value is a dict
+ with a capitalized key describing the allowed value and an allowed
+ value. These dicts store the allowed enum values.
+ attribute_map (dict): The key is attribute name
+ and the value is json key in definition.
+ discriminator_value_class_map (dict): A dict to go from the discriminator
+ variable value to the discriminator class name.
+ validations (dict): The key is the tuple path to the attribute
+ and the for var_name this is (var_name,). The value is a dict
+ that stores validations for max_length, min_length, max_items,
+ min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum,
+ inclusive_minimum, and regex.
+ additional_properties_type (tuple): A tuple of classes accepted
+ as additional properties values.
+ """
+
+ allowed_values = {
+ }
+
+ validations = {
+ }
+
+ @cached_property
+ def additional_properties_type():
+ """
+ This must be a method because a model may have properties that are
+ of type self, this must run after the class is loaded
+ """
+ lazy_import()
+ return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
+
+ _nullable = False
+
+ @cached_property
+ def openapi_types():
+ """
+ This must be a method because a model may have properties that are
+ of type self, this must run after the class is loaded
+
+ Returns
+ openapi_types (dict): The key is attribute name
+ and the value is attribute type.
+ """
+ lazy_import()
+ return {
+ 'id': (str,), # noqa: E501
+ 'merge': ([MergeField],), # noqa: E501
+ }
+
+ @cached_property
+ def discriminator():
+ return None
+
+
+ attribute_map = {
+ 'id': 'id', # noqa: E501
+ 'merge': 'merge', # noqa: E501
+ }
+
+ read_only_vars = {
+ }
+
+ _composed_schemas = {}
+
+ @classmethod
+ @convert_js_args_to_python_args
+ def _from_openapi_data(cls, id, *args, **kwargs): # noqa: E501
+ """TemplateRender - a model defined in OpenAPI
+
+ Args:
+ id (str): The id of the template to render in UUID format.
+
+ Keyword Args:
+ _check_type (bool): if True, values for parameters in openapi_types
+ will be type checked and a TypeError will be
+ raised if the wrong type is input.
+ Defaults to True
+ _path_to_item (tuple/list): This is a list of keys or values to
+ drill down to the model in received_data
+ when deserializing a response
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _configuration (Configuration): the instance to use when
+ deserializing a file_type parameter.
+ If passed, type conversion is attempted
+ If omitted no type conversion is done.
+ _visited_composed_classes (tuple): This stores a tuple of
+ classes that we have traveled through so that
+ if we see that class again we will not use its
+ discriminator again.
+ When traveling through a discriminator, the
+ composed schema that is
+ is traveled through is added to this set.
+ For example if Animal has a discriminator
+ petType and we pass in "Dog", and the class Dog
+ allOf includes Animal, we move through Animal
+ once using the discriminator, and pick Dog.
+ Then in Dog, we will make an instance of the
+ Animal class but this time we won't travel
+ through its discriminator because we passed in
+ _visited_composed_classes = (Animal,)
+ merge ([MergeField]): An array of key/value pairs that provides an easy way to create templates with placeholders. The placeholders can be used to find and replace keys with values. For example you can search for the placeholder `{{NAME}}` and replace it with the value `Jane`. . [optional] # noqa: E501
+ """
+
+ _check_type = kwargs.pop('_check_type', True)
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
+ _path_to_item = kwargs.pop('_path_to_item', ())
+ _configuration = kwargs.pop('_configuration', None)
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
+
+ self = super(OpenApiModel, cls).__new__(cls)
+
+ if args:
+ raise ApiTypeError(
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
+ args,
+ self.__class__.__name__,
+ ),
+ path_to_item=_path_to_item,
+ valid_classes=(self.__class__,),
+ )
+
+ self._data_store = {}
+ self._check_type = _check_type
+ self._spec_property_naming = _spec_property_naming
+ self._path_to_item = _path_to_item
+ self._configuration = _configuration
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+
+ self.id = id
+ for var_name, var_value in kwargs.items():
+ if var_name not in self.attribute_map and \
+ self._configuration is not None and \
+ self._configuration.discard_unknown_keys and \
+ self.additional_properties_type is None:
+ # discard variable.
+ continue
+ setattr(self, var_name, var_value)
+ return self
+
+ required_properties = set([
+ '_data_store',
+ '_check_type',
+ '_spec_property_naming',
+ '_path_to_item',
+ '_configuration',
+ '_visited_composed_classes',
+ ])
+
+ @convert_js_args_to_python_args
+ def __init__(self, id, *args, **kwargs): # noqa: E501
+ """TemplateRender - a model defined in OpenAPI
+
+ Args:
+ id (str): The id of the template to render in UUID format.
+
+ Keyword Args:
+ _check_type (bool): if True, values for parameters in openapi_types
+ will be type checked and a TypeError will be
+ raised if the wrong type is input.
+ Defaults to True
+ _path_to_item (tuple/list): This is a list of keys or values to
+ drill down to the model in received_data
+ when deserializing a response
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _configuration (Configuration): the instance to use when
+ deserializing a file_type parameter.
+ If passed, type conversion is attempted
+ If omitted no type conversion is done.
+ _visited_composed_classes (tuple): This stores a tuple of
+ classes that we have traveled through so that
+ if we see that class again we will not use its
+ discriminator again.
+ When traveling through a discriminator, the
+ composed schema that is
+ is traveled through is added to this set.
+ For example if Animal has a discriminator
+ petType and we pass in "Dog", and the class Dog
+ allOf includes Animal, we move through Animal
+ once using the discriminator, and pick Dog.
+ Then in Dog, we will make an instance of the
+ Animal class but this time we won't travel
+ through its discriminator because we passed in
+ _visited_composed_classes = (Animal,)
+ merge ([MergeField]): An array of key/value pairs that provides an easy way to create templates with placeholders. The placeholders can be used to find and replace keys with values. For example you can search for the placeholder `{{NAME}}` and replace it with the value `Jane`. . [optional] # noqa: E501
+ """
+
+ _check_type = kwargs.pop('_check_type', True)
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
+ _path_to_item = kwargs.pop('_path_to_item', ())
+ _configuration = kwargs.pop('_configuration', None)
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
+
+ if args:
+ raise ApiTypeError(
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
+ args,
+ self.__class__.__name__,
+ ),
+ path_to_item=_path_to_item,
+ valid_classes=(self.__class__,),
+ )
+
+ self._data_store = {}
+ self._check_type = _check_type
+ self._spec_property_naming = _spec_property_naming
+ self._path_to_item = _path_to_item
+ self._configuration = _configuration
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+
+ self.id = id
+ for var_name, var_value in kwargs.items():
+ if var_name not in self.attribute_map and \
+ self._configuration is not None and \
+ self._configuration.discard_unknown_keys and \
+ self.additional_properties_type is None:
+ # discard variable.
+ continue
+ setattr(self, var_name, var_value)
+ if var_name in self.read_only_vars:
+ raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate "
+ f"class with read only attributes.")
diff --git a/shotstack_sdk/model/template_response.py b/shotstack_sdk/model/template_response.py
new file mode 100644
index 0000000..50a549d
--- /dev/null
+++ b/shotstack_sdk/model/template_response.py
@@ -0,0 +1,279 @@
+"""
+ Shotstack
+
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+
+ The version of the OpenAPI document: v1
+ Generated by: https://openapi-generator.tech
+"""
+
+
+import re # noqa: F401
+import sys # noqa: F401
+
+from shotstack_sdk.model_utils import ( # noqa: F401
+ ApiTypeError,
+ ModelComposed,
+ ModelNormal,
+ ModelSimple,
+ cached_property,
+ change_keys_js_to_python,
+ convert_js_args_to_python_args,
+ date,
+ datetime,
+ file_type,
+ none_type,
+ validate_get_composed_info,
+ OpenApiModel
+)
+from shotstack_sdk.exceptions import ApiAttributeError
+
+
+def lazy_import():
+ from shotstack_sdk.model.template_response_data import TemplateResponseData
+ globals()['TemplateResponseData'] = TemplateResponseData
+
+
+class TemplateResponse(ModelNormal):
+ """NOTE: This class is auto generated by OpenAPI Generator.
+ Ref: https://openapi-generator.tech
+
+ Do not edit the class manually.
+
+ Attributes:
+ allowed_values (dict): The key is the tuple path to the attribute
+ and the for var_name this is (var_name,). The value is a dict
+ with a capitalized key describing the allowed value and an allowed
+ value. These dicts store the allowed enum values.
+ attribute_map (dict): The key is attribute name
+ and the value is json key in definition.
+ discriminator_value_class_map (dict): A dict to go from the discriminator
+ variable value to the discriminator class name.
+ validations (dict): The key is the tuple path to the attribute
+ and the for var_name this is (var_name,). The value is a dict
+ that stores validations for max_length, min_length, max_items,
+ min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum,
+ inclusive_minimum, and regex.
+ additional_properties_type (tuple): A tuple of classes accepted
+ as additional properties values.
+ """
+
+ allowed_values = {
+ }
+
+ validations = {
+ }
+
+ @cached_property
+ def additional_properties_type():
+ """
+ This must be a method because a model may have properties that are
+ of type self, this must run after the class is loaded
+ """
+ lazy_import()
+ return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
+
+ _nullable = False
+
+ @cached_property
+ def openapi_types():
+ """
+ This must be a method because a model may have properties that are
+ of type self, this must run after the class is loaded
+
+ Returns
+ openapi_types (dict): The key is attribute name
+ and the value is attribute type.
+ """
+ lazy_import()
+ return {
+ 'success': (bool,), # noqa: E501
+ 'message': (str,), # noqa: E501
+ 'response': (TemplateResponseData,), # noqa: E501
+ }
+
+ @cached_property
+ def discriminator():
+ return None
+
+
+ attribute_map = {
+ 'success': 'success', # noqa: E501
+ 'message': 'message', # noqa: E501
+ 'response': 'response', # noqa: E501
+ }
+
+ read_only_vars = {
+ }
+
+ _composed_schemas = {}
+
+ @classmethod
+ @convert_js_args_to_python_args
+ def _from_openapi_data(cls, success, message, response, *args, **kwargs): # noqa: E501
+ """TemplateResponse - a model defined in OpenAPI
+
+ Args:
+ success (bool): `true` if successfully created, else `false`.
+ message (str): `Created`, `Bad Request` or an error message.
+ response (TemplateResponseData):
+
+ Keyword Args:
+ _check_type (bool): if True, values for parameters in openapi_types
+ will be type checked and a TypeError will be
+ raised if the wrong type is input.
+ Defaults to True
+ _path_to_item (tuple/list): This is a list of keys or values to
+ drill down to the model in received_data
+ when deserializing a response
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _configuration (Configuration): the instance to use when
+ deserializing a file_type parameter.
+ If passed, type conversion is attempted
+ If omitted no type conversion is done.
+ _visited_composed_classes (tuple): This stores a tuple of
+ classes that we have traveled through so that
+ if we see that class again we will not use its
+ discriminator again.
+ When traveling through a discriminator, the
+ composed schema that is
+ is traveled through is added to this set.
+ For example if Animal has a discriminator
+ petType and we pass in "Dog", and the class Dog
+ allOf includes Animal, we move through Animal
+ once using the discriminator, and pick Dog.
+ Then in Dog, we will make an instance of the
+ Animal class but this time we won't travel
+ through its discriminator because we passed in
+ _visited_composed_classes = (Animal,)
+ """
+
+ _check_type = kwargs.pop('_check_type', True)
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
+ _path_to_item = kwargs.pop('_path_to_item', ())
+ _configuration = kwargs.pop('_configuration', None)
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
+
+ self = super(OpenApiModel, cls).__new__(cls)
+
+ if args:
+ raise ApiTypeError(
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
+ args,
+ self.__class__.__name__,
+ ),
+ path_to_item=_path_to_item,
+ valid_classes=(self.__class__,),
+ )
+
+ self._data_store = {}
+ self._check_type = _check_type
+ self._spec_property_naming = _spec_property_naming
+ self._path_to_item = _path_to_item
+ self._configuration = _configuration
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+
+ self.success = success
+ self.message = message
+ self.response = response
+ for var_name, var_value in kwargs.items():
+ if var_name not in self.attribute_map and \
+ self._configuration is not None and \
+ self._configuration.discard_unknown_keys and \
+ self.additional_properties_type is None:
+ # discard variable.
+ continue
+ setattr(self, var_name, var_value)
+ return self
+
+ required_properties = set([
+ '_data_store',
+ '_check_type',
+ '_spec_property_naming',
+ '_path_to_item',
+ '_configuration',
+ '_visited_composed_classes',
+ ])
+
+ @convert_js_args_to_python_args
+ def __init__(self, success, message, response, *args, **kwargs): # noqa: E501
+ """TemplateResponse - a model defined in OpenAPI
+
+ Args:
+ success (bool): `true` if successfully created, else `false`.
+ message (str): `Created`, `Bad Request` or an error message.
+ response (TemplateResponseData):
+
+ Keyword Args:
+ _check_type (bool): if True, values for parameters in openapi_types
+ will be type checked and a TypeError will be
+ raised if the wrong type is input.
+ Defaults to True
+ _path_to_item (tuple/list): This is a list of keys or values to
+ drill down to the model in received_data
+ when deserializing a response
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _configuration (Configuration): the instance to use when
+ deserializing a file_type parameter.
+ If passed, type conversion is attempted
+ If omitted no type conversion is done.
+ _visited_composed_classes (tuple): This stores a tuple of
+ classes that we have traveled through so that
+ if we see that class again we will not use its
+ discriminator again.
+ When traveling through a discriminator, the
+ composed schema that is
+ is traveled through is added to this set.
+ For example if Animal has a discriminator
+ petType and we pass in "Dog", and the class Dog
+ allOf includes Animal, we move through Animal
+ once using the discriminator, and pick Dog.
+ Then in Dog, we will make an instance of the
+ Animal class but this time we won't travel
+ through its discriminator because we passed in
+ _visited_composed_classes = (Animal,)
+ """
+
+ _check_type = kwargs.pop('_check_type', True)
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
+ _path_to_item = kwargs.pop('_path_to_item', ())
+ _configuration = kwargs.pop('_configuration', None)
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
+
+ if args:
+ raise ApiTypeError(
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
+ args,
+ self.__class__.__name__,
+ ),
+ path_to_item=_path_to_item,
+ valid_classes=(self.__class__,),
+ )
+
+ self._data_store = {}
+ self._check_type = _check_type
+ self._spec_property_naming = _spec_property_naming
+ self._path_to_item = _path_to_item
+ self._configuration = _configuration
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+
+ self.success = success
+ self.message = message
+ self.response = response
+ for var_name, var_value in kwargs.items():
+ if var_name not in self.attribute_map and \
+ self._configuration is not None and \
+ self._configuration.discard_unknown_keys and \
+ self.additional_properties_type is None:
+ # discard variable.
+ continue
+ setattr(self, var_name, var_value)
+ if var_name in self.read_only_vars:
+ raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate "
+ f"class with read only attributes.")
diff --git a/shotstack_sdk/model/template_response_data.py b/shotstack_sdk/model/template_response_data.py
new file mode 100644
index 0000000..92fa6e3
--- /dev/null
+++ b/shotstack_sdk/model/template_response_data.py
@@ -0,0 +1,267 @@
+"""
+ Shotstack
+
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+
+ The version of the OpenAPI document: v1
+ Generated by: https://openapi-generator.tech
+"""
+
+
+import re # noqa: F401
+import sys # noqa: F401
+
+from shotstack_sdk.model_utils import ( # noqa: F401
+ ApiTypeError,
+ ModelComposed,
+ ModelNormal,
+ ModelSimple,
+ cached_property,
+ change_keys_js_to_python,
+ convert_js_args_to_python_args,
+ date,
+ datetime,
+ file_type,
+ none_type,
+ validate_get_composed_info,
+ OpenApiModel
+)
+from shotstack_sdk.exceptions import ApiAttributeError
+
+
+
+class TemplateResponseData(ModelNormal):
+ """NOTE: This class is auto generated by OpenAPI Generator.
+ Ref: https://openapi-generator.tech
+
+ Do not edit the class manually.
+
+ Attributes:
+ allowed_values (dict): The key is the tuple path to the attribute
+ and the for var_name this is (var_name,). The value is a dict
+ with a capitalized key describing the allowed value and an allowed
+ value. These dicts store the allowed enum values.
+ attribute_map (dict): The key is attribute name
+ and the value is json key in definition.
+ discriminator_value_class_map (dict): A dict to go from the discriminator
+ variable value to the discriminator class name.
+ validations (dict): The key is the tuple path to the attribute
+ and the for var_name this is (var_name,). The value is a dict
+ that stores validations for max_length, min_length, max_items,
+ min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum,
+ inclusive_minimum, and regex.
+ additional_properties_type (tuple): A tuple of classes accepted
+ as additional properties values.
+ """
+
+ allowed_values = {
+ }
+
+ validations = {
+ }
+
+ @cached_property
+ def additional_properties_type():
+ """
+ This must be a method because a model may have properties that are
+ of type self, this must run after the class is loaded
+ """
+ return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
+
+ _nullable = False
+
+ @cached_property
+ def openapi_types():
+ """
+ This must be a method because a model may have properties that are
+ of type self, this must run after the class is loaded
+
+ Returns
+ openapi_types (dict): The key is attribute name
+ and the value is attribute type.
+ """
+ return {
+ 'message': (str,), # noqa: E501
+ 'id': (str,), # noqa: E501
+ }
+
+ @cached_property
+ def discriminator():
+ return None
+
+
+ attribute_map = {
+ 'message': 'message', # noqa: E501
+ 'id': 'id', # noqa: E501
+ }
+
+ read_only_vars = {
+ }
+
+ _composed_schemas = {}
+
+ @classmethod
+ @convert_js_args_to_python_args
+ def _from_openapi_data(cls, message, id, *args, **kwargs): # noqa: E501
+ """TemplateResponseData - a model defined in OpenAPI
+
+ Args:
+ message (str): Success response message or error details.
+ id (str): The unique id of the template in UUID format.
+
+ Keyword Args:
+ _check_type (bool): if True, values for parameters in openapi_types
+ will be type checked and a TypeError will be
+ raised if the wrong type is input.
+ Defaults to True
+ _path_to_item (tuple/list): This is a list of keys or values to
+ drill down to the model in received_data
+ when deserializing a response
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _configuration (Configuration): the instance to use when
+ deserializing a file_type parameter.
+ If passed, type conversion is attempted
+ If omitted no type conversion is done.
+ _visited_composed_classes (tuple): This stores a tuple of
+ classes that we have traveled through so that
+ if we see that class again we will not use its
+ discriminator again.
+ When traveling through a discriminator, the
+ composed schema that is
+ is traveled through is added to this set.
+ For example if Animal has a discriminator
+ petType and we pass in "Dog", and the class Dog
+ allOf includes Animal, we move through Animal
+ once using the discriminator, and pick Dog.
+ Then in Dog, we will make an instance of the
+ Animal class but this time we won't travel
+ through its discriminator because we passed in
+ _visited_composed_classes = (Animal,)
+ """
+
+ _check_type = kwargs.pop('_check_type', True)
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
+ _path_to_item = kwargs.pop('_path_to_item', ())
+ _configuration = kwargs.pop('_configuration', None)
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
+
+ self = super(OpenApiModel, cls).__new__(cls)
+
+ if args:
+ raise ApiTypeError(
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
+ args,
+ self.__class__.__name__,
+ ),
+ path_to_item=_path_to_item,
+ valid_classes=(self.__class__,),
+ )
+
+ self._data_store = {}
+ self._check_type = _check_type
+ self._spec_property_naming = _spec_property_naming
+ self._path_to_item = _path_to_item
+ self._configuration = _configuration
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+
+ self.message = message
+ self.id = id
+ for var_name, var_value in kwargs.items():
+ if var_name not in self.attribute_map and \
+ self._configuration is not None and \
+ self._configuration.discard_unknown_keys and \
+ self.additional_properties_type is None:
+ # discard variable.
+ continue
+ setattr(self, var_name, var_value)
+ return self
+
+ required_properties = set([
+ '_data_store',
+ '_check_type',
+ '_spec_property_naming',
+ '_path_to_item',
+ '_configuration',
+ '_visited_composed_classes',
+ ])
+
+ @convert_js_args_to_python_args
+ def __init__(self, message, id, *args, **kwargs): # noqa: E501
+ """TemplateResponseData - a model defined in OpenAPI
+
+ Args:
+ message (str): Success response message or error details.
+ id (str): The unique id of the template in UUID format.
+
+ Keyword Args:
+ _check_type (bool): if True, values for parameters in openapi_types
+ will be type checked and a TypeError will be
+ raised if the wrong type is input.
+ Defaults to True
+ _path_to_item (tuple/list): This is a list of keys or values to
+ drill down to the model in received_data
+ when deserializing a response
+ _spec_property_naming (bool): True if the variable names in the input data
+ are serialized names, as specified in the OpenAPI document.
+ False if the variable names in the input data
+ are pythonic names, e.g. snake case (default)
+ _configuration (Configuration): the instance to use when
+ deserializing a file_type parameter.
+ If passed, type conversion is attempted
+ If omitted no type conversion is done.
+ _visited_composed_classes (tuple): This stores a tuple of
+ classes that we have traveled through so that
+ if we see that class again we will not use its
+ discriminator again.
+ When traveling through a discriminator, the
+ composed schema that is
+ is traveled through is added to this set.
+ For example if Animal has a discriminator
+ petType and we pass in "Dog", and the class Dog
+ allOf includes Animal, we move through Animal
+ once using the discriminator, and pick Dog.
+ Then in Dog, we will make an instance of the
+ Animal class but this time we won't travel
+ through its discriminator because we passed in
+ _visited_composed_classes = (Animal,)
+ """
+
+ _check_type = kwargs.pop('_check_type', True)
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
+ _path_to_item = kwargs.pop('_path_to_item', ())
+ _configuration = kwargs.pop('_configuration', None)
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
+
+ if args:
+ raise ApiTypeError(
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
+ args,
+ self.__class__.__name__,
+ ),
+ path_to_item=_path_to_item,
+ valid_classes=(self.__class__,),
+ )
+
+ self._data_store = {}
+ self._check_type = _check_type
+ self._spec_property_naming = _spec_property_naming
+ self._path_to_item = _path_to_item
+ self._configuration = _configuration
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
+
+ self.message = message
+ self.id = id
+ for var_name, var_value in kwargs.items():
+ if var_name not in self.attribute_map and \
+ self._configuration is not None and \
+ self._configuration.discard_unknown_keys and \
+ self.additional_properties_type is None:
+ # discard variable.
+ continue
+ setattr(self, var_name, var_value)
+ if var_name in self.read_only_vars:
+ raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate "
+ f"class with read only attributes.")
diff --git a/shotstack_sdk/model/thumbnail.py b/shotstack_sdk/model/thumbnail.py
index c5bbdcb..9d97d68 100644
--- a/shotstack_sdk/model/thumbnail.py
+++ b/shotstack_sdk/model/thumbnail.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
diff --git a/shotstack_sdk/model/timeline.py b/shotstack_sdk/model/timeline.py
index f06487c..7eb3283 100644
--- a/shotstack_sdk/model/timeline.py
+++ b/shotstack_sdk/model/timeline.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
@@ -158,7 +158,7 @@ def _from_openapi_data(cls, tracks, *args, **kwargs): # noqa: E501
soundtrack (Soundtrack): [optional] # noqa: E501
background (str): A hexadecimal value for the timeline background colour. Defaults to #000000 (black).. [optional] if omitted the server will use the default value of "#000000" # noqa: E501
fonts ([Font]): An array of custom fonts to be downloaded for use by the HTML assets.. [optional] # noqa: E501
- cache (bool): Disable the caching of ingested source footage and assets. See [caching](https://shotstack.gitbook.io/docs/guides/architecting-an-application/caching) for more details.. [optional] if omitted the server will use the default value of True # noqa: E501
+ cache (bool): Disable the caching of ingested source footage and assets. See [caching](https://shotstack.io/docs/guide/architecting-an-application/caching) for more details.. [optional] if omitted the server will use the default value of True # noqa: E501
"""
_check_type = kwargs.pop('_check_type', True)
@@ -247,7 +247,7 @@ def __init__(self, tracks, *args, **kwargs): # noqa: E501
soundtrack (Soundtrack): [optional] # noqa: E501
background (str): A hexadecimal value for the timeline background colour. Defaults to #000000 (black).. [optional] if omitted the server will use the default value of "#000000" # noqa: E501
fonts ([Font]): An array of custom fonts to be downloaded for use by the HTML assets.. [optional] # noqa: E501
- cache (bool): Disable the caching of ingested source footage and assets. See [caching](https://shotstack.gitbook.io/docs/guides/architecting-an-application/caching) for more details.. [optional] if omitted the server will use the default value of True # noqa: E501
+ cache (bool): Disable the caching of ingested source footage and assets. See [caching](https://shotstack.io/docs/guide/architecting-an-application/caching) for more details.. [optional] if omitted the server will use the default value of True # noqa: E501
"""
_check_type = kwargs.pop('_check_type', True)
diff --git a/shotstack_sdk/model/title_asset.py b/shotstack_sdk/model/title_asset.py
index ac1991a..74836d9 100644
--- a/shotstack_sdk/model/title_asset.py
+++ b/shotstack_sdk/model/title_asset.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
diff --git a/shotstack_sdk/model/track.py b/shotstack_sdk/model/track.py
index f231bc7..0ff9012 100644
--- a/shotstack_sdk/model/track.py
+++ b/shotstack_sdk/model/track.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
diff --git a/shotstack_sdk/model/transformation.py b/shotstack_sdk/model/transformation.py
index 884a446..30fa828 100644
--- a/shotstack_sdk/model/transformation.py
+++ b/shotstack_sdk/model/transformation.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
diff --git a/shotstack_sdk/model/transition.py b/shotstack_sdk/model/transition.py
index 006f59f..43617db 100644
--- a/shotstack_sdk/model/transition.py
+++ b/shotstack_sdk/model/transition.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
diff --git a/shotstack_sdk/model/video_asset.py b/shotstack_sdk/model/video_asset.py
index 4ff35a1..087d362 100644
--- a/shotstack_sdk/model/video_asset.py
+++ b/shotstack_sdk/model/video_asset.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
diff --git a/shotstack_sdk/model_utils.py b/shotstack_sdk/model_utils.py
index 9366686..bb97211 100644
--- a/shotstack_sdk/model_utils.py
+++ b/shotstack_sdk/model_utils.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech
@@ -185,7 +185,7 @@ def __setattr__(self, attr, value):
def __getattr__(self, attr):
"""get the value of an attribute using dot notation: `instance.attr`"""
- return self.__getitem__(attr)
+ return self.get(attr)
def __copy__(self):
cls = self.__class__
diff --git a/shotstack_sdk/models/__init__.py b/shotstack_sdk/models/__init__.py
index 6632978..0b6404f 100644
--- a/shotstack_sdk/models/__init__.py
+++ b/shotstack_sdk/models/__init__.py
@@ -9,6 +9,7 @@
# import sys
# sys.setrecursionlimit(n)
+from shotstack_sdk.model.asset import Asset
from shotstack_sdk.model.asset_render_response import AssetRenderResponse
from shotstack_sdk.model.asset_response import AssetResponse
from shotstack_sdk.model.asset_response_attributes import AssetResponseAttributes
@@ -16,6 +17,7 @@
from shotstack_sdk.model.audio_asset import AudioAsset
from shotstack_sdk.model.clip import Clip
from shotstack_sdk.model.crop import Crop
+from shotstack_sdk.model.destinations import Destinations
from shotstack_sdk.model.edit import Edit
from shotstack_sdk.model.flip_transformation import FlipTransformation
from shotstack_sdk.model.font import Font
@@ -23,6 +25,8 @@
from shotstack_sdk.model.image_asset import ImageAsset
from shotstack_sdk.model.luma_asset import LumaAsset
from shotstack_sdk.model.merge_field import MergeField
+from shotstack_sdk.model.mux_destination import MuxDestination
+from shotstack_sdk.model.mux_destination_options import MuxDestinationOptions
from shotstack_sdk.model.offset import Offset
from shotstack_sdk.model.output import Output
from shotstack_sdk.model.poster import Poster
@@ -37,6 +41,15 @@
from shotstack_sdk.model.size import Size
from shotstack_sdk.model.skew_transformation import SkewTransformation
from shotstack_sdk.model.soundtrack import Soundtrack
+from shotstack_sdk.model.template import Template
+from shotstack_sdk.model.template_data_response import TemplateDataResponse
+from shotstack_sdk.model.template_data_response_data import TemplateDataResponseData
+from shotstack_sdk.model.template_list_response import TemplateListResponse
+from shotstack_sdk.model.template_list_response_data import TemplateListResponseData
+from shotstack_sdk.model.template_list_response_item import TemplateListResponseItem
+from shotstack_sdk.model.template_render import TemplateRender
+from shotstack_sdk.model.template_response import TemplateResponse
+from shotstack_sdk.model.template_response_data import TemplateResponseData
from shotstack_sdk.model.thumbnail import Thumbnail
from shotstack_sdk.model.timeline import Timeline
from shotstack_sdk.model.title_asset import TitleAsset
diff --git a/shotstack_sdk/rest.py b/shotstack_sdk/rest.py
index c104e1f..9b69089 100644
--- a/shotstack_sdk/rest.py
+++ b/shotstack_sdk/rest.py
@@ -1,7 +1,7 @@
"""
Shotstack
- Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.gitbook.io/docs/guides/getting-started) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
+ Shotstack is a video, image and audio editing service that allows for the automated generation of videos, images and audio using JSON and a RESTful API. You arrange and configure an edit and POST it to the API which will render your media and provide a file location when complete. For more details visit [shotstack.io](https://shotstack.io) or checkout our [getting started](https://shotstack.io/docs/guide/) documentation. There are two main API's, one for editing and generating assets (Edit API) and one for managing hosted assets (Serve API). The Edit API base URL is: https://api.shotstack.io/{version} The Serve API base URL is: https://api.shotstack.io/serve/{version} # noqa: E501
The version of the OpenAPI document: v1
Generated by: https://openapi-generator.tech