Skip to content

Commit 5fa22b3

Browse files
committed
TASK: Updating RAML types, Postman and OAS definition
1 parent 7fe8fbd commit 5fa22b3

21 files changed

+1044
-245
lines changed

oas/api/openapi.yaml

Lines changed: 127 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37317,6 +37317,7 @@ paths:
3731737317

3731837318
- If the Standalone Price has the same price scope as an existing Standalone Price, a [DuplicateStandalonePriceScope](ctp:api:type:DuplicateStandalonePriceScopeError) error is returned.
3731937319
- If the Standalone Price has overlapping validity periods within the same price scope, a [OverlappingStandalonePriceValidity](ctp:api:type:OverlappingStandalonePriceValidityError) error is returned. A Price without validity period does not conflict with a Price defined for a time period.
37320+
- If a modification is already in progress for the exact combination of SKU and price scope fields, an [ExactLockConflict](ctp:api:type:ExactLockConflictError) or [ValidityLockConflict](ctp:api:type:ValidityLockConflictError) error is returned.
3732037321
parameters:
3732137322
- name: expand
3732237323
in: query
@@ -37437,6 +37438,8 @@ paths:
3743737438
- oauth_2_0:
3743837439
- "manage_standalone_prices:{projectKey}"
3743937440
operationId: ByProjectKeyStandalonePricesKeyByKeyPost
37441+
description: |-
37442+
If a modification is already in progress for the exact combination of SKU and price scope fields, an [ExactLockConflict](ctp:api:type:ExactLockConflictError) or [ValidityLockConflict](ctp:api:type:ValidityLockConflictError) error is returned.
3744037443
parameters:
3744137444
- name: expand
3744237445
in: query
@@ -37609,6 +37612,8 @@ paths:
3760937612
- oauth_2_0:
3761037613
- "manage_standalone_prices:{projectKey}"
3761137614
operationId: ByProjectKeyStandalonePricesByIDPost
37615+
description: |-
37616+
If a modification is already in progress for the exact combination of SKU and price scope fields, an [ExactLockConflict](ctp:api:type:ExactLockConflictError) or [ValidityLockConflict](ctp:api:type:ValidityLockConflictError) error is returned.
3761237617
parameters:
3761337618
- name: expand
3761437619
in: query
@@ -50477,6 +50482,7 @@ components:
5047750482
EnumKeyDoesNotExist: '#/components/schemas/EnumKeyDoesNotExistError'
5047850483
EnumValueIsUsed: '#/components/schemas/EnumValueIsUsedError'
5047950484
EnumValuesMustMatch: '#/components/schemas/EnumValuesMustMatchError'
50485+
ExactLockConflict: '#/components/schemas/ExactLockConflictError'
5048050486
ExpiredCustomerEmailToken: '#/components/schemas/ExpiredCustomerEmailTokenError'
5048150487
ExpiredCustomerPasswordToken: '#/components/schemas/ExpiredCustomerPasswordTokenError'
5048250488
ExtensionBadResponse: '#/components/schemas/ExtensionBadResponseError'
@@ -50534,6 +50540,7 @@ components:
5053450540
ShippingMethodDoesNotMatchCart: '#/components/schemas/ShippingMethodDoesNotMatchCartError'
5053550541
StoreCartDiscountsLimitReached: '#/components/schemas/StoreCartDiscountsLimitReachedError'
5053650542
SyntaxError: '#/components/schemas/SyntaxErrorError'
50543+
ValidityLockConflict: '#/components/schemas/ValidityLockConflictError'
5053750544
required:
5053850545
- //
5053950546
- code
@@ -50560,6 +50567,40 @@ components:
5056050567
type: "array"
5056150568
items:
5056250569
$ref: '#/components/schemas/ErrorObject'
50570+
ExactLockConflictError:
50571+
allOf:
50572+
- $ref: '#/components/schemas/ErrorObject'
50573+
- type: "object"
50574+
required:
50575+
- code
50576+
- currency
50577+
- message
50578+
- sku
50579+
properties:
50580+
code:
50581+
type: "string"
50582+
message:
50583+
type: "string"
50584+
sku:
50585+
type: "string"
50586+
currency:
50587+
$ref: '#/components/schemas/CurrencyCode'
50588+
country:
50589+
$ref: '#/components/schemas/CountryCode'
50590+
customerGroup:
50591+
$ref: '#/components/schemas/CustomerGroupResourceIdentifier'
50592+
channel:
50593+
$ref: '#/components/schemas/ChannelResourceIdentifier'
50594+
validFrom:
50595+
type: "string"
50596+
format: "datetime"
50597+
validUntil:
50598+
type: "string"
50599+
format: "datetime"
50600+
recurrencePolicy:
50601+
$ref: '#/components/schemas/RecurrencePolicyReference'
50602+
additionalProperties:
50603+
type: "string"
5056350604
ExpiredCustomerEmailTokenError:
5056450605
allOf:
5056550606
- $ref: '#/components/schemas/ErrorObject'
@@ -51536,6 +51577,34 @@ components:
5153651577
type: "string"
5153751578
additionalProperties:
5153851579
type: "string"
51580+
ValidityLockConflictError:
51581+
allOf:
51582+
- $ref: '#/components/schemas/ErrorObject'
51583+
- type: "object"
51584+
required:
51585+
- code
51586+
- currency
51587+
- message
51588+
- sku
51589+
properties:
51590+
code:
51591+
type: "string"
51592+
message:
51593+
type: "string"
51594+
sku:
51595+
type: "string"
51596+
currency:
51597+
$ref: '#/components/schemas/CurrencyCode'
51598+
country:
51599+
$ref: '#/components/schemas/CountryCode'
51600+
customerGroup:
51601+
$ref: '#/components/schemas/CustomerGroupResourceIdentifier'
51602+
channel:
51603+
$ref: '#/components/schemas/ChannelResourceIdentifier'
51604+
recurrencePolicy:
51605+
$ref: '#/components/schemas/RecurrencePolicyResourceIdentifier'
51606+
additionalProperties:
51607+
type: "string"
5153951608
VariantValues:
5154051609
type: "object"
5154151610
required:
@@ -51978,6 +52047,7 @@ components:
5197852047
EnumKeyDoesNotExist: '#/components/schemas/GraphQLEnumKeyDoesNotExistError'
5197952048
EnumValueIsUsed: '#/components/schemas/GraphQLEnumValueIsUsedError'
5198052049
EnumValuesMustMatch: '#/components/schemas/GraphQLEnumValuesMustMatchError'
52050+
ExactLockConflict: '#/components/schemas/GraphQLExactLockConflictError'
5198152051
ExpiredCustomerEmailToken: '#/components/schemas/GraphQLExpiredCustomerEmailTokenError'
5198252052
ExpiredCustomerPasswordToken: '#/components/schemas/GraphQLExpiredCustomerPasswordTokenError'
5198352053
ExtensionBadResponse: '#/components/schemas/GraphQLExtensionBadResponseError'
@@ -52035,6 +52105,7 @@ components:
5203552105
ShippingMethodDoesNotMatchCart: '#/components/schemas/GraphQLShippingMethodDoesNotMatchCartError'
5203652106
StoreCartDiscountsLimitReached: '#/components/schemas/GraphQLStoreCartDiscountsLimitReachedError'
5203752107
SyntaxError: '#/components/schemas/GraphQLSyntaxErrorError'
52108+
ValidityLockConflict: '#/components/schemas/GraphQLValidityLockConflictError'
5203852109
required:
5203952110
- //
5204052111
- code
@@ -52043,6 +52114,37 @@ components:
5204352114
type: "string"
5204452115
additionalProperties:
5204552116
type: "string"
52117+
GraphQLExactLockConflictError:
52118+
allOf:
52119+
- $ref: '#/components/schemas/GraphQLErrorObject'
52120+
- type: "object"
52121+
required:
52122+
- code
52123+
- currency
52124+
- sku
52125+
properties:
52126+
code:
52127+
type: "string"
52128+
sku:
52129+
type: "string"
52130+
currency:
52131+
$ref: '#/components/schemas/CurrencyCode'
52132+
country:
52133+
$ref: '#/components/schemas/CountryCode'
52134+
customerGroup:
52135+
$ref: '#/components/schemas/CustomerGroupResourceIdentifier'
52136+
channel:
52137+
$ref: '#/components/schemas/ChannelResourceIdentifier'
52138+
validFrom:
52139+
type: "string"
52140+
format: "datetime"
52141+
validUntil:
52142+
type: "string"
52143+
format: "datetime"
52144+
recurrencePolicy:
52145+
$ref: '#/components/schemas/RecurrencePolicyReference'
52146+
additionalProperties:
52147+
type: "string"
5204652148
GraphQLExpiredCustomerEmailTokenError:
5204752149
allOf:
5204852150
- $ref: '#/components/schemas/GraphQLErrorObject'
@@ -52832,6 +52934,31 @@ components:
5283252934
type: "string"
5283352935
additionalProperties:
5283452936
type: "string"
52937+
GraphQLValidityLockConflictError:
52938+
allOf:
52939+
- $ref: '#/components/schemas/GraphQLErrorObject'
52940+
- type: "object"
52941+
required:
52942+
- code
52943+
- currency
52944+
- sku
52945+
properties:
52946+
code:
52947+
type: "string"
52948+
sku:
52949+
type: "string"
52950+
currency:
52951+
$ref: '#/components/schemas/CurrencyCode'
52952+
country:
52953+
$ref: '#/components/schemas/CountryCode'
52954+
customerGroup:
52955+
$ref: '#/components/schemas/CustomerGroupResourceIdentifier'
52956+
channel:
52957+
$ref: '#/components/schemas/ChannelResourceIdentifier'
52958+
recurrencePolicy:
52959+
$ref: '#/components/schemas/RecurrencePolicyResourceIdentifier'
52960+
additionalProperties:
52961+
type: "string"
5283552962
BaseEvent:
5283652963
type: "object"
5283752964
required:

