sybilion 0.1.0__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.
- sybilion-0.1.0/LICENSE +17 -0
- sybilion-0.1.0/PKG-INFO +75 -0
- sybilion-0.1.0/README.md +45 -0
- sybilion-0.1.0/pyproject.toml +41 -0
- sybilion-0.1.0/setup.cfg +4 -0
- sybilion-0.1.0/sybilion/__init__.py +55 -0
- sybilion-0.1.0/sybilion/_api/__init__.py +59 -0
- sybilion-0.1.0/sybilion/_api/api/__init__.py +5 -0
- sybilion-0.1.0/sybilion/_api/api/default_api.py +3089 -0
- sybilion-0.1.0/sybilion/_api/api_client.py +797 -0
- sybilion-0.1.0/sybilion/_api/api_response.py +21 -0
- sybilion-0.1.0/sybilion/_api/configuration.py +574 -0
- sybilion-0.1.0/sybilion/_api/exceptions.py +216 -0
- sybilion-0.1.0/sybilion/_api/models/__init__.py +42 -0
- sybilion-0.1.0/sybilion/_api/models/api_v1_forecasts_id_get200_response.py +118 -0
- sybilion-0.1.0/sybilion/_api/models/api_v1_forecasts_post202_response.py +93 -0
- sybilion-0.1.0/sybilion/_api/models/api_v1_jobs_get200_response.py +101 -0
- sybilion-0.1.0/sybilion/_api/models/api_v1_usage_get200_response.py +101 -0
- sybilion-0.1.0/sybilion/_api/models/auto_recharge_patch.py +93 -0
- sybilion-0.1.0/sybilion/_api/models/auto_recharge_state.py +105 -0
- sybilion-0.1.0/sybilion/_api/models/catalog_list_response.py +87 -0
- sybilion-0.1.0/sybilion/_api/models/checkout_request.py +89 -0
- sybilion-0.1.0/sybilion/_api/models/error_message.py +87 -0
- sybilion-0.1.0/sybilion/_api/models/euro_tranche.py +98 -0
- sybilion-0.1.0/sybilion/_api/models/filters.py +92 -0
- sybilion-0.1.0/sybilion/_api/models/forecast_artifact_meta.py +93 -0
- sybilion-0.1.0/sybilion/_api/models/forecast_request_v1.py +126 -0
- sybilion-0.1.0/sybilion/_api/models/job_summary.py +128 -0
- sybilion-0.1.0/sybilion/_api/models/jobs_pagination.py +112 -0
- sybilion-0.1.0/sybilion/_api/models/me_response.py +126 -0
- sybilion-0.1.0/sybilion/_api/models/me_response_signup_trial.py +94 -0
- sybilion-0.1.0/sybilion/_api/models/pagination.py +112 -0
- sybilion-0.1.0/sybilion/_api/models/recommend_request_v1.py +111 -0
- sybilion-0.1.0/sybilion/_api/models/tier_config.py +99 -0
- sybilion-0.1.0/sybilion/_api/models/tiers_response.py +110 -0
- sybilion-0.1.0/sybilion/_api/models/tiers_response_progress.py +91 -0
- sybilion-0.1.0/sybilion/_api/models/timeseries_metadata.py +92 -0
- sybilion-0.1.0/sybilion/_api/models/usage_event.py +104 -0
- sybilion-0.1.0/sybilion/_api/models/validation_error_response.py +104 -0
- sybilion-0.1.0/sybilion/_api/models/validation_error_response_details_inner.py +89 -0
- sybilion-0.1.0/sybilion/_api/py.typed +0 -0
- sybilion-0.1.0/sybilion/_api/rest.py +257 -0
- sybilion-0.1.0/sybilion/client.py +100 -0
- sybilion-0.1.0/sybilion/defaults_gen.py +3 -0
- sybilion-0.1.0/sybilion/env.py +27 -0
- sybilion-0.1.0/sybilion.egg-info/PKG-INFO +75 -0
- sybilion-0.1.0/sybilion.egg-info/SOURCES.txt +49 -0
- sybilion-0.1.0/sybilion.egg-info/dependency_links.txt +1 -0
- sybilion-0.1.0/sybilion.egg-info/requires.txt +8 -0
- sybilion-0.1.0/sybilion.egg-info/top_level.txt +1 -0
- sybilion-0.1.0/tests/test_portal_client.py +85 -0
sybilion-0.1.0/LICENSE
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
Apache License
|
|
2
|
+
Version 2.0, January 2004
|
|
3
|
+
http://www.apache.org/licenses/
|
|
4
|
+
|
|
5
|
+
Copyright 2026 Mir-Insight
|
|
6
|
+
|
|
7
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
|
8
|
+
you may not use this file except in compliance with the License.
|
|
9
|
+
You may obtain a copy of the License at
|
|
10
|
+
|
|
11
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
|
12
|
+
|
|
13
|
+
Unless required by applicable law or agreed to in writing, software
|
|
14
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
|
15
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
16
|
+
See the License for the specific language governing permissions and
|
|
17
|
+
limitations under the License.
|
sybilion-0.1.0/PKG-INFO
ADDED
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: sybilion
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Summary: Official Python SDK for the Sybilion API.
|
|
5
|
+
Author-email: Sybilion <support@sybilion.com>
|
|
6
|
+
License-Expression: Apache-2.0
|
|
7
|
+
Project-URL: Documentation, https://docs.sybilion.com
|
|
8
|
+
Keywords: sybilion,forecasting,drivers,api,sdk
|
|
9
|
+
Classifier: Development Status :: 4 - Beta
|
|
10
|
+
Classifier: Intended Audience :: Developers
|
|
11
|
+
Classifier: Operating System :: OS Independent
|
|
12
|
+
Classifier: Programming Language :: Python :: 3
|
|
13
|
+
Classifier: Programming Language :: Python :: 3 :: Only
|
|
14
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
18
|
+
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
19
|
+
Requires-Python: >=3.10
|
|
20
|
+
Description-Content-Type: text/markdown
|
|
21
|
+
License-File: LICENSE
|
|
22
|
+
Requires-Dist: urllib3>=2.0
|
|
23
|
+
Requires-Dist: python-dateutil>=2.8.2
|
|
24
|
+
Requires-Dist: pydantic>=2
|
|
25
|
+
Requires-Dist: typing-extensions>=4.7.1
|
|
26
|
+
Provides-Extra: dev
|
|
27
|
+
Requires-Dist: pytest>=8.0; extra == "dev"
|
|
28
|
+
Requires-Dist: build>=1.2; extra == "dev"
|
|
29
|
+
Dynamic: license-file
|
|
30
|
+
|
|
31
|
+
# Sybilion Python SDK
|
|
32
|
+
|
|
33
|
+
Official Python SDK for the [Sybilion API](https://docs.sybilion.com).
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
pip install sybilion
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
Requires Python 3.10+.
|
|
40
|
+
|
|
41
|
+
## Quick use
|
|
42
|
+
|
|
43
|
+
```python
|
|
44
|
+
import os
|
|
45
|
+
|
|
46
|
+
from sybilion import Client
|
|
47
|
+
|
|
48
|
+
c = Client(token=os.environ["SYBILION_API_TOKEN"])
|
|
49
|
+
me = c.raw.api_v1_me_get()
|
|
50
|
+
print(me.user_id, me.available_eur_cents, me.api_usage_tier)
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
The token is an API key (`sk_ops_...`) created in the Developers Portal, or a dashboard session token. The default base URL is `https://api.sybilion.dev`; override per-process with `SYBILION_API_BASE_URL` or per-call via the `base_url=` argument.
|
|
54
|
+
|
|
55
|
+
## What's in the box
|
|
56
|
+
|
|
57
|
+
- `sybilion.Client` — Bearer auth, ergonomic helpers.
|
|
58
|
+
- `client.wait_forecast(job_id)` — polls `GET /api/v1/forecasts/{id}` until settled.
|
|
59
|
+
- `client.iter_usage_pages(...)`, `client.iter_jobs_pages(...)` — paginated iterators.
|
|
60
|
+
- `client.raw` — escape hatch to the OpenAPI-generated `DefaultApi` for any endpoint not yet wrapped.
|
|
61
|
+
- Typed exceptions (`sybilion.ApiException` and per-status subclasses).
|
|
62
|
+
|
|
63
|
+
## Documentation
|
|
64
|
+
|
|
65
|
+
Full guides, feature walkthroughs, API reference, and SDK patterns: **<https://docs.sybilion.com>**.
|
|
66
|
+
|
|
67
|
+
## Support
|
|
68
|
+
|
|
69
|
+
- Email — [support@sybilion.com](mailto:support@sybilion.com)
|
|
70
|
+
- Slack — [Sybilion Community](https://join.slack.com/t/sybilioncommunity/shared_invite/zt-3y6vx56nk-WJu35eLxkyFQr~Yfko6RjQ)
|
|
71
|
+
- Discord — [Sybilion Developers Community](https://discord.gg/CEpEvUB7)
|
|
72
|
+
|
|
73
|
+
## License
|
|
74
|
+
|
|
75
|
+
[Apache 2.0](LICENSE).
|
sybilion-0.1.0/README.md
ADDED
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
# Sybilion Python SDK
|
|
2
|
+
|
|
3
|
+
Official Python SDK for the [Sybilion API](https://docs.sybilion.com).
|
|
4
|
+
|
|
5
|
+
```bash
|
|
6
|
+
pip install sybilion
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
Requires Python 3.10+.
|
|
10
|
+
|
|
11
|
+
## Quick use
|
|
12
|
+
|
|
13
|
+
```python
|
|
14
|
+
import os
|
|
15
|
+
|
|
16
|
+
from sybilion import Client
|
|
17
|
+
|
|
18
|
+
c = Client(token=os.environ["SYBILION_API_TOKEN"])
|
|
19
|
+
me = c.raw.api_v1_me_get()
|
|
20
|
+
print(me.user_id, me.available_eur_cents, me.api_usage_tier)
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
The token is an API key (`sk_ops_...`) created in the Developers Portal, or a dashboard session token. The default base URL is `https://api.sybilion.dev`; override per-process with `SYBILION_API_BASE_URL` or per-call via the `base_url=` argument.
|
|
24
|
+
|
|
25
|
+
## What's in the box
|
|
26
|
+
|
|
27
|
+
- `sybilion.Client` — Bearer auth, ergonomic helpers.
|
|
28
|
+
- `client.wait_forecast(job_id)` — polls `GET /api/v1/forecasts/{id}` until settled.
|
|
29
|
+
- `client.iter_usage_pages(...)`, `client.iter_jobs_pages(...)` — paginated iterators.
|
|
30
|
+
- `client.raw` — escape hatch to the OpenAPI-generated `DefaultApi` for any endpoint not yet wrapped.
|
|
31
|
+
- Typed exceptions (`sybilion.ApiException` and per-status subclasses).
|
|
32
|
+
|
|
33
|
+
## Documentation
|
|
34
|
+
|
|
35
|
+
Full guides, feature walkthroughs, API reference, and SDK patterns: **<https://docs.sybilion.com>**.
|
|
36
|
+
|
|
37
|
+
## Support
|
|
38
|
+
|
|
39
|
+
- Email — [support@sybilion.com](mailto:support@sybilion.com)
|
|
40
|
+
- Slack — [Sybilion Community](https://join.slack.com/t/sybilioncommunity/shared_invite/zt-3y6vx56nk-WJu35eLxkyFQr~Yfko6RjQ)
|
|
41
|
+
- Discord — [Sybilion Developers Community](https://discord.gg/CEpEvUB7)
|
|
42
|
+
|
|
43
|
+
## License
|
|
44
|
+
|
|
45
|
+
[Apache 2.0](LICENSE).
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
[build-system]
|
|
2
|
+
requires = ["setuptools>=68", "wheel"]
|
|
3
|
+
build-backend = "setuptools.build_meta"
|
|
4
|
+
|
|
5
|
+
[project]
|
|
6
|
+
name = "sybilion"
|
|
7
|
+
version = "0.1.0"
|
|
8
|
+
description = "Official Python SDK for the Sybilion API."
|
|
9
|
+
readme = "README.md"
|
|
10
|
+
requires-python = ">=3.10"
|
|
11
|
+
license = "Apache-2.0"
|
|
12
|
+
authors = [{ name = "Sybilion", email = "support@sybilion.com" }]
|
|
13
|
+
keywords = ["sybilion", "forecasting", "drivers", "api", "sdk"]
|
|
14
|
+
classifiers = [
|
|
15
|
+
"Development Status :: 4 - Beta",
|
|
16
|
+
"Intended Audience :: Developers",
|
|
17
|
+
"Operating System :: OS Independent",
|
|
18
|
+
"Programming Language :: Python :: 3",
|
|
19
|
+
"Programming Language :: Python :: 3 :: Only",
|
|
20
|
+
"Programming Language :: Python :: 3.10",
|
|
21
|
+
"Programming Language :: Python :: 3.11",
|
|
22
|
+
"Programming Language :: Python :: 3.12",
|
|
23
|
+
"Programming Language :: Python :: 3.13",
|
|
24
|
+
"Topic :: Software Development :: Libraries :: Python Modules",
|
|
25
|
+
]
|
|
26
|
+
dependencies = [
|
|
27
|
+
"urllib3>=2.0",
|
|
28
|
+
"python-dateutil>=2.8.2",
|
|
29
|
+
"pydantic>=2",
|
|
30
|
+
"typing-extensions>=4.7.1",
|
|
31
|
+
]
|
|
32
|
+
|
|
33
|
+
[project.optional-dependencies]
|
|
34
|
+
dev = ["pytest>=8.0", "build>=1.2"]
|
|
35
|
+
|
|
36
|
+
[project.urls]
|
|
37
|
+
Documentation = "https://docs.sybilion.com"
|
|
38
|
+
|
|
39
|
+
[tool.setuptools.packages.find]
|
|
40
|
+
where = ["."]
|
|
41
|
+
include = ["sybilion*"]
|
sybilion-0.1.0/setup.cfg
ADDED
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"""Sybilion API client.
|
|
2
|
+
|
|
3
|
+
The official Python SDK for the Sybilion API. Install with ``pip install sybilion``.
|
|
4
|
+
|
|
5
|
+
Quick use:
|
|
6
|
+
|
|
7
|
+
from sybilion import Client
|
|
8
|
+
|
|
9
|
+
c = Client(token="sk_ops_...")
|
|
10
|
+
me = c.raw.api_v1_me_get()
|
|
11
|
+
|
|
12
|
+
The low-level OpenAPI-generated client lives at ``sybilion._api`` and is exposed
|
|
13
|
+
through ``Client.raw`` for endpoints not yet wrapped by the ergonomic helpers.
|
|
14
|
+
"""
|
|
15
|
+
|
|
16
|
+
from sybilion._api.exceptions import (
|
|
17
|
+
ApiException,
|
|
18
|
+
ApiTypeError,
|
|
19
|
+
ApiValueError,
|
|
20
|
+
BadRequestException,
|
|
21
|
+
ConflictException,
|
|
22
|
+
ForbiddenException,
|
|
23
|
+
NotFoundException,
|
|
24
|
+
OpenApiException,
|
|
25
|
+
ServiceException,
|
|
26
|
+
UnauthorizedException,
|
|
27
|
+
UnprocessableEntityException,
|
|
28
|
+
)
|
|
29
|
+
from sybilion.client import Client
|
|
30
|
+
from sybilion.defaults_gen import DEFAULT_PUBLIC_API_BASE_URL
|
|
31
|
+
from sybilion.env import (
|
|
32
|
+
OPERATIONAL_API_BASE_URL_ENV,
|
|
33
|
+
SYBILION_API_BASE_URL_ENV,
|
|
34
|
+
resolve_api_base_url,
|
|
35
|
+
)
|
|
36
|
+
|
|
37
|
+
__all__ = [
|
|
38
|
+
"Client",
|
|
39
|
+
"DEFAULT_PUBLIC_API_BASE_URL",
|
|
40
|
+
"SYBILION_API_BASE_URL_ENV",
|
|
41
|
+
"OPERATIONAL_API_BASE_URL_ENV",
|
|
42
|
+
"resolve_api_base_url",
|
|
43
|
+
# Exception types re-exported from the generated client for convenience.
|
|
44
|
+
"ApiException",
|
|
45
|
+
"ApiTypeError",
|
|
46
|
+
"ApiValueError",
|
|
47
|
+
"BadRequestException",
|
|
48
|
+
"ConflictException",
|
|
49
|
+
"ForbiddenException",
|
|
50
|
+
"NotFoundException",
|
|
51
|
+
"OpenApiException",
|
|
52
|
+
"ServiceException",
|
|
53
|
+
"UnauthorizedException",
|
|
54
|
+
"UnprocessableEntityException",
|
|
55
|
+
]
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
# flake8: noqa
|
|
4
|
+
|
|
5
|
+
"""
|
|
6
|
+
Sybilion API
|
|
7
|
+
|
|
8
|
+
The Sybilion API powers the Sybilion Developers Portal: forecasts, drivers, catalog, account and usage. Authenticate every request with `Authorization: Bearer <token>` using either an API key created in the Developers Portal or an Auth0 access token from your dashboard session.
|
|
9
|
+
|
|
10
|
+
The version of the OpenAPI document: 0.1.0
|
|
11
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
12
|
+
|
|
13
|
+
Do not edit the class manually.
|
|
14
|
+
""" # noqa: E501
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
__version__ = "1.0.0"
|
|
18
|
+
|
|
19
|
+
# import apis into sdk package
|
|
20
|
+
from sybilion._api.api.default_api import DefaultApi
|
|
21
|
+
|
|
22
|
+
# import ApiClient
|
|
23
|
+
from sybilion._api.api_response import ApiResponse
|
|
24
|
+
from sybilion._api.api_client import ApiClient
|
|
25
|
+
from sybilion._api.configuration import Configuration
|
|
26
|
+
from sybilion._api.exceptions import OpenApiException
|
|
27
|
+
from sybilion._api.exceptions import ApiTypeError
|
|
28
|
+
from sybilion._api.exceptions import ApiValueError
|
|
29
|
+
from sybilion._api.exceptions import ApiKeyError
|
|
30
|
+
from sybilion._api.exceptions import ApiAttributeError
|
|
31
|
+
from sybilion._api.exceptions import ApiException
|
|
32
|
+
|
|
33
|
+
# import models into sdk package
|
|
34
|
+
from sybilion._api.models.api_v1_forecasts_id_get200_response import ApiV1ForecastsIdGet200Response
|
|
35
|
+
from sybilion._api.models.api_v1_forecasts_post202_response import ApiV1ForecastsPost202Response
|
|
36
|
+
from sybilion._api.models.api_v1_jobs_get200_response import ApiV1JobsGet200Response
|
|
37
|
+
from sybilion._api.models.api_v1_usage_get200_response import ApiV1UsageGet200Response
|
|
38
|
+
from sybilion._api.models.auto_recharge_patch import AutoRechargePatch
|
|
39
|
+
from sybilion._api.models.auto_recharge_state import AutoRechargeState
|
|
40
|
+
from sybilion._api.models.catalog_list_response import CatalogListResponse
|
|
41
|
+
from sybilion._api.models.checkout_request import CheckoutRequest
|
|
42
|
+
from sybilion._api.models.error_message import ErrorMessage
|
|
43
|
+
from sybilion._api.models.euro_tranche import EuroTranche
|
|
44
|
+
from sybilion._api.models.filters import Filters
|
|
45
|
+
from sybilion._api.models.forecast_artifact_meta import ForecastArtifactMeta
|
|
46
|
+
from sybilion._api.models.forecast_request_v1 import ForecastRequestV1
|
|
47
|
+
from sybilion._api.models.job_summary import JobSummary
|
|
48
|
+
from sybilion._api.models.jobs_pagination import JobsPagination
|
|
49
|
+
from sybilion._api.models.me_response import MeResponse
|
|
50
|
+
from sybilion._api.models.me_response_signup_trial import MeResponseSignupTrial
|
|
51
|
+
from sybilion._api.models.pagination import Pagination
|
|
52
|
+
from sybilion._api.models.recommend_request_v1 import RecommendRequestV1
|
|
53
|
+
from sybilion._api.models.tier_config import TierConfig
|
|
54
|
+
from sybilion._api.models.tiers_response import TiersResponse
|
|
55
|
+
from sybilion._api.models.tiers_response_progress import TiersResponseProgress
|
|
56
|
+
from sybilion._api.models.timeseries_metadata import TimeseriesMetadata
|
|
57
|
+
from sybilion._api.models.usage_event import UsageEvent
|
|
58
|
+
from sybilion._api.models.validation_error_response import ValidationErrorResponse
|
|
59
|
+
from sybilion._api.models.validation_error_response_details_inner import ValidationErrorResponseDetailsInner
|