Skip to content

Commit 70eed37

Browse files
Merge pull request #21 from codatio/speakeasy-sdk-regen-1677684864
chore: speakeasy sdk regeneration - Generate Expenses SDK
2 parents 1ce8e47 + 5e926f9 commit 70eed37

35 files changed

+2600
-1
lines changed

expenses/README.md

Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
# codat-expenses
2+
3+
<!-- Start SDK Installation -->
4+
## SDK Installation
5+
6+
```bash
7+
pip install codat-expenses
8+
```
9+
<!-- End SDK Installation -->
10+
11+
## SDK Example Usage
12+
<!-- Start SDK Example Usage -->
13+
```python
14+
import codat
15+
from codat.models import operations, shared
16+
17+
s = codat.Codat()
18+
s.config_security(
19+
security=shared.Security(
20+
authorization="YOUR_API_KEY_HERE",
21+
)
22+
)
23+
24+
req = operations.GetCompanyConfigurationRequest(
25+
path_params=operations.GetCompanyConfigurationPathParams(
26+
company_id="unde",
27+
),
28+
)
29+
30+
res = s.configuration.get_company_configuration(req)
31+
32+
if res.get_company_configuration_200_application_json_object is not None:
33+
# handle response
34+
```
35+
<!-- End SDK Example Usage -->
36+
37+
<!-- Start SDK Available Operations -->
38+
## SDK Available Operations
39+
40+
41+
### configuration
42+
43+
* `get_company_configuration` - Get Company configuration
44+
* `save_company_configuration` - Set Company configuration
45+
46+
### connections
47+
48+
* `create_partnerexpense_connection` - Create Partner Expense connection
49+
50+
### expenses
51+
52+
* `create_expense_dataset` - Create expense-transactions
53+
* `upload_attachment` - Upload attachment
54+
55+
### mapping_options
56+
57+
* `get_mapping_options` - Mapping options
58+
59+
### sync
60+
61+
* `intiate_sync` - Initiate sync
62+
63+
### sync_status
64+
65+
* `get_last_successful_sync` - Last successful sync
66+
* `get_latest_sync` - Latest sync status
67+
* `get_sync_by_id` - Get Sync status
68+
* `list_syncs` - List sync statuses
69+
70+
### transaction_status
71+
72+
* `get_sync_transaction` - Get Sync Transaction
73+
* `get_sync_transactions` - Get Sync transactions
74+
<!-- End SDK Available Operations -->
75+
76+
### SDK Generated by [Speakeasy](https://docs.speakeasyapi.dev/docs/using-speakeasy/client-sdks)

expenses/RELEASES.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
2+
3+
## 2023-03-01 15:34:23
4+
### Changes
5+
Based on:
6+
- OpenAPI Doc prealpha https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Expenses.yaml
7+
- Speakeasy CLI 1.7.0 https://github.com/speakeasy-api/speakeasy
8+
### Releases
9+
- [PyPI v0.1.0] https://pypi.org/project/codat-expenses/0.1.0 - expenses
10+
11+
## 2023-03-02 00:16:02
12+
### Changes
13+
Based on:
14+
- OpenAPI Doc prealpha https://raw.githubusercontent.com/codatio/oas/main/yaml/Codat-Expenses.yaml
15+
- Speakeasy CLI 1.7.1 https://github.com/speakeasy-api/speakeasy
16+
### Releases
17+
- [PyPI v0.1.1] https://pypi.org/project/codat-expenses/0.1.1 - expenses

expenses/USAGE.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
<!-- Start SDK Example Usage -->
2+
```python
3+
import codat
4+
from codat.models import operations, shared
5+
6+
s = codat.Codat()
7+
s.config_security(
8+
security=shared.Security(
9+
authorization="YOUR_API_KEY_HERE",
10+
)
11+
)
12+
13+
req = operations.GetCompanyConfigurationRequest(
14+
path_params=operations.GetCompanyConfigurationPathParams(
15+
company_id="unde",
16+
),
17+
)
18+
19+
res = s.configuration.get_company_configuration(req)
20+
21+
if res.get_company_configuration_200_application_json_object is not None:
22+
# handle response
23+
```
24+
<!-- End SDK Example Usage -->

