reconify-python 0.1.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.
- reconify/__init__.py +36 -0
- reconify/client.py +264 -0
- reconify/errors.py +132 -0
- reconify/models.py +1067 -0
- reconify/pagination.py +111 -0
- reconify/py.typed +0 -0
- reconify/resources/__init__.py +124 -0
- reconify/resources/alerts.py +58 -0
- reconify/resources/base.py +96 -0
- reconify/resources/events.py +79 -0
- reconify/resources/ingestion.py +94 -0
- reconify/resources/issues.py +207 -0
- reconify/resources/ledger.py +205 -0
- reconify/resources/reconciliations.py +236 -0
- reconify/resources/search.py +37 -0
- reconify/resources/setup.py +311 -0
- reconify/resources/transactions.py +58 -0
- reconify/resources/wallets.py +79 -0
- reconify/transport.py +299 -0
- reconify_python-0.1.0.dist-info/METADATA +125 -0
- reconify_python-0.1.0.dist-info/RECORD +23 -0
- reconify_python-0.1.0.dist-info/WHEEL +4 -0
- reconify_python-0.1.0.dist-info/licenses/LICENSE +21 -0
|
@@ -0,0 +1,207 @@
|
|
|
1
|
+
"""Issues API resource client."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
from typing import Any
|
|
6
|
+
|
|
7
|
+
from ..models import (
|
|
8
|
+
DeliveriesOutputBody,
|
|
9
|
+
IssueCounts,
|
|
10
|
+
IssueDetail,
|
|
11
|
+
IssuePage,
|
|
12
|
+
IssueUpdateInputBody,
|
|
13
|
+
NoteInputBody,
|
|
14
|
+
ResolveInputBody,
|
|
15
|
+
StatusOutputBody,
|
|
16
|
+
)
|
|
17
|
+
from .base import AsyncResource, SyncResource
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
class Issues(SyncResource):
|
|
21
|
+
def list_issues(self, raw: bool = False, **query: Any) -> Any:
|
|
22
|
+
return self._request(
|
|
23
|
+
"GET",
|
|
24
|
+
"/issues",
|
|
25
|
+
params=query,
|
|
26
|
+
body=None,
|
|
27
|
+
response_model=IssuePage,
|
|
28
|
+
raw=raw,
|
|
29
|
+
)
|
|
30
|
+
|
|
31
|
+
def get_issue_summary(self, raw: bool = False, **query: Any) -> Any:
|
|
32
|
+
return self._request(
|
|
33
|
+
"GET",
|
|
34
|
+
"/issues/summary",
|
|
35
|
+
params=query,
|
|
36
|
+
body=None,
|
|
37
|
+
response_model=IssueCounts,
|
|
38
|
+
raw=raw,
|
|
39
|
+
)
|
|
40
|
+
|
|
41
|
+
def get_issue(self, id: str, raw: bool = False, **query: Any) -> Any:
|
|
42
|
+
return self._request(
|
|
43
|
+
"GET",
|
|
44
|
+
"/issues/{id}",
|
|
45
|
+
params={**query, "id": id},
|
|
46
|
+
body=None,
|
|
47
|
+
response_model=IssueDetail,
|
|
48
|
+
raw=raw,
|
|
49
|
+
)
|
|
50
|
+
|
|
51
|
+
def update_issue(
|
|
52
|
+
self, id: str, body: IssueUpdateInputBody, raw: bool = False, **query: Any
|
|
53
|
+
) -> Any:
|
|
54
|
+
return self._request(
|
|
55
|
+
"PATCH",
|
|
56
|
+
"/issues/{id}",
|
|
57
|
+
params={**query, "id": id},
|
|
58
|
+
body=body,
|
|
59
|
+
response_model=StatusOutputBody,
|
|
60
|
+
raw=raw,
|
|
61
|
+
)
|
|
62
|
+
|
|
63
|
+
def list_issue_deliveries(self, id: str, raw: bool = False, **query: Any) -> Any:
|
|
64
|
+
return self._request(
|
|
65
|
+
"GET",
|
|
66
|
+
"/issues/{id}/deliveries",
|
|
67
|
+
params={**query, "id": id},
|
|
68
|
+
body=None,
|
|
69
|
+
response_model=DeliveriesOutputBody,
|
|
70
|
+
raw=raw,
|
|
71
|
+
)
|
|
72
|
+
|
|
73
|
+
def retry_issue_delivery(
|
|
74
|
+
self, id: str, delivery_id: str, raw: bool = False, **query: Any
|
|
75
|
+
) -> Any:
|
|
76
|
+
return self._request(
|
|
77
|
+
"POST",
|
|
78
|
+
"/issues/{id}/deliveries/{deliveryId}/retry",
|
|
79
|
+
params={**query, "id": id, "delivery_id": delivery_id},
|
|
80
|
+
body=None,
|
|
81
|
+
response_model=StatusOutputBody,
|
|
82
|
+
raw=raw,
|
|
83
|
+
)
|
|
84
|
+
|
|
85
|
+
def add_issue_note(self, id: str, body: NoteInputBody, raw: bool = False, **query: Any) -> Any:
|
|
86
|
+
return self._request(
|
|
87
|
+
"POST",
|
|
88
|
+
"/issues/{id}/notes",
|
|
89
|
+
params={**query, "id": id},
|
|
90
|
+
body=body,
|
|
91
|
+
response_model=StatusOutputBody,
|
|
92
|
+
raw=raw,
|
|
93
|
+
)
|
|
94
|
+
|
|
95
|
+
def resolve_issue(
|
|
96
|
+
self, id: str, body: ResolveInputBody, raw: bool = False, **query: Any
|
|
97
|
+
) -> Any:
|
|
98
|
+
return self._request(
|
|
99
|
+
"POST",
|
|
100
|
+
"/issues/{id}/resolve",
|
|
101
|
+
params={**query, "id": id},
|
|
102
|
+
body=body,
|
|
103
|
+
response_model=StatusOutputBody,
|
|
104
|
+
raw=raw,
|
|
105
|
+
)
|
|
106
|
+
|
|
107
|
+
|
|
108
|
+
class AsyncIssues(AsyncResource):
|
|
109
|
+
async def list_issues(self, raw: bool = False, **query: Any) -> Any:
|
|
110
|
+
return await self._request(
|
|
111
|
+
"GET",
|
|
112
|
+
"/issues",
|
|
113
|
+
params=query,
|
|
114
|
+
body=None,
|
|
115
|
+
response_model=IssuePage,
|
|
116
|
+
raw=raw,
|
|
117
|
+
)
|
|
118
|
+
|
|
119
|
+
async def get_issue_summary(self, raw: bool = False, **query: Any) -> Any:
|
|
120
|
+
return await self._request(
|
|
121
|
+
"GET",
|
|
122
|
+
"/issues/summary",
|
|
123
|
+
params=query,
|
|
124
|
+
body=None,
|
|
125
|
+
response_model=IssueCounts,
|
|
126
|
+
raw=raw,
|
|
127
|
+
)
|
|
128
|
+
|
|
129
|
+
async def get_issue(self, id: str, raw: bool = False, **query: Any) -> Any:
|
|
130
|
+
return await self._request(
|
|
131
|
+
"GET",
|
|
132
|
+
"/issues/{id}",
|
|
133
|
+
params={**query, "id": id},
|
|
134
|
+
body=None,
|
|
135
|
+
response_model=IssueDetail,
|
|
136
|
+
raw=raw,
|
|
137
|
+
)
|
|
138
|
+
|
|
139
|
+
async def update_issue(
|
|
140
|
+
self, id: str, body: IssueUpdateInputBody, raw: bool = False, **query: Any
|
|
141
|
+
) -> Any:
|
|
142
|
+
return await self._request(
|
|
143
|
+
"PATCH",
|
|
144
|
+
"/issues/{id}",
|
|
145
|
+
params={**query, "id": id},
|
|
146
|
+
body=body,
|
|
147
|
+
response_model=StatusOutputBody,
|
|
148
|
+
raw=raw,
|
|
149
|
+
)
|
|
150
|
+
|
|
151
|
+
async def list_issue_deliveries(self, id: str, raw: bool = False, **query: Any) -> Any:
|
|
152
|
+
return await self._request(
|
|
153
|
+
"GET",
|
|
154
|
+
"/issues/{id}/deliveries",
|
|
155
|
+
params={**query, "id": id},
|
|
156
|
+
body=None,
|
|
157
|
+
response_model=DeliveriesOutputBody,
|
|
158
|
+
raw=raw,
|
|
159
|
+
)
|
|
160
|
+
|
|
161
|
+
async def retry_issue_delivery(
|
|
162
|
+
self, id: str, delivery_id: str, raw: bool = False, **query: Any
|
|
163
|
+
) -> Any:
|
|
164
|
+
return await self._request(
|
|
165
|
+
"POST",
|
|
166
|
+
"/issues/{id}/deliveries/{deliveryId}/retry",
|
|
167
|
+
params={**query, "id": id, "delivery_id": delivery_id},
|
|
168
|
+
body=None,
|
|
169
|
+
response_model=StatusOutputBody,
|
|
170
|
+
raw=raw,
|
|
171
|
+
)
|
|
172
|
+
|
|
173
|
+
async def add_issue_note(
|
|
174
|
+
self, id: str, body: NoteInputBody, raw: bool = False, **query: Any
|
|
175
|
+
) -> Any:
|
|
176
|
+
return await self._request(
|
|
177
|
+
"POST",
|
|
178
|
+
"/issues/{id}/notes",
|
|
179
|
+
params={**query, "id": id},
|
|
180
|
+
body=body,
|
|
181
|
+
response_model=StatusOutputBody,
|
|
182
|
+
raw=raw,
|
|
183
|
+
)
|
|
184
|
+
|
|
185
|
+
async def resolve_issue(
|
|
186
|
+
self, id: str, body: ResolveInputBody, raw: bool = False, **query: Any
|
|
187
|
+
) -> Any:
|
|
188
|
+
return await self._request(
|
|
189
|
+
"POST",
|
|
190
|
+
"/issues/{id}/resolve",
|
|
191
|
+
params={**query, "id": id},
|
|
192
|
+
body=body,
|
|
193
|
+
response_model=StatusOutputBody,
|
|
194
|
+
raw=raw,
|
|
195
|
+
)
|
|
196
|
+
|
|
197
|
+
|
|
198
|
+
OPERATION_SPECS = {
|
|
199
|
+
"list_issues": ("issues", "GET", "/issues"),
|
|
200
|
+
"get_issue_summary": ("issues", "GET", "/issues/summary"),
|
|
201
|
+
"get_issue": ("issues", "GET", "/issues/{id}"),
|
|
202
|
+
"update_issue": ("issues", "PATCH", "/issues/{id}"),
|
|
203
|
+
"list_issue_deliveries": ("issues", "GET", "/issues/{id}/deliveries"),
|
|
204
|
+
"retry_issue_delivery": ("issues", "POST", "/issues/{id}/deliveries/{deliveryId}/retry"),
|
|
205
|
+
"add_issue_note": ("issues", "POST", "/issues/{id}/notes"),
|
|
206
|
+
"resolve_issue": ("issues", "POST", "/issues/{id}/resolve"),
|
|
207
|
+
}
|
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
"""Ledger API resource client."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
from typing import Any
|
|
6
|
+
|
|
7
|
+
from ..models import (
|
|
8
|
+
CreateSourceInputBody,
|
|
9
|
+
IngestTransactionsInputBody,
|
|
10
|
+
IngestTransactionsOutputBody,
|
|
11
|
+
ListPeriodsOutputBody,
|
|
12
|
+
ListSourcesOutputBody,
|
|
13
|
+
ListTransactionsOutputBody,
|
|
14
|
+
SourceOutputBody,
|
|
15
|
+
UpdateSourceInputBody,
|
|
16
|
+
)
|
|
17
|
+
from .base import AsyncResource, SyncResource
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
class Ledger(SyncResource):
|
|
21
|
+
def list_ledger_sources(self, raw: bool = False, **query: Any) -> Any:
|
|
22
|
+
return self._request(
|
|
23
|
+
"GET",
|
|
24
|
+
"/ledger/sources",
|
|
25
|
+
params=query,
|
|
26
|
+
body=None,
|
|
27
|
+
response_model=ListSourcesOutputBody,
|
|
28
|
+
raw=raw,
|
|
29
|
+
)
|
|
30
|
+
|
|
31
|
+
def create_ledger_source(
|
|
32
|
+
self, body: CreateSourceInputBody, raw: bool = False, **query: Any
|
|
33
|
+
) -> Any:
|
|
34
|
+
return self._request(
|
|
35
|
+
"POST",
|
|
36
|
+
"/ledger/sources",
|
|
37
|
+
params=query,
|
|
38
|
+
body=body,
|
|
39
|
+
response_model=SourceOutputBody,
|
|
40
|
+
raw=raw,
|
|
41
|
+
)
|
|
42
|
+
|
|
43
|
+
def delete_ledger_source(self, id: str, raw: bool = False, **query: Any) -> Any:
|
|
44
|
+
return self._request(
|
|
45
|
+
"DELETE",
|
|
46
|
+
"/ledger/sources/{id}",
|
|
47
|
+
params={**query, "id": id},
|
|
48
|
+
body=None,
|
|
49
|
+
response_model=None,
|
|
50
|
+
raw=raw,
|
|
51
|
+
)
|
|
52
|
+
|
|
53
|
+
def get_ledger_source(self, id: str, raw: bool = False, **query: Any) -> Any:
|
|
54
|
+
return self._request(
|
|
55
|
+
"GET",
|
|
56
|
+
"/ledger/sources/{id}",
|
|
57
|
+
params={**query, "id": id},
|
|
58
|
+
body=None,
|
|
59
|
+
response_model=SourceOutputBody,
|
|
60
|
+
raw=raw,
|
|
61
|
+
)
|
|
62
|
+
|
|
63
|
+
def update_ledger_source(
|
|
64
|
+
self, id: str, body: UpdateSourceInputBody, raw: bool = False, **query: Any
|
|
65
|
+
) -> Any:
|
|
66
|
+
return self._request(
|
|
67
|
+
"PATCH",
|
|
68
|
+
"/ledger/sources/{id}",
|
|
69
|
+
params={**query, "id": id},
|
|
70
|
+
body=body,
|
|
71
|
+
response_model=SourceOutputBody,
|
|
72
|
+
raw=raw,
|
|
73
|
+
)
|
|
74
|
+
|
|
75
|
+
def list_source_periods(self, id: str, raw: bool = False, **query: Any) -> Any:
|
|
76
|
+
return self._request(
|
|
77
|
+
"GET",
|
|
78
|
+
"/ledger/sources/{id}/periods",
|
|
79
|
+
params={**query, "id": id},
|
|
80
|
+
body=None,
|
|
81
|
+
response_model=ListPeriodsOutputBody,
|
|
82
|
+
raw=raw,
|
|
83
|
+
)
|
|
84
|
+
|
|
85
|
+
def list_transactions(self, id: str, raw: bool = False, **query: Any) -> Any:
|
|
86
|
+
return self._request(
|
|
87
|
+
"GET",
|
|
88
|
+
"/ledger/sources/{id}/transactions",
|
|
89
|
+
params={**query, "id": id},
|
|
90
|
+
body=None,
|
|
91
|
+
response_model=ListTransactionsOutputBody,
|
|
92
|
+
raw=raw,
|
|
93
|
+
)
|
|
94
|
+
|
|
95
|
+
def ingest_transactions(
|
|
96
|
+
self, id: str, body: IngestTransactionsInputBody, raw: bool = False, **query: Any
|
|
97
|
+
) -> Any:
|
|
98
|
+
return self._request(
|
|
99
|
+
"POST",
|
|
100
|
+
"/ledger/sources/{id}/transactions",
|
|
101
|
+
params={**query, "id": id},
|
|
102
|
+
body=body,
|
|
103
|
+
response_model=IngestTransactionsOutputBody,
|
|
104
|
+
raw=raw,
|
|
105
|
+
)
|
|
106
|
+
|
|
107
|
+
|
|
108
|
+
class AsyncLedger(AsyncResource):
|
|
109
|
+
async def list_ledger_sources(self, raw: bool = False, **query: Any) -> Any:
|
|
110
|
+
return await self._request(
|
|
111
|
+
"GET",
|
|
112
|
+
"/ledger/sources",
|
|
113
|
+
params=query,
|
|
114
|
+
body=None,
|
|
115
|
+
response_model=ListSourcesOutputBody,
|
|
116
|
+
raw=raw,
|
|
117
|
+
)
|
|
118
|
+
|
|
119
|
+
async def create_ledger_source(
|
|
120
|
+
self, body: CreateSourceInputBody, raw: bool = False, **query: Any
|
|
121
|
+
) -> Any:
|
|
122
|
+
return await self._request(
|
|
123
|
+
"POST",
|
|
124
|
+
"/ledger/sources",
|
|
125
|
+
params=query,
|
|
126
|
+
body=body,
|
|
127
|
+
response_model=SourceOutputBody,
|
|
128
|
+
raw=raw,
|
|
129
|
+
)
|
|
130
|
+
|
|
131
|
+
async def delete_ledger_source(self, id: str, raw: bool = False, **query: Any) -> Any:
|
|
132
|
+
return await self._request(
|
|
133
|
+
"DELETE",
|
|
134
|
+
"/ledger/sources/{id}",
|
|
135
|
+
params={**query, "id": id},
|
|
136
|
+
body=None,
|
|
137
|
+
response_model=None,
|
|
138
|
+
raw=raw,
|
|
139
|
+
)
|
|
140
|
+
|
|
141
|
+
async def get_ledger_source(self, id: str, raw: bool = False, **query: Any) -> Any:
|
|
142
|
+
return await self._request(
|
|
143
|
+
"GET",
|
|
144
|
+
"/ledger/sources/{id}",
|
|
145
|
+
params={**query, "id": id},
|
|
146
|
+
body=None,
|
|
147
|
+
response_model=SourceOutputBody,
|
|
148
|
+
raw=raw,
|
|
149
|
+
)
|
|
150
|
+
|
|
151
|
+
async def update_ledger_source(
|
|
152
|
+
self, id: str, body: UpdateSourceInputBody, raw: bool = False, **query: Any
|
|
153
|
+
) -> Any:
|
|
154
|
+
return await self._request(
|
|
155
|
+
"PATCH",
|
|
156
|
+
"/ledger/sources/{id}",
|
|
157
|
+
params={**query, "id": id},
|
|
158
|
+
body=body,
|
|
159
|
+
response_model=SourceOutputBody,
|
|
160
|
+
raw=raw,
|
|
161
|
+
)
|
|
162
|
+
|
|
163
|
+
async def list_source_periods(self, id: str, raw: bool = False, **query: Any) -> Any:
|
|
164
|
+
return await self._request(
|
|
165
|
+
"GET",
|
|
166
|
+
"/ledger/sources/{id}/periods",
|
|
167
|
+
params={**query, "id": id},
|
|
168
|
+
body=None,
|
|
169
|
+
response_model=ListPeriodsOutputBody,
|
|
170
|
+
raw=raw,
|
|
171
|
+
)
|
|
172
|
+
|
|
173
|
+
async def list_transactions(self, id: str, raw: bool = False, **query: Any) -> Any:
|
|
174
|
+
return await self._request(
|
|
175
|
+
"GET",
|
|
176
|
+
"/ledger/sources/{id}/transactions",
|
|
177
|
+
params={**query, "id": id},
|
|
178
|
+
body=None,
|
|
179
|
+
response_model=ListTransactionsOutputBody,
|
|
180
|
+
raw=raw,
|
|
181
|
+
)
|
|
182
|
+
|
|
183
|
+
async def ingest_transactions(
|
|
184
|
+
self, id: str, body: IngestTransactionsInputBody, raw: bool = False, **query: Any
|
|
185
|
+
) -> Any:
|
|
186
|
+
return await self._request(
|
|
187
|
+
"POST",
|
|
188
|
+
"/ledger/sources/{id}/transactions",
|
|
189
|
+
params={**query, "id": id},
|
|
190
|
+
body=body,
|
|
191
|
+
response_model=IngestTransactionsOutputBody,
|
|
192
|
+
raw=raw,
|
|
193
|
+
)
|
|
194
|
+
|
|
195
|
+
|
|
196
|
+
OPERATION_SPECS = {
|
|
197
|
+
"list_ledger_sources": ("ledger", "GET", "/ledger/sources"),
|
|
198
|
+
"create_ledger_source": ("ledger", "POST", "/ledger/sources"),
|
|
199
|
+
"delete_ledger_source": ("ledger", "DELETE", "/ledger/sources/{id}"),
|
|
200
|
+
"get_ledger_source": ("ledger", "GET", "/ledger/sources/{id}"),
|
|
201
|
+
"update_ledger_source": ("ledger", "PATCH", "/ledger/sources/{id}"),
|
|
202
|
+
"list_source_periods": ("ledger", "GET", "/ledger/sources/{id}/periods"),
|
|
203
|
+
"list_transactions": ("ledger", "GET", "/ledger/sources/{id}/transactions"),
|
|
204
|
+
"ingest_transactions": ("ledger", "POST", "/ledger/sources/{id}/transactions"),
|
|
205
|
+
}
|
|
@@ -0,0 +1,236 @@
|
|
|
1
|
+
"""Reconciliations API resource client."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
from typing import Any
|
|
6
|
+
|
|
7
|
+
from ..models import (
|
|
8
|
+
CreateReconciliationInputBody,
|
|
9
|
+
ListIntegritySourcesOutputBody,
|
|
10
|
+
ListReconciliationsOutputBody,
|
|
11
|
+
ListSchedulesOutputBody,
|
|
12
|
+
ReconciliationOutputBody,
|
|
13
|
+
ScheduleOutputBody,
|
|
14
|
+
ScheduleRequestBody,
|
|
15
|
+
ScheduleUpdateRequestBody,
|
|
16
|
+
)
|
|
17
|
+
from .base import AsyncResource, SyncResource
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
class Reconciliations(SyncResource):
|
|
21
|
+
def list_integrity_sources_for_reconciliation(self, raw: bool = False, **query: Any) -> Any:
|
|
22
|
+
return self._request(
|
|
23
|
+
"GET",
|
|
24
|
+
"/integrity/sources",
|
|
25
|
+
params=query,
|
|
26
|
+
body=None,
|
|
27
|
+
response_model=ListIntegritySourcesOutputBody,
|
|
28
|
+
raw=raw,
|
|
29
|
+
)
|
|
30
|
+
|
|
31
|
+
def list_reconciliation_schedules(self, raw: bool = False, **query: Any) -> Any:
|
|
32
|
+
return self._request(
|
|
33
|
+
"GET",
|
|
34
|
+
"/reconciliation-schedules",
|
|
35
|
+
params=query,
|
|
36
|
+
body=None,
|
|
37
|
+
response_model=ListSchedulesOutputBody,
|
|
38
|
+
raw=raw,
|
|
39
|
+
)
|
|
40
|
+
|
|
41
|
+
def create_reconciliation_schedule(
|
|
42
|
+
self, body: ScheduleRequestBody, raw: bool = False, **query: Any
|
|
43
|
+
) -> Any:
|
|
44
|
+
return self._request(
|
|
45
|
+
"POST",
|
|
46
|
+
"/reconciliation-schedules",
|
|
47
|
+
params=query,
|
|
48
|
+
body=body,
|
|
49
|
+
response_model=ScheduleOutputBody,
|
|
50
|
+
raw=raw,
|
|
51
|
+
)
|
|
52
|
+
|
|
53
|
+
def delete_reconciliation_schedule(self, id: str, raw: bool = False, **query: Any) -> Any:
|
|
54
|
+
return self._request(
|
|
55
|
+
"DELETE",
|
|
56
|
+
"/reconciliation-schedules/{id}",
|
|
57
|
+
params={**query, "id": id},
|
|
58
|
+
body=None,
|
|
59
|
+
response_model=None,
|
|
60
|
+
raw=raw,
|
|
61
|
+
)
|
|
62
|
+
|
|
63
|
+
def get_reconciliation_schedule(self, id: str, raw: bool = False, **query: Any) -> Any:
|
|
64
|
+
return self._request(
|
|
65
|
+
"GET",
|
|
66
|
+
"/reconciliation-schedules/{id}",
|
|
67
|
+
params={**query, "id": id},
|
|
68
|
+
body=None,
|
|
69
|
+
response_model=ScheduleOutputBody,
|
|
70
|
+
raw=raw,
|
|
71
|
+
)
|
|
72
|
+
|
|
73
|
+
def update_reconciliation_schedule(
|
|
74
|
+
self, id: str, body: ScheduleUpdateRequestBody, raw: bool = False, **query: Any
|
|
75
|
+
) -> Any:
|
|
76
|
+
return self._request(
|
|
77
|
+
"PATCH",
|
|
78
|
+
"/reconciliation-schedules/{id}",
|
|
79
|
+
params={**query, "id": id},
|
|
80
|
+
body=body,
|
|
81
|
+
response_model=ScheduleOutputBody,
|
|
82
|
+
raw=raw,
|
|
83
|
+
)
|
|
84
|
+
|
|
85
|
+
def list_reconciliations(self, raw: bool = False, **query: Any) -> Any:
|
|
86
|
+
return self._request(
|
|
87
|
+
"GET",
|
|
88
|
+
"/reconciliations",
|
|
89
|
+
params=query,
|
|
90
|
+
body=None,
|
|
91
|
+
response_model=ListReconciliationsOutputBody,
|
|
92
|
+
raw=raw,
|
|
93
|
+
)
|
|
94
|
+
|
|
95
|
+
def create_reconciliation(
|
|
96
|
+
self, body: CreateReconciliationInputBody, raw: bool = False, **query: Any
|
|
97
|
+
) -> Any:
|
|
98
|
+
return self._request(
|
|
99
|
+
"POST",
|
|
100
|
+
"/reconciliations",
|
|
101
|
+
params=query,
|
|
102
|
+
body=body,
|
|
103
|
+
response_model=ReconciliationOutputBody,
|
|
104
|
+
raw=raw,
|
|
105
|
+
)
|
|
106
|
+
|
|
107
|
+
def get_reconciliation(self, id: str, raw: bool = False, **query: Any) -> Any:
|
|
108
|
+
return self._request(
|
|
109
|
+
"GET",
|
|
110
|
+
"/reconciliations/{id}",
|
|
111
|
+
params={**query, "id": id},
|
|
112
|
+
body=None,
|
|
113
|
+
response_model=ReconciliationOutputBody,
|
|
114
|
+
raw=raw,
|
|
115
|
+
)
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
class AsyncReconciliations(AsyncResource):
|
|
119
|
+
async def list_integrity_sources_for_reconciliation(
|
|
120
|
+
self, raw: bool = False, **query: Any
|
|
121
|
+
) -> Any:
|
|
122
|
+
return await self._request(
|
|
123
|
+
"GET",
|
|
124
|
+
"/integrity/sources",
|
|
125
|
+
params=query,
|
|
126
|
+
body=None,
|
|
127
|
+
response_model=ListIntegritySourcesOutputBody,
|
|
128
|
+
raw=raw,
|
|
129
|
+
)
|
|
130
|
+
|
|
131
|
+
async def list_reconciliation_schedules(self, raw: bool = False, **query: Any) -> Any:
|
|
132
|
+
return await self._request(
|
|
133
|
+
"GET",
|
|
134
|
+
"/reconciliation-schedules",
|
|
135
|
+
params=query,
|
|
136
|
+
body=None,
|
|
137
|
+
response_model=ListSchedulesOutputBody,
|
|
138
|
+
raw=raw,
|
|
139
|
+
)
|
|
140
|
+
|
|
141
|
+
async def create_reconciliation_schedule(
|
|
142
|
+
self, body: ScheduleRequestBody, raw: bool = False, **query: Any
|
|
143
|
+
) -> Any:
|
|
144
|
+
return await self._request(
|
|
145
|
+
"POST",
|
|
146
|
+
"/reconciliation-schedules",
|
|
147
|
+
params=query,
|
|
148
|
+
body=body,
|
|
149
|
+
response_model=ScheduleOutputBody,
|
|
150
|
+
raw=raw,
|
|
151
|
+
)
|
|
152
|
+
|
|
153
|
+
async def delete_reconciliation_schedule(self, id: str, raw: bool = False, **query: Any) -> Any:
|
|
154
|
+
return await self._request(
|
|
155
|
+
"DELETE",
|
|
156
|
+
"/reconciliation-schedules/{id}",
|
|
157
|
+
params={**query, "id": id},
|
|
158
|
+
body=None,
|
|
159
|
+
response_model=None,
|
|
160
|
+
raw=raw,
|
|
161
|
+
)
|
|
162
|
+
|
|
163
|
+
async def get_reconciliation_schedule(self, id: str, raw: bool = False, **query: Any) -> Any:
|
|
164
|
+
return await self._request(
|
|
165
|
+
"GET",
|
|
166
|
+
"/reconciliation-schedules/{id}",
|
|
167
|
+
params={**query, "id": id},
|
|
168
|
+
body=None,
|
|
169
|
+
response_model=ScheduleOutputBody,
|
|
170
|
+
raw=raw,
|
|
171
|
+
)
|
|
172
|
+
|
|
173
|
+
async def update_reconciliation_schedule(
|
|
174
|
+
self, id: str, body: ScheduleUpdateRequestBody, raw: bool = False, **query: Any
|
|
175
|
+
) -> Any:
|
|
176
|
+
return await self._request(
|
|
177
|
+
"PATCH",
|
|
178
|
+
"/reconciliation-schedules/{id}",
|
|
179
|
+
params={**query, "id": id},
|
|
180
|
+
body=body,
|
|
181
|
+
response_model=ScheduleOutputBody,
|
|
182
|
+
raw=raw,
|
|
183
|
+
)
|
|
184
|
+
|
|
185
|
+
async def list_reconciliations(self, raw: bool = False, **query: Any) -> Any:
|
|
186
|
+
return await self._request(
|
|
187
|
+
"GET",
|
|
188
|
+
"/reconciliations",
|
|
189
|
+
params=query,
|
|
190
|
+
body=None,
|
|
191
|
+
response_model=ListReconciliationsOutputBody,
|
|
192
|
+
raw=raw,
|
|
193
|
+
)
|
|
194
|
+
|
|
195
|
+
async def create_reconciliation(
|
|
196
|
+
self, body: CreateReconciliationInputBody, raw: bool = False, **query: Any
|
|
197
|
+
) -> Any:
|
|
198
|
+
return await self._request(
|
|
199
|
+
"POST",
|
|
200
|
+
"/reconciliations",
|
|
201
|
+
params=query,
|
|
202
|
+
body=body,
|
|
203
|
+
response_model=ReconciliationOutputBody,
|
|
204
|
+
raw=raw,
|
|
205
|
+
)
|
|
206
|
+
|
|
207
|
+
async def get_reconciliation(self, id: str, raw: bool = False, **query: Any) -> Any:
|
|
208
|
+
return await self._request(
|
|
209
|
+
"GET",
|
|
210
|
+
"/reconciliations/{id}",
|
|
211
|
+
params={**query, "id": id},
|
|
212
|
+
body=None,
|
|
213
|
+
response_model=ReconciliationOutputBody,
|
|
214
|
+
raw=raw,
|
|
215
|
+
)
|
|
216
|
+
|
|
217
|
+
|
|
218
|
+
OPERATION_SPECS = {
|
|
219
|
+
"list_integrity_sources_for_reconciliation": ("reconciliations", "GET", "/integrity/sources"),
|
|
220
|
+
"list_reconciliation_schedules": ("reconciliations", "GET", "/reconciliation-schedules"),
|
|
221
|
+
"create_reconciliation_schedule": ("reconciliations", "POST", "/reconciliation-schedules"),
|
|
222
|
+
"delete_reconciliation_schedule": (
|
|
223
|
+
"reconciliations",
|
|
224
|
+
"DELETE",
|
|
225
|
+
"/reconciliation-schedules/{id}",
|
|
226
|
+
),
|
|
227
|
+
"get_reconciliation_schedule": ("reconciliations", "GET", "/reconciliation-schedules/{id}"),
|
|
228
|
+
"update_reconciliation_schedule": (
|
|
229
|
+
"reconciliations",
|
|
230
|
+
"PATCH",
|
|
231
|
+
"/reconciliation-schedules/{id}",
|
|
232
|
+
),
|
|
233
|
+
"list_reconciliations": ("reconciliations", "GET", "/reconciliations"),
|
|
234
|
+
"create_reconciliation": ("reconciliations", "POST", "/reconciliations"),
|
|
235
|
+
"get_reconciliation": ("reconciliations", "GET", "/reconciliations/{id}"),
|
|
236
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"""Search API resource client."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
from typing import Any
|
|
6
|
+
|
|
7
|
+
from ..models import SearchPage
|
|
8
|
+
from .base import AsyncResource, SyncResource
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class Search(SyncResource):
|
|
12
|
+
def search_integrity_resources(self, raw: bool = False, **query: Any) -> Any:
|
|
13
|
+
return self._request(
|
|
14
|
+
"GET",
|
|
15
|
+
"/search",
|
|
16
|
+
params=query,
|
|
17
|
+
body=None,
|
|
18
|
+
response_model=SearchPage,
|
|
19
|
+
raw=raw,
|
|
20
|
+
)
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
class AsyncSearch(AsyncResource):
|
|
24
|
+
async def search_integrity_resources(self, raw: bool = False, **query: Any) -> Any:
|
|
25
|
+
return await self._request(
|
|
26
|
+
"GET",
|
|
27
|
+
"/search",
|
|
28
|
+
params=query,
|
|
29
|
+
body=None,
|
|
30
|
+
response_model=SearchPage,
|
|
31
|
+
raw=raw,
|
|
32
|
+
)
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
OPERATION_SPECS = {
|
|
36
|
+
"search_integrity_resources": ("search", "GET", "/search"),
|
|
37
|
+
}
|