orbuculum-client 0.0.1__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.
- orbuculum_client-0.0.1/LICENSE +21 -0
- orbuculum_client-0.0.1/MANIFEST.in +5 -0
- orbuculum_client-0.0.1/PKG-INFO +458 -0
- orbuculum_client-0.0.1/README.md +419 -0
- orbuculum_client-0.0.1/docs/Account.md +44 -0
- orbuculum_client-0.0.1/docs/AccountApi.md +431 -0
- orbuculum_client-0.0.1/docs/AccountCreatedResponse.md +32 -0
- orbuculum_client-0.0.1/docs/AccountPermission.md +34 -0
- orbuculum_client-0.0.1/docs/AccountPermissionsApi.md +340 -0
- orbuculum_client-0.0.1/docs/ActivateAccountRequest.md +29 -0
- orbuculum_client-0.0.1/docs/AddCommissionRequest.md +33 -0
- orbuculum_client-0.0.1/docs/AuthenticationApi.md +79 -0
- orbuculum_client-0.0.1/docs/ColumnInfo.md +35 -0
- orbuculum_client-0.0.1/docs/CommissionCreatedResponse.md +31 -0
- orbuculum_client-0.0.1/docs/CommissionData.md +31 -0
- orbuculum_client-0.0.1/docs/CreateAccountPermissionRequest.md +34 -0
- orbuculum_client-0.0.1/docs/CreateAccountRequest.md +41 -0
- orbuculum_client-0.0.1/docs/CreateCustomRecordRequest.md +31 -0
- orbuculum_client-0.0.1/docs/CreateCustomRecordResponse.md +32 -0
- orbuculum_client-0.0.1/docs/CreateEntityPermissionRequest.md +33 -0
- orbuculum_client-0.0.1/docs/CreateLabelPermissionRequest.md +35 -0
- orbuculum_client-0.0.1/docs/CreateLabelRequest.md +33 -0
- orbuculum_client-0.0.1/docs/CreateTransactionRequest.md +43 -0
- orbuculum_client-0.0.1/docs/CustomApi.md +422 -0
- orbuculum_client-0.0.1/docs/CustomTableInfo.md +32 -0
- orbuculum_client-0.0.1/docs/CustomValue.md +29 -0
- orbuculum_client-0.0.1/docs/DeleteCustomRecordsRequest.md +32 -0
- orbuculum_client-0.0.1/docs/DeleteCustomRecordsResponse.md +32 -0
- orbuculum_client-0.0.1/docs/DeleteEntityPermissionRequest.md +32 -0
- orbuculum_client-0.0.1/docs/DeleteLabelPermissionRequest.md +34 -0
- orbuculum_client-0.0.1/docs/DeleteTransactionRequest.md +31 -0
- orbuculum_client-0.0.1/docs/EditAccountPermissionRequest.md +34 -0
- orbuculum_client-0.0.1/docs/EntityPermission.md +34 -0
- orbuculum_client-0.0.1/docs/EntityPermissionsApi.md +258 -0
- orbuculum_client-0.0.1/docs/ErrorResponse.md +31 -0
- orbuculum_client-0.0.1/docs/ErrorResponse400.md +31 -0
- orbuculum_client-0.0.1/docs/ErrorResponse401.md +31 -0
- orbuculum_client-0.0.1/docs/ErrorResponse403.md +31 -0
- orbuculum_client-0.0.1/docs/ErrorResponse404.md +31 -0
- orbuculum_client-0.0.1/docs/GetAccountPermissionsResponse.md +31 -0
- orbuculum_client-0.0.1/docs/GetAccountResponse.md +31 -0
- orbuculum_client-0.0.1/docs/GetCustomTablesResponse.md +32 -0
- orbuculum_client-0.0.1/docs/GetEntityPermissionsResponse.md +31 -0
- orbuculum_client-0.0.1/docs/GetLabelPermissionsResponse.md +31 -0
- orbuculum_client-0.0.1/docs/GetLabelsResponse.md +31 -0
- orbuculum_client-0.0.1/docs/GetLimitationsResponse.md +32 -0
- orbuculum_client-0.0.1/docs/Label.md +33 -0
- orbuculum_client-0.0.1/docs/LabelApi.md +349 -0
- orbuculum_client-0.0.1/docs/LabelCreatedResponse.md +32 -0
- orbuculum_client-0.0.1/docs/LabelPermission.md +34 -0
- orbuculum_client-0.0.1/docs/LabelPermissionsApi.md +260 -0
- orbuculum_client-0.0.1/docs/Limitation.md +35 -0
- orbuculum_client-0.0.1/docs/LimitationApi.md +261 -0
- orbuculum_client-0.0.1/docs/LimitationManagedResponse.md +32 -0
- orbuculum_client-0.0.1/docs/LoginRequest.md +31 -0
- orbuculum_client-0.0.1/docs/LoginResponse.md +31 -0
- orbuculum_client-0.0.1/docs/ManageAccountLimitationRequest.md +36 -0
- orbuculum_client-0.0.1/docs/ManageEntityLimitationRequest.md +33 -0
- orbuculum_client-0.0.1/docs/PaginationMeta.md +33 -0
- orbuculum_client-0.0.1/docs/PermissionCreatedResponse.md +32 -0
- orbuculum_client-0.0.1/docs/ReadCustomRecordsResponse.md +32 -0
- orbuculum_client-0.0.1/docs/SuccessResponse.md +31 -0
- orbuculum_client-0.0.1/docs/Transaction.md +52 -0
- orbuculum_client-0.0.1/docs/TransactionApi.md +431 -0
- orbuculum_client-0.0.1/docs/TransactionCreatedData.md +32 -0
- orbuculum_client-0.0.1/docs/TransactionCreatedResponse.md +31 -0
- orbuculum_client-0.0.1/docs/TransactionListResponse.md +31 -0
- orbuculum_client-0.0.1/docs/UpdateAccountRequest.md +36 -0
- orbuculum_client-0.0.1/docs/UpdateCustomRecordsRequest.md +33 -0
- orbuculum_client-0.0.1/docs/UpdateCustomRecordsResponse.md +32 -0
- orbuculum_client-0.0.1/docs/UpdateLabelRequest.md +34 -0
- orbuculum_client-0.0.1/docs/UpdateTransactionRequest.md +40 -0
- orbuculum_client-0.0.1/orbuculum_client/__init__.py +281 -0
- orbuculum_client-0.0.1/orbuculum_client/api/__init__.py +36 -0
- orbuculum_client-0.0.1/orbuculum_client/api/account_api.py +1511 -0
- orbuculum_client-0.0.1/orbuculum_client/api/account_permissions_api.py +1181 -0
- orbuculum_client-0.0.1/orbuculum_client/api/authentication_api.py +313 -0
- orbuculum_client-0.0.1/orbuculum_client/api/custom_api.py +1475 -0
- orbuculum_client-0.0.1/orbuculum_client/api/entity_permissions_api.py +909 -0
- orbuculum_client-0.0.1/orbuculum_client/api/label_api.py +1208 -0
- orbuculum_client-0.0.1/orbuculum_client/api/label_permissions_api.py +926 -0
- orbuculum_client-0.0.1/orbuculum_client/api/limitation_api.py +917 -0
- orbuculum_client-0.0.1/orbuculum_client/api/transaction_api.py +1502 -0
- orbuculum_client-0.0.1/orbuculum_client/api_client.py +804 -0
- orbuculum_client-0.0.1/orbuculum_client/api_response.py +21 -0
- orbuculum_client-0.0.1/orbuculum_client/configuration.py +582 -0
- orbuculum_client-0.0.1/orbuculum_client/exceptions.py +216 -0
- orbuculum_client-0.0.1/orbuculum_client/models/__init__.py +149 -0
- orbuculum_client-0.0.1/orbuculum_client/models/account.py +116 -0
- orbuculum_client-0.0.1/orbuculum_client/models/account_created_response.py +91 -0
- orbuculum_client-0.0.1/orbuculum_client/models/account_permission.py +95 -0
- orbuculum_client-0.0.1/orbuculum_client/models/activate_account_request.py +87 -0
- orbuculum_client-0.0.1/orbuculum_client/models/add_commission_request.py +102 -0
- orbuculum_client-0.0.1/orbuculum_client/models/column_info.py +107 -0
- orbuculum_client-0.0.1/orbuculum_client/models/commission_created_response.py +89 -0
- orbuculum_client-0.0.1/orbuculum_client/models/commission_data.py +89 -0
- orbuculum_client-0.0.1/orbuculum_client/models/create_account_permission_request.py +95 -0
- orbuculum_client-0.0.1/orbuculum_client/models/create_account_request.py +154 -0
- orbuculum_client-0.0.1/orbuculum_client/models/create_custom_record_request.py +91 -0
- orbuculum_client-0.0.1/orbuculum_client/models/create_custom_record_response.py +91 -0
- orbuculum_client-0.0.1/orbuculum_client/models/create_entity_permission_request.py +98 -0
- orbuculum_client-0.0.1/orbuculum_client/models/create_label_permission_request.py +97 -0
- orbuculum_client-0.0.1/orbuculum_client/models/create_label_request.py +93 -0
- orbuculum_client-0.0.1/orbuculum_client/models/create_transaction_request.py +155 -0
- orbuculum_client-0.0.1/orbuculum_client/models/custom_table_info.py +99 -0
- orbuculum_client-0.0.1/orbuculum_client/models/custom_value.py +177 -0
- orbuculum_client-0.0.1/orbuculum_client/models/delete_custom_records_request.py +98 -0
- orbuculum_client-0.0.1/orbuculum_client/models/delete_custom_records_response.py +96 -0
- orbuculum_client-0.0.1/orbuculum_client/models/delete_entity_permission_request.py +93 -0
- orbuculum_client-0.0.1/orbuculum_client/models/delete_label_permission_request.py +95 -0
- orbuculum_client-0.0.1/orbuculum_client/models/delete_transaction_request.py +89 -0
- orbuculum_client-0.0.1/orbuculum_client/models/edit_account_permission_request.py +95 -0
- orbuculum_client-0.0.1/orbuculum_client/models/entity_permission.py +95 -0
- orbuculum_client-0.0.1/orbuculum_client/models/error_response.py +89 -0
- orbuculum_client-0.0.1/orbuculum_client/models/error_response400.py +89 -0
- orbuculum_client-0.0.1/orbuculum_client/models/error_response401.py +89 -0
- orbuculum_client-0.0.1/orbuculum_client/models/error_response403.py +89 -0
- orbuculum_client-0.0.1/orbuculum_client/models/error_response404.py +89 -0
- orbuculum_client-0.0.1/orbuculum_client/models/get_account_permissions_response.py +97 -0
- orbuculum_client-0.0.1/orbuculum_client/models/get_account_response.py +97 -0
- orbuculum_client-0.0.1/orbuculum_client/models/get_custom_tables_response.py +99 -0
- orbuculum_client-0.0.1/orbuculum_client/models/get_entity_permissions_response.py +97 -0
- orbuculum_client-0.0.1/orbuculum_client/models/get_label_permissions_response.py +97 -0
- orbuculum_client-0.0.1/orbuculum_client/models/get_labels_response.py +97 -0
- orbuculum_client-0.0.1/orbuculum_client/models/get_limitations_response.py +99 -0
- orbuculum_client-0.0.1/orbuculum_client/models/label.py +93 -0
- orbuculum_client-0.0.1/orbuculum_client/models/label_created_response.py +91 -0
- orbuculum_client-0.0.1/orbuculum_client/models/label_permission.py +95 -0
- orbuculum_client-0.0.1/orbuculum_client/models/limitation.py +97 -0
- orbuculum_client-0.0.1/orbuculum_client/models/limitation_managed_response.py +96 -0
- orbuculum_client-0.0.1/orbuculum_client/models/login_request.py +89 -0
- orbuculum_client-0.0.1/orbuculum_client/models/login_response.py +89 -0
- orbuculum_client-0.0.1/orbuculum_client/models/manage_account_limitation_request.py +113 -0
- orbuculum_client-0.0.1/orbuculum_client/models/manage_entity_limitation_request.py +95 -0
- orbuculum_client-0.0.1/orbuculum_client/models/pagination_meta.py +93 -0
- orbuculum_client-0.0.1/orbuculum_client/models/permission_created_response.py +91 -0
- orbuculum_client-0.0.1/orbuculum_client/models/read_custom_records_response.py +99 -0
- orbuculum_client-0.0.1/orbuculum_client/models/success_response.py +89 -0
- orbuculum_client-0.0.1/orbuculum_client/models/transaction.py +201 -0
- orbuculum_client-0.0.1/orbuculum_client/models/transaction_created_data.py +108 -0
- orbuculum_client-0.0.1/orbuculum_client/models/transaction_created_response.py +93 -0
- orbuculum_client-0.0.1/orbuculum_client/models/transaction_list_response.py +97 -0
- orbuculum_client-0.0.1/orbuculum_client/models/update_account_request.py +124 -0
- orbuculum_client-0.0.1/orbuculum_client/models/update_custom_records_request.py +100 -0
- orbuculum_client-0.0.1/orbuculum_client/models/update_custom_records_response.py +91 -0
- orbuculum_client-0.0.1/orbuculum_client/models/update_label_request.py +95 -0
- orbuculum_client-0.0.1/orbuculum_client/models/update_transaction_request.py +152 -0
- orbuculum_client-0.0.1/orbuculum_client/py.typed +0 -0
- orbuculum_client-0.0.1/orbuculum_client/rest.py +258 -0
- orbuculum_client-0.0.1/orbuculum_client.egg-info/PKG-INFO +458 -0
- orbuculum_client-0.0.1/orbuculum_client.egg-info/SOURCES.txt +156 -0
- orbuculum_client-0.0.1/orbuculum_client.egg-info/dependency_links.txt +1 -0
- orbuculum_client-0.0.1/orbuculum_client.egg-info/requires.txt +13 -0
- orbuculum_client-0.0.1/orbuculum_client.egg-info/top_level.txt +1 -0
- orbuculum_client-0.0.1/pyproject.toml +118 -0
- orbuculum_client-0.0.1/requirements.txt +5 -0
- orbuculum_client-0.0.1/setup.cfg +7 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 Orbuculum
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,458 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: orbuculum-client
|
|
3
|
+
Version: 0.0.1
|
|
4
|
+
Summary: Official Python client for the Orbuculum API - accounting and finance automation
|
|
5
|
+
Author-email: Orbuculum Team <i@orbuculum.app>
|
|
6
|
+
License-Expression: MIT
|
|
7
|
+
Project-URL: Homepage, https://github.com/orbuculum-app/orbuculum-python-client
|
|
8
|
+
Project-URL: Repository, https://github.com/orbuculum-app/orbuculum-python-client
|
|
9
|
+
Project-URL: Issues, https://github.com/orbuculum-app/orbuculum-python-client/issues
|
|
10
|
+
Project-URL: Documentation, https://s1.orbuculum.app/swagger
|
|
11
|
+
Keywords: orbuculum,api,client,accounting,finance,automation
|
|
12
|
+
Classifier: Development Status :: 3 - Alpha
|
|
13
|
+
Classifier: Intended Audience :: Developers
|
|
14
|
+
Classifier: Operating System :: OS Independent
|
|
15
|
+
Classifier: Programming Language :: Python :: 3
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
21
|
+
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
22
|
+
Classifier: Topic :: Office/Business :: Financial :: Accounting
|
|
23
|
+
Requires-Python: >=3.9
|
|
24
|
+
Description-Content-Type: text/markdown
|
|
25
|
+
License-File: LICENSE
|
|
26
|
+
Requires-Dist: urllib3<3.0.0,>=2.1.0
|
|
27
|
+
Requires-Dist: python-dateutil>=2.8.2
|
|
28
|
+
Requires-Dist: pydantic>=2
|
|
29
|
+
Requires-Dist: typing-extensions>=4.7.1
|
|
30
|
+
Requires-Dist: lazy-imports<2,>=1
|
|
31
|
+
Provides-Extra: dev
|
|
32
|
+
Requires-Dist: pytest>=7.2.1; extra == "dev"
|
|
33
|
+
Requires-Dist: pytest-cov>=2.8.1; extra == "dev"
|
|
34
|
+
Requires-Dist: tox>=3.9.0; extra == "dev"
|
|
35
|
+
Requires-Dist: flake8>=4.0.0; extra == "dev"
|
|
36
|
+
Requires-Dist: types-python-dateutil>=2.8.19.14; extra == "dev"
|
|
37
|
+
Requires-Dist: mypy>=1.5; extra == "dev"
|
|
38
|
+
Dynamic: license-file
|
|
39
|
+
|
|
40
|
+
# Orbuculum Python Client
|
|
41
|
+
|
|
42
|
+
[](https://www.python.org/downloads/)
|
|
43
|
+
[](https://opensource.org/licenses/MIT)
|
|
44
|
+
|
|
45
|
+
Official Python client library for the [Orbuculum API](https://s1.orbuculum.app/swagger) - accounting and finance automation platform.
|
|
46
|
+
|
|
47
|
+
## 📦 Package Information
|
|
48
|
+
|
|
49
|
+
- **PyPI Package**: `orbuculum-client`
|
|
50
|
+
- **Import Name**: `orbuculum_client`
|
|
51
|
+
- **Client Version**: 0.0.1
|
|
52
|
+
- **Supported API Version**: 0.4.0
|
|
53
|
+
- **Python**: 3.9+
|
|
54
|
+
|
|
55
|
+
This package is automatically generated from the OpenAPI specification using [OpenAPI Generator](https://openapi-generator.tech) 7.15.0.
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
## 🚀 Quick Start
|
|
60
|
+
|
|
61
|
+
### Installation
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
pip install orbuculum-client
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
Or install from source:
|
|
68
|
+
```bash
|
|
69
|
+
pip install git+https://github.com/orbuculum-app/orbuculum-python-client.git
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
### Basic Usage
|
|
73
|
+
|
|
74
|
+
```python
|
|
75
|
+
import orbuculum_client
|
|
76
|
+
from orbuculum_client.rest import ApiException
|
|
77
|
+
import os
|
|
78
|
+
|
|
79
|
+
# Configure API client
|
|
80
|
+
configuration = orbuculum_client.Configuration(
|
|
81
|
+
host = "https://s1.orbuculum.app",
|
|
82
|
+
access_token = os.environ["BEARER_TOKEN"] # JWT token
|
|
83
|
+
)
|
|
84
|
+
|
|
85
|
+
# Use the API
|
|
86
|
+
with orbuculum_client.ApiClient(configuration) as api_client:
|
|
87
|
+
# Create API instance
|
|
88
|
+
api_instance = orbuculum_client.AccountApi(api_client)
|
|
89
|
+
|
|
90
|
+
try:
|
|
91
|
+
# Get account details
|
|
92
|
+
response = api_instance.get_account(id=1)
|
|
93
|
+
print(response)
|
|
94
|
+
except ApiException as e:
|
|
95
|
+
print(f"Error: {e}")
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
---
|
|
99
|
+
|
|
100
|
+
## 📚 Documentation
|
|
101
|
+
|
|
102
|
+
### For Users
|
|
103
|
+
|
|
104
|
+
- **[Installation & Usage](#installation)** - Get started quickly
|
|
105
|
+
- **[API Endpoints](#documentation-for-api-endpoints)** - Available API methods
|
|
106
|
+
- **[Models](#documentation-for-models)** - Data structures
|
|
107
|
+
- **[Authentication](#documentation-for-authorization)** - How to authenticate
|
|
108
|
+
|
|
109
|
+
### For Developers
|
|
110
|
+
|
|
111
|
+
- **[DOCKER.md](DOCKER.md)** - Docker-based development workflow ⚠️ **Required for all operations**
|
|
112
|
+
- **[API_UPDATES.md](API_UPDATES.md)** - How to update client from API changes
|
|
113
|
+
- **[PUBLISHING.md](PUBLISHING.md)** - Complete publishing guide to PyPI
|
|
114
|
+
- **[QUICK_PUBLISH_GUIDE.md](QUICK_PUBLISH_GUIDE.md)** - Quick reference for publishing
|
|
115
|
+
- **[VERSIONING.md](VERSIONING.md)** - Version management and SemVer policy
|
|
116
|
+
|
|
117
|
+
---
|
|
118
|
+
|
|
119
|
+
## ⚠️ Important: Docker-Only Development
|
|
120
|
+
|
|
121
|
+
**All development, build, and publishing operations MUST be performed inside Docker containers.**
|
|
122
|
+
|
|
123
|
+
```bash
|
|
124
|
+
# Update from API
|
|
125
|
+
docker-compose run --rm updater
|
|
126
|
+
|
|
127
|
+
# Build package
|
|
128
|
+
docker-compose run --rm builder
|
|
129
|
+
|
|
130
|
+
# Run tests
|
|
131
|
+
docker-compose run --rm dev pytest
|
|
132
|
+
|
|
133
|
+
# Publish to PyPI
|
|
134
|
+
docker-compose run --rm publisher pypi
|
|
135
|
+
|
|
136
|
+
# Publish to TestPyPI
|
|
137
|
+
docker-compose run --rm publisher testpypi
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
See [DOCKER.md](DOCKER.md) for complete details.
|
|
141
|
+
|
|
142
|
+
---
|
|
143
|
+
|
|
144
|
+
## 🔧 Development Workflow
|
|
145
|
+
|
|
146
|
+
### 1. Update API Client
|
|
147
|
+
|
|
148
|
+
When the API specification changes:
|
|
149
|
+
|
|
150
|
+
```bash
|
|
151
|
+
docker-compose run --rm updater
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
See [API_UPDATES.md](API_UPDATES.md) for details.
|
|
155
|
+
|
|
156
|
+
### 2. Run Tests
|
|
157
|
+
|
|
158
|
+
```bash
|
|
159
|
+
docker-compose run --rm dev pytest
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
### 3. Build Package
|
|
163
|
+
|
|
164
|
+
```bash
|
|
165
|
+
docker-compose run --rm builder
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
### 4. Publish
|
|
169
|
+
|
|
170
|
+
```bash
|
|
171
|
+
# Test on TestPyPI first
|
|
172
|
+
docker-compose run --rm publisher testpypi
|
|
173
|
+
|
|
174
|
+
# Then publish to PyPI
|
|
175
|
+
docker-compose run --rm publisher pypi
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
See [PUBLISHING.md](PUBLISHING.md) for complete publishing workflow.
|
|
179
|
+
|
|
180
|
+
---
|
|
181
|
+
|
|
182
|
+
## 📋 Requirements
|
|
183
|
+
|
|
184
|
+
- **Python**: 3.9 or higher
|
|
185
|
+
- **Docker**: For all development operations (required)
|
|
186
|
+
- **Dependencies**:
|
|
187
|
+
- `urllib3>=2.1.0,<3.0.0`
|
|
188
|
+
- `python-dateutil>=2.8.2`
|
|
189
|
+
- `pydantic>=2`
|
|
190
|
+
- `typing-extensions>=4.7.1`
|
|
191
|
+
- `lazy-imports>=1,<2`
|
|
192
|
+
|
|
193
|
+
---
|
|
194
|
+
|
|
195
|
+
## Getting Started
|
|
196
|
+
|
|
197
|
+
Please follow the [installation procedure](#installation--usage) and then run the following:
|
|
198
|
+
|
|
199
|
+
```python
|
|
200
|
+
|
|
201
|
+
import orbuculum_client
|
|
202
|
+
from orbuculum_client.rest import ApiException
|
|
203
|
+
from pprint import pprint
|
|
204
|
+
|
|
205
|
+
# Defining the host is optional and defaults to https://s1.orbuculum.app
|
|
206
|
+
# See configuration.py for a list of all supported configuration parameters.
|
|
207
|
+
configuration = orbuculum_client.Configuration(
|
|
208
|
+
host = "https://s1.orbuculum.app"
|
|
209
|
+
)
|
|
210
|
+
|
|
211
|
+
# The client must configure the authentication and authorization parameters
|
|
212
|
+
# in accordance with the API server security policy.
|
|
213
|
+
# Examples for each auth method are provided below, use the example that
|
|
214
|
+
# satisfies your auth use case.
|
|
215
|
+
|
|
216
|
+
# Configure Bearer authorization (JWT): bearerAuth
|
|
217
|
+
configuration = orbuculum_client.Configuration(
|
|
218
|
+
access_token = os.environ["BEARER_TOKEN"]
|
|
219
|
+
)
|
|
220
|
+
|
|
221
|
+
|
|
222
|
+
# Enter a context with an instance of the API client
|
|
223
|
+
with orbuculum_client.ApiClient(configuration) as api_client:
|
|
224
|
+
# Create an instance of the API class
|
|
225
|
+
api_instance = orbuculum_client.AccountApi(api_client)
|
|
226
|
+
id = 1 # int | Account ID to activate
|
|
227
|
+
activate_account_request = orbuculum_client.ActivateAccountRequest() # ActivateAccountRequest |
|
|
228
|
+
|
|
229
|
+
try:
|
|
230
|
+
# Activate an existing account
|
|
231
|
+
api_response = api_instance.activate_account(id, activate_account_request)
|
|
232
|
+
print("The response of AccountApi->activate_account:\n")
|
|
233
|
+
pprint(api_response)
|
|
234
|
+
except ApiException as e:
|
|
235
|
+
print("Exception when calling AccountApi->activate_account: %s\n" % e)
|
|
236
|
+
|
|
237
|
+
```
|
|
238
|
+
|
|
239
|
+
## Documentation for API Endpoints
|
|
240
|
+
|
|
241
|
+
All URIs are relative to *https://s1.orbuculum.app*
|
|
242
|
+
|
|
243
|
+
Class | Method | HTTP request | Description
|
|
244
|
+
------------ | ------------- | ------------- | -------------
|
|
245
|
+
*AccountApi* | [**activate_account**](docs/AccountApi.md#activate_account) | **POST** /api/account/activate | Activate an existing account
|
|
246
|
+
*AccountApi* | [**create_account**](docs/AccountApi.md#create_account) | **POST** /api/account/create | Create a new account
|
|
247
|
+
*AccountApi* | [**delete_account**](docs/AccountApi.md#delete_account) | **DELETE** /api/account/delete | Delete an existing account
|
|
248
|
+
*AccountApi* | [**get_account**](docs/AccountApi.md#get_account) | **GET** /api/account/get | Get account details
|
|
249
|
+
*AccountApi* | [**update_account**](docs/AccountApi.md#update_account) | **POST** /api/account/update | Update an existing account
|
|
250
|
+
*AccountPermissionsApi* | [**create_account_permission**](docs/AccountPermissionsApi.md#create_account_permission) | **POST** /api/permission/account-create | Create account permission
|
|
251
|
+
*AccountPermissionsApi* | [**delete_account_permission**](docs/AccountPermissionsApi.md#delete_account_permission) | **DELETE** /api/permission/account-delete | Delete account permission
|
|
252
|
+
*AccountPermissionsApi* | [**edit_account_permission**](docs/AccountPermissionsApi.md#edit_account_permission) | **POST** /api/permission/account-edit | Permission to edit account
|
|
253
|
+
*AccountPermissionsApi* | [**get_account_permissions**](docs/AccountPermissionsApi.md#get_account_permissions) | **GET** /api/permission/account | Get account permissions
|
|
254
|
+
*AuthenticationApi* | [**login**](docs/AuthenticationApi.md#login) | **POST** /api/auth/login | Login and get JWT token
|
|
255
|
+
*CustomApi* | [**create_custom_record**](docs/CustomApi.md#create_custom_record) | **POST** /api/custom/create | Create a record in custom table
|
|
256
|
+
*CustomApi* | [**delete_custom_records**](docs/CustomApi.md#delete_custom_records) | **POST** /api/custom/delete | Delete records from custom table
|
|
257
|
+
*CustomApi* | [**get_custom_tables**](docs/CustomApi.md#get_custom_tables) | **GET** /api/custom/tables | Get list of custom tables
|
|
258
|
+
*CustomApi* | [**read_custom_records**](docs/CustomApi.md#read_custom_records) | **GET** /api/custom/read | Read records from custom table
|
|
259
|
+
*CustomApi* | [**update_custom_records**](docs/CustomApi.md#update_custom_records) | **POST** /api/custom/update | Update records in custom table
|
|
260
|
+
*EntityPermissionsApi* | [**create_entity_permission**](docs/EntityPermissionsApi.md#create_entity_permission) | **POST** /api/permission/entity-create | Create entity permission
|
|
261
|
+
*EntityPermissionsApi* | [**delete_entity_permission**](docs/EntityPermissionsApi.md#delete_entity_permission) | **DELETE** /api/permission/entity-delete | Delete entity permission
|
|
262
|
+
*EntityPermissionsApi* | [**get_entity_permissions**](docs/EntityPermissionsApi.md#get_entity_permissions) | **GET** /api/permission/entity | Get entity permissions
|
|
263
|
+
*LabelApi* | [**create_label**](docs/LabelApi.md#create_label) | **POST** /api/label/create | Create label
|
|
264
|
+
*LabelApi* | [**delete_label**](docs/LabelApi.md#delete_label) | **DELETE** /api/label/delete | Delete an existing label
|
|
265
|
+
*LabelApi* | [**get_label**](docs/LabelApi.md#get_label) | **GET** /api/label/get | Get label
|
|
266
|
+
*LabelApi* | [**update_label**](docs/LabelApi.md#update_label) | **POST** /api/label/update | Update label
|
|
267
|
+
*LabelPermissionsApi* | [**create_label_permission**](docs/LabelPermissionsApi.md#create_label_permission) | **POST** /api/permission/label-create | Create label permission
|
|
268
|
+
*LabelPermissionsApi* | [**delete_label_permission**](docs/LabelPermissionsApi.md#delete_label_permission) | **DELETE** /api/permission/label-delete | Delete label permission
|
|
269
|
+
*LabelPermissionsApi* | [**get_label_permissions**](docs/LabelPermissionsApi.md#get_label_permissions) | **GET** /api/permission/label | Get label permissions
|
|
270
|
+
*LimitationApi* | [**get_limitation**](docs/LimitationApi.md#get_limitation) | **GET** /api/limitation/get | Get limitations for an account
|
|
271
|
+
*LimitationApi* | [**manage_account_limitation**](docs/LimitationApi.md#manage_account_limitation) | **POST** /api/limitation/account-manage | Manage account limitation
|
|
272
|
+
*LimitationApi* | [**manage_entity_limitation**](docs/LimitationApi.md#manage_entity_limitation) | **POST** /api/limitation/entity-manage | Manage entity limitation
|
|
273
|
+
*TransactionApi* | [**add_transaction_commission**](docs/TransactionApi.md#add_transaction_commission) | **POST** /api/transaction/add-commission | Add commission to a transaction
|
|
274
|
+
*TransactionApi* | [**create_transaction**](docs/TransactionApi.md#create_transaction) | **POST** /api/transaction/create | Create a new transaction
|
|
275
|
+
*TransactionApi* | [**delete_transaction**](docs/TransactionApi.md#delete_transaction) | **DELETE** /api/transaction/delete | Delete an existing transaction
|
|
276
|
+
*TransactionApi* | [**get_transaction**](docs/TransactionApi.md#get_transaction) | **GET** /api/transaction/get | Get transaction details
|
|
277
|
+
*TransactionApi* | [**update_transaction**](docs/TransactionApi.md#update_transaction) | **POST** /api/transaction/update | Update an existing transaction
|
|
278
|
+
|
|
279
|
+
|
|
280
|
+
## Documentation For Models
|
|
281
|
+
|
|
282
|
+
- [Account](docs/Account.md)
|
|
283
|
+
- [AccountCreatedResponse](docs/AccountCreatedResponse.md)
|
|
284
|
+
- [AccountPermission](docs/AccountPermission.md)
|
|
285
|
+
- [ActivateAccountRequest](docs/ActivateAccountRequest.md)
|
|
286
|
+
- [AddCommissionRequest](docs/AddCommissionRequest.md)
|
|
287
|
+
- [ColumnInfo](docs/ColumnInfo.md)
|
|
288
|
+
- [CommissionCreatedResponse](docs/CommissionCreatedResponse.md)
|
|
289
|
+
- [CommissionData](docs/CommissionData.md)
|
|
290
|
+
- [CreateAccountPermissionRequest](docs/CreateAccountPermissionRequest.md)
|
|
291
|
+
- [CreateAccountRequest](docs/CreateAccountRequest.md)
|
|
292
|
+
- [CreateCustomRecordRequest](docs/CreateCustomRecordRequest.md)
|
|
293
|
+
- [CreateCustomRecordResponse](docs/CreateCustomRecordResponse.md)
|
|
294
|
+
- [CreateEntityPermissionRequest](docs/CreateEntityPermissionRequest.md)
|
|
295
|
+
- [CreateLabelPermissionRequest](docs/CreateLabelPermissionRequest.md)
|
|
296
|
+
- [CreateLabelRequest](docs/CreateLabelRequest.md)
|
|
297
|
+
- [CreateTransactionRequest](docs/CreateTransactionRequest.md)
|
|
298
|
+
- [CustomTableInfo](docs/CustomTableInfo.md)
|
|
299
|
+
- [CustomValue](docs/CustomValue.md)
|
|
300
|
+
- [DeleteCustomRecordsRequest](docs/DeleteCustomRecordsRequest.md)
|
|
301
|
+
- [DeleteCustomRecordsResponse](docs/DeleteCustomRecordsResponse.md)
|
|
302
|
+
- [DeleteEntityPermissionRequest](docs/DeleteEntityPermissionRequest.md)
|
|
303
|
+
- [DeleteLabelPermissionRequest](docs/DeleteLabelPermissionRequest.md)
|
|
304
|
+
- [DeleteTransactionRequest](docs/DeleteTransactionRequest.md)
|
|
305
|
+
- [EditAccountPermissionRequest](docs/EditAccountPermissionRequest.md)
|
|
306
|
+
- [EntityPermission](docs/EntityPermission.md)
|
|
307
|
+
- [ErrorResponse](docs/ErrorResponse.md)
|
|
308
|
+
- [ErrorResponse400](docs/ErrorResponse400.md)
|
|
309
|
+
- [ErrorResponse401](docs/ErrorResponse401.md)
|
|
310
|
+
- [ErrorResponse403](docs/ErrorResponse403.md)
|
|
311
|
+
- [ErrorResponse404](docs/ErrorResponse404.md)
|
|
312
|
+
- [GetAccountPermissionsResponse](docs/GetAccountPermissionsResponse.md)
|
|
313
|
+
- [GetAccountResponse](docs/GetAccountResponse.md)
|
|
314
|
+
- [GetCustomTablesResponse](docs/GetCustomTablesResponse.md)
|
|
315
|
+
- [GetEntityPermissionsResponse](docs/GetEntityPermissionsResponse.md)
|
|
316
|
+
- [GetLabelPermissionsResponse](docs/GetLabelPermissionsResponse.md)
|
|
317
|
+
- [GetLabelsResponse](docs/GetLabelsResponse.md)
|
|
318
|
+
- [GetLimitationsResponse](docs/GetLimitationsResponse.md)
|
|
319
|
+
- [Label](docs/Label.md)
|
|
320
|
+
- [LabelCreatedResponse](docs/LabelCreatedResponse.md)
|
|
321
|
+
- [LabelPermission](docs/LabelPermission.md)
|
|
322
|
+
- [Limitation](docs/Limitation.md)
|
|
323
|
+
- [LimitationManagedResponse](docs/LimitationManagedResponse.md)
|
|
324
|
+
- [LoginRequest](docs/LoginRequest.md)
|
|
325
|
+
- [LoginResponse](docs/LoginResponse.md)
|
|
326
|
+
- [ManageAccountLimitationRequest](docs/ManageAccountLimitationRequest.md)
|
|
327
|
+
- [ManageEntityLimitationRequest](docs/ManageEntityLimitationRequest.md)
|
|
328
|
+
- [PaginationMeta](docs/PaginationMeta.md)
|
|
329
|
+
- [PermissionCreatedResponse](docs/PermissionCreatedResponse.md)
|
|
330
|
+
- [ReadCustomRecordsResponse](docs/ReadCustomRecordsResponse.md)
|
|
331
|
+
- [SuccessResponse](docs/SuccessResponse.md)
|
|
332
|
+
- [Transaction](docs/Transaction.md)
|
|
333
|
+
- [TransactionCreatedData](docs/TransactionCreatedData.md)
|
|
334
|
+
- [TransactionCreatedResponse](docs/TransactionCreatedResponse.md)
|
|
335
|
+
- [TransactionListResponse](docs/TransactionListResponse.md)
|
|
336
|
+
- [UpdateAccountRequest](docs/UpdateAccountRequest.md)
|
|
337
|
+
- [UpdateCustomRecordsRequest](docs/UpdateCustomRecordsRequest.md)
|
|
338
|
+
- [UpdateCustomRecordsResponse](docs/UpdateCustomRecordsResponse.md)
|
|
339
|
+
- [UpdateLabelRequest](docs/UpdateLabelRequest.md)
|
|
340
|
+
- [UpdateTransactionRequest](docs/UpdateTransactionRequest.md)
|
|
341
|
+
|
|
342
|
+
|
|
343
|
+
<a id="documentation-for-authorization"></a>
|
|
344
|
+
## Documentation For Authorization
|
|
345
|
+
|
|
346
|
+
|
|
347
|
+
Authentication schemes defined for the API:
|
|
348
|
+
<a id="bearerAuth"></a>
|
|
349
|
+
### bearerAuth
|
|
350
|
+
|
|
351
|
+
- **Type**: Bearer authentication (JWT)
|
|
352
|
+
|
|
353
|
+
|
|
354
|
+
## Author
|
|
355
|
+
|
|
356
|
+
Orbuculum Team <i@orbuculum.app>
|
|
357
|
+
|
|
358
|
+
---
|
|
359
|
+
|
|
360
|
+
## 🔄 Version Management
|
|
361
|
+
|
|
362
|
+
This client follows [Semantic Versioning](https://semver.org/). The client version is **independent** from the API version.
|
|
363
|
+
|
|
364
|
+
### Current Versions
|
|
365
|
+
|
|
366
|
+
```python
|
|
367
|
+
import orbuculum_client
|
|
368
|
+
|
|
369
|
+
print(orbuculum_client.__version__) # Client version: 0.0.1
|
|
370
|
+
print(orbuculum_client.__api_version__) # API version: 0.4.0
|
|
371
|
+
print(orbuculum_client.__api_supported__) # Supported API: 0.4.0
|
|
372
|
+
```
|
|
373
|
+
|
|
374
|
+
### Version Update Guidelines
|
|
375
|
+
|
|
376
|
+
- **PATCH** (0.0.1 → 0.0.2): Bug fixes, documentation updates
|
|
377
|
+
- **MINOR** (0.0.2 → 0.1.0): New features, backward-compatible
|
|
378
|
+
- **MAJOR** (0.1.0 → 1.0.0): Breaking changes
|
|
379
|
+
|
|
380
|
+
See [VERSIONING.md](VERSIONING.md) for complete version management policy.
|
|
381
|
+
|
|
382
|
+
---
|
|
383
|
+
|
|
384
|
+
## 🤝 Contributing
|
|
385
|
+
|
|
386
|
+
### Development Setup
|
|
387
|
+
|
|
388
|
+
1. **Clone the repository**
|
|
389
|
+
```bash
|
|
390
|
+
git clone https://github.com/orbuculum-app/orbuculum-python-client.git
|
|
391
|
+
cd orbuculum-python-client
|
|
392
|
+
```
|
|
393
|
+
|
|
394
|
+
2. **Use Docker for all operations** (required)
|
|
395
|
+
```bash
|
|
396
|
+
# Development shell
|
|
397
|
+
docker-compose run --rm dev
|
|
398
|
+
|
|
399
|
+
# Run tests
|
|
400
|
+
docker-compose run --rm dev pytest
|
|
401
|
+
```
|
|
402
|
+
|
|
403
|
+
3. **Update from API changes**
|
|
404
|
+
```bash
|
|
405
|
+
docker-compose run --rm updater
|
|
406
|
+
```
|
|
407
|
+
|
|
408
|
+
See [DOCKER.md](DOCKER.md) for complete development workflow.
|
|
409
|
+
|
|
410
|
+
### Project Structure
|
|
411
|
+
|
|
412
|
+
```
|
|
413
|
+
orbuculum-python-client/
|
|
414
|
+
├── orbuculum_client/ # Main package (import as orbuculum_client)
|
|
415
|
+
│ ├── api/ # API endpoint classes
|
|
416
|
+
│ ├── models/ # Data models
|
|
417
|
+
│ └── __init__.py # Package initialization
|
|
418
|
+
├── docs/ # API documentation (auto-generated)
|
|
419
|
+
├── test/ # Tests
|
|
420
|
+
│ ├── generated/ # Auto-generated tests
|
|
421
|
+
│ └── custom/ # Custom tests
|
|
422
|
+
├── scripts/ # Build and update scripts
|
|
423
|
+
├── docker/ # Docker configuration
|
|
424
|
+
├── dev-notes/ # Personal development notes (gitignored)
|
|
425
|
+
├── pyproject.toml # Package configuration
|
|
426
|
+
├── README.md # This file
|
|
427
|
+
├── DOCKER.md # Docker workflow (required reading)
|
|
428
|
+
├── API_UPDATES.md # API update process
|
|
429
|
+
├── PUBLISHING.md # Publishing guide
|
|
430
|
+
├── VERSIONING.md # Version policy
|
|
431
|
+
└── docker-compose.yml # Docker services
|
|
432
|
+
```
|
|
433
|
+
|
|
434
|
+
---
|
|
435
|
+
|
|
436
|
+
## 📖 Additional Resources
|
|
437
|
+
|
|
438
|
+
- **API Documentation**: https://s1.orbuculum.app/swagger
|
|
439
|
+
- **OpenAPI Specification**: https://s1.orbuculum.app/swagger/json
|
|
440
|
+
- **GitHub Repository**: https://github.com/orbuculum-app/orbuculum-python-client
|
|
441
|
+
- **Issue Tracker**: https://github.com/orbuculum-app/orbuculum-python-client/issues
|
|
442
|
+
|
|
443
|
+
---
|
|
444
|
+
|
|
445
|
+
## 📄 License
|
|
446
|
+
|
|
447
|
+
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
|
|
448
|
+
|
|
449
|
+
---
|
|
450
|
+
|
|
451
|
+
## 🆘 Support
|
|
452
|
+
|
|
453
|
+
- **Documentation Issues**: Open an issue on GitHub
|
|
454
|
+
- **API Questions**: Check the [API documentation](https://s1.orbuculum.app/swagger)
|
|
455
|
+
- **Bug Reports**: Use the [issue tracker](https://github.com/orbuculum-app/orbuculum-python-client/issues)
|
|
456
|
+
|
|
457
|
+
---
|
|
458
|
+
|