magic_hour 0.8.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of magic_hour might be problematic. Click here for more details.

Files changed (131) hide show
  1. magic_hour/__init__.py +6 -0
  2. magic_hour/client.py +61 -0
  3. magic_hour/core/__init__.py +53 -0
  4. magic_hour/core/api_error.py +48 -0
  5. magic_hour/core/auth.py +314 -0
  6. magic_hour/core/base_client.py +600 -0
  7. magic_hour/core/binary_response.py +23 -0
  8. magic_hour/core/request.py +158 -0
  9. magic_hour/core/response.py +293 -0
  10. magic_hour/core/type_utils.py +28 -0
  11. magic_hour/core/utils.py +38 -0
  12. magic_hour/environment.py +6 -0
  13. magic_hour/resources/v1/__init__.py +4 -0
  14. magic_hour/resources/v1/ai_clothes_changer/README.md +41 -0
  15. magic_hour/resources/v1/ai_clothes_changer/__init__.py +4 -0
  16. magic_hour/resources/v1/ai_clothes_changer/client.py +129 -0
  17. magic_hour/resources/v1/ai_headshot_generator/README.md +31 -0
  18. magic_hour/resources/v1/ai_headshot_generator/__init__.py +4 -0
  19. magic_hour/resources/v1/ai_headshot_generator/client.py +119 -0
  20. magic_hour/resources/v1/ai_image_generator/README.md +37 -0
  21. magic_hour/resources/v1/ai_image_generator/__init__.py +4 -0
  22. magic_hour/resources/v1/ai_image_generator/client.py +144 -0
  23. magic_hour/resources/v1/ai_image_upscaler/README.md +37 -0
  24. magic_hour/resources/v1/ai_image_upscaler/__init__.py +4 -0
  25. magic_hour/resources/v1/ai_image_upscaler/client.py +143 -0
  26. magic_hour/resources/v1/ai_photo_editor/README.md +53 -0
  27. magic_hour/resources/v1/ai_photo_editor/__init__.py +4 -0
  28. magic_hour/resources/v1/ai_photo_editor/client.py +167 -0
  29. magic_hour/resources/v1/ai_qr_code_generator/README.md +35 -0
  30. magic_hour/resources/v1/ai_qr_code_generator/__init__.py +4 -0
  31. magic_hour/resources/v1/ai_qr_code_generator/client.py +127 -0
  32. magic_hour/resources/v1/animation/README.md +63 -0
  33. magic_hour/resources/v1/animation/__init__.py +4 -0
  34. magic_hour/resources/v1/animation/client.py +179 -0
  35. magic_hour/resources/v1/client.py +153 -0
  36. magic_hour/resources/v1/face_swap/README.md +52 -0
  37. magic_hour/resources/v1/face_swap/__init__.py +4 -0
  38. magic_hour/resources/v1/face_swap/client.py +165 -0
  39. magic_hour/resources/v1/face_swap_photo/README.md +39 -0
  40. magic_hour/resources/v1/face_swap_photo/__init__.py +4 -0
  41. magic_hour/resources/v1/face_swap_photo/client.py +127 -0
  42. magic_hour/resources/v1/files/__init__.py +4 -0
  43. magic_hour/resources/v1/files/client.py +19 -0
  44. magic_hour/resources/v1/files/upload_urls/README.md +56 -0
  45. magic_hour/resources/v1/files/upload_urls/__init__.py +4 -0
  46. magic_hour/resources/v1/files/upload_urls/client.py +142 -0
  47. magic_hour/resources/v1/image_background_remover/README.md +31 -0
  48. magic_hour/resources/v1/image_background_remover/__init__.py +4 -0
  49. magic_hour/resources/v1/image_background_remover/client.py +121 -0
  50. magic_hour/resources/v1/image_projects/README.md +63 -0
  51. magic_hour/resources/v1/image_projects/__init__.py +4 -0
  52. magic_hour/resources/v1/image_projects/client.py +177 -0
  53. magic_hour/resources/v1/image_to_video/README.md +44 -0
  54. magic_hour/resources/v1/image_to_video/__init__.py +4 -0
  55. magic_hour/resources/v1/image_to_video/client.py +165 -0
  56. magic_hour/resources/v1/lip_sync/README.md +54 -0
  57. magic_hour/resources/v1/lip_sync/__init__.py +4 -0
  58. magic_hour/resources/v1/lip_sync/client.py +177 -0
  59. magic_hour/resources/v1/text_to_video/README.md +40 -0
  60. magic_hour/resources/v1/text_to_video/__init__.py +4 -0
  61. magic_hour/resources/v1/text_to_video/client.py +150 -0
  62. magic_hour/resources/v1/video_projects/README.md +63 -0
  63. magic_hour/resources/v1/video_projects/__init__.py +4 -0
  64. magic_hour/resources/v1/video_projects/client.py +177 -0
  65. magic_hour/resources/v1/video_to_video/README.md +60 -0
  66. magic_hour/resources/v1/video_to_video/__init__.py +4 -0
  67. magic_hour/resources/v1/video_to_video/client.py +204 -0
  68. magic_hour/types/models/__init__.py +60 -0
  69. magic_hour/types/models/get_v1_image_projects_id_response.py +82 -0
  70. magic_hour/types/models/get_v1_image_projects_id_response_downloads_item.py +19 -0
  71. magic_hour/types/models/get_v1_image_projects_id_response_error.py +25 -0
  72. magic_hour/types/models/get_v1_video_projects_id_response.py +114 -0
  73. magic_hour/types/models/get_v1_video_projects_id_response_download.py +19 -0
  74. magic_hour/types/models/get_v1_video_projects_id_response_downloads_item.py +19 -0
  75. magic_hour/types/models/get_v1_video_projects_id_response_error.py +25 -0
  76. magic_hour/types/models/post_v1_ai_clothes_changer_response.py +25 -0
  77. magic_hour/types/models/post_v1_ai_headshot_generator_response.py +25 -0
  78. magic_hour/types/models/post_v1_ai_image_generator_response.py +25 -0
  79. magic_hour/types/models/post_v1_ai_image_upscaler_response.py +25 -0
  80. magic_hour/types/models/post_v1_ai_photo_editor_response.py +25 -0
  81. magic_hour/types/models/post_v1_ai_qr_code_generator_response.py +25 -0
  82. magic_hour/types/models/post_v1_animation_response.py +25 -0
  83. magic_hour/types/models/post_v1_face_swap_photo_response.py +25 -0
  84. magic_hour/types/models/post_v1_face_swap_response.py +25 -0
  85. magic_hour/types/models/post_v1_files_upload_urls_response.py +21 -0
  86. magic_hour/types/models/post_v1_files_upload_urls_response_items_item.py +31 -0
  87. magic_hour/types/models/post_v1_image_background_remover_response.py +25 -0
  88. magic_hour/types/models/post_v1_image_to_video_response.py +25 -0
  89. magic_hour/types/models/post_v1_lip_sync_response.py +25 -0
  90. magic_hour/types/models/post_v1_text_to_video_response.py +25 -0
  91. magic_hour/types/models/post_v1_video_to_video_response.py +25 -0
  92. magic_hour/types/params/__init__.py +205 -0
  93. magic_hour/types/params/post_v1_ai_clothes_changer_body.py +40 -0
  94. magic_hour/types/params/post_v1_ai_clothes_changer_body_assets.py +45 -0
  95. magic_hour/types/params/post_v1_ai_headshot_generator_body.py +40 -0
  96. magic_hour/types/params/post_v1_ai_headshot_generator_body_assets.py +28 -0
  97. magic_hour/types/params/post_v1_ai_image_generator_body.py +54 -0
  98. magic_hour/types/params/post_v1_ai_image_generator_body_style.py +28 -0
  99. magic_hour/types/params/post_v1_ai_image_upscaler_body.py +54 -0
  100. magic_hour/types/params/post_v1_ai_image_upscaler_body_assets.py +28 -0
  101. magic_hour/types/params/post_v1_ai_image_upscaler_body_style.py +36 -0
  102. magic_hour/types/params/post_v1_ai_photo_editor_body.py +63 -0
  103. magic_hour/types/params/post_v1_ai_photo_editor_body_assets.py +28 -0
  104. magic_hour/types/params/post_v1_ai_photo_editor_body_style.py +67 -0
  105. magic_hour/types/params/post_v1_ai_qr_code_generator_body.py +45 -0
  106. magic_hour/types/params/post_v1_ai_qr_code_generator_body_style.py +28 -0
  107. magic_hour/types/params/post_v1_animation_body.py +84 -0
  108. magic_hour/types/params/post_v1_animation_body_assets.py +55 -0
  109. magic_hour/types/params/post_v1_animation_body_style.py +279 -0
  110. magic_hour/types/params/post_v1_face_swap_body.py +72 -0
  111. magic_hour/types/params/post_v1_face_swap_body_assets.py +52 -0
  112. magic_hour/types/params/post_v1_face_swap_photo_body.py +40 -0
  113. magic_hour/types/params/post_v1_face_swap_photo_body_assets.py +36 -0
  114. magic_hour/types/params/post_v1_files_upload_urls_body.py +31 -0
  115. magic_hour/types/params/post_v1_files_upload_urls_body_items_item.py +38 -0
  116. magic_hour/types/params/post_v1_image_background_remover_body.py +40 -0
  117. magic_hour/types/params/post_v1_image_background_remover_body_assets.py +28 -0
  118. magic_hour/types/params/post_v1_image_to_video_body.py +73 -0
  119. magic_hour/types/params/post_v1_image_to_video_body_assets.py +28 -0
  120. magic_hour/types/params/post_v1_image_to_video_body_style.py +29 -0
  121. magic_hour/types/params/post_v1_lip_sync_body.py +80 -0
  122. magic_hour/types/params/post_v1_lip_sync_body_assets.py +52 -0
  123. magic_hour/types/params/post_v1_text_to_video_body.py +57 -0
  124. magic_hour/types/params/post_v1_text_to_video_body_style.py +28 -0
  125. magic_hour/types/params/post_v1_video_to_video_body.py +93 -0
  126. magic_hour/types/params/post_v1_video_to_video_body_assets.py +44 -0
  127. magic_hour/types/params/post_v1_video_to_video_body_style.py +199 -0
  128. magic_hour-0.8.0.dist-info/LICENSE +21 -0
  129. magic_hour-0.8.0.dist-info/METADATA +138 -0
  130. magic_hour-0.8.0.dist-info/RECORD +131 -0
  131. magic_hour-0.8.0.dist-info/WHEEL +4 -0