expenses/files.gen

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
src/codat/configuration.py
2+
src/codat/connections.py
3+
src/codat/expenses.py
4+
src/codat/mapping_options.py
5+
src/codat/sync.py
6+
src/codat/sync_status.py
7+
src/codat/transaction_status.py
8+
src/codat/sdk.py
9+
setup.py
10+
src/codat/__init__.py
11+
src/codat/models/__init__.py
12+
src/codat/utils/__init__.py
13+
src/codat/utils/retries.py
14+
src/codat/utils/utils.py
15+
src/codat/models/operations/get_company_configuration.py
16+
src/codat/models/operations/save_company_configuration.py
17+
src/codat/models/operations/create_partnerexpense_connection.py
18+
src/codat/models/operations/create_expense_dataset.py
19+
src/codat/models/operations/upload_attachment.py
20+
src/codat/models/operations/get_mapping_options.py
21+
src/codat/models/operations/intiate_sync.py
22+
src/codat/models/operations/get_last_successful_sync.py
23+
src/codat/models/operations/get_latest_sync.py
24+
src/codat/models/operations/get_sync_by_id.py
25+
src/codat/models/operations/list_syncs.py
26+
src/codat/models/operations/get_sync_transaction.py
27+
src/codat/models/operations/get_sync_transactions.py
28+
src/codat/models/operations/__init__.py
29+
src/codat/models/shared/security.py
30+
src/codat/models/shared/__init__.py
31+
USAGE.md

expenses/gen.yaml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,14 @@
11
configVersion: 1.0.0
2+
management:
3+
docChecksum: 2721452c28c941bc57247116ace45229
4+
docVersion: prealpha
5+
speakeasyVersion: 1.7.1
26
generation:
7+
telemetryEnabled: false
38
sdkClassName: codat
49
sdkFlattening: true
510
python:
6-
version: 0.0.1
11+
version: 0.1.1
12+
author: Speakeasy
13+
description: Python Client SDK Generated by Speakeasy
714
packageName: codat-expenses

expenses/setup.py

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
import setuptools
2+
3+
try:
4+
with open("README.md", "r") as fh:
5+
long_description = fh.read()
6+
except FileNotFoundError:
7+
long_description = ""
8+
9+
setuptools.setup(
10+
name="codat-expenses",
11+
version="0.1.1",
12+
author="Speakeasy",
13+
description="Python Client SDK Generated by Speakeasy",
14+
long_description=long_description,
15+
long_description_content_type="text/markdown",
16+
packages=setuptools.find_packages(where="src"),
17+
install_requires=[
18+
"certifi==2022.12.07",
19+
"charset-normalizer==2.1.1",
20+
"dataclasses-json-speakeasy==0.5.8",
21+
"idna==3.3",
22+
"marshmallow==3.17.1",
23+
"marshmallow-enum==1.5.1",
24+
"mypy-extensions==0.4.3",
25+
"packaging==21.3",
26+
"pyparsing==3.0.9",
27+
"python-dateutil==2.8.2",
28+
"requests==2.28.1",
29+
"six==1.16.0",
30+
"typing-inspect==0.8.0",
31+
"typing_extensions==4.3.0",
32+
"urllib3==1.26.12",
33+
],
34+
package_dir={'': 'src'},
35+
python_requires='>=3.9'
36+
)

