runapi-core 0.3.3__tar.gz → 0.3.5__tar.gz

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.
Files changed (33) hide show
  1. {runapi_core-0.3.3 → runapi_core-0.3.5}/PKG-INFO +2 -2
  2. {runapi_core-0.3.3 → runapi_core-0.3.5}/pyproject.toml +1 -1
  3. {runapi_core-0.3.3 → runapi_core-0.3.5}/src/runapi/core/contract_gen.py +56 -0
  4. {runapi_core-0.3.3 → runapi_core-0.3.5}/src/runapi/core/pricing.py +1 -0
  5. runapi_core-0.3.5/src/runapi/core/version.py +1 -0
  6. {runapi_core-0.3.3 → runapi_core-0.3.5}/tests/test_pricing.py +2 -0
  7. runapi_core-0.3.3/src/runapi/core/version.py +0 -1
  8. {runapi_core-0.3.3 → runapi_core-0.3.5}/README.md +0 -0
  9. {runapi_core-0.3.3 → runapi_core-0.3.5}/src/runapi/core/__init__.py +0 -0
  10. {runapi_core-0.3.3 → runapi_core-0.3.5}/src/runapi/core/account.py +0 -0
  11. {runapi_core-0.3.3 → runapi_core-0.3.5}/src/runapi/core/auth.py +0 -0
  12. {runapi_core-0.3.3 → runapi_core-0.3.5}/src/runapi/core/config.py +0 -0
  13. {runapi_core-0.3.3 → runapi_core-0.3.5}/src/runapi/core/constants.py +0 -0
  14. {runapi_core-0.3.3 → runapi_core-0.3.5}/src/runapi/core/errors.py +0 -0
  15. {runapi_core-0.3.3 → runapi_core-0.3.5}/src/runapi/core/files.py +0 -0
  16. {runapi_core-0.3.3 → runapi_core-0.3.5}/src/runapi/core/http_client.py +0 -0
  17. {runapi_core-0.3.3 → runapi_core-0.3.5}/src/runapi/core/models.py +0 -0
  18. {runapi_core-0.3.3 → runapi_core-0.3.5}/src/runapi/core/multipart.py +0 -0
  19. {runapi_core-0.3.3 → runapi_core-0.3.5}/src/runapi/core/options.py +0 -0
  20. {runapi_core-0.3.3 → runapi_core-0.3.5}/src/runapi/core/polling.py +0 -0
  21. {runapi_core-0.3.3 → runapi_core-0.3.5}/src/runapi/core/provider_client.py +0 -0
  22. {runapi_core-0.3.3 → runapi_core-0.3.5}/src/runapi/core/py.typed +0 -0
  23. {runapi_core-0.3.3 → runapi_core-0.3.5}/src/runapi/core/resource.py +0 -0
  24. {runapi_core-0.3.3 → runapi_core-0.3.5}/src/runapi/core/response.py +0 -0
  25. {runapi_core-0.3.3 → runapi_core-0.3.5}/tests/test_account.py +0 -0
  26. {runapi_core-0.3.3 → runapi_core-0.3.5}/tests/test_auth.py +0 -0
  27. {runapi_core-0.3.3 → runapi_core-0.3.5}/tests/test_config.py +0 -0
  28. {runapi_core-0.3.3 → runapi_core-0.3.5}/tests/test_errors.py +0 -0
  29. {runapi_core-0.3.3 → runapi_core-0.3.5}/tests/test_files.py +0 -0
  30. {runapi_core-0.3.3 → runapi_core-0.3.5}/tests/test_http_client.py +0 -0
  31. {runapi_core-0.3.3 → runapi_core-0.3.5}/tests/test_models.py +0 -0
  32. {runapi_core-0.3.3 → runapi_core-0.3.5}/tests/test_polling.py +0 -0
  33. {runapi_core-0.3.3 → runapi_core-0.3.5}/tests/test_resource.py +0 -0
@@ -1,13 +1,13 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: runapi-core
3
- Version: 0.3.3
3
+ Version: 0.3.5
4
4
  Summary: RunAPI core SDK for JavaScript, Python, Ruby, Go, Java, and PHP
5
5
  Project-URL: Homepage, https://runapi.ai/models
6
6
  Project-URL: Documentation, https://runapi.ai/docs/resources/sdks
7
7
  Project-URL: Source, https://github.com/runapi-ai/core-sdk
8
8
  Project-URL: Issues, https://github.com/runapi-ai/core-sdk/issues
9
9
  Project-URL: Changelog, https://github.com/runapi-ai/core-sdk/blob/main/CHANGELOG.md
10
- Project-URL: Release Notes, https://github.com/runapi-ai/core-sdk/releases/tag/python%2Fv0.3.3
10
+ Project-URL: Release Notes, https://github.com/runapi-ai/core-sdk/releases/tag/python%2Fv0.3.5
11
11
  Author-email: RunAPI <contact@runapi.ai>
12
12
  License-Expression: Apache-2.0