@@ -0,0 +1,114 @@
1
+ import typing
2
+ import typing_extensions
3
+ import pydantic
4
+
5
+ from .get_v1_video_projects_id_response_download import (
6
+ GetV1VideoProjectsIdResponseDownload,
7
+ )
8
+ from .get_v1_video_projects_id_response_downloads_item import (
9
+ GetV1VideoProjectsIdResponseDownloadsItem,
10
+ )
11
+ from .get_v1_video_projects_id_response_error import GetV1VideoProjectsIdResponseError
12
+
13
+
14
+ class GetV1VideoProjectsIdResponse(pydantic.BaseModel):
15
+ """
16
+ Success
17
+ """
18
+
19
+ model_config = pydantic.ConfigDict(
20
+ arbitrary_types_allowed=True,
21
+ populate_by_name=True,
22
+ )
23
+
24
+ created_at: str = pydantic.Field(
25
+ alias="created_at",
26
+ )
27
+ download: typing.Optional[GetV1VideoProjectsIdResponseDownload] = pydantic.Field(
28
+ alias="download",
29
+ )
30
+ """
31
+ Deprecated: Please use `.downloads` instead. The download url and expiration date of the video project
32
+ """
33
+ downloads: typing.List[GetV1VideoProjectsIdResponseDownloadsItem] = pydantic.Field(
34
+ alias="downloads",
35
+ )
36
+ enabled: bool = pydantic.Field(
37
+ alias="enabled",
38
+ )
39
+ """
40
+ Indicates whether the resource is deleted
41
+ """
42
+ end_seconds: float = pydantic.Field(
43
+ alias="end_seconds",
44
+ )
45
+ """
46
+ The end time of the input video in seconds
47
+ """
48
+ error: typing.Optional[GetV1VideoProjectsIdResponseError] = pydantic.Field(
49
+ alias="error",
50
+ )
51
+ """
52
+ In the case of an error, this object will contain the error encountered during video render
53
+ """
54
+ fps: float = pydantic.Field(
55
+ alias="fps",
56
+ )
57
+ """
58
+ Frame rate of the video. If the status is not 'complete', the frame rate is an estimate and will be adjusted when the video completes.
59
+ """
60
+ height: int = pydantic.Field(
61
+ alias="height",
62
+ )
63
+ """
64
+ The height of the final output video. The maximum height depends on your subscription. Please refer to our [pricing page](https://magichour.ai/pricing) for more details
65
+ """
66
+ id: str = pydantic.Field(
67
+ alias="id",
68
+ )
69
+ """
70
+ Unique ID of the video. This value can be used in the [get video project API](/api/tag/video-projects/get/v1/video-projects/{id}) to fetch additional details such as status
71
+ """
72
+ name: typing.Optional[str] = pydantic.Field(
73
+ alias="name",
74
+ )
75
+ """
76
+ The name of the video.
77
+ """
78
+ start_seconds: float = pydantic.Field(
79
+ alias="start_seconds",
80
+ )
81
+ """
82
+ The start time of the input video in seconds
83
+ """
84
+ status: typing_extensions.Literal[
85
+ "canceled", "complete", "draft", "error", "queued", "rendering"
86
+ ] = pydantic.Field(
87
+ alias="status",
88
+ )
89
+ """
90
+ The status of the video.
91
+ """
92
+ total_frame_cost: int = pydantic.Field(
93
+ alias="total_frame_cost",
94
+ )
95
+ """
96
+ The amount of frames used to generate the video. If the status is not 'complete', the cost is an estimate and will be adjusted when the video completes.
97
+ """
98
+ type_field: typing_extensions.Literal[
99
+ "ANIMATION",
100
+ "AUTO_SUBTITLE",
101
+ "FACE_SWAP",
102
+ "IMAGE_TO_VIDEO",
103
+ "LIP_SYNC",
104
+ "TEXT_TO_VIDEO",
105
+ "VIDEO_TO_VIDEO",
106
+ ] = pydantic.Field(
107
+ alias="type",
108
+ )
109
+ width: int = pydantic.Field(
110
+ alias="width",
111
+ )
112
+ """
113
+ The width of the final output video. The maximum width depends on your subscription. Please refer to our [pricing page](https://magichour.ai/pricing) for more details
114
+ """
@@ -0,0 +1,19 @@
1
+ import pydantic
2
+
3
+
4
+ class GetV1VideoProjectsIdResponseDownload(pydantic.BaseModel):
5
+ """
6
+ Deprecated: Please use `.downloads` instead. The download url and expiration date of the video project
7
+ """
8
+
9
+ model_config = pydantic.ConfigDict(
10
+ arbitrary_types_allowed=True,
11
+ populate_by_name=True,
12
+ )
13
+
14
+ expires_at: str = pydantic.Field(
15
+ alias="expires_at",
16
+ )
17
+ url: str = pydantic.Field(
18
+ alias="url",
19
+ )
@@ -0,0 +1,19 @@
1
+ import pydantic
2
+
3
+
4
+ class GetV1VideoProjectsIdResponseDownloadsItem(pydantic.BaseModel):
5
+ """
6
+ The download url and expiration date of the image project
7
+ """
8
+
9
+ model_config = pydantic.ConfigDict(
10
+ arbitrary_types_allowed=True,
11
+ populate_by_name=True,
12
+ )
13
+
14
+ expires_at: str = pydantic.Field(
15
+ alias="expires_at",
16
+ )
17
+ url: str = pydantic.Field(
18
+ alias="url",
19
+ )
@@ -0,0 +1,25 @@
1
+ import pydantic
2
+
3
+
4
+ class GetV1VideoProjectsIdResponseError(pydantic.BaseModel):
5
+ """
6
+ In the case of an error, this object will contain the error encountered during video render
7
+ """
8
+
9
+ model_config = pydantic.ConfigDict(
10
+ arbitrary_types_allowed=True,
11
+ populate_by_name=True,
12
+ )
13
+
14
+ code_field: str = pydantic.Field(
15
+ alias="code",
16
+ )
17
+ """
18
+ An error code to indicate why a failure happened.
19
+ """
20
+ message: str = pydantic.Field(
21
+ alias="message",
22
+ )
23
+ """
24
+ Details on the reason why a failure happened.
25
+ """
@@ -0,0 +1,25 @@
1
+ import pydantic
2
+
3
+
4
+ class PostV1AiClothesChangerResponse(pydantic.BaseModel):
5
+ """
6
+ Success
7
+ """
8
+
9
+ model_config = pydantic.ConfigDict(
10
+ arbitrary_types_allowed=True,
11
+ populate_by_name=True,
12
+ )
13
+
14
+ frame_cost: int = pydantic.Field(
15
+ alias="frame_cost",
16
+ )
17
+ """
18
+ The frame cost of the image generation
19
+ """
20
+ id: str = pydantic.Field(
21
+ alias="id",
22
+ )
23
+ """
24
+ Unique ID of the image. This value can be used in the [get image project API](/api/tag/image-projects/get/v1/image-projects/{id}) to fetch additional details such as status
25
+ """
@@ -0,0 +1,25 @@
1
+ import pydantic
2
+
3
+
4
+ class PostV1AiHeadshotGeneratorResponse(pydantic.BaseModel):
5
+ """
6
+ Success
7
+ """
8
+
9
+ model_config = pydantic.ConfigDict(
10
+ arbitrary_types_allowed=True,
11
+ populate_by_name=True,
12
+ )
13
+
14
+ frame_cost: int = pydantic.Field(
15
+ alias="frame_cost",
16
+ )
17
+ """
18
+ The frame cost of the image generation
19
+ """
20
+ id: str = pydantic.Field(
21
+ alias="id",
22
+ )
23
+ """
24
+ Unique ID of the image. This value can be used in the [get image project API](/api/tag/image-projects/get/v1/image-projects/{id}) to fetch additional details such as status
25
+ """
@@ -0,0 +1,25 @@
1
+ import pydantic
2
+
3
+
4
+ class PostV1AiImageGeneratorResponse(pydantic.BaseModel):
5
+ """
6
+ Success
7
+ """
8
+
9
+ model_config = pydantic.ConfigDict(
10
+ arbitrary_types_allowed=True,
11
+ populate_by_name=True,
12
+ )
13
+
14
+ frame_cost: int = pydantic.Field(
15
+ alias="frame_cost",
16
+ )
17
+ """
18
+ The frame cost of the image generation
19
+ """
20
+ id: str = pydantic.Field(
21
+ alias="id",
22
+ )
23
+ """
24
+ Unique ID of the image. This value can be used in the [get image project API](/api/tag/image-projects/get/v1/image-projects/{id}) to fetch additional details such as status
25
+ """
@@ -0,0 +1,25 @@
1
+ import pydantic
2
+
3
+
4
+ class PostV1AiImageUpscalerResponse(pydantic.BaseModel):
5
+ """
6
+ Success
7
+ """
8
+
9
+ model_config = pydantic.ConfigDict(
10
+ arbitrary_types_allowed=True,
11
+ populate_by_name=True,
12
+ )
13
+
14
+ frame_cost: int = pydantic.Field(
15
+ alias="frame_cost",
16
+ )
17
+ """
18
+ The frame cost of the image generation
19
+ """
20
+ id: str = pydantic.Field(
21
+ alias="id",
22
+ )
23
+ """
24
+ Unique ID of the image. This value can be used in the [get image project API](/api/tag/image-projects/get/v1/image-projects/{id}) to fetch additional details such as status
25
+ """
@@ -0,0 +1,25 @@
1
+ import pydantic
2
+
3
+
4
+ class PostV1AiPhotoEditorResponse(pydantic.BaseModel):
5
+ """
6
+ Success
7
+ """
8
+
9
+ model_config = pydantic.ConfigDict(
10
+ arbitrary_types_allowed=True,
11
+ populate_by_name=True,
12
+ )
13
+
14
+ frame_cost: int = pydantic.Field(
15
+ alias="frame_cost",
16
+ )
17
+ """
18
+ The frame cost of the image generation
19
+ """
20
+ id: str = pydantic.Field(
21
+ alias="id",
22
+ )
23
+ """
24
+ Unique ID of the image. This value can be used in the [get image project API](/api/tag/image-projects/get/v1/image-projects/{id}) to fetch additional details such as status
25
+ """
@@ -0,0 +1,25 @@
1
+ import pydantic
2
+
3
+
4
+ class PostV1AiQrCodeGeneratorResponse(pydantic.BaseModel):
5
+ """
6
+ Success
7
+ """
8
+
9
+ model_config = pydantic.ConfigDict(
10
+ arbitrary_types_allowed=True,
11
+ populate_by_name=True,
12
+ )
13
+
14
+ frame_cost: int = pydantic.Field(
15
+ alias="frame_cost",
16
+ )
17
+ """
18
+ The frame cost of the image generation
19
+ """
20
+ id: str = pydantic.Field(
21
+ alias="id",
22
+ )
23
+ """
24
+ Unique ID of the image. This value can be used in the [get image project API](/api/tag/image-projects/get/v1/image-projects/{id}) to fetch additional details such as status
25
+ """
@@ -0,0 +1,25 @@
1
+ import pydantic
2
+
3
+
4
+ class PostV1AnimationResponse(pydantic.BaseModel):
5
+ """
6
+ Success
7
+ """
8
+
9
+ model_config = pydantic.ConfigDict(
10
+ arbitrary_types_allowed=True,
11
+ populate_by_name=True,
12
+ )
13
+
14
+ estimated_frame_cost: int = pydantic.Field(
15
+ alias="estimated_frame_cost",
16
+ )
17
+ """
18
+ Estimated cost of the video in terms of number of frames needed to render the video. Frames will be adjusted when the video completes
19
+ """
20
+ id: str = pydantic.Field(
21
+ alias="id",
22
+ )
23
+ """
24
+ Unique ID of the video. This value can be used in the [get video project API](/api/tag/video-projects/get/v1/video-projects/{id}) to fetch additional details such as status
25
+ """
@@ -0,0 +1,25 @@
1
+ import pydantic
2
+
3
+
4
+ class PostV1FaceSwapPhotoResponse(pydantic.BaseModel):
5
+ """
6
+ Success
7
+ """
8
+
9
+ model_config = pydantic.ConfigDict(
10
+ arbitrary_types_allowed=True,
11
+ populate_by_name=True,
12
+ )
13
+
14
+ frame_cost: int = pydantic.Field(
15
+ alias="frame_cost",
16
+ )
17
+ """
18
+ The frame cost of the image generation
19
+ """
20
+ id: str = pydantic.Field(
21
+ alias="id",
22
+ )
23
+ """
24
+ Unique ID of the image. This value can be used in the [get image project API](/api/tag/image-projects/get/v1/image-projects/{id}) to fetch additional details such as status
25
+ """
@@ -0,0 +1,25 @@
1
+ import pydantic
2
+
3
+
4
+ class PostV1FaceSwapResponse(pydantic.BaseModel):
5
+ """
6
+ Success
7
+ """
8
+
9
+ model_config = pydantic.ConfigDict(
10
+ arbitrary_types_allowed=True,
11
+ populate_by_name=True,
12
+ )
13
+
14
+ estimated_frame_cost: int = pydantic.Field(
15
+ alias="estimated_frame_cost",
16
+ )
17
+ """
18
+ Estimated cost of the video in terms of number of frames needed to render the video. Frames will be adjusted when the video completes
19
+ """
20
+ id: str = pydantic.Field(
21
+ alias="id",
22
+ )
23
+ """
24
+ Unique ID of the image. This value can be used in the [get image project API](/api/tag/image-projects/get/v1/image-projects/{id}) to fetch additional details such as status
25
+ """
@@ -0,0 +1,21 @@
1
+ import typing
2
+ import pydantic
3
+
4
+ from .post_v1_files_upload_urls_response_items_item import (
5
+ PostV1FilesUploadUrlsResponseItemsItem,
6
+ )
7
+
8
+
9
+ class PostV1FilesUploadUrlsResponse(pydantic.BaseModel):
10
+ """
11
+ Success
12
+ """
13
+
14
+ model_config = pydantic.ConfigDict(
15
+ arbitrary_types_allowed=True,
16
+ populate_by_name=True,
17
+ )
18
+
19
+ items: typing.List[PostV1FilesUploadUrlsResponseItemsItem] = pydantic.Field(
20
+ alias="items",
21
+ )
@@ -0,0 +1,31 @@
1
+ import pydantic
2
+
3
+
4
+ class PostV1FilesUploadUrlsResponseItemsItem(pydantic.BaseModel):
5
+ """
6
+ PostV1FilesUploadUrlsResponseItemsItem
7
+ """
8
+
9
+ model_config = pydantic.ConfigDict(
10
+ arbitrary_types_allowed=True,
11
+ populate_by_name=True,
12
+ )
13
+
14
+ expires_at: str = pydantic.Field(
15
+ alias="expires_at",
16
+ )
17
+ """
18
+ when the upload url expires, and will need to request a new one.
19
+ """
20
+ file_path: str = pydantic.Field(
21
+ alias="file_path",
22
+ )
23
+ """
24
+ this value is used in APIs that needs assets, such as image_file_path, video_file_path, and audio_file_path
25
+ """
26
+ upload_url: str = pydantic.Field(
27
+ alias="upload_url",
28
+ )
29
+ """
30
+ Used to upload the file to storage, send a PUT request with the file as data to upload.
31
+ """
@@ -0,0 +1,25 @@
1
+ import pydantic
2
+
3
+
4
+ class PostV1ImageBackgroundRemoverResponse(pydantic.BaseModel):
5
+ """
6
+ Success
7
+ """
8
+
9
+ model_config = pydantic.ConfigDict(
10
+ arbitrary_types_allowed=True,
11
+ populate_by_name=True,
12
+ )
13
+
14
+ frame_cost: int = pydantic.Field(
15
+ alias="frame_cost",
16
+ )
17
+ """
18
+ The frame cost of the image generation
19
+ """
20
+ id: str = pydantic.Field(
21
+ alias="id",
22
+ )
23
+ """
24
+ Unique ID of the image. This value can be used in the [get image project API](/api/tag/image-projects/get/v1/image-projects/{id}) to fetch additional details such as status
25
+ """
@@ -0,0 +1,25 @@
1
+ import pydantic
2
+
3
+
4
+ class PostV1ImageToVideoResponse(pydantic.BaseModel):
5
+ """
6
+ Success
7
+ """
8
+
9
+ model_config = pydantic.ConfigDict(
10
+ arbitrary_types_allowed=True,
11
+ populate_by_name=True,
12
+ )
13
+
14
+ estimated_frame_cost: int = pydantic.Field(
15
+ alias="estimated_frame_cost",
16
+ )
17
+ """
18
+ Estimated cost of the video in terms of number of frames needed to render the video. Frames will be adjusted when the video completes
19
+ """
20
+ id: str = pydantic.Field(
21
+ alias="id",
22
+ )
23
+ """
24
+ Unique ID of the video. This value can be used in the [get video project API](/api/tag/video-projects/get/v1/video-projects/{id}) to fetch additional details such as status
25
+ """
@@ -0,0 +1,25 @@
1
+ import pydantic
2
+
3
+
4
+ class PostV1LipSyncResponse(pydantic.BaseModel):
5
+ """
6
+ Success
7
+ """
8
+
9
+ model_config = pydantic.ConfigDict(
10
+ arbitrary_types_allowed=True,
11
+ populate_by_name=True,
12
+ )
13
+
14
+ estimated_frame_cost: int = pydantic.Field(
15
+ alias="estimated_frame_cost",
16
+ )
17
+ """
18
+ Estimated cost of the video in terms of number of frames needed to render the video. Frames will be adjusted when the video completes
19
+ """
20
+ id: str = pydantic.Field(
21
+ alias="id",
22
+ )
23
+ """
24
+ Unique ID of the video. This value can be used in the [get video project API](/api/tag/video-projects/get/v1/video-projects/{id}) to fetch additional details such as status
25
+ """
@@ -0,0 +1,25 @@
1
+ import pydantic
2
+
3
+
4
+ class PostV1TextToVideoResponse(pydantic.BaseModel):
5
+ """
6
+ Success
7
+ """
8
+
9
+ model_config = pydantic.ConfigDict(
10
+ arbitrary_types_allowed=True,
11
+ populate_by_name=True,
12
+ )
13
+
14
+ estimated_frame_cost: int = pydantic.Field(
15
+ alias="estimated_frame_cost",
16
+ )
17
+ """
18
+ Estimated cost of the video in terms of number of frames needed to render the video. Frames will be adjusted when the video completes
19
+ """
20
+ id: str = pydantic.Field(
21
+ alias="id",
22
+ )
23
+ """
24
+ Unique ID of the video. This value can be used in the [get video project API](/api/tag/video-projects/get/v1/video-projects/{id}) to fetch additional details such as status
25
+ """
@@ -0,0 +1,25 @@
1
+ import pydantic
2
+
3
+
4
+ class PostV1VideoToVideoResponse(pydantic.BaseModel):
5
+ """
6
+ Success
7
+ """
8
+
9
+ model_config = pydantic.ConfigDict(
10
+ arbitrary_types_allowed=True,
11
+ populate_by_name=True,
12
+ )
13
+
14
+ estimated_frame_cost: int = pydantic.Field(
15
+ alias="estimated_frame_cost",
16
+ )
17
+ """
18
+ Estimated cost of the video in terms of number of frames needed to render the video. Frames will be adjusted when the video completes
19
+ """
20
+ id: str = pydantic.Field(
21
+ alias="id",
22
+ )
23
+ """
24
+ Unique ID of the video. This value can be used in the [get video project API](/api/tag/video-projects/get/v1/video-projects/{id}) to fetch additional details such as status
25
+ """