uml/api/ChannelResourceIdentifier.puml

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -142,6 +142,18 @@ interface DuplicateStandalonePriceScopeError [[DuplicateStandalonePriceScopeErro
142142
validFrom: DateTime
143143
validUntil: DateTime
144144
}
145+
interface ExactLockConflictError [[ExactLockConflictError.svg]] {
146+
code: String
147+
message: String
148+
sku: String
149+
currency: String
150+
country: String
151+
customerGroup: [[CustomerGroupResourceIdentifier.svg CustomerGroupResourceIdentifier]]
152+
channel: [[ChannelResourceIdentifier.svg ChannelResourceIdentifier]]
153+
validFrom: DateTime
154+
validUntil: DateTime
155+
recurrencePolicy: [[RecurrencePolicyReference.svg RecurrencePolicyReference]]
156+
}
145157
interface MissingRoleOnChannelError [[MissingRoleOnChannelError.svg]] {
146158
code: String
147159
message: String
@@ -162,6 +174,16 @@ interface OverlappingStandalonePriceValidityError [[OverlappingStandalonePriceVa
162174
conflictingValidFrom: DateTime
163175
conflictingValidUntil: DateTime
164176
}
177+
interface ValidityLockConflictError [[ValidityLockConflictError.svg]] {
178+
code: String
179+
message: String
180+
sku: String
181+
currency: String
182+
country: String
183+
customerGroup: [[CustomerGroupResourceIdentifier.svg CustomerGroupResourceIdentifier]]
184+
channel: [[ChannelResourceIdentifier.svg ChannelResourceIdentifier]]
185+
recurrencePolicy: [[RecurrencePolicyResourceIdentifier.svg RecurrencePolicyResourceIdentifier]]
186+
}
165187
interface GraphQLDuplicateStandalonePriceScopeError [[GraphQLDuplicateStandalonePriceScopeError.svg]] {
166188
code: String
167189
conflictingStandalonePrice: [[StandalonePriceReference.svg StandalonePriceReference]]
@@ -173,6 +195,17 @@ interface GraphQLDuplicateStandalonePriceScopeError [[GraphQLDuplicateStandalone
173195
validFrom: DateTime
174196
validUntil: DateTime
175197
}
198+
interface GraphQLExactLockConflictError [[GraphQLExactLockConflictError.svg]] {
199+
code: String
200+
sku: String
201+
currency: String
202+
country: String
203+
customerGroup: [[CustomerGroupResourceIdentifier.svg CustomerGroupResourceIdentifier]]
204+
channel: [[ChannelResourceIdentifier.svg ChannelResourceIdentifier]]
205+
validFrom: DateTime
206+
validUntil: DateTime
207+
recurrencePolicy: [[RecurrencePolicyReference.svg RecurrencePolicyReference]]
208+
}
176209
interface GraphQLMissingRoleOnChannelError [[GraphQLMissingRoleOnChannelError.svg]] {
177210
code: String
178211
channel: [[ChannelResourceIdentifier.svg ChannelResourceIdentifier]]
@@ -191,6 +224,15 @@ interface GraphQLOverlappingStandalonePriceValidityError [[GraphQLOverlappingSta
191224
conflictingValidFrom: DateTime
192225
conflictingValidUntil: DateTime
193226
}
227+
interface GraphQLValidityLockConflictError [[GraphQLValidityLockConflictError.svg]] {
228+
code: String
229+
sku: String
230+
currency: String
231+
country: String
232+
customerGroup: [[CustomerGroupResourceIdentifier.svg CustomerGroupResourceIdentifier]]
233+
channel: [[ChannelResourceIdentifier.svg ChannelResourceIdentifier]]
234+
recurrencePolicy: [[RecurrencePolicyResourceIdentifier.svg RecurrencePolicyResourceIdentifier]]
235+
}
194236
interface InventoryEntryDraft [[InventoryEntryDraft.svg]] {
195237
sku: String
196238
key: String
@@ -353,11 +395,15 @@ ChannelResourceIdentifier --> CartSetLineItemDistributionChannelAction #green;te
353395
ChannelResourceIdentifier --> CartSetLineItemSupplyChannelAction #green;text:green : "supplyChannel"
354396
ChannelResourceIdentifier --> PriceDraft #green;text:green : "channel"
355397
ChannelResourceIdentifier --> DuplicateStandalonePriceScopeError #green;text:green : "channel"
398+
ChannelResourceIdentifier --> ExactLockConflictError #green;text:green : "channel"
356399
ChannelResourceIdentifier --> MissingRoleOnChannelError #green;text:green : "channel"
357400
ChannelResourceIdentifier --> OverlappingStandalonePriceValidityError #green;text:green : "channel"
401+
ChannelResourceIdentifier --> ValidityLockConflictError #green;text:green : "channel"
358402
ChannelResourceIdentifier --> GraphQLDuplicateStandalonePriceScopeError #green;text:green : "channel"
403+
ChannelResourceIdentifier --> GraphQLExactLockConflictError #green;text:green : "channel"
359404
ChannelResourceIdentifier --> GraphQLMissingRoleOnChannelError #green;text:green : "channel"
360405
ChannelResourceIdentifier --> GraphQLOverlappingStandalonePriceValidityError #green;text:green : "channel"
406+
ChannelResourceIdentifier --> GraphQLValidityLockConflictError #green;text:green : "channel"
361407
ChannelResourceIdentifier --> InventoryEntryDraft #green;text:green : "supplyChannel"
362408
ChannelResourceIdentifier --> InventoryEntrySetSupplyChannelAction #green;text:green : "supplyChannel"
363409
ChannelResourceIdentifier --> MyLineItemDraft #green;text:green : "supplyChannel"

uml/api/CustomerGroupResourceIdentifier.puml

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -127,6 +127,18 @@ interface DuplicateStandalonePriceScopeError [[DuplicateStandalonePriceScopeErro
127127
validFrom: DateTime
128128
validUntil: DateTime
129129
}
130+
interface ExactLockConflictError [[ExactLockConflictError.svg]] {
131+
code: String
132+
message: String
133+
sku: String
134+
currency: String
135+
country: String
136+
customerGroup: [[CustomerGroupResourceIdentifier.svg CustomerGroupResourceIdentifier]]
137+
channel: [[ChannelResourceIdentifier.svg ChannelResourceIdentifier]]
138+
validFrom: DateTime
139+
validUntil: DateTime
140+
recurrencePolicy: [[RecurrencePolicyReference.svg RecurrencePolicyReference]]
141+
}
130142
interface OverlappingStandalonePriceValidityError [[OverlappingStandalonePriceValidityError.svg]] {
131143
code: String
132144
message: String
@@ -141,6 +153,16 @@ interface OverlappingStandalonePriceValidityError [[OverlappingStandalonePriceVa
141153
conflictingValidFrom: DateTime
142154
conflictingValidUntil: DateTime
143155
}
156+
interface ValidityLockConflictError [[ValidityLockConflictError.svg]] {
157+
code: String
158+
message: String
159+
sku: String
160+
currency: String
161+
country: String
162+
customerGroup: [[CustomerGroupResourceIdentifier.svg CustomerGroupResourceIdentifier]]
163+
channel: [[ChannelResourceIdentifier.svg ChannelResourceIdentifier]]
164+
recurrencePolicy: [[RecurrencePolicyResourceIdentifier.svg RecurrencePolicyResourceIdentifier]]
165+
}
144166
interface GraphQLDuplicateStandalonePriceScopeError [[GraphQLDuplicateStandalonePriceScopeError.svg]] {
145167
code: String
146168
conflictingStandalonePrice: [[StandalonePriceReference.svg StandalonePriceReference]]
@@ -152,6 +174,17 @@ interface GraphQLDuplicateStandalonePriceScopeError [[GraphQLDuplicateStandalone
152174
validFrom: DateTime
153175
validUntil: DateTime
154176
}
177+
interface GraphQLExactLockConflictError [[GraphQLExactLockConflictError.svg]] {
178+
code: String
179+
sku: String
180+
currency: String
181+
country: String
182+
customerGroup: [[CustomerGroupResourceIdentifier.svg CustomerGroupResourceIdentifier]]
183+
channel: [[ChannelResourceIdentifier.svg ChannelResourceIdentifier]]
184+
validFrom: DateTime
185+
validUntil: DateTime
186+
recurrencePolicy: [[RecurrencePolicyReference.svg RecurrencePolicyReference]]
187+
}
155188
interface GraphQLOverlappingStandalonePriceValidityError [[GraphQLOverlappingStandalonePriceValidityError.svg]] {
156189
code: String
157190
conflictingStandalonePrice: [[StandalonePriceReference.svg StandalonePriceReference]]
@@ -165,6 +198,15 @@ interface GraphQLOverlappingStandalonePriceValidityError [[GraphQLOverlappingSta
165198
conflictingValidFrom: DateTime
166199
conflictingValidUntil: DateTime
167200
}
201+
interface GraphQLValidityLockConflictError [[GraphQLValidityLockConflictError.svg]] {
202+
code: String
203+
sku: String
204+
currency: String
205+
country: String
206+
customerGroup: [[CustomerGroupResourceIdentifier.svg CustomerGroupResourceIdentifier]]
207+
channel: [[ChannelResourceIdentifier.svg ChannelResourceIdentifier]]
208+
recurrencePolicy: [[RecurrencePolicyResourceIdentifier.svg RecurrencePolicyResourceIdentifier]]
209+
}
168210
interface StagedOrderSetCustomerGroupAction [[StagedOrderSetCustomerGroupAction.svg]] {
169211
action: String
170212
customerGroup: [[CustomerGroupResourceIdentifier.svg CustomerGroupResourceIdentifier]]
@@ -225,9 +267,13 @@ CustomerGroupResourceIdentifier --> CustomerGroupAssignmentDraft #green;text:gre
225267
CustomerGroupResourceIdentifier --> CustomerRemoveCustomerGroupAssignmentAction #green;text:green : "customerGroup"
226268
CustomerGroupResourceIdentifier --> CustomerSetCustomerGroupAction #green;text:green : "customerGroup"
227269
CustomerGroupResourceIdentifier --> DuplicateStandalonePriceScopeError #green;text:green : "customerGroup"
270+
CustomerGroupResourceIdentifier --> ExactLockConflictError #green;text:green : "customerGroup"
228271
CustomerGroupResourceIdentifier --> OverlappingStandalonePriceValidityError #green;text:green : "customerGroup"
272+
CustomerGroupResourceIdentifier --> ValidityLockConflictError #green;text:green : "customerGroup"
229273
CustomerGroupResourceIdentifier --> GraphQLDuplicateStandalonePriceScopeError #green;text:green : "customerGroup"
274+
CustomerGroupResourceIdentifier --> GraphQLExactLockConflictError #green;text:green : "customerGroup"
230275
CustomerGroupResourceIdentifier --> GraphQLOverlappingStandalonePriceValidityError #green;text:green : "customerGroup"
276+
CustomerGroupResourceIdentifier --> GraphQLValidityLockConflictError #green;text:green : "customerGroup"
231277
CustomerGroupResourceIdentifier --> StagedOrderSetCustomerGroupAction #green;text:green : "customerGroup"
232278
CustomerGroupResourceIdentifier --> OrderImportDraft #green;text:green : "customerGroup"
233279
CustomerGroupResourceIdentifier --> StandalonePriceDraft #green;text:green : "customerGroup"

0 commit comments

Comments
 (0)