13
13
  Keywords: api,core,golang,gradle,java,maven,pypi,python,ruby,runapi,runapi-ai,sdk,typescript
@@ -19,7 +19,7 @@ Documentation = "https://runapi.ai/docs/resources/sdks"
19
19
  Source = "https://github.com/runapi-ai/core-sdk"
20
20
  Issues = "https://github.com/runapi-ai/core-sdk/issues"
21
21
  Changelog = "https://github.com/runapi-ai/core-sdk/blob/main/CHANGELOG.md"
22
- "Release Notes" = "https://github.com/runapi-ai/core-sdk/releases/tag/python%2Fv0.3.3"
22
+ "Release Notes" = "https://github.com/runapi-ai/core-sdk/releases/tag/python%2Fv0.3.5"
23
23
 
24
24
  [tool.hatch.version]
25
25
  path = "src/runapi/core/version.py"
@@ -980,6 +980,62 @@ CONTRACT = {
980
980
  "tts-1-hd": {}
981
981
  }
982
982
  },
983
+ "pixverse/edit-video": {
984
+ "models": ["pixverse-v6"],
985
+ "fields_by_model": {
986
+ "pixverse-v6": {
987
+ "aspect_ratio": {
988
+ "enum": ["16:9", "4:3", "1:1", "3:4", "9:16", "2:3", "3:2", "21:9"]
989
+ },
990
+ "output_resolution": {
991
+ "enum": ["360p", "540p", "720p", "1080p"]
992
+ }
993
+ }
994
+ }
995
+ },
996
+ "pixverse/extend-video": {
997
+ "models": ["pixverse-v6"],
998
+ "fields_by_model": {
999
+ "pixverse-v6": {
1000
+ "output_resolution": {
1001
+ "enum": ["360p", "540p", "720p", "1080p"]
1002
+ }
1003
+ }
1004
+ }
1005
+ },
1006
+ "pixverse/image-to-video": {
1007
+ "models": ["pixverse-v6"],
1008
+ "fields_by_model": {
1009
+ "pixverse-v6": {
1010
+ "output_resolution": {
1011
+ "enum": ["360p", "540p", "720p", "1080p"]
1012
+ }
1013
+ }
1014
+ }
1015
+ },
1016
+ "pixverse/text-to-video": {
1017
+ "models": ["pixverse-v6"],
1018
+ "fields_by_model": {
1019
+ "pixverse-v6": {
1020
+ "aspect_ratio": {
1021
+ "enum": ["16:9", "4:3", "1:1", "3:4", "9:16", "2:3", "3:2", "21:9"]
1022
+ },
1023
+ "output_resolution": {
1024
+ "enum": ["360p", "540p", "720p", "1080p"]
1025
+ }
1026
+ }
1027
+ }
1028
+ },
1029
+ "pixverse/transition-video": {
1030
+ "models": ["pixverse-v6"],
1031
+ "fields_by_model": {
1032
+ "pixverse-v6": {
1033
+ "output_resolution": {
1034
+ "enum": ["360p", "540p", "720p", "1080p"]
1035
+ }
1036
+ }
1037
+ }
1038
+ },
983
1039
  "producer/text-to-music": {
984
1040
  "models": ["fuzz-0.8", "fuzz-1.0", "fuzz-1.0-pro", "fuzz-1.1", "fuzz-1.1-pro", "fuzz-2.0", "fuzz-2.0-pro", "fuzz-2.0-raw"],
985
1041
  "fields_by_model": {
@@ -24,6 +24,7 @@ class PriceSchedule(BaseModel):
24
24
  input_price_per_1m_cents = optional(int)
25
25
  output_price_per_1m_cents = optional(int)
26
26
  cache_read_price_per_1m_cents = optional(int)
27
+ cache_write_price_per_1m_cents = optional(int)
27
28
  cache_write_5m_price_per_1m_cents = optional(int)
28
29
  cache_write_1h_price_per_1m_cents = optional(int)
29
30
  billing_config = optional()
@@ -0,0 +1 @@
1
+ __version__ = "0.3.5"
@@ -24,6 +24,7 @@ SCHEDULE = {
24
24
  "billing_unit": "per_call",
25
25
  "billing_strategy": "flat",
26
26
  "unit_price_cents": 5,
27
+ "cache_write_price_per_1m_cents": 125,
27
28
  "future_field": {"preserved": True},
28
29
  }
29
30
 
@@ -45,6 +46,7 @@ def test_list_schedules_uses_live_endpoint_filters_and_revalidation_options():
45
46
 
46
47
  assert isinstance(result, PriceScheduleListResponse)
47
48
  assert result.price_schedules[0].future_field.preserved is True
49
+ assert result.price_schedules[0].cache_write_price_per_1m_cents == 125
48
50
  assert result.response_header("etag") == '"schedule-v2"'
49
51
  assert http.calls == [
50
52
  ("get", "/api/v1/price_schedules?service=nano_banana&action=text_to_image&model=nano-banana", None, options)
@@ -1 +0,0 @@
1
- __version__ = "0.3.3"
File without changes