@proveanything/smartlinks 1.8.11 → 1.8.12
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/api/index.d.ts +1 -0
- package/dist/api/index.js +1 -0
- package/dist/api/loyalty.d.ts +65 -0
- package/dist/api/loyalty.js +139 -0
- package/dist/docs/API_SUMMARY.md +254 -1
- package/dist/docs/loyalty.md +333 -0
- package/dist/openapi.yaml +906 -40
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.js +1 -0
- package/dist/types/loyalty.d.ts +145 -0
- package/dist/types/loyalty.js +2 -0
- package/docs/API_SUMMARY.md +254 -1
- package/docs/loyalty.md +333 -0
- package/openapi.yaml +906 -40
- package/package.json +1 -1
package/dist/openapi.yaml
CHANGED
|
@@ -41,6 +41,7 @@ tags:
|
|
|
41
41
|
- name: journeys
|
|
42
42
|
- name: journeysAnalytics
|
|
43
43
|
- name: location
|
|
44
|
+
- name: loyalty
|
|
44
45
|
- name: nfc
|
|
45
46
|
- name: order
|
|
46
47
|
- name: product
|
|
@@ -3993,6 +3994,433 @@ paths:
|
|
|
3993
3994
|
description: Unauthorized
|
|
3994
3995
|
404:
|
|
3995
3996
|
description: Not found
|
|
3997
|
+
/admin/collection/{collectionId}/loyaltyScheme:
|
|
3998
|
+
get:
|
|
3999
|
+
tags:
|
|
4000
|
+
- loyalty
|
|
4001
|
+
summary: loyalty.list
|
|
4002
|
+
operationId: loyalty_list
|
|
4003
|
+
security:
|
|
4004
|
+
- bearerAuth: []
|
|
4005
|
+
parameters:
|
|
4006
|
+
- name: collectionId
|
|
4007
|
+
in: path
|
|
4008
|
+
required: true
|
|
4009
|
+
schema:
|
|
4010
|
+
type: string
|
|
4011
|
+
responses:
|
|
4012
|
+
200:
|
|
4013
|
+
description: Success
|
|
4014
|
+
content:
|
|
4015
|
+
application/json:
|
|
4016
|
+
schema:
|
|
4017
|
+
type: array
|
|
4018
|
+
items:
|
|
4019
|
+
$ref: "#/components/schemas/LoyaltyScheme"
|
|
4020
|
+
400:
|
|
4021
|
+
description: Bad request
|
|
4022
|
+
401:
|
|
4023
|
+
description: Unauthorized
|
|
4024
|
+
404:
|
|
4025
|
+
description: Not found
|
|
4026
|
+
post:
|
|
4027
|
+
tags:
|
|
4028
|
+
- loyalty
|
|
4029
|
+
summary: loyalty.create
|
|
4030
|
+
operationId: loyalty_create
|
|
4031
|
+
security:
|
|
4032
|
+
- bearerAuth: []
|
|
4033
|
+
parameters:
|
|
4034
|
+
- name: collectionId
|
|
4035
|
+
in: path
|
|
4036
|
+
required: true
|
|
4037
|
+
schema:
|
|
4038
|
+
type: string
|
|
4039
|
+
responses:
|
|
4040
|
+
200:
|
|
4041
|
+
description: Success
|
|
4042
|
+
content:
|
|
4043
|
+
application/json:
|
|
4044
|
+
schema:
|
|
4045
|
+
$ref: "#/components/schemas/LoyaltyScheme"
|
|
4046
|
+
400:
|
|
4047
|
+
description: Bad request
|
|
4048
|
+
401:
|
|
4049
|
+
description: Unauthorized
|
|
4050
|
+
404:
|
|
4051
|
+
description: Not found
|
|
4052
|
+
requestBody:
|
|
4053
|
+
required: true
|
|
4054
|
+
content:
|
|
4055
|
+
application/json:
|
|
4056
|
+
schema:
|
|
4057
|
+
$ref: "#/components/schemas/CreateLoyaltySchemeBody"
|
|
4058
|
+
/admin/collection/{collectionId}/loyaltyScheme/{schemeId}:
|
|
4059
|
+
get:
|
|
4060
|
+
tags:
|
|
4061
|
+
- loyalty
|
|
4062
|
+
summary: loyalty.get
|
|
4063
|
+
operationId: loyalty_get
|
|
4064
|
+
security:
|
|
4065
|
+
- bearerAuth: []
|
|
4066
|
+
parameters:
|
|
4067
|
+
- name: collectionId
|
|
4068
|
+
in: path
|
|
4069
|
+
required: true
|
|
4070
|
+
schema:
|
|
4071
|
+
type: string
|
|
4072
|
+
- name: schemeId
|
|
4073
|
+
in: path
|
|
4074
|
+
required: true
|
|
4075
|
+
schema:
|
|
4076
|
+
type: string
|
|
4077
|
+
responses:
|
|
4078
|
+
200:
|
|
4079
|
+
description: Success
|
|
4080
|
+
content:
|
|
4081
|
+
application/json:
|
|
4082
|
+
schema:
|
|
4083
|
+
$ref: "#/components/schemas/LoyaltyScheme"
|
|
4084
|
+
400:
|
|
4085
|
+
description: Bad request
|
|
4086
|
+
401:
|
|
4087
|
+
description: Unauthorized
|
|
4088
|
+
404:
|
|
4089
|
+
description: Not found
|
|
4090
|
+
patch:
|
|
4091
|
+
tags:
|
|
4092
|
+
- loyalty
|
|
4093
|
+
summary: loyalty.update
|
|
4094
|
+
operationId: loyalty_update
|
|
4095
|
+
security:
|
|
4096
|
+
- bearerAuth: []
|
|
4097
|
+
parameters:
|
|
4098
|
+
- name: collectionId
|
|
4099
|
+
in: path
|
|
4100
|
+
required: true
|
|
4101
|
+
schema:
|
|
4102
|
+
type: string
|
|
4103
|
+
- name: schemeId
|
|
4104
|
+
in: path
|
|
4105
|
+
required: true
|
|
4106
|
+
schema:
|
|
4107
|
+
type: string
|
|
4108
|
+
responses:
|
|
4109
|
+
200:
|
|
4110
|
+
description: Success
|
|
4111
|
+
content:
|
|
4112
|
+
application/json:
|
|
4113
|
+
schema:
|
|
4114
|
+
$ref: "#/components/schemas/LoyaltyScheme"
|
|
4115
|
+
400:
|
|
4116
|
+
description: Bad request
|
|
4117
|
+
401:
|
|
4118
|
+
description: Unauthorized
|
|
4119
|
+
404:
|
|
4120
|
+
description: Not found
|
|
4121
|
+
requestBody:
|
|
4122
|
+
required: true
|
|
4123
|
+
content:
|
|
4124
|
+
application/json:
|
|
4125
|
+
schema:
|
|
4126
|
+
$ref: "#/components/schemas/UpdateLoyaltySchemeBody"
|
|
4127
|
+
delete:
|
|
4128
|
+
tags:
|
|
4129
|
+
- loyalty
|
|
4130
|
+
summary: loyalty.remove
|
|
4131
|
+
operationId: loyalty_remove
|
|
4132
|
+
security:
|
|
4133
|
+
- bearerAuth: []
|
|
4134
|
+
parameters:
|
|
4135
|
+
- name: collectionId
|
|
4136
|
+
in: path
|
|
4137
|
+
required: true
|
|
4138
|
+
schema:
|
|
4139
|
+
type: string
|
|
4140
|
+
- name: schemeId
|
|
4141
|
+
in: path
|
|
4142
|
+
required: true
|
|
4143
|
+
schema:
|
|
4144
|
+
type: string
|
|
4145
|
+
responses:
|
|
4146
|
+
200:
|
|
4147
|
+
description: Success
|
|
4148
|
+
content:
|
|
4149
|
+
application/json:
|
|
4150
|
+
schema:
|
|
4151
|
+
$ref: "#/components/schemas/LoyaltyScheme"
|
|
4152
|
+
400:
|
|
4153
|
+
description: Bad request
|
|
4154
|
+
401:
|
|
4155
|
+
description: Unauthorized
|
|
4156
|
+
404:
|
|
4157
|
+
description: Not found
|
|
4158
|
+
/admin/collection/{collectionId}/loyaltyScheme/{schemeId}/earningRule:
|
|
4159
|
+
get:
|
|
4160
|
+
tags:
|
|
4161
|
+
- loyalty
|
|
4162
|
+
summary: loyalty.listEarningRules
|
|
4163
|
+
operationId: loyalty_listEarningRules
|
|
4164
|
+
security:
|
|
4165
|
+
- bearerAuth: []
|
|
4166
|
+
parameters:
|
|
4167
|
+
- name: collectionId
|
|
4168
|
+
in: path
|
|
4169
|
+
required: true
|
|
4170
|
+
schema:
|
|
4171
|
+
type: string
|
|
4172
|
+
- name: schemeId
|
|
4173
|
+
in: path
|
|
4174
|
+
required: true
|
|
4175
|
+
schema:
|
|
4176
|
+
type: string
|
|
4177
|
+
responses:
|
|
4178
|
+
200:
|
|
4179
|
+
description: Success
|
|
4180
|
+
content:
|
|
4181
|
+
application/json:
|
|
4182
|
+
schema:
|
|
4183
|
+
type: array
|
|
4184
|
+
items:
|
|
4185
|
+
$ref: "#/components/schemas/LoyaltyEarningRule"
|
|
4186
|
+
400:
|
|
4187
|
+
description: Bad request
|
|
4188
|
+
401:
|
|
4189
|
+
description: Unauthorized
|
|
4190
|
+
404:
|
|
4191
|
+
description: Not found
|
|
4192
|
+
post:
|
|
4193
|
+
tags:
|
|
4194
|
+
- loyalty
|
|
4195
|
+
summary: loyalty.createEarningRule
|
|
4196
|
+
operationId: loyalty_createEarningRule
|
|
4197
|
+
security:
|
|
4198
|
+
- bearerAuth: []
|
|
4199
|
+
parameters:
|
|
4200
|
+
- name: collectionId
|
|
4201
|
+
in: path
|
|
4202
|
+
required: true
|
|
4203
|
+
schema:
|
|
4204
|
+
type: string
|
|
4205
|
+
- name: schemeId
|
|
4206
|
+
in: path
|
|
4207
|
+
required: true
|
|
4208
|
+
schema:
|
|
4209
|
+
type: string
|
|
4210
|
+
responses:
|
|
4211
|
+
200:
|
|
4212
|
+
description: Success
|
|
4213
|
+
content:
|
|
4214
|
+
application/json:
|
|
4215
|
+
schema:
|
|
4216
|
+
$ref: "#/components/schemas/LoyaltyEarningRule"
|
|
4217
|
+
400:
|
|
4218
|
+
description: Bad request
|
|
4219
|
+
401:
|
|
4220
|
+
description: Unauthorized
|
|
4221
|
+
404:
|
|
4222
|
+
description: Not found
|
|
4223
|
+
requestBody:
|
|
4224
|
+
required: true
|
|
4225
|
+
content:
|
|
4226
|
+
application/json:
|
|
4227
|
+
schema:
|
|
4228
|
+
$ref: "#/components/schemas/CreateLoyaltyEarningRuleBody"
|
|
4229
|
+
/admin/collection/{collectionId}/loyaltyScheme/{schemeId}/earningRule/{ruleId}:
|
|
4230
|
+
get:
|
|
4231
|
+
tags:
|
|
4232
|
+
- loyalty
|
|
4233
|
+
summary: loyalty.getEarningRule
|
|
4234
|
+
operationId: loyalty_getEarningRule
|
|
4235
|
+
security:
|
|
4236
|
+
- bearerAuth: []
|
|
4237
|
+
parameters:
|
|
4238
|
+
- name: collectionId
|
|
4239
|
+
in: path
|
|
4240
|
+
required: true
|
|
4241
|
+
schema:
|
|
4242
|
+
type: string
|
|
4243
|
+
- name: schemeId
|
|
4244
|
+
in: path
|
|
4245
|
+
required: true
|
|
4246
|
+
schema:
|
|
4247
|
+
type: string
|
|
4248
|
+
- name: ruleId
|
|
4249
|
+
in: path
|
|
4250
|
+
required: true
|
|
4251
|
+
schema:
|
|
4252
|
+
type: string
|
|
4253
|
+
responses:
|
|
4254
|
+
200:
|
|
4255
|
+
description: Success
|
|
4256
|
+
content:
|
|
4257
|
+
application/json:
|
|
4258
|
+
schema:
|
|
4259
|
+
$ref: "#/components/schemas/LoyaltyEarningRule"
|
|
4260
|
+
400:
|
|
4261
|
+
description: Bad request
|
|
4262
|
+
401:
|
|
4263
|
+
description: Unauthorized
|
|
4264
|
+
404:
|
|
4265
|
+
description: Not found
|
|
4266
|
+
patch:
|
|
4267
|
+
tags:
|
|
4268
|
+
- loyalty
|
|
4269
|
+
summary: loyalty.updateEarningRule
|
|
4270
|
+
operationId: loyalty_updateEarningRule
|
|
4271
|
+
security:
|
|
4272
|
+
- bearerAuth: []
|
|
4273
|
+
parameters:
|
|
4274
|
+
- name: collectionId
|
|
4275
|
+
in: path
|
|
4276
|
+
required: true
|
|
4277
|
+
schema:
|
|
4278
|
+
type: string
|
|
4279
|
+
- name: schemeId
|
|
4280
|
+
in: path
|
|
4281
|
+
required: true
|
|
4282
|
+
schema:
|
|
4283
|
+
type: string
|
|
4284
|
+
- name: ruleId
|
|
4285
|
+
in: path
|
|
4286
|
+
required: true
|
|
4287
|
+
schema:
|
|
4288
|
+
type: string
|
|
4289
|
+
responses:
|
|
4290
|
+
200:
|
|
4291
|
+
description: Success
|
|
4292
|
+
content:
|
|
4293
|
+
application/json:
|
|
4294
|
+
schema:
|
|
4295
|
+
$ref: "#/components/schemas/LoyaltyEarningRule"
|
|
4296
|
+
400:
|
|
4297
|
+
description: Bad request
|
|
4298
|
+
401:
|
|
4299
|
+
description: Unauthorized
|
|
4300
|
+
404:
|
|
4301
|
+
description: Not found
|
|
4302
|
+
requestBody:
|
|
4303
|
+
required: true
|
|
4304
|
+
content:
|
|
4305
|
+
application/json:
|
|
4306
|
+
schema:
|
|
4307
|
+
$ref: "#/components/schemas/UpdateLoyaltyEarningRuleBody"
|
|
4308
|
+
delete:
|
|
4309
|
+
tags:
|
|
4310
|
+
- loyalty
|
|
4311
|
+
summary: loyalty.removeEarningRule
|
|
4312
|
+
operationId: loyalty_removeEarningRule
|
|
4313
|
+
security:
|
|
4314
|
+
- bearerAuth: []
|
|
4315
|
+
parameters:
|
|
4316
|
+
- name: collectionId
|
|
4317
|
+
in: path
|
|
4318
|
+
required: true
|
|
4319
|
+
schema:
|
|
4320
|
+
type: string
|
|
4321
|
+
- name: schemeId
|
|
4322
|
+
in: path
|
|
4323
|
+
required: true
|
|
4324
|
+
schema:
|
|
4325
|
+
type: string
|
|
4326
|
+
- name: ruleId
|
|
4327
|
+
in: path
|
|
4328
|
+
required: true
|
|
4329
|
+
schema:
|
|
4330
|
+
type: string
|
|
4331
|
+
responses:
|
|
4332
|
+
200:
|
|
4333
|
+
description: Success
|
|
4334
|
+
content:
|
|
4335
|
+
application/json:
|
|
4336
|
+
schema:
|
|
4337
|
+
$ref: "#/components/schemas/LoyaltyEarningRule"
|
|
4338
|
+
400:
|
|
4339
|
+
description: Bad request
|
|
4340
|
+
401:
|
|
4341
|
+
description: Unauthorized
|
|
4342
|
+
404:
|
|
4343
|
+
description: Not found
|
|
4344
|
+
/admin/collection/{collectionId}/loyaltyScheme/{schemeId}/member/{contactId}:
|
|
4345
|
+
get:
|
|
4346
|
+
tags:
|
|
4347
|
+
- loyalty
|
|
4348
|
+
summary: loyalty.getMember
|
|
4349
|
+
operationId: loyalty_getMember
|
|
4350
|
+
security:
|
|
4351
|
+
- bearerAuth: []
|
|
4352
|
+
parameters:
|
|
4353
|
+
- name: collectionId
|
|
4354
|
+
in: path
|
|
4355
|
+
required: true
|
|
4356
|
+
schema:
|
|
4357
|
+
type: string
|
|
4358
|
+
- name: schemeId
|
|
4359
|
+
in: path
|
|
4360
|
+
required: true
|
|
4361
|
+
schema:
|
|
4362
|
+
type: string
|
|
4363
|
+
- name: contactId
|
|
4364
|
+
in: path
|
|
4365
|
+
required: true
|
|
4366
|
+
schema:
|
|
4367
|
+
type: string
|
|
4368
|
+
responses:
|
|
4369
|
+
200:
|
|
4370
|
+
description: Success
|
|
4371
|
+
content:
|
|
4372
|
+
application/json:
|
|
4373
|
+
schema:
|
|
4374
|
+
$ref: "#/components/schemas/LoyaltyMember"
|
|
4375
|
+
400:
|
|
4376
|
+
description: Bad request
|
|
4377
|
+
401:
|
|
4378
|
+
description: Unauthorized
|
|
4379
|
+
404:
|
|
4380
|
+
description: Not found
|
|
4381
|
+
/admin/collection/{collectionId}/loyaltyScheme/{schemeId}/member/{contactId}/transaction:
|
|
4382
|
+
post:
|
|
4383
|
+
tags:
|
|
4384
|
+
- loyalty
|
|
4385
|
+
summary: Manually award or deduct points for a contact.
|
|
4386
|
+
operationId: loyalty_recordTransaction
|
|
4387
|
+
security:
|
|
4388
|
+
- bearerAuth: []
|
|
4389
|
+
parameters:
|
|
4390
|
+
- name: collectionId
|
|
4391
|
+
in: path
|
|
4392
|
+
required: true
|
|
4393
|
+
schema:
|
|
4394
|
+
type: string
|
|
4395
|
+
- name: schemeId
|
|
4396
|
+
in: path
|
|
4397
|
+
required: true
|
|
4398
|
+
schema:
|
|
4399
|
+
type: string
|
|
4400
|
+
- name: contactId
|
|
4401
|
+
in: path
|
|
4402
|
+
required: true
|
|
4403
|
+
schema:
|
|
4404
|
+
type: string
|
|
4405
|
+
responses:
|
|
4406
|
+
200:
|
|
4407
|
+
description: Success
|
|
4408
|
+
content:
|
|
4409
|
+
application/json:
|
|
4410
|
+
schema:
|
|
4411
|
+
$ref: "#/components/schemas/LoyaltyTransactionResult"
|
|
4412
|
+
400:
|
|
4413
|
+
description: Bad request
|
|
4414
|
+
401:
|
|
4415
|
+
description: Unauthorized
|
|
4416
|
+
404:
|
|
4417
|
+
description: Not found
|
|
4418
|
+
requestBody:
|
|
4419
|
+
required: true
|
|
4420
|
+
content:
|
|
4421
|
+
application/json:
|
|
4422
|
+
schema:
|
|
4423
|
+
$ref: "#/components/schemas/RecordLoyaltyTransactionBody"
|
|
3996
4424
|
/admin/collection/{collectionId}/orders:
|
|
3997
4425
|
get:
|
|
3998
4426
|
tags:
|
|
@@ -8115,9 +8543,170 @@ paths:
|
|
|
8115
8543
|
/public/collection/{collectionId}/interactions/by-user:
|
|
8116
8544
|
post:
|
|
8117
8545
|
tags:
|
|
8118
|
-
- interactions
|
|
8119
|
-
summary: interactions.publicMyInteractions
|
|
8120
|
-
operationId: interactions_publicMyInteractions
|
|
8546
|
+
- interactions
|
|
8547
|
+
summary: interactions.publicMyInteractions
|
|
8548
|
+
operationId: interactions_publicMyInteractions
|
|
8549
|
+
security: []
|
|
8550
|
+
parameters:
|
|
8551
|
+
- name: collectionId
|
|
8552
|
+
in: path
|
|
8553
|
+
required: true
|
|
8554
|
+
schema:
|
|
8555
|
+
type: string
|
|
8556
|
+
responses:
|
|
8557
|
+
200:
|
|
8558
|
+
description: Success
|
|
8559
|
+
content:
|
|
8560
|
+
application/json:
|
|
8561
|
+
schema:
|
|
8562
|
+
type: array
|
|
8563
|
+
items:
|
|
8564
|
+
$ref: "#/components/schemas/InteractionEventRow"
|
|
8565
|
+
400:
|
|
8566
|
+
description: Bad request
|
|
8567
|
+
401:
|
|
8568
|
+
description: Unauthorized
|
|
8569
|
+
404:
|
|
8570
|
+
description: Not found
|
|
8571
|
+
requestBody:
|
|
8572
|
+
required: true
|
|
8573
|
+
content:
|
|
8574
|
+
application/json:
|
|
8575
|
+
schema:
|
|
8576
|
+
$ref: "#/components/schemas/PublicInteractionsByUserRequest"
|
|
8577
|
+
/public/collection/{collectionId}/interactions/counts-by-outcome:
|
|
8578
|
+
post:
|
|
8579
|
+
tags:
|
|
8580
|
+
- interactions
|
|
8581
|
+
summary: interactions.publicCountsByOutcome
|
|
8582
|
+
operationId: interactions_publicCountsByOutcome
|
|
8583
|
+
security: []
|
|
8584
|
+
parameters:
|
|
8585
|
+
- name: collectionId
|
|
8586
|
+
in: path
|
|
8587
|
+
required: true
|
|
8588
|
+
schema:
|
|
8589
|
+
type: string
|
|
8590
|
+
responses:
|
|
8591
|
+
200:
|
|
8592
|
+
description: Success
|
|
8593
|
+
content:
|
|
8594
|
+
application/json:
|
|
8595
|
+
schema:
|
|
8596
|
+
type: array
|
|
8597
|
+
items:
|
|
8598
|
+
$ref: "#/components/schemas/OutcomeCount"
|
|
8599
|
+
400:
|
|
8600
|
+
description: Bad request
|
|
8601
|
+
401:
|
|
8602
|
+
description: Unauthorized
|
|
8603
|
+
404:
|
|
8604
|
+
description: Not found
|
|
8605
|
+
requestBody:
|
|
8606
|
+
required: true
|
|
8607
|
+
content:
|
|
8608
|
+
application/json:
|
|
8609
|
+
schema:
|
|
8610
|
+
$ref: "#/components/schemas/PublicInteractionsCountsByOutcomeRequest"
|
|
8611
|
+
/public/collection/{collectionId}/interactions/{id}:
|
|
8612
|
+
get:
|
|
8613
|
+
tags:
|
|
8614
|
+
- interactions
|
|
8615
|
+
summary: interactions.publicGet
|
|
8616
|
+
operationId: interactions_publicGet
|
|
8617
|
+
security: []
|
|
8618
|
+
parameters:
|
|
8619
|
+
- name: collectionId
|
|
8620
|
+
in: path
|
|
8621
|
+
required: true
|
|
8622
|
+
schema:
|
|
8623
|
+
type: string
|
|
8624
|
+
- name: id
|
|
8625
|
+
in: path
|
|
8626
|
+
required: true
|
|
8627
|
+
schema:
|
|
8628
|
+
type: string
|
|
8629
|
+
responses:
|
|
8630
|
+
200:
|
|
8631
|
+
description: Success
|
|
8632
|
+
content:
|
|
8633
|
+
application/json:
|
|
8634
|
+
schema:
|
|
8635
|
+
$ref: "#/components/schemas/InteractionTypeRecord"
|
|
8636
|
+
400:
|
|
8637
|
+
description: Bad request
|
|
8638
|
+
401:
|
|
8639
|
+
description: Unauthorized
|
|
8640
|
+
404:
|
|
8641
|
+
description: Not found
|
|
8642
|
+
/public/collection/{collectionId}/interactions/{qs}:
|
|
8643
|
+
get:
|
|
8644
|
+
tags:
|
|
8645
|
+
- interactions
|
|
8646
|
+
summary: interactions.publicList
|
|
8647
|
+
operationId: interactions_publicList
|
|
8648
|
+
security: []
|
|
8649
|
+
parameters:
|
|
8650
|
+
- name: collectionId
|
|
8651
|
+
in: path
|
|
8652
|
+
required: true
|
|
8653
|
+
schema:
|
|
8654
|
+
type: string
|
|
8655
|
+
- name: qs
|
|
8656
|
+
in: path
|
|
8657
|
+
required: true
|
|
8658
|
+
schema:
|
|
8659
|
+
type: string
|
|
8660
|
+
responses:
|
|
8661
|
+
200:
|
|
8662
|
+
description: Success
|
|
8663
|
+
content:
|
|
8664
|
+
application/json:
|
|
8665
|
+
schema:
|
|
8666
|
+
$ref: "#/components/schemas/InteractionTypeList"
|
|
8667
|
+
400:
|
|
8668
|
+
description: Bad request
|
|
8669
|
+
401:
|
|
8670
|
+
description: Unauthorized
|
|
8671
|
+
404:
|
|
8672
|
+
description: Not found
|
|
8673
|
+
/public/collection/{collectionId}/location/{locationId}:
|
|
8674
|
+
get:
|
|
8675
|
+
tags:
|
|
8676
|
+
- location
|
|
8677
|
+
summary: "Admin: Search locations to pick during setup (combines collection + global) GET /admin/collection/:collectionId/location"
|
|
8678
|
+
operationId: location_getPublicForCollection
|
|
8679
|
+
security: []
|
|
8680
|
+
parameters:
|
|
8681
|
+
- name: collectionId
|
|
8682
|
+
in: path
|
|
8683
|
+
required: true
|
|
8684
|
+
schema:
|
|
8685
|
+
type: string
|
|
8686
|
+
- name: locationId
|
|
8687
|
+
in: path
|
|
8688
|
+
required: true
|
|
8689
|
+
schema:
|
|
8690
|
+
type: string
|
|
8691
|
+
responses:
|
|
8692
|
+
200:
|
|
8693
|
+
description: Success
|
|
8694
|
+
content:
|
|
8695
|
+
application/json:
|
|
8696
|
+
schema:
|
|
8697
|
+
$ref: "#/components/schemas/Location"
|
|
8698
|
+
400:
|
|
8699
|
+
description: Bad request
|
|
8700
|
+
401:
|
|
8701
|
+
description: Unauthorized
|
|
8702
|
+
404:
|
|
8703
|
+
description: Not found
|
|
8704
|
+
/public/collection/{collectionId}/loyaltyScheme:
|
|
8705
|
+
get:
|
|
8706
|
+
tags:
|
|
8707
|
+
- loyalty
|
|
8708
|
+
summary: List active schemes for a collection.
|
|
8709
|
+
operationId: loyalty_publicList
|
|
8121
8710
|
security: []
|
|
8122
8711
|
parameters:
|
|
8123
8712
|
- name: collectionId
|
|
@@ -8133,25 +8722,19 @@ paths:
|
|
|
8133
8722
|
schema:
|
|
8134
8723
|
type: array
|
|
8135
8724
|
items:
|
|
8136
|
-
$ref: "#/components/schemas/
|
|
8725
|
+
$ref: "#/components/schemas/LoyaltyScheme"
|
|
8137
8726
|
400:
|
|
8138
8727
|
description: Bad request
|
|
8139
8728
|
401:
|
|
8140
8729
|
description: Unauthorized
|
|
8141
8730
|
404:
|
|
8142
8731
|
description: Not found
|
|
8143
|
-
|
|
8144
|
-
|
|
8145
|
-
content:
|
|
8146
|
-
application/json:
|
|
8147
|
-
schema:
|
|
8148
|
-
$ref: "#/components/schemas/PublicInteractionsByUserRequest"
|
|
8149
|
-
/public/collection/{collectionId}/interactions/counts-by-outcome:
|
|
8150
|
-
post:
|
|
8732
|
+
/public/collection/{collectionId}/loyaltyScheme/me:
|
|
8733
|
+
get:
|
|
8151
8734
|
tags:
|
|
8152
|
-
-
|
|
8153
|
-
summary:
|
|
8154
|
-
operationId:
|
|
8735
|
+
- loyalty
|
|
8736
|
+
summary: "List active earning rules for a scheme — useful for showing \"how to earn\" in a loyalty UI."
|
|
8737
|
+
operationId: loyalty_publicGetMe
|
|
8155
8738
|
security: []
|
|
8156
8739
|
parameters:
|
|
8157
8740
|
- name: collectionId
|
|
@@ -8167,25 +8750,19 @@ paths:
|
|
|
8167
8750
|
schema:
|
|
8168
8751
|
type: array
|
|
8169
8752
|
items:
|
|
8170
|
-
$ref: "#/components/schemas/
|
|
8753
|
+
$ref: "#/components/schemas/LoyaltySchemeWithMembership"
|
|
8171
8754
|
400:
|
|
8172
8755
|
description: Bad request
|
|
8173
8756
|
401:
|
|
8174
8757
|
description: Unauthorized
|
|
8175
8758
|
404:
|
|
8176
8759
|
description: Not found
|
|
8177
|
-
|
|
8178
|
-
required: true
|
|
8179
|
-
content:
|
|
8180
|
-
application/json:
|
|
8181
|
-
schema:
|
|
8182
|
-
$ref: "#/components/schemas/PublicInteractionsCountsByOutcomeRequest"
|
|
8183
|
-
/public/collection/{collectionId}/interactions/{id}:
|
|
8760
|
+
/public/collection/{collectionId}/loyaltyScheme/{schemeId}:
|
|
8184
8761
|
get:
|
|
8185
8762
|
tags:
|
|
8186
|
-
-
|
|
8187
|
-
summary:
|
|
8188
|
-
operationId:
|
|
8763
|
+
- loyalty
|
|
8764
|
+
summary: List active schemes for a collection.
|
|
8765
|
+
operationId: loyalty_publicGet
|
|
8189
8766
|
security: []
|
|
8190
8767
|
parameters:
|
|
8191
8768
|
- name: collectionId
|
|
@@ -8193,7 +8770,7 @@ paths:
|
|
|
8193
8770
|
required: true
|
|
8194
8771
|
schema:
|
|
8195
8772
|
type: string
|
|
8196
|
-
- name:
|
|
8773
|
+
- name: schemeId
|
|
8197
8774
|
in: path
|
|
8198
8775
|
required: true
|
|
8199
8776
|
schema:
|
|
@@ -8204,19 +8781,19 @@ paths:
|
|
|
8204
8781
|
content:
|
|
8205
8782
|
application/json:
|
|
8206
8783
|
schema:
|
|
8207
|
-
$ref: "#/components/schemas/
|
|
8784
|
+
$ref: "#/components/schemas/LoyaltyScheme"
|
|
8208
8785
|
400:
|
|
8209
8786
|
description: Bad request
|
|
8210
8787
|
401:
|
|
8211
8788
|
description: Unauthorized
|
|
8212
8789
|
404:
|
|
8213
8790
|
description: Not found
|
|
8214
|
-
/public/collection/{collectionId}/
|
|
8791
|
+
/public/collection/{collectionId}/loyaltyScheme/{schemeId}/earningRule:
|
|
8215
8792
|
get:
|
|
8216
8793
|
tags:
|
|
8217
|
-
-
|
|
8218
|
-
summary:
|
|
8219
|
-
operationId:
|
|
8794
|
+
- loyalty
|
|
8795
|
+
summary: List active schemes for a collection.
|
|
8796
|
+
operationId: loyalty_publicListEarningRules
|
|
8220
8797
|
security: []
|
|
8221
8798
|
parameters:
|
|
8222
8799
|
- name: collectionId
|
|
@@ -8224,7 +8801,7 @@ paths:
|
|
|
8224
8801
|
required: true
|
|
8225
8802
|
schema:
|
|
8226
8803
|
type: string
|
|
8227
|
-
- name:
|
|
8804
|
+
- name: schemeId
|
|
8228
8805
|
in: path
|
|
8229
8806
|
required: true
|
|
8230
8807
|
schema:
|
|
@@ -8235,19 +8812,21 @@ paths:
|
|
|
8235
8812
|
content:
|
|
8236
8813
|
application/json:
|
|
8237
8814
|
schema:
|
|
8238
|
-
|
|
8815
|
+
type: array
|
|
8816
|
+
items:
|
|
8817
|
+
$ref: "#/components/schemas/LoyaltyEarningRule"
|
|
8239
8818
|
400:
|
|
8240
8819
|
description: Bad request
|
|
8241
8820
|
401:
|
|
8242
8821
|
description: Unauthorized
|
|
8243
8822
|
404:
|
|
8244
8823
|
description: Not found
|
|
8245
|
-
/public/collection/{collectionId}/
|
|
8824
|
+
/public/collection/{collectionId}/loyaltyScheme/{schemeId}/member/me:
|
|
8246
8825
|
get:
|
|
8247
8826
|
tags:
|
|
8248
|
-
-
|
|
8249
|
-
summary: "
|
|
8250
|
-
operationId:
|
|
8827
|
+
- loyalty
|
|
8828
|
+
summary: "Get all active schemes with the caller's membership embedded in each."
|
|
8829
|
+
operationId: loyalty_publicGetMine
|
|
8251
8830
|
security: []
|
|
8252
8831
|
parameters:
|
|
8253
8832
|
- name: collectionId
|
|
@@ -8255,7 +8834,7 @@ paths:
|
|
|
8255
8834
|
required: true
|
|
8256
8835
|
schema:
|
|
8257
8836
|
type: string
|
|
8258
|
-
- name:
|
|
8837
|
+
- name: schemeId
|
|
8259
8838
|
in: path
|
|
8260
8839
|
required: true
|
|
8261
8840
|
schema:
|
|
@@ -8266,7 +8845,7 @@ paths:
|
|
|
8266
8845
|
content:
|
|
8267
8846
|
application/json:
|
|
8268
8847
|
schema:
|
|
8269
|
-
$ref: "#/components/schemas/
|
|
8848
|
+
$ref: "#/components/schemas/LoyaltyMember"
|
|
8270
8849
|
400:
|
|
8271
8850
|
description: Bad request
|
|
8272
8851
|
401:
|
|
@@ -16572,6 +17151,293 @@ components:
|
|
|
16572
17151
|
required:
|
|
16573
17152
|
- items
|
|
16574
17153
|
- count
|
|
17154
|
+
LoyaltyScheme:
|
|
17155
|
+
type: object
|
|
17156
|
+
properties:
|
|
17157
|
+
id:
|
|
17158
|
+
type: string
|
|
17159
|
+
orgId:
|
|
17160
|
+
type: string
|
|
17161
|
+
collectionId:
|
|
17162
|
+
type: string
|
|
17163
|
+
name:
|
|
17164
|
+
type: string
|
|
17165
|
+
type:
|
|
17166
|
+
type: string
|
|
17167
|
+
active:
|
|
17168
|
+
type: boolean
|
|
17169
|
+
createdAt:
|
|
17170
|
+
type: string
|
|
17171
|
+
updatedAt:
|
|
17172
|
+
type: string
|
|
17173
|
+
deletedAt:
|
|
17174
|
+
type: string
|
|
17175
|
+
data:
|
|
17176
|
+
$ref: "#/components/schemas/DataBlock"
|
|
17177
|
+
owner:
|
|
17178
|
+
$ref: "#/components/schemas/DataBlock"
|
|
17179
|
+
admin:
|
|
17180
|
+
$ref: "#/components/schemas/DataBlock"
|
|
17181
|
+
required:
|
|
17182
|
+
- id
|
|
17183
|
+
- orgId
|
|
17184
|
+
- collectionId
|
|
17185
|
+
- name
|
|
17186
|
+
- type
|
|
17187
|
+
- active
|
|
17188
|
+
- createdAt
|
|
17189
|
+
- updatedAt
|
|
17190
|
+
- deletedAt
|
|
17191
|
+
- data
|
|
17192
|
+
LoyaltyMember:
|
|
17193
|
+
type: object
|
|
17194
|
+
properties:
|
|
17195
|
+
id:
|
|
17196
|
+
type: string
|
|
17197
|
+
orgId:
|
|
17198
|
+
type: string
|
|
17199
|
+
collectionId:
|
|
17200
|
+
type: string
|
|
17201
|
+
schemeId:
|
|
17202
|
+
type: string
|
|
17203
|
+
contactId:
|
|
17204
|
+
type: string
|
|
17205
|
+
userId:
|
|
17206
|
+
type: string
|
|
17207
|
+
balance:
|
|
17208
|
+
type: number
|
|
17209
|
+
lifetimePoints:
|
|
17210
|
+
type: number
|
|
17211
|
+
createdAt:
|
|
17212
|
+
type: string
|
|
17213
|
+
updatedAt:
|
|
17214
|
+
type: string
|
|
17215
|
+
data:
|
|
17216
|
+
$ref: "#/components/schemas/DataBlock"
|
|
17217
|
+
owner:
|
|
17218
|
+
$ref: "#/components/schemas/DataBlock"
|
|
17219
|
+
admin:
|
|
17220
|
+
$ref: "#/components/schemas/DataBlock"
|
|
17221
|
+
required:
|
|
17222
|
+
- id
|
|
17223
|
+
- orgId
|
|
17224
|
+
- collectionId
|
|
17225
|
+
- schemeId
|
|
17226
|
+
- contactId
|
|
17227
|
+
- userId
|
|
17228
|
+
- balance
|
|
17229
|
+
- lifetimePoints
|
|
17230
|
+
- createdAt
|
|
17231
|
+
- updatedAt
|
|
17232
|
+
- data
|
|
17233
|
+
LoyaltyTransaction:
|
|
17234
|
+
type: object
|
|
17235
|
+
properties:
|
|
17236
|
+
id:
|
|
17237
|
+
type: string
|
|
17238
|
+
orgId:
|
|
17239
|
+
type: string
|
|
17240
|
+
collectionId:
|
|
17241
|
+
type: string
|
|
17242
|
+
schemeId:
|
|
17243
|
+
type: string
|
|
17244
|
+
memberId:
|
|
17245
|
+
type: string
|
|
17246
|
+
points:
|
|
17247
|
+
type: number
|
|
17248
|
+
reason:
|
|
17249
|
+
type: string
|
|
17250
|
+
idempotencyKey:
|
|
17251
|
+
type: string
|
|
17252
|
+
metadata:
|
|
17253
|
+
$ref: "#/components/schemas/DataBlock"
|
|
17254
|
+
createdAt:
|
|
17255
|
+
type: string
|
|
17256
|
+
required:
|
|
17257
|
+
- id
|
|
17258
|
+
- orgId
|
|
17259
|
+
- collectionId
|
|
17260
|
+
- schemeId
|
|
17261
|
+
- memberId
|
|
17262
|
+
- points
|
|
17263
|
+
- reason
|
|
17264
|
+
- idempotencyKey
|
|
17265
|
+
- metadata
|
|
17266
|
+
- createdAt
|
|
17267
|
+
LoyaltyEarningRule:
|
|
17268
|
+
type: object
|
|
17269
|
+
properties:
|
|
17270
|
+
id:
|
|
17271
|
+
type: string
|
|
17272
|
+
orgId:
|
|
17273
|
+
type: string
|
|
17274
|
+
collectionId:
|
|
17275
|
+
type: string
|
|
17276
|
+
schemeId:
|
|
17277
|
+
type: string
|
|
17278
|
+
interactionId:
|
|
17279
|
+
type: string
|
|
17280
|
+
points:
|
|
17281
|
+
type: number
|
|
17282
|
+
conditions:
|
|
17283
|
+
type: object
|
|
17284
|
+
additionalProperties:
|
|
17285
|
+
type: string
|
|
17286
|
+
maxPerContact:
|
|
17287
|
+
type: number
|
|
17288
|
+
cooldownHours:
|
|
17289
|
+
type: number
|
|
17290
|
+
active:
|
|
17291
|
+
type: boolean
|
|
17292
|
+
createdAt:
|
|
17293
|
+
type: string
|
|
17294
|
+
updatedAt:
|
|
17295
|
+
type: string
|
|
17296
|
+
data:
|
|
17297
|
+
$ref: "#/components/schemas/DataBlock"
|
|
17298
|
+
required:
|
|
17299
|
+
- id
|
|
17300
|
+
- orgId
|
|
17301
|
+
- collectionId
|
|
17302
|
+
- schemeId
|
|
17303
|
+
- interactionId
|
|
17304
|
+
- points
|
|
17305
|
+
- conditions
|
|
17306
|
+
- maxPerContact
|
|
17307
|
+
- cooldownHours
|
|
17308
|
+
- active
|
|
17309
|
+
- createdAt
|
|
17310
|
+
- updatedAt
|
|
17311
|
+
- data
|
|
17312
|
+
LoyaltySchemeWithMembership:
|
|
17313
|
+
type: object
|
|
17314
|
+
properties:
|
|
17315
|
+
member:
|
|
17316
|
+
type: string
|
|
17317
|
+
enum:
|
|
17318
|
+
- owner
|
|
17319
|
+
- admin
|
|
17320
|
+
required:
|
|
17321
|
+
- member
|
|
17322
|
+
LoyaltyTransactionResult:
|
|
17323
|
+
type: object
|
|
17324
|
+
properties:
|
|
17325
|
+
member:
|
|
17326
|
+
$ref: "#/components/schemas/LoyaltyMember"
|
|
17327
|
+
transaction:
|
|
17328
|
+
$ref: "#/components/schemas/LoyaltyTransaction"
|
|
17329
|
+
required:
|
|
17330
|
+
- member
|
|
17331
|
+
- transaction
|
|
17332
|
+
LoyaltyPaginationParams:
|
|
17333
|
+
type: object
|
|
17334
|
+
properties:
|
|
17335
|
+
limit:
|
|
17336
|
+
type: number
|
|
17337
|
+
offset:
|
|
17338
|
+
type: number
|
|
17339
|
+
LoyaltyPaginatedResult:
|
|
17340
|
+
type: object
|
|
17341
|
+
properties:
|
|
17342
|
+
items:
|
|
17343
|
+
type: array
|
|
17344
|
+
items:
|
|
17345
|
+
$ref: "#/components/schemas/T"
|
|
17346
|
+
limit:
|
|
17347
|
+
type: number
|
|
17348
|
+
offset:
|
|
17349
|
+
type: number
|
|
17350
|
+
required:
|
|
17351
|
+
- items
|
|
17352
|
+
- limit
|
|
17353
|
+
- offset
|
|
17354
|
+
CreateLoyaltySchemeBody:
|
|
17355
|
+
type: object
|
|
17356
|
+
properties:
|
|
17357
|
+
name:
|
|
17358
|
+
type: string
|
|
17359
|
+
type:
|
|
17360
|
+
type: string
|
|
17361
|
+
active:
|
|
17362
|
+
type: boolean
|
|
17363
|
+
data:
|
|
17364
|
+
$ref: "#/components/schemas/DataBlock"
|
|
17365
|
+
owner:
|
|
17366
|
+
$ref: "#/components/schemas/DataBlock"
|
|
17367
|
+
admin:
|
|
17368
|
+
$ref: "#/components/schemas/DataBlock"
|
|
17369
|
+
required:
|
|
17370
|
+
- name
|
|
17371
|
+
- type
|
|
17372
|
+
UpdateLoyaltySchemeBody:
|
|
17373
|
+
type: object
|
|
17374
|
+
properties:
|
|
17375
|
+
name:
|
|
17376
|
+
type: string
|
|
17377
|
+
type:
|
|
17378
|
+
type: string
|
|
17379
|
+
active:
|
|
17380
|
+
type: boolean
|
|
17381
|
+
data:
|
|
17382
|
+
$ref: "#/components/schemas/DataBlock"
|
|
17383
|
+
owner:
|
|
17384
|
+
$ref: "#/components/schemas/DataBlock"
|
|
17385
|
+
admin:
|
|
17386
|
+
$ref: "#/components/schemas/DataBlock"
|
|
17387
|
+
CreateLoyaltyEarningRuleBody:
|
|
17388
|
+
type: object
|
|
17389
|
+
properties:
|
|
17390
|
+
interactionId:
|
|
17391
|
+
type: string
|
|
17392
|
+
points:
|
|
17393
|
+
type: number
|
|
17394
|
+
conditions:
|
|
17395
|
+
type: object
|
|
17396
|
+
additionalProperties:
|
|
17397
|
+
type: string
|
|
17398
|
+
maxPerContact:
|
|
17399
|
+
type: number
|
|
17400
|
+
cooldownHours:
|
|
17401
|
+
type: number
|
|
17402
|
+
active:
|
|
17403
|
+
type: boolean
|
|
17404
|
+
data:
|
|
17405
|
+
$ref: "#/components/schemas/DataBlock"
|
|
17406
|
+
required:
|
|
17407
|
+
- interactionId
|
|
17408
|
+
- points
|
|
17409
|
+
UpdateLoyaltyEarningRuleBody:
|
|
17410
|
+
type: object
|
|
17411
|
+
properties:
|
|
17412
|
+
points:
|
|
17413
|
+
type: number
|
|
17414
|
+
conditions:
|
|
17415
|
+
type: object
|
|
17416
|
+
additionalProperties:
|
|
17417
|
+
type: string
|
|
17418
|
+
maxPerContact:
|
|
17419
|
+
type: number
|
|
17420
|
+
cooldownHours:
|
|
17421
|
+
type: number
|
|
17422
|
+
active:
|
|
17423
|
+
type: boolean
|
|
17424
|
+
data:
|
|
17425
|
+
$ref: "#/components/schemas/DataBlock"
|
|
17426
|
+
RecordLoyaltyTransactionBody:
|
|
17427
|
+
type: object
|
|
17428
|
+
properties:
|
|
17429
|
+
points:
|
|
17430
|
+
type: number
|
|
17431
|
+
reason:
|
|
17432
|
+
type: string
|
|
17433
|
+
idempotencyKey:
|
|
17434
|
+
type: string
|
|
17435
|
+
metadata:
|
|
17436
|
+
$ref: "#/components/schemas/DataBlock"
|
|
17437
|
+
userId:
|
|
17438
|
+
type: string
|
|
17439
|
+
required:
|
|
17440
|
+
- points
|
|
16575
17441
|
NfcTagInfo:
|
|
16576
17442
|
type: object
|
|
16577
17443
|
properties:
|