@checkdigit/eslint-plugin 7.17.1 → 7.18.0-PR.143-9946
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.
- package/dist-mjs/athena/api-locator.mjs +30 -0
- package/dist-mjs/athena/api-matcher.mjs +108 -0
- package/dist-mjs/athena/athena.mjs +328 -0
- package/dist-mjs/athena/column.mjs +1 -0
- package/dist-mjs/athena/context.mjs +21 -0
- package/dist-mjs/athena/index.mjs +1 -0
- package/dist-mjs/athena/service-table.mjs +32 -0
- package/dist-mjs/athena/types.mjs +1 -0
- package/dist-mjs/athena/visitor.mjs +258 -0
- package/dist-mjs/index.mjs +8 -4
- package/dist-mjs/no-status-code-assert.mjs +1 -1
- package/dist-mjs/openapi/deref-schema.mjs +14 -0
- package/dist-mjs/openapi/generate-schema.mjs +273 -0
- package/dist-mjs/openapi/service-schema-generator.mjs +147 -0
- package/dist-mjs/peggy/athena-peggy.mjs +20629 -0
- package/dist-types/athena/api-locator.d.ts +2 -0
- package/dist-types/athena/api-matcher.d.ts +14 -0
- package/dist-types/athena/athena.d.ts +6 -0
- package/dist-types/athena/column.d.ts +1 -0
- package/dist-types/athena/context.d.ts +21 -0
- package/dist-types/athena/index.d.ts +8 -0
- package/dist-types/athena/service-table.d.ts +8 -0
- package/dist-types/athena/types.d.ts +474 -0
- package/dist-types/athena/visitor.d.ts +63 -0
- package/dist-types/no-status-code-assert.d.ts +1 -1
- package/dist-types/openapi/deref-schema.d.ts +1 -0
- package/dist-types/openapi/generate-schema.d.ts +33 -0
- package/dist-types/openapi/service-schema-generator.d.ts +5 -0
- package/dist-types/peggy/athena-peggy.d.ts +13 -0
- package/package.json +1 -96
- package/src/athena/ATHENA.md +387 -0
- package/src/athena/PLAN.md +355 -0
- package/src/athena/api-locator.ts +39 -0
- package/src/athena/api-matcher.ts +169 -0
- package/src/athena/athena.ts +488 -0
- package/src/athena/column.ts +2 -0
- package/src/athena/context.ts +47 -0
- package/src/athena/index.ts +11 -0
- package/src/athena/service-table.ts +55 -0
- package/src/athena/types.ts +526 -0
- package/src/athena/visitor.ts +365 -0
- package/src/index.ts +4 -0
- package/src/no-side-effects.ts +1 -1
- package/src/no-status-code-assert.ts +2 -2
- package/src/openapi/deref-schema.ts +14 -0
- package/src/openapi/generate-schema.ts +422 -0
- package/src/openapi/service-schema-generator.ts +189 -0
- package/src/peggy/athena-chat.peggy +608 -0
- package/src/peggy/athena-peggy.ts +22078 -0
- package/src/peggy/athena.peggy +2967 -0
- package/src/require-service-call-response-declaration.ts +2 -2
- package/src/services/interchange/v1/swagger.schema.deref.json +849 -0
- package/src/services/interchange/v1/swagger.schema.json +473 -0
- package/src/services/interchange/v1/swagger.yml +414 -0
- package/src/services/ledger/v1/swagger.schema.deref.json +6694 -0
- package/src/services/ledger/v1/swagger.schema.json +1820 -0
- package/src/services/ledger/v1/swagger.yml +1094 -0
- package/src/services/link/v1/swagger.schema.deref.json +648 -0
- package/src/services/link/v1/swagger.schema.json +444 -0
- package/src/services/link/v1/swagger.yml +343 -0
- package/src/services/message/v1/swagger.schema.deref.json +22049 -0
- package/src/services/message/v1/swagger.schema.json +3470 -0
- package/src/services/message/v1/swagger.yml +2798 -0
- package/src/services/message/v2/swagger.schema.deref.json +72221 -0
- package/src/services/message/v2/swagger.schema.json +3558 -0
- package/src/services/message/v2/swagger.yml +3009 -0
- package/src/services/paymentCard/v1/swagger.schema.deref.json +4346 -0
- package/src/services/paymentCard/v1/swagger.schema.json +2181 -0
- package/src/services/paymentCard/v1/swagger.yml +1161 -0
- package/src/services/paymentCard/v2/swagger.schema.deref.json +4336 -0
- package/src/services/paymentCard/v2/swagger.schema.json +2155 -0
- package/src/services/paymentCard/v2/swagger.yml +1149 -0
- package/src/services/person/v1/swagger.schema.deref.json +6786 -0
- package/src/services/person/v1/swagger.schema.json +1445 -0
- package/src/services/person/v1/swagger.yml +1157 -0
- package/src/services/teampayApproval/v1/swagger.schema.deref.json +9898 -0
- package/src/services/teampayCardManagement/v1/swagger.schema.deref.json +6187 -0
- package/src/services/teampayClientManagement/v1/swagger.schema.deref.json +4914 -0
- package/src/services/teampayClientManagement/v1/swagger.schema.json +1964 -0
- package/src/services/teampayClientManagement/v1/swagger.yml +1376 -0
|
@@ -0,0 +1,1094 @@
|
|
|
1
|
+
openapi: 3.0.0
|
|
2
|
+
info:
|
|
3
|
+
title: Ledger Service
|
|
4
|
+
version: 1.12.0
|
|
5
|
+
description: |
|
|
6
|
+
## Introduction
|
|
7
|
+
|
|
8
|
+
The Ledger Service implements a highly available, double-entry general journal. It has a REST-ful interface, with
|
|
9
|
+
strict cacheable, idempotency and immutability guarantees. It is designed to be the single source of account
|
|
10
|
+
balance “truth” across a client platform, whether for card-based transactions, manual transaction processing
|
|
11
|
+
or batch, independent of product or feature sets. Because of it's central role as a single source of balances,
|
|
12
|
+
it is designed for a mix of real-time, latency-sensitive workloads and high-scale batch workloads.
|
|
13
|
+
|
|
14
|
+
The Ledger Service is designed for extremely high availability, and uses multiple cloud regions (e.g. in AWS,
|
|
15
|
+
us-east-1 and us-east-2). Due to the fundamental nature of distributed systems, the necessary trade-off it makes
|
|
16
|
+
is one of eventual consistency; some real-time account balance inquiries may take time to reflect posted entries.
|
|
17
|
+
However the underlying S3-based "system of record" datafeed is always considered to be accurate.
|
|
18
|
+
|
|
19
|
+
## Accounts and Entries
|
|
20
|
+
|
|
21
|
+
Fundamentally, the Ledger API presents the financial state of the platform as a set of ledger accounts. A
|
|
22
|
+
ledger account can be in any currency (such as USD, but also including non-traditional currencies such as
|
|
23
|
+
"points", "miles" or "hours").
|
|
24
|
+
|
|
25
|
+
The financial state of the platform can only be changed by the successful creation of an Entry. An
|
|
26
|
+
Entry contains a set of debit and credit postings, the total of which which must be equivalent. i.e. the
|
|
27
|
+
sum total of debit postings for a given currency must exactly equal the sum total of credit postings for that
|
|
28
|
+
currency. An Entry may contain a mix of currencies, to support currency exchange transactions.
|
|
29
|
+
Each posting references an account and an amount; if the Entry is processed successfully, the balance of each
|
|
30
|
+
account will be adjusted by the given amount.
|
|
31
|
+
|
|
32
|
+
## Use Case: Card Processing
|
|
33
|
+
|
|
34
|
+
Pending Entries used, for example, in card processing are handled exactly the same as Entries, except they contain
|
|
35
|
+
postings with future dates. Postings with future dates will only impact the balance of the account after that
|
|
36
|
+
future date has passed. Typically pending entries would be managed in a separate account from the ledger entries.
|
|
37
|
+
|
|
38
|
+
As an example, during a pre-authorization, an Entry is created against a pending account which represents the hold
|
|
39
|
+
on funds. That Entry consists of postings that happen right now and immediately impact the available balance of the
|
|
40
|
+
overall cardholder's account, and also contains future postings that represent the expiration of the hold at the
|
|
41
|
+
required hold expiration time. It is important during card processing for the balance of all pending entries to
|
|
42
|
+
be used along with the ledger account balance in order to determine available funds.
|
|
43
|
+
|
|
44
|
+
## IDs
|
|
45
|
+
|
|
46
|
+
All IDs are supplied by the resource creator and must be unique. They are either a UUID or a combination
|
|
47
|
+
of UUID and other text.
|
|
48
|
+
|
|
49
|
+
## Accounts
|
|
50
|
+
|
|
51
|
+
The type of a transaction is defined by the types of accounts that are used in it. The type of an account is
|
|
52
|
+
defined as part of the ID of the account (defined in the documentation as `idFragments`). For example, an account
|
|
53
|
+
that handles ACH ingress funds flows would be defined as having the ID `<uuid>/ach/ingress`.
|
|
54
|
+
|
|
55
|
+
## Amounts
|
|
56
|
+
|
|
57
|
+
All amounts are in minimum monetary units based on the currency (for example cents for USD). Amounts are
|
|
58
|
+
numerical strings that can represent arbitrarily large integers.
|
|
59
|
+
|
|
60
|
+
## Versioning
|
|
61
|
+
|
|
62
|
+
Accounts can be either versioned or un-versioned depending on whether performing a posting is dependent on the
|
|
63
|
+
balance of the account or not. The `versioned` parameter passed when creating an account can be used to specify
|
|
64
|
+
whether an account is versioned or not.
|
|
65
|
+
|
|
66
|
+
In order to post an Entry to a versioned account, you must first obtain the balance of all versioned accounts
|
|
67
|
+
involved in the entry's list of postings. The ETag header value sent in the `/balances` API call response will be
|
|
68
|
+
used as the If-Match header input on a subsequent `PUT` for `/entry/<entryId>` call.
|
|
69
|
+
|
|
70
|
+
Please note that all versioned accounts involved in a posting must have their balances obtained in a single `GET`
|
|
71
|
+
`/balances` call in order to supply a single If-Match header when creating the Entry.
|
|
72
|
+
|
|
73
|
+
If the balance of any of the versioned accounts has changed between the time the ETag was obtained from the `GET`
|
|
74
|
+
`/balances` call and the time when the `PUT` `/entry/<entryId>` call is made, the `PUT` will fail with a `409`
|
|
75
|
+
error code.
|
|
76
|
+
|
|
77
|
+
Versioned accounts should only be used for accounts where the balance determines whether a posting should take
|
|
78
|
+
place or not. Accounts used in card transactions for an individual cardholder should be versioned whereas a BIN or
|
|
79
|
+
program level account however should not be versioned.
|
|
80
|
+
|
|
81
|
+
## Idempotency and retries
|
|
82
|
+
|
|
83
|
+
All mutating operations (e.g. creating Accounts and Entries) are idempotent. In practice this means if there is
|
|
84
|
+
any doubt whether an operation succeeded, the client should retry, and if necessary perform exponential backoff.
|
|
85
|
+
Check Digit's recommended process is the same as AWS, see:
|
|
86
|
+
[Error retries and exponential backoff in AWS](https://docs.aws.amazon.com/general/latest/gr/api-retries.html)
|
|
87
|
+
|
|
88
|
+
© Check Digit LLC. 2021-2024
|
|
89
|
+
contact:
|
|
90
|
+
name: Check Digit
|
|
91
|
+
|
|
92
|
+
servers:
|
|
93
|
+
- url: /ledger/v1
|
|
94
|
+
tags:
|
|
95
|
+
- name: Service Health
|
|
96
|
+
- name: API
|
|
97
|
+
|
|
98
|
+
x-firehose-logged: false
|
|
99
|
+
|
|
100
|
+
paths:
|
|
101
|
+
/ping:
|
|
102
|
+
get:
|
|
103
|
+
tags:
|
|
104
|
+
- Service Health
|
|
105
|
+
operationId: 'ping-get'
|
|
106
|
+
description: Tests the availability of the service and returns the current server time.
|
|
107
|
+
responses:
|
|
108
|
+
'200':
|
|
109
|
+
$ref: '#/components/responses/Ping'
|
|
110
|
+
default:
|
|
111
|
+
$ref: '#/components/responses/ServerError'
|
|
112
|
+
|
|
113
|
+
/account/{accountId}:
|
|
114
|
+
put:
|
|
115
|
+
tags:
|
|
116
|
+
- API
|
|
117
|
+
operationId: 'account-put'
|
|
118
|
+
x-firehose-logged: true
|
|
119
|
+
description: Creates an account. This operation is idempotent.
|
|
120
|
+
parameters:
|
|
121
|
+
- $ref: '#/components/parameters/accountId'
|
|
122
|
+
- $ref: '#/components/parameters/createdOn'
|
|
123
|
+
- $ref: '#/components/parameters/lastModified'
|
|
124
|
+
requestBody:
|
|
125
|
+
required: true
|
|
126
|
+
content:
|
|
127
|
+
application/json:
|
|
128
|
+
schema:
|
|
129
|
+
$ref: '#/components/schemas/NewAccount'
|
|
130
|
+
responses:
|
|
131
|
+
'204':
|
|
132
|
+
$ref: '#/components/responses/Created'
|
|
133
|
+
'409':
|
|
134
|
+
$ref: '#/components/responses/Conflict'
|
|
135
|
+
default:
|
|
136
|
+
$ref: '#/components/responses/ServerError'
|
|
137
|
+
get:
|
|
138
|
+
tags:
|
|
139
|
+
- API
|
|
140
|
+
operationId: 'account-get'
|
|
141
|
+
description: Obtains an account with a specified ID.
|
|
142
|
+
parameters:
|
|
143
|
+
- $ref: '#/components/parameters/accountId'
|
|
144
|
+
- $ref: '#/components/parameters/at'
|
|
145
|
+
responses:
|
|
146
|
+
'200':
|
|
147
|
+
$ref: '#/components/responses/AccountObtained'
|
|
148
|
+
'404':
|
|
149
|
+
$ref: '#/components/responses/NotFound'
|
|
150
|
+
default:
|
|
151
|
+
$ref: '#/components/responses/ServerError'
|
|
152
|
+
|
|
153
|
+
/account/{accountId}/{idFragment1}:
|
|
154
|
+
put:
|
|
155
|
+
tags:
|
|
156
|
+
- API
|
|
157
|
+
operationId: 'account-put=fragment1'
|
|
158
|
+
x-firehose-logged: true
|
|
159
|
+
description: Creates an account. This operation is idempotent.
|
|
160
|
+
parameters:
|
|
161
|
+
- $ref: '#/components/parameters/accountId'
|
|
162
|
+
- $ref: '#/components/parameters/createdOn'
|
|
163
|
+
- $ref: '#/components/parameters/lastModified'
|
|
164
|
+
- $ref: '#/components/parameters/idFragment1'
|
|
165
|
+
requestBody:
|
|
166
|
+
required: true
|
|
167
|
+
content:
|
|
168
|
+
application/json:
|
|
169
|
+
schema:
|
|
170
|
+
$ref: '#/components/schemas/NewAccount'
|
|
171
|
+
responses:
|
|
172
|
+
'204':
|
|
173
|
+
$ref: '#/components/responses/Created'
|
|
174
|
+
'409':
|
|
175
|
+
$ref: '#/components/responses/Conflict'
|
|
176
|
+
default:
|
|
177
|
+
$ref: '#/components/responses/ServerError'
|
|
178
|
+
get:
|
|
179
|
+
tags:
|
|
180
|
+
- API
|
|
181
|
+
operationId: 'account-get=fragment1'
|
|
182
|
+
description: Obtains an account with a specified ID.
|
|
183
|
+
parameters:
|
|
184
|
+
- $ref: '#/components/parameters/accountId'
|
|
185
|
+
- $ref: '#/components/parameters/at'
|
|
186
|
+
- $ref: '#/components/parameters/idFragment1'
|
|
187
|
+
responses:
|
|
188
|
+
'200':
|
|
189
|
+
$ref: '#/components/responses/AccountObtained'
|
|
190
|
+
'404':
|
|
191
|
+
$ref: '#/components/responses/NotFound'
|
|
192
|
+
default:
|
|
193
|
+
$ref: '#/components/responses/ServerError'
|
|
194
|
+
|
|
195
|
+
/account/{accountId}/{idFragment1}/{idFragment2}:
|
|
196
|
+
put:
|
|
197
|
+
tags:
|
|
198
|
+
- API
|
|
199
|
+
operationId: 'account-put=fragment2'
|
|
200
|
+
x-firehose-logged: true
|
|
201
|
+
description: Creates an account. This operation is idempotent.
|
|
202
|
+
parameters:
|
|
203
|
+
- $ref: '#/components/parameters/accountId'
|
|
204
|
+
- $ref: '#/components/parameters/createdOn'
|
|
205
|
+
- $ref: '#/components/parameters/lastModified'
|
|
206
|
+
- $ref: '#/components/parameters/idFragment1'
|
|
207
|
+
- $ref: '#/components/parameters/idFragment2'
|
|
208
|
+
requestBody:
|
|
209
|
+
required: true
|
|
210
|
+
content:
|
|
211
|
+
application/json:
|
|
212
|
+
schema:
|
|
213
|
+
$ref: '#/components/schemas/NewAccount'
|
|
214
|
+
responses:
|
|
215
|
+
'204':
|
|
216
|
+
$ref: '#/components/responses/Created'
|
|
217
|
+
'409':
|
|
218
|
+
$ref: '#/components/responses/Conflict'
|
|
219
|
+
default:
|
|
220
|
+
$ref: '#/components/responses/ServerError'
|
|
221
|
+
get:
|
|
222
|
+
tags:
|
|
223
|
+
- API
|
|
224
|
+
operationId: 'account-get=fragment2'
|
|
225
|
+
description: Obtains an account with a specified ID.
|
|
226
|
+
parameters:
|
|
227
|
+
- $ref: '#/components/parameters/accountId'
|
|
228
|
+
- $ref: '#/components/parameters/at'
|
|
229
|
+
- $ref: '#/components/parameters/idFragment1'
|
|
230
|
+
- $ref: '#/components/parameters/idFragment2'
|
|
231
|
+
responses:
|
|
232
|
+
'200':
|
|
233
|
+
$ref: '#/components/responses/AccountObtained'
|
|
234
|
+
'404':
|
|
235
|
+
$ref: '#/components/responses/NotFound'
|
|
236
|
+
default:
|
|
237
|
+
$ref: '#/components/responses/ServerError'
|
|
238
|
+
|
|
239
|
+
/account/{accountId}/{idFragment1}/{idFragment2}/{idFragment3}:
|
|
240
|
+
put:
|
|
241
|
+
tags:
|
|
242
|
+
- API
|
|
243
|
+
operationId: 'account-put=fragment3'
|
|
244
|
+
x-firehose-logged: true
|
|
245
|
+
description: Creates an account. This operation is idempotent.
|
|
246
|
+
parameters:
|
|
247
|
+
- $ref: '#/components/parameters/accountId'
|
|
248
|
+
- $ref: '#/components/parameters/createdOn'
|
|
249
|
+
- $ref: '#/components/parameters/lastModified'
|
|
250
|
+
- $ref: '#/components/parameters/idFragment1'
|
|
251
|
+
- $ref: '#/components/parameters/idFragment2'
|
|
252
|
+
- $ref: '#/components/parameters/idFragment3'
|
|
253
|
+
requestBody:
|
|
254
|
+
required: true
|
|
255
|
+
content:
|
|
256
|
+
application/json:
|
|
257
|
+
schema:
|
|
258
|
+
$ref: '#/components/schemas/NewAccount'
|
|
259
|
+
responses:
|
|
260
|
+
'204':
|
|
261
|
+
$ref: '#/components/responses/Created'
|
|
262
|
+
'409':
|
|
263
|
+
$ref: '#/components/responses/Conflict'
|
|
264
|
+
default:
|
|
265
|
+
$ref: '#/components/responses/ServerError'
|
|
266
|
+
get:
|
|
267
|
+
tags:
|
|
268
|
+
- API
|
|
269
|
+
operationId: 'account-get=fragment3'
|
|
270
|
+
description: Obtains an account with a specified ID.
|
|
271
|
+
parameters:
|
|
272
|
+
- $ref: '#/components/parameters/accountId'
|
|
273
|
+
- $ref: '#/components/parameters/at'
|
|
274
|
+
- $ref: '#/components/parameters/idFragment1'
|
|
275
|
+
- $ref: '#/components/parameters/idFragment2'
|
|
276
|
+
- $ref: '#/components/parameters/idFragment3'
|
|
277
|
+
responses:
|
|
278
|
+
'200':
|
|
279
|
+
$ref: '#/components/responses/AccountObtained'
|
|
280
|
+
'404':
|
|
281
|
+
$ref: '#/components/responses/NotFound'
|
|
282
|
+
default:
|
|
283
|
+
$ref: '#/components/responses/ServerError'
|
|
284
|
+
|
|
285
|
+
/account-entries:
|
|
286
|
+
get:
|
|
287
|
+
tags:
|
|
288
|
+
- API
|
|
289
|
+
operationId: 'account-entries-query-get'
|
|
290
|
+
description: Obtains the journal entries for an account.
|
|
291
|
+
parameters:
|
|
292
|
+
- $ref: '#/components/parameters/toDate'
|
|
293
|
+
- $ref: '#/components/parameters/fromDate'
|
|
294
|
+
- $ref: '#/components/parameters/accountIdQuery'
|
|
295
|
+
responses:
|
|
296
|
+
'200':
|
|
297
|
+
description: Entries successfully obtained
|
|
298
|
+
content:
|
|
299
|
+
application/json:
|
|
300
|
+
schema:
|
|
301
|
+
$ref: '#/components/schemas/EntriesList'
|
|
302
|
+
'404':
|
|
303
|
+
$ref: '#/components/responses/NotFound'
|
|
304
|
+
default:
|
|
305
|
+
$ref: '#/components/responses/ServerError'
|
|
306
|
+
|
|
307
|
+
/entry/{entryId}:
|
|
308
|
+
put:
|
|
309
|
+
tags:
|
|
310
|
+
- API
|
|
311
|
+
operationId: 'entry-put'
|
|
312
|
+
x-firehose-logged: true
|
|
313
|
+
description: >-
|
|
314
|
+
Creates a journal entry with a specific id. This operation is
|
|
315
|
+
idempotent.
|
|
316
|
+
parameters:
|
|
317
|
+
- $ref: '#/components/parameters/entryId'
|
|
318
|
+
- $ref: '#/components/parameters/ifMatch'
|
|
319
|
+
- $ref: '#/components/parameters/createdOn'
|
|
320
|
+
- $ref: '#/components/parameters/lastModified'
|
|
321
|
+
requestBody:
|
|
322
|
+
required: true
|
|
323
|
+
content:
|
|
324
|
+
application/json:
|
|
325
|
+
schema:
|
|
326
|
+
$ref: '#/components/schemas/NewEntry'
|
|
327
|
+
responses:
|
|
328
|
+
'204':
|
|
329
|
+
$ref: '#/components/responses/Created'
|
|
330
|
+
'409':
|
|
331
|
+
$ref: '#/components/responses/Conflict'
|
|
332
|
+
'412':
|
|
333
|
+
$ref: '#/components/responses/PreConditionFailed'
|
|
334
|
+
default:
|
|
335
|
+
$ref: '#/components/responses/ServerError'
|
|
336
|
+
get:
|
|
337
|
+
tags:
|
|
338
|
+
- API
|
|
339
|
+
operationId: 'entry-get'
|
|
340
|
+
description: Obtains a journal entry with a specified id.
|
|
341
|
+
parameters:
|
|
342
|
+
- $ref: '#/components/parameters/entryId'
|
|
343
|
+
- $ref: '#/components/parameters/at'
|
|
344
|
+
responses:
|
|
345
|
+
'200':
|
|
346
|
+
description: Entry obtained successfully.
|
|
347
|
+
content:
|
|
348
|
+
application/json:
|
|
349
|
+
schema:
|
|
350
|
+
$ref: '#/components/schemas/ResponseEntry'
|
|
351
|
+
headers:
|
|
352
|
+
Created-On:
|
|
353
|
+
$ref: '#/components/headers/Created-On'
|
|
354
|
+
Updated-On:
|
|
355
|
+
$ref: '#/components/headers/Updated-On'
|
|
356
|
+
Last-Modified:
|
|
357
|
+
$ref: '#/components/headers/Last-Modified'
|
|
358
|
+
'404':
|
|
359
|
+
$ref: '#/components/responses/NotFound'
|
|
360
|
+
default:
|
|
361
|
+
$ref: '#/components/responses/ServerError'
|
|
362
|
+
|
|
363
|
+
/balance:
|
|
364
|
+
get:
|
|
365
|
+
tags:
|
|
366
|
+
- API
|
|
367
|
+
operationId: 'balance-get'
|
|
368
|
+
description: >-
|
|
369
|
+
Calculates the balance for multiple accounts at a specific point in
|
|
370
|
+
time.
|
|
371
|
+
parameters:
|
|
372
|
+
- $ref: '#/components/parameters/accountIdQuery'
|
|
373
|
+
- $ref: '#/components/parameters/at'
|
|
374
|
+
- $ref: '#/components/parameters/ifNoneMatch'
|
|
375
|
+
responses:
|
|
376
|
+
'200':
|
|
377
|
+
description: Calculated account balances.
|
|
378
|
+
headers:
|
|
379
|
+
ETag:
|
|
380
|
+
$ref: '#/components/headers/ETag'
|
|
381
|
+
content:
|
|
382
|
+
application/json:
|
|
383
|
+
schema:
|
|
384
|
+
$ref: '#/components/schemas/BalanceList'
|
|
385
|
+
'400':
|
|
386
|
+
$ref: '#/components/responses/BadRequest'
|
|
387
|
+
default:
|
|
388
|
+
$ref: '#/components/responses/ServerError'
|
|
389
|
+
|
|
390
|
+
/total:
|
|
391
|
+
get:
|
|
392
|
+
tags:
|
|
393
|
+
- API
|
|
394
|
+
operationId: 'total-get'
|
|
395
|
+
summary: This operation calculates the total debit or credit to an account within a period of time.
|
|
396
|
+
description: |
|
|
397
|
+
- The totals for multiple accounts can be calculated in a single request.
|
|
398
|
+
- Those totals can be narrowed to only include entries that involve accounts in the filteredAccountIdQuery.
|
|
399
|
+
- If debits exceed credits, the total value will be negative.
|
|
400
|
+
- If the filteredAccountIdQuery is not supplied, the entries will not be filtered before forming the total.
|
|
401
|
+
- Entries whose created entry mappings do not contain the entryAccountIds field will not be included in the totals calculation
|
|
402
|
+
parameters:
|
|
403
|
+
- $ref: '#/components/parameters/accountIdQuery'
|
|
404
|
+
- $ref: '#/components/parameters/filterAccountIdQuery'
|
|
405
|
+
- $ref: '#/components/parameters/fromDate'
|
|
406
|
+
- $ref: '#/components/parameters/toDate'
|
|
407
|
+
responses:
|
|
408
|
+
'200':
|
|
409
|
+
description: Calculated total of filtered entries for the accounts specified.
|
|
410
|
+
content:
|
|
411
|
+
application/json:
|
|
412
|
+
schema:
|
|
413
|
+
$ref: '#/components/schemas/TotalsList'
|
|
414
|
+
'400':
|
|
415
|
+
$ref: '#/components/responses/BadRequest'
|
|
416
|
+
'404':
|
|
417
|
+
$ref: '#/components/responses/NotFound'
|
|
418
|
+
default:
|
|
419
|
+
$ref: '#/components/responses/ServerError'
|
|
420
|
+
|
|
421
|
+
components:
|
|
422
|
+
schemas:
|
|
423
|
+
Ping:
|
|
424
|
+
type: object
|
|
425
|
+
additionalProperties: false
|
|
426
|
+
required:
|
|
427
|
+
- serverTime
|
|
428
|
+
properties:
|
|
429
|
+
serverTime:
|
|
430
|
+
type: string
|
|
431
|
+
format: date-time
|
|
432
|
+
description: Current server time.
|
|
433
|
+
|
|
434
|
+
Error:
|
|
435
|
+
type: object
|
|
436
|
+
additionalProperties: false
|
|
437
|
+
description: Error message.
|
|
438
|
+
required:
|
|
439
|
+
- code
|
|
440
|
+
properties:
|
|
441
|
+
message:
|
|
442
|
+
type: string
|
|
443
|
+
code:
|
|
444
|
+
type: string
|
|
445
|
+
enum:
|
|
446
|
+
- INVALID_AT
|
|
447
|
+
- INVALID_FROM
|
|
448
|
+
- INVALID_TO
|
|
449
|
+
- INVALID_CREATED_ON
|
|
450
|
+
- INVALID_LAST_MODIFIED
|
|
451
|
+
- INVALID_IF_MATCH
|
|
452
|
+
- FROM_GREATER_THAN_TO
|
|
453
|
+
- ACCOUNT_NOT_FOUND
|
|
454
|
+
- POSTING_AMOUNT_NOT_AN_INTEGER
|
|
455
|
+
- ACCOUNT_MULTIPLE_POSTINGS
|
|
456
|
+
- LAST_MODIFIED_BEFORE_ACCOUNT_CREATED_ON
|
|
457
|
+
- POSTING_WITH_ZERO_AMOUNT
|
|
458
|
+
- POSTING_WITH_NEGATIVE_AMOUNT
|
|
459
|
+
- VERSION_SUPPLIED_FOR_UNVERSIONED_ACCOUNT
|
|
460
|
+
- NO_POSTINGS
|
|
461
|
+
- INSUFFICIENT_POSTINGS
|
|
462
|
+
- UNEQUAL_CREDIT_DEBIT
|
|
463
|
+
- VERSION_BALANCE_MISMATCH
|
|
464
|
+
- VERSION_MISMATCH
|
|
465
|
+
- CURRENCY_MISMATCH
|
|
466
|
+
- UNHANDLED_ERROR
|
|
467
|
+
|
|
468
|
+
Currency:
|
|
469
|
+
type: string
|
|
470
|
+
enum:
|
|
471
|
+
- AED
|
|
472
|
+
- AFN
|
|
473
|
+
- ALL
|
|
474
|
+
- AMD
|
|
475
|
+
- ANG
|
|
476
|
+
- AOA
|
|
477
|
+
- ARS
|
|
478
|
+
- AUD
|
|
479
|
+
- AWG
|
|
480
|
+
- AZN
|
|
481
|
+
- BAM
|
|
482
|
+
- BBD
|
|
483
|
+
- BDT
|
|
484
|
+
- BGN
|
|
485
|
+
- BHD
|
|
486
|
+
- BIF
|
|
487
|
+
- BMD
|
|
488
|
+
- BND
|
|
489
|
+
- BOB
|
|
490
|
+
- BOV
|
|
491
|
+
- BRL
|
|
492
|
+
- BSD
|
|
493
|
+
- BTN
|
|
494
|
+
- BWP
|
|
495
|
+
- BYN
|
|
496
|
+
- BZD
|
|
497
|
+
- CAD
|
|
498
|
+
- CDF
|
|
499
|
+
- CHE
|
|
500
|
+
- CHF
|
|
501
|
+
- CHW
|
|
502
|
+
- CLF
|
|
503
|
+
- CLP
|
|
504
|
+
- CNY
|
|
505
|
+
- COP
|
|
506
|
+
- COU
|
|
507
|
+
- CRC
|
|
508
|
+
- CUC
|
|
509
|
+
- CUP
|
|
510
|
+
- CVE
|
|
511
|
+
- CZK
|
|
512
|
+
- DJF
|
|
513
|
+
- DKK
|
|
514
|
+
- DOP
|
|
515
|
+
- DZD
|
|
516
|
+
- EGP
|
|
517
|
+
- ERN
|
|
518
|
+
- ETB
|
|
519
|
+
- EUR
|
|
520
|
+
- FJD
|
|
521
|
+
- FKP
|
|
522
|
+
- GBP
|
|
523
|
+
- GEL
|
|
524
|
+
- GHS
|
|
525
|
+
- GIP
|
|
526
|
+
- GMD
|
|
527
|
+
- GNF
|
|
528
|
+
- GTQ
|
|
529
|
+
- GYD
|
|
530
|
+
- HKD
|
|
531
|
+
- HNL
|
|
532
|
+
- HRK
|
|
533
|
+
- HTG
|
|
534
|
+
- HUF
|
|
535
|
+
- IDR
|
|
536
|
+
- ILS
|
|
537
|
+
- INR
|
|
538
|
+
- IQD
|
|
539
|
+
- IRR
|
|
540
|
+
- ISK
|
|
541
|
+
- JMD
|
|
542
|
+
- JOD
|
|
543
|
+
- JPY
|
|
544
|
+
- KES
|
|
545
|
+
- KGS
|
|
546
|
+
- KHR
|
|
547
|
+
- KMF
|
|
548
|
+
- KPW
|
|
549
|
+
- KRW
|
|
550
|
+
- KWD
|
|
551
|
+
- KYD
|
|
552
|
+
- KZT
|
|
553
|
+
- LAK
|
|
554
|
+
- LBP
|
|
555
|
+
- LKR
|
|
556
|
+
- LRD
|
|
557
|
+
- LSL
|
|
558
|
+
- LYD
|
|
559
|
+
- MAD
|
|
560
|
+
- MDL
|
|
561
|
+
- MGA
|
|
562
|
+
- MKD
|
|
563
|
+
- MMK
|
|
564
|
+
- MNT
|
|
565
|
+
- MOP
|
|
566
|
+
- MRU
|
|
567
|
+
- MUR
|
|
568
|
+
- MVR
|
|
569
|
+
- MWK
|
|
570
|
+
- MXN
|
|
571
|
+
- MXV
|
|
572
|
+
- MYR
|
|
573
|
+
- MZN
|
|
574
|
+
- NAD
|
|
575
|
+
- NGN
|
|
576
|
+
- NIO
|
|
577
|
+
- NOK
|
|
578
|
+
- NPR
|
|
579
|
+
- NZD
|
|
580
|
+
- OMR
|
|
581
|
+
- PAB
|
|
582
|
+
- PEN
|
|
583
|
+
- PGK
|
|
584
|
+
- PHP
|
|
585
|
+
- PKR
|
|
586
|
+
- PLN
|
|
587
|
+
- PYG
|
|
588
|
+
- QAR
|
|
589
|
+
- RON
|
|
590
|
+
- RSD
|
|
591
|
+
- RUB
|
|
592
|
+
- RWF
|
|
593
|
+
- SAR
|
|
594
|
+
- SBD
|
|
595
|
+
- SCR
|
|
596
|
+
- SDG
|
|
597
|
+
- SEK
|
|
598
|
+
- SGD
|
|
599
|
+
- SHP
|
|
600
|
+
- SLL
|
|
601
|
+
- SOS
|
|
602
|
+
- SRD
|
|
603
|
+
- SSP
|
|
604
|
+
- STN
|
|
605
|
+
- SVC
|
|
606
|
+
- SYP
|
|
607
|
+
- SZL
|
|
608
|
+
- THB
|
|
609
|
+
- TJS
|
|
610
|
+
- TMT
|
|
611
|
+
- TND
|
|
612
|
+
- TOP
|
|
613
|
+
- TRY
|
|
614
|
+
- TTD
|
|
615
|
+
- TWD
|
|
616
|
+
- TZS
|
|
617
|
+
- UAH
|
|
618
|
+
- UGX
|
|
619
|
+
- USD
|
|
620
|
+
- USN
|
|
621
|
+
- UYI
|
|
622
|
+
- UYU
|
|
623
|
+
- UYW
|
|
624
|
+
- UZS
|
|
625
|
+
- VES
|
|
626
|
+
- VND
|
|
627
|
+
- VUV
|
|
628
|
+
- WST
|
|
629
|
+
- XAF
|
|
630
|
+
- XAG
|
|
631
|
+
- XAU
|
|
632
|
+
- XBA
|
|
633
|
+
- XBB
|
|
634
|
+
- XBC
|
|
635
|
+
- XBD
|
|
636
|
+
- XCD
|
|
637
|
+
- XDR
|
|
638
|
+
- XOF
|
|
639
|
+
- XPD
|
|
640
|
+
- XPF
|
|
641
|
+
- XPT
|
|
642
|
+
- XSU
|
|
643
|
+
- XTS
|
|
644
|
+
- XUA
|
|
645
|
+
- XXX
|
|
646
|
+
- YER
|
|
647
|
+
- ZAR
|
|
648
|
+
- ZMW
|
|
649
|
+
- ZWL
|
|
650
|
+
|
|
651
|
+
Account:
|
|
652
|
+
type: object
|
|
653
|
+
additionalProperties: false
|
|
654
|
+
required:
|
|
655
|
+
- accountId
|
|
656
|
+
- createdOn
|
|
657
|
+
- currency
|
|
658
|
+
- type
|
|
659
|
+
properties:
|
|
660
|
+
accountId:
|
|
661
|
+
type: string
|
|
662
|
+
description: Account ID
|
|
663
|
+
createdOn:
|
|
664
|
+
type: string
|
|
665
|
+
format: date-time
|
|
666
|
+
description: Account creation date/time.
|
|
667
|
+
currency:
|
|
668
|
+
$ref: '#/components/schemas/Currency'
|
|
669
|
+
name:
|
|
670
|
+
type: string
|
|
671
|
+
description: Account short name.
|
|
672
|
+
type:
|
|
673
|
+
type: string
|
|
674
|
+
enum:
|
|
675
|
+
- VERSIONED
|
|
676
|
+
- UNVERSIONED
|
|
677
|
+
|
|
678
|
+
NewAccount:
|
|
679
|
+
type: object
|
|
680
|
+
additionalProperties: false
|
|
681
|
+
required:
|
|
682
|
+
- currency
|
|
683
|
+
properties:
|
|
684
|
+
currency:
|
|
685
|
+
$ref: '#/components/schemas/Currency'
|
|
686
|
+
name:
|
|
687
|
+
type: string
|
|
688
|
+
description: Account short name
|
|
689
|
+
type:
|
|
690
|
+
type: string
|
|
691
|
+
enum:
|
|
692
|
+
- VERSIONED
|
|
693
|
+
- UNVERSIONED
|
|
694
|
+
description: >-
|
|
695
|
+
Determines whether performing a posting is dependent on the balance
|
|
696
|
+
of the account or not. Defaults to VERSIONED if not supplied.
|
|
697
|
+
|
|
698
|
+
BalanceList:
|
|
699
|
+
type: object
|
|
700
|
+
additionalProperties: false
|
|
701
|
+
description: Balances for the accounts requested.
|
|
702
|
+
required:
|
|
703
|
+
- at
|
|
704
|
+
- balances
|
|
705
|
+
properties:
|
|
706
|
+
at:
|
|
707
|
+
type: string
|
|
708
|
+
format: date-time
|
|
709
|
+
description: Account balance at this date/time
|
|
710
|
+
balances:
|
|
711
|
+
type: array
|
|
712
|
+
items:
|
|
713
|
+
$ref: '#/components/schemas/Balance'
|
|
714
|
+
|
|
715
|
+
Balance:
|
|
716
|
+
type: object
|
|
717
|
+
additionalProperties: false
|
|
718
|
+
description: Ledger balance at a point in time.
|
|
719
|
+
required:
|
|
720
|
+
- accountId
|
|
721
|
+
- balance
|
|
722
|
+
properties:
|
|
723
|
+
accountId:
|
|
724
|
+
type: string
|
|
725
|
+
description: Account ID
|
|
726
|
+
balance:
|
|
727
|
+
type: string
|
|
728
|
+
|
|
729
|
+
EntriesList:
|
|
730
|
+
type: object
|
|
731
|
+
additionalProperties: false
|
|
732
|
+
required:
|
|
733
|
+
- accountEntries
|
|
734
|
+
properties:
|
|
735
|
+
accountEntries:
|
|
736
|
+
type: array
|
|
737
|
+
items:
|
|
738
|
+
$ref: '#/components/schemas/Entries'
|
|
739
|
+
|
|
740
|
+
Entries:
|
|
741
|
+
type: object
|
|
742
|
+
additionalProperties: false
|
|
743
|
+
required:
|
|
744
|
+
- entries
|
|
745
|
+
- accountId
|
|
746
|
+
properties:
|
|
747
|
+
accountId:
|
|
748
|
+
type: string
|
|
749
|
+
description: Account ID
|
|
750
|
+
entries:
|
|
751
|
+
type: array
|
|
752
|
+
minItems: 0
|
|
753
|
+
items:
|
|
754
|
+
$ref: '#/components/schemas/Entry'
|
|
755
|
+
|
|
756
|
+
Entry:
|
|
757
|
+
type: object
|
|
758
|
+
additionalProperties: false
|
|
759
|
+
required:
|
|
760
|
+
- entryId
|
|
761
|
+
- createdOn
|
|
762
|
+
- postings
|
|
763
|
+
properties:
|
|
764
|
+
entryId:
|
|
765
|
+
type: string
|
|
766
|
+
description: Journal entry ID
|
|
767
|
+
createdOn:
|
|
768
|
+
type: string
|
|
769
|
+
format: date-time
|
|
770
|
+
description: Journal entry creation date/time
|
|
771
|
+
postings:
|
|
772
|
+
type: array
|
|
773
|
+
items:
|
|
774
|
+
$ref: '#/components/schemas/Post'
|
|
775
|
+
|
|
776
|
+
ResponseEntry:
|
|
777
|
+
type: object
|
|
778
|
+
additionalProperties: false
|
|
779
|
+
required:
|
|
780
|
+
- entryId
|
|
781
|
+
- createdOn
|
|
782
|
+
- postings
|
|
783
|
+
properties:
|
|
784
|
+
entryId:
|
|
785
|
+
type: string
|
|
786
|
+
description: Journal entry ID
|
|
787
|
+
createdOn:
|
|
788
|
+
type: string
|
|
789
|
+
format: date-time
|
|
790
|
+
description: Journal entry creation date/time
|
|
791
|
+
postings:
|
|
792
|
+
type: array
|
|
793
|
+
items:
|
|
794
|
+
$ref: '#/components/schemas/ResponsePost'
|
|
795
|
+
|
|
796
|
+
NewEntry:
|
|
797
|
+
type: object
|
|
798
|
+
additionalProperties: false
|
|
799
|
+
required:
|
|
800
|
+
- postings
|
|
801
|
+
properties:
|
|
802
|
+
postings:
|
|
803
|
+
type: array
|
|
804
|
+
description: List of posts contained within the journal entry.
|
|
805
|
+
items:
|
|
806
|
+
$ref: '#/components/schemas/Post'
|
|
807
|
+
|
|
808
|
+
Post:
|
|
809
|
+
type: object
|
|
810
|
+
additionalProperties: false
|
|
811
|
+
required:
|
|
812
|
+
- amount
|
|
813
|
+
- currency
|
|
814
|
+
- type
|
|
815
|
+
- accountId
|
|
816
|
+
properties:
|
|
817
|
+
amount:
|
|
818
|
+
type: string
|
|
819
|
+
currency:
|
|
820
|
+
$ref: '#/components/schemas/Currency'
|
|
821
|
+
type:
|
|
822
|
+
$ref: '#/components/schemas/Type'
|
|
823
|
+
createdOn:
|
|
824
|
+
type: string
|
|
825
|
+
format: date-time
|
|
826
|
+
accountId:
|
|
827
|
+
type: string
|
|
828
|
+
description: account ID
|
|
829
|
+
|
|
830
|
+
ResponsePost:
|
|
831
|
+
type: object
|
|
832
|
+
additionalProperties: false
|
|
833
|
+
required:
|
|
834
|
+
- amount
|
|
835
|
+
- currency
|
|
836
|
+
- type
|
|
837
|
+
- accountId
|
|
838
|
+
- createdOn
|
|
839
|
+
properties:
|
|
840
|
+
amount:
|
|
841
|
+
type: string
|
|
842
|
+
currency:
|
|
843
|
+
$ref: '#/components/schemas/Currency'
|
|
844
|
+
type:
|
|
845
|
+
$ref: '#/components/schemas/Type'
|
|
846
|
+
createdOn:
|
|
847
|
+
type: string
|
|
848
|
+
format: date-time
|
|
849
|
+
accountId:
|
|
850
|
+
type: string
|
|
851
|
+
description: account ID
|
|
852
|
+
|
|
853
|
+
Type:
|
|
854
|
+
type: string
|
|
855
|
+
description: CREDIT or DEBIT
|
|
856
|
+
enum:
|
|
857
|
+
- CREDIT
|
|
858
|
+
- DEBIT
|
|
859
|
+
|
|
860
|
+
TotalsList:
|
|
861
|
+
type: array
|
|
862
|
+
additionalProperties: false
|
|
863
|
+
description: Totals of filtered entries for the accounts requested.
|
|
864
|
+
items:
|
|
865
|
+
$ref: '#/components/schemas/Total'
|
|
866
|
+
minItems: 1
|
|
867
|
+
|
|
868
|
+
Total:
|
|
869
|
+
type: object
|
|
870
|
+
additionalProperties: false
|
|
871
|
+
description: |
|
|
872
|
+
- The total debit or credit to an account.
|
|
873
|
+
- If debits exceed credits the total value will be negative.
|
|
874
|
+
- AccountIds may include idFragments formatted as: :accountId/:idFragment1/:idFragment2/:idFragment3.
|
|
875
|
+
required:
|
|
876
|
+
- accountId
|
|
877
|
+
- total
|
|
878
|
+
properties:
|
|
879
|
+
accountId:
|
|
880
|
+
type: string
|
|
881
|
+
description: account ID
|
|
882
|
+
total:
|
|
883
|
+
type: string
|
|
884
|
+
minLength: 1
|
|
885
|
+
|
|
886
|
+
parameters:
|
|
887
|
+
ifNoneMatch:
|
|
888
|
+
in: header
|
|
889
|
+
name: If-None-Match
|
|
890
|
+
description: If-None-Match header
|
|
891
|
+
schema:
|
|
892
|
+
type: string
|
|
893
|
+
|
|
894
|
+
idFragment1:
|
|
895
|
+
in: path
|
|
896
|
+
required: true
|
|
897
|
+
name: idFragment1
|
|
898
|
+
description: Fragment of a unique identifier.
|
|
899
|
+
schema:
|
|
900
|
+
type: string
|
|
901
|
+
|
|
902
|
+
idFragment2:
|
|
903
|
+
in: path
|
|
904
|
+
required: true
|
|
905
|
+
name: idFragment2
|
|
906
|
+
description: Fragment of a unique identifier.
|
|
907
|
+
schema:
|
|
908
|
+
type: string
|
|
909
|
+
|
|
910
|
+
idFragment3:
|
|
911
|
+
in: path
|
|
912
|
+
required: true
|
|
913
|
+
name: idFragment3
|
|
914
|
+
description: Fragment of a unique identifier.
|
|
915
|
+
schema:
|
|
916
|
+
type: string
|
|
917
|
+
|
|
918
|
+
ifMatch:
|
|
919
|
+
in: header
|
|
920
|
+
name: If-Match
|
|
921
|
+
description: If-Match header
|
|
922
|
+
schema:
|
|
923
|
+
type: string
|
|
924
|
+
|
|
925
|
+
accountId:
|
|
926
|
+
in: path
|
|
927
|
+
name: accountId
|
|
928
|
+
description: Unique identifier for an account.
|
|
929
|
+
required: true
|
|
930
|
+
schema:
|
|
931
|
+
type: string
|
|
932
|
+
|
|
933
|
+
accountIdQuery:
|
|
934
|
+
in: query
|
|
935
|
+
name: accountIds
|
|
936
|
+
description: |
|
|
937
|
+
- UUID for accounts.
|
|
938
|
+
- For accountIds with idFragments, format like so :accountId/:idFragment1/:idFragment2/:idFragment3.
|
|
939
|
+
required: true
|
|
940
|
+
schema:
|
|
941
|
+
type: array
|
|
942
|
+
minItems: 1
|
|
943
|
+
items:
|
|
944
|
+
type: string
|
|
945
|
+
|
|
946
|
+
filterAccountIdQuery:
|
|
947
|
+
in: query
|
|
948
|
+
name: filteredAccounts
|
|
949
|
+
description: |
|
|
950
|
+
- UUIDs for accounts to filter entries by.
|
|
951
|
+
- For accountIds with idFragments, format like so :accountId/:idFragment1/:idFragment2/:idFragment3.
|
|
952
|
+
schema:
|
|
953
|
+
type: array
|
|
954
|
+
minItems: 1
|
|
955
|
+
items:
|
|
956
|
+
type: string
|
|
957
|
+
|
|
958
|
+
at:
|
|
959
|
+
in: query
|
|
960
|
+
name: at
|
|
961
|
+
description: Returns data createdOn before this time.
|
|
962
|
+
required: true
|
|
963
|
+
schema:
|
|
964
|
+
type: string
|
|
965
|
+
format: date-time
|
|
966
|
+
|
|
967
|
+
entryId:
|
|
968
|
+
in: path
|
|
969
|
+
name: entryId
|
|
970
|
+
description: Unique identifier for an entry.
|
|
971
|
+
required: true
|
|
972
|
+
schema:
|
|
973
|
+
type: string
|
|
974
|
+
|
|
975
|
+
toDate:
|
|
976
|
+
in: query
|
|
977
|
+
name: toDate
|
|
978
|
+
description: >-
|
|
979
|
+
Return entries created before this time. Must be at least 1 second in
|
|
980
|
+
the past.
|
|
981
|
+
required: true
|
|
982
|
+
schema:
|
|
983
|
+
type: string
|
|
984
|
+
format: date-time
|
|
985
|
+
|
|
986
|
+
fromDate:
|
|
987
|
+
in: query
|
|
988
|
+
name: fromDate
|
|
989
|
+
description: >-
|
|
990
|
+
Return entries created at or after this time. Must be at least 1 second
|
|
991
|
+
in the past.
|
|
992
|
+
schema:
|
|
993
|
+
type: string
|
|
994
|
+
format: date-time
|
|
995
|
+
|
|
996
|
+
createdOn:
|
|
997
|
+
in: header
|
|
998
|
+
name: Created-On
|
|
999
|
+
description: used to set resource creation date.
|
|
1000
|
+
schema:
|
|
1001
|
+
type: string
|
|
1002
|
+
format: date-time
|
|
1003
|
+
|
|
1004
|
+
lastModified:
|
|
1005
|
+
in: header
|
|
1006
|
+
name: Last-Modified
|
|
1007
|
+
description: used to set resource creation date.
|
|
1008
|
+
required: false
|
|
1009
|
+
schema:
|
|
1010
|
+
type: string
|
|
1011
|
+
format: date-time
|
|
1012
|
+
|
|
1013
|
+
responses:
|
|
1014
|
+
Ping:
|
|
1015
|
+
description: ping successful response.
|
|
1016
|
+
content:
|
|
1017
|
+
application/json:
|
|
1018
|
+
schema:
|
|
1019
|
+
$ref: '#/components/schemas/Ping'
|
|
1020
|
+
|
|
1021
|
+
ServerError:
|
|
1022
|
+
description: Server Error response.
|
|
1023
|
+
content:
|
|
1024
|
+
application/json:
|
|
1025
|
+
schema:
|
|
1026
|
+
$ref: '#/components/schemas/Error'
|
|
1027
|
+
|
|
1028
|
+
NotFound:
|
|
1029
|
+
description: Requested resource not found.
|
|
1030
|
+
|
|
1031
|
+
Conflict:
|
|
1032
|
+
description: Conflict
|
|
1033
|
+
|
|
1034
|
+
PreConditionFailed:
|
|
1035
|
+
description: Version tag mismatch
|
|
1036
|
+
|
|
1037
|
+
BadRequest:
|
|
1038
|
+
description: Bad Request.
|
|
1039
|
+
content:
|
|
1040
|
+
application/json:
|
|
1041
|
+
schema:
|
|
1042
|
+
$ref: '#/components/schemas/Error'
|
|
1043
|
+
|
|
1044
|
+
Created:
|
|
1045
|
+
description: Created.
|
|
1046
|
+
headers:
|
|
1047
|
+
Created-On:
|
|
1048
|
+
$ref: '#/components/headers/Created-On'
|
|
1049
|
+
Updated-On:
|
|
1050
|
+
$ref: '#/components/headers/Updated-On'
|
|
1051
|
+
Last-Modified:
|
|
1052
|
+
$ref: '#/components/headers/Last-Modified'
|
|
1053
|
+
|
|
1054
|
+
AccountObtained:
|
|
1055
|
+
description: Account obtained.
|
|
1056
|
+
content:
|
|
1057
|
+
application/json:
|
|
1058
|
+
schema:
|
|
1059
|
+
$ref: '#/components/schemas/Account'
|
|
1060
|
+
headers:
|
|
1061
|
+
Created-On:
|
|
1062
|
+
$ref: '#/components/headers/Created-On'
|
|
1063
|
+
Updated-On:
|
|
1064
|
+
$ref: '#/components/headers/Updated-On'
|
|
1065
|
+
Last-Modified:
|
|
1066
|
+
$ref: '#/components/headers/Last-Modified'
|
|
1067
|
+
|
|
1068
|
+
headers:
|
|
1069
|
+
Created-On:
|
|
1070
|
+
description: When the resource was created.
|
|
1071
|
+
required: true
|
|
1072
|
+
schema:
|
|
1073
|
+
type: string
|
|
1074
|
+
format: date-time
|
|
1075
|
+
|
|
1076
|
+
Updated-On:
|
|
1077
|
+
description: When the resource was created (all resources are immutable).
|
|
1078
|
+
required: true
|
|
1079
|
+
schema:
|
|
1080
|
+
type: string
|
|
1081
|
+
format: date-time
|
|
1082
|
+
|
|
1083
|
+
Last-Modified:
|
|
1084
|
+
description: When the resource was created (all resources are immutable).
|
|
1085
|
+
required: true
|
|
1086
|
+
schema:
|
|
1087
|
+
type: string
|
|
1088
|
+
format: date-time
|
|
1089
|
+
|
|
1090
|
+
ETag:
|
|
1091
|
+
description: Version information
|
|
1092
|
+
required: true
|
|
1093
|
+
schema:
|
|
1094
|
+
type: string
|