expenses/src/codat/__init__.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
from .sdk import *
Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
import requests
2+
from . import utils
3+
from codat.models import operations
4+
from typing import Optional
5+
6+
class Configuration:
7+
_client: requests.Session
8+
_security_client: requests.Session
9+
_server_url: str
10+
_language: str
11+
_sdk_version: str
12+
_gen_version: str
13+
14+
def __init__(self, client: requests.Session, security_client: requests.Session, server_url: str, language: str, sdk_version: str, gen_version: str) -> None:
15+
self._client = client
16+
self._security_client = security_client
17+
self._server_url = server_url
18+
self._language = language
19+
self._sdk_version = sdk_version
20+
self._gen_version = gen_version
21+
22+
23+
def get_company_configuration(self, request: operations.GetCompanyConfigurationRequest) -> operations.GetCompanyConfigurationResponse:
24+
r"""Get Company configuration
25+
Gets a companies expense sync configuration
26+
"""
27+
28+
base_url = self._server_url
29+
30+
url = utils.generate_url(base_url, "/companies/{companyId}/config", request.path_params)
31+
32+
33+
client = self._security_client
34+
35+
r = client.request("GET", url)
36+
content_type = r.headers.get("Content-Type")
37+
38+
res = operations.GetCompanyConfigurationResponse(status_code=r.status_code, content_type=content_type)
39+
40+
if r.status_code == 200:
41+
if utils.match_content_type(content_type, "application/json"):
42+
out = utils.unmarshal_json(r.text, Optional[operations.GetCompanyConfiguration200ApplicationJSON])
43+
res.get_company_configuration_200_application_json_object = out
44+
45+
return res
46+
47+
48+
def save_company_configuration(self, request: operations.SaveCompanyConfigurationRequest) -> operations.SaveCompanyConfigurationResponse:
49+
r"""Set Company configuration
50+
Sets a companies expense sync configuration
51+
"""
52+
53+
base_url = self._server_url
54+
55+
url = utils.generate_url(base_url, "/companies/{companyId}/config", request.path_params)
56+
57+
headers = {}
58+
req_content_type, data, form = utils.serialize_request_body(request)
59+
if req_content_type != "multipart/form-data" and req_content_type != "multipart/mixed":
60+
headers["content-type"] = req_content_type
61+
62+
client = self._security_client
63+
64+
r = client.request("POST", url, data=data, files=form, headers=headers)
65+
content_type = r.headers.get("Content-Type")
66+
67+
res = operations.SaveCompanyConfigurationResponse(status_code=r.status_code, content_type=content_type)
68+
69+
if r.status_code == 200:
70+
if utils.match_content_type(content_type, "application/json"):
71+
out = utils.unmarshal_json(r.text, Optional[operations.SaveCompanyConfiguration200ApplicationJSON])
72+
res.save_company_configuration_200_application_json_object = out
73+
elif r.status_code == 400:
74+
if utils.match_content_type(content_type, "application/json"):
75+
out = utils.unmarshal_json(r.text, Optional[operations.SaveCompanyConfiguration400ApplicationJSON])
76+
res.save_company_configuration_400_application_json_object = out
77+
78+
return res
79+
80+

expenses/src/codat/connections.py

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
import requests
2+
from . import utils
3+
from codat.models import operations
4+
from typing import Optional
5+
6+
class Connections:
7+
_client: requests.Session
8+
_security_client: requests.Session
9+
_server_url: str
10+
_language: str
11+
_sdk_version: str
12+
_gen_version: str
13+
14+
def __init__(self, client: requests.Session, security_client: requests.Session, server_url: str, language: str, sdk_version: str, gen_version: str) -> None:
15+
self._client = client
16+
self._security_client = security_client
17+
self._server_url = server_url
18+
self._language = language
19+
self._sdk_version = sdk_version
20+
self._gen_version = gen_version
21+
22+
23+
def create_partnerexpense_connection(self, request: operations.CreatePartnerexpenseConnectionRequest) -> operations.CreatePartnerexpenseConnectionResponse:
24+
r"""Create Partner Expense connection
25+
Creates a Partner Expense data connection
26+
"""
27+
28+
base_url = self._server_url
29+
30+
url = utils.generate_url(base_url, "/companies/{companyId}/connections/partnerExpense", request.path_params)
31+
32+
33+
client = self._security_client
34+
35+
r = client.request("POST", url)
36+
content_type = r.headers.get("Content-Type")
37+
38+
res = operations.CreatePartnerexpenseConnectionResponse(status_code=r.status_code, content_type=content_type)
39+
40+
if r.status_code == 200:
41+
if utils.match_content_type(content_type, "application/json"):
42+
out = utils.unmarshal_json(r.text, Optional[operations.CreatePartnerexpenseConnectionConnection])
43+
res.connection = out
44+
45+
return res
46+
47+

0 commit comments

Comments
 (0)