8 July 2025
OrdersSecurity and privacyMessages/SubscriptionsLimits
You can now enable automated repeat purchases with the new Recurring Orders feature. This allows customers to schedule reorders for individual items at intervals such as daily, weekly, or monthly, while Merchants can set custom prices for each interval. Recurring Orders can be paused, skipped, modified, and canceled at any time to adapt to changing customer needs.
In addition, Customers can combine one-time purchases and subscription items in a single checkout, creating a seamless and flexible shopping experience. This feature aims to reduce manual workload for Merchants while building customer loyalty through convenience and consistency.
This feature is in public beta.
For more information, see the Recurring Orders overview.
Changes:
- [API] Added the Recurring Orders API and Recurrence Policies API.
- [API] Added
view_recurring_orders:{projectKey}
andmanage_recurring_orders:{projectKey}
OAuth scopes. - [API] Added Recurring Orders Messages.
- [API] Added the following to the Order Messages: OrderCreatedFromRecurringOrder.
- [API] Added
priceRecurrencePolicy
price selection parameter. - [API] Added
recurrencePolicy
field to the Price and PriceDraft types. - [API] Added
recurrence-policy
andrecurring-order
enums to the ReferenceTypeId type. - [API] Updated the following in the Carts API:
- Added
RecurringOrder
enum to the CartOrigin type. - Added
recurrenceInfo
field to the LineItem, LineItemDraft, CustomLineItem, and CustomLineItemDraft types. - Added
recurrenceInfo
field to the Add LineItem and Add CustomLineItem update action. - Added the Set LineItemRecurrenceInfo and Set CustomLineItemRecurrenceInfo update actions.
- Added
- [API] Updated the following in the My Carts API:
- Added
recurrenceInfo
field to the Add LineItem update action in My Carts API. - Added the Set LineItemRecurrenceInfo and Set CustomLineItemRecurrenceInfo update actions.
- Added
- [API] Added
recurrenceInfo
field to the Add LineItem and Add CustomLineItem update actions in Orders Edits API. - [API] Added
recurringOrder
field to the Order type in Orders API. - [API] Added
recurrencePrices
field to the ProductVariant type in Products API. - [API] Added
recurrencePolicy
field to the StandalonePrice and StandalonePriceDraft types in Standalone Prices API. - [API] Added
RecurringOrderState
enum to the StateTypeEnum type in States API. - [GraphQL API] Added the
recurringOrder
,recurringOrders
,recurrencePolicy
, andrecurrencePolicies
fields to theQuery
type. - [GraphQL API] Added the
createRecurringOrder
,updateRecurringOrder
,createRecurrencePolicy
, andupdateRecurrencePolicy
fields to theMutation
type. - [GraphQL API] Added the following types to the GraphQL schema:
Counter
,CounterInputDraft
,CustomLineItemRecurrenceInfo
,CustomLineItemRecurrenceInfoDraft
,CustomLineItemRecurrenceInfoInputDraft
,DayOfMonthSchedule
,DayOfMonthScheduleInput
,IntervalUnit
,LineItemRecurrenceInfo
,LineItemRecurrenceInfoDraft
,LineItemRecurrenceInfoInputDraft
,OrderCreatedFromRecurringOrder
,PriceSelectionMode
,RecurrencePolicy
,RecurrencePolicyDraft
,RecurrencePolicyQueryResult
,RecurrencePolicyRef
,RecurrencePolicyReferenceIdentifier
,RecurrencePolicySchedule
,RecurrencePolicyScheduleInput
,RecurrencePolicyUpdateAction
,RecurringOrder
,RecurringOrderActiveInput
,RecurringOrderCanceledInput
,RecurringOrderCreated
,RecurringOrderCustomFieldAdded
,RecurringOrderCustomFieldChanged
,RecurringOrderCustomFieldRemoved
,RecurringOrderCustomTypeRemoved
,RecurringOrderCustomTypeSet
,RecurringOrderDeleted
,RecurringOrderDraft
,RecurringOrderExpiredInput
,RecurringOrderKeySet
,RecurringOrderPausedInput
,RecurringOrderQueryResult
,RecurringOrderScheduleSet
,RecurringOrderStartsAtSet
,RecurringOrderState
,RecurringOrderStateChanged
,RecurringOrderStateDraft
,RecurringOrderStateTransition
,RecurringOrderUpdateAction
,SetCustomLineItemRecurrenceInfo
,SetLineItemRecurrenceInfo
,SetRecurrencePolicyDescription
,SetRecurrencePolicyKey
,SetRecurrencePolicyName
,SetRecurrencePolicySchedule
,SetRecurringOrderCustomField
,SetRecurringOrderCustomType
,SetRecurringOrderKey
,SetRecurringOrderOrderSkipConfiguration
,SetRecurringOrderSchedule
,SetRecurringOrderStartsAt
,SetRecurringOrderState
,SkipConfiguration
,SkipConfigurationInputDraft
,StandardSchedule
,StandardScheduleInput
,TransitionRecurringOrderState
. - [GraphQL API] Added the
allRecurrencePrices
field to theProductVariant
type. - [GraphQL API] Added the
allRecurrencePrices
field to theProductSearchVariant
type. - [GraphQL API] Added the
returnAllPricesByRecurrencePolicy
andrecurrencePolicyId
arguments to theProductVariant.price
field. - [GraphQL API] Added the
returnAllPricesByRecurrencePolicy
andrecurrencePolicyId
arguments to theProductSearchVariant.price
field. - [GraphQL API] Changed the
AddCartCustomLineItem.priceMode
default value fromStandard
to none. - [GraphQL API] Changed the
AddStagedOrderCustomLineItem.priceMode
default value fromStandard
to none. - [GraphQL API] Added the
recurrencePolicy
input field to theProductPriceDataInput
type. - [GraphQL API] Added the
RecurringOrder
enum value to theCartOrigin
enum. - [GraphQL API] Added the
recurrenceInfo
field to theLineItem
type. - [GraphQL API] Added the
recurrenceInfo
input field to theLineItemDraft
type. - [GraphQL API] Added the
recurrenceInfo
field to theLineItemDraftOutput
type. - [GraphQL API] Added the
recurrenceInfo
input field to theAddCartLineItem
type. - [GraphQL API] Added the
recurrenceInfo
input field to theMyLineItemDraft
type. - [GraphQL API] Added the
recurrenceInfo
input field to theAddMyCartLineItem
type. - [GraphQL API] Added the
recurrenceInfo
field to theCustomLineItem
type. - [GraphQL API] Added the
recurrenceInfo
input field to theCustomLineItemDraft
type. - [GraphQL API] Added the
recurrenceInfo
field to theCustomLineItemDraftOutput
type. - [GraphQL API] Added the
recurrenceInfo
input field to theAddCartCustomLineItem
type. - [GraphQL API] Added the
setLineItemRecurrenceInfo
andsetCustomLineItemRecurrenceInfo
input fields to theCartUpdateAction
type. - [GraphQL API] Added the
setLineItemRecurrenceInfo
andsetCustomLineItemRecurrenceInfo
input fields to theMyCartUpdateAction
type. - [GraphQL API] Added the
recurringOrder
andrecurringOrderRef
fields to theOrder
type. - [GraphQL API] Added the
recurrenceInfo
input field to theAddStagedOrderLineItem
type. - [GraphQL API] Added the
recurrenceInfo
input field to theAddStagedOrderCustomLineItem
type. - [GraphQL API] Added the
RecurringOrderState
enum value to theStateType
enum. - [GraphQL API] Added the
recurrencePolicy
andrecurrencePolicyRef
fields to theProductPrice
type. - [GraphQL API] Added the
recurrencePolicy
andrecurrencePolicyRef
fields to theStandalonePrice
type. - [GraphQL API] Added the
recurrencePolicy
input field to theCreateStandalonePrice
type.
The following changes were introduced in terms of GraphQL SDL:
extend type LineItemDraftOutput {
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
recurrenceInfo: LineItemRecurrenceInfoDraft
}
extend type ProductVariant {
"Returns all recurrence prices based on the price selection rules."
allRecurrencePrices(currency: Currency!, country: Country, customerGroupId: String, channelId: String, date: DateTime, recurrencePolicyId: String, returnAllPricesByRecurrencePolicy: Boolean): [ProductPrice!]
}
extend type CustomLineItemDraftOutput {
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
recurrenceInfo: CustomLineItemRecurrenceInfoDraft
}
extend type ProductPrice {
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
recurrencePolicy: RecurrencePolicy
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
recurrencePolicyRef: Reference
}
extend type ProductSearchVariant {
"Returns all recurrence prices based on the price selection rules."
allRecurrencePrices(currency: Currency!, country: Country, customerGroupId: String, channelId: String, date: DateTime, recurrencePolicyId: String, returnAllPricesByRecurrencePolicy: Boolean): [ProductPriceSearch!]
}
extend type Query {
"""
Recurrence policies are managed and queried through the Recurrence Policy API
and associated to a Price
"""
recurrencePolicies(where: String, sort: [String!], limit: Int, offset: Int): RecurrencePolicyQueryResult!
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
recurrencePolicy(
"Queries with specified ID"
id: String,
"Queries with specified key"
key: String): RecurrencePolicy
recurringOrder(
"Queries with specified ID"
id: String,
"Queries with specified key"
key: String): RecurringOrder
recurringOrders(where: String, sort: [String!], limit: Int, offset: Int): RecurringOrderQueryResult!
}
extend type CustomLineItem {
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
recurrenceInfo: CustomLineItemRecurrenceInfo
}
extend type Mutation {
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
createRecurrencePolicy(draft: RecurrencePolicyDraft!): RecurrencePolicy
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
createRecurringOrder(draft: RecurringOrderDraft!): RecurringOrder
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
updateRecurrencePolicy(version: Long!, actions: [RecurrencePolicyUpdateAction!]!,
"Queries with specified ID"
id: String,
"Queries with specified key"
key: String): RecurrencePolicy
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
updateRecurringOrder(version: Long!, actions: [RecurringOrderUpdateAction!]!,
"Queries with specified ID"
id: String,
"Queries with specified key"
key: String): RecurringOrder
}
extend type Order {
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
recurringOrder: RecurringOrder
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
recurringOrderRef: Reference
}
extend type LineItem {
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
recurrenceInfo: LineItemRecurrenceInfo
}
extend type StandalonePrice {
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
recurrencePolicy: RecurrencePolicy
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
recurrencePolicyRef: Reference
}
extend input AddMyCartLineItem {
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
recurrenceInfo: LineItemRecurrenceInfoInputDraft
}
extend input AddStagedOrderLineItem {
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
recurrenceInfo: LineItemRecurrenceInfoInputDraft
}
extend input MyLineItemDraft {
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
recurrenceInfo: LineItemRecurrenceInfoInputDraft
}
extend input CreateStandalonePrice {
recurrencePolicy: ResourceIdentifierInput
}
extend input CartUpdateAction {
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
setCustomLineItemRecurrenceInfo: SetCustomLineItemRecurrenceInfo
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
setLineItemRecurrenceInfo: SetLineItemRecurrenceInfo
}
extend input LineItemDraft {
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
recurrenceInfo: LineItemRecurrenceInfoInputDraft
}
extend input AddCartLineItem {
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
recurrenceInfo: LineItemRecurrenceInfoInputDraft
}
extend input AddCartCustomLineItem {
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
recurrenceInfo: CustomLineItemRecurrenceInfoInputDraft
}
extend input AddStagedOrderCustomLineItem {
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
recurrenceInfo: CustomLineItemRecurrenceInfoInputDraft
}
extend input MyCartUpdateAction {
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
setCustomLineItemRecurrenceInfo: SetCustomLineItemRecurrenceInfo
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
setLineItemRecurrenceInfo: SetLineItemRecurrenceInfo
}
extend input CustomLineItemDraft {
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
recurrenceInfo: CustomLineItemRecurrenceInfoInputDraft
}
extend enum CartOrigin {
"The cart was created by the merchant as a recurring order."
RecurringOrder
}
extend enum StateType {
RecurringOrderState
}
type Counter implements SkipConfiguration {
totalToSkip: Int!
skipped: Int!
lastSkippedAt: DateTime
type: String!
}
input CounterInputDraft {
totalToSkip: Int!
}
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
type CustomLineItemRecurrenceInfo {
recurrencePolicy: RecurrencePolicy
recurrencePolicyRef: RecurrencePolicyRef!
expiresAt: DateTime
}
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
type CustomLineItemRecurrenceInfoDraft {
recurrencePolicyRef: RecurrencePolicyReferenceIdentifier
expiresAt: DateTime
}
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
input CustomLineItemRecurrenceInfoInputDraft {
recurrencePolicy: ResourceIdentifierInput!
expiresAt: DateTime
}
type DayOfMonthSchedule implements RecurrencePolicySchedule {
day: Int!
type: String!
}
input DayOfMonthScheduleInput {
day: Int!
}
enum IntervalUnit {
Days
Months
Weeks
}
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
type LineItemRecurrenceInfo {
recurrencePolicy: RecurrencePolicy
recurrencePolicyRef: RecurrencePolicyRef!
expiresAt: DateTime
priceSelectionMode: PriceSelectionMode!
}
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
type LineItemRecurrenceInfoDraft {
recurrencePolicyRef: RecurrencePolicyReferenceIdentifier
expiresAt: DateTime
priceSelectionMode: PriceSelectionMode!
}
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
input LineItemRecurrenceInfoInputDraft {
recurrencePolicy: ResourceIdentifierInput!
expiresAt: DateTime
priceSelectionMode: PriceSelectionMode!
}
type OrderCreatedFromRecurringOrder implements MessagePayload & OrderMessagePayload {
order: Order
recurringOrderRef: Reference!
type: String!
}
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
enum PriceSelectionMode {
"Every time a new order is created from this recurring order, we will update to the latest price available"
Dynamic
"The price will stay the same until the recurring order expires or is cancelled"
Fixed
}
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
type RecurrencePolicy implements Versioned {
id: String!
version: Long!
key: String!
name(
"String is defined for different locales. This argument specifies the desired locale."
locale: Locale,
"List of languages the client is able to understand, and which locale variant is preferred."
acceptLanguage: [Locale!]): String
nameAllLocales: [LocalizedString!]
description(
"String is defined for different locales. This argument specifies the desired locale."
locale: Locale,
"List of languages the client is able to understand, and which locale variant is preferred."
acceptLanguage: [Locale!]): String
descriptionAllLocales: [LocalizedString!]
schedule: RecurrencePolicySchedule!
createdAt: DateTime!
lastModifiedAt: DateTime!
createdBy: Initiator
lastModifiedBy: Initiator
}
input RecurrencePolicyDraft {
key: String!
name: [LocalizedStringItemInputType!]
description: [LocalizedStringItemInputType!]
schedule: RecurrencePolicyScheduleInput!
}
type RecurrencePolicyQueryResult {
offset: Int!
count: Int!
total: Long!
exists: Boolean!
results: [RecurrencePolicy!]!
}
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
type RecurrencePolicyRef {
typeId: String!
id: String!
}
type RecurrencePolicyReferenceIdentifier {
typeId: String!
id: String
key: String
}
interface RecurrencePolicySchedule {
type: String!
}
input RecurrencePolicyScheduleInput {
standard: StandardScheduleInput
dayOfMonth: DayOfMonthScheduleInput
}
input RecurrencePolicyUpdateAction {
setDescription: SetRecurrencePolicyDescription
setKey: SetRecurrencePolicyKey
setName: SetRecurrencePolicyName
setSchedule: SetRecurrencePolicySchedule
}
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
type RecurringOrder implements Versioned {
key: String
recurringOrderState: RecurringOrderState!
cartRef: Reference!
cart: Cart
startsAt: DateTime!
resumesAt: DateTime
expiresAt: DateTime
lastOrderAt: DateTime
nextOrderAt: DateTime
skipConfiguration: SkipConfiguration
businessUnit: BusinessUnit
businessUnitRef: KeyReference
custom: CustomFieldsType
stateRef: Reference
state: State
originOrderRef: Reference
originOrder: Order
schedule: RecurrencePolicySchedule!
customerRef: Reference
customer: Customer
customerEmail: String
id: String!
version: Long!
createdAt: DateTime!
lastModifiedAt: DateTime!
createdBy: Initiator
lastModifiedBy: Initiator
}
input RecurringOrderActiveInput {
resumesAt: DateTime
}
input RecurringOrderCanceledInput {
reason: String
}
type RecurringOrderCreated implements MessagePayload {
recurringOrder: RecurringOrder!
type: String!
}
type RecurringOrderCustomFieldAdded implements MessagePayload {
name: String!
value: Json!
type: String!
}
type RecurringOrderCustomFieldChanged implements MessagePayload {
name: String!
value: Json!
previousValue: Json
type: String!
}
type RecurringOrderCustomFieldRemoved implements MessagePayload {
name: String!
type: String!
}
type RecurringOrderCustomTypeRemoved implements MessagePayload {
previousTypeId: String
type: String!
}
type RecurringOrderCustomTypeSet implements MessagePayload {
customFields: CustomFieldsType!
previousTypeId: String
type: String!
}
type RecurringOrderDeleted implements MessagePayload {
type: String!
}
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
input RecurringOrderDraft {
key: String
custom: CustomFieldsDraft
cart: ResourceIdentifierInput!
cartVersion: Long!
startsAt: DateTime!
expiresAt: DateTime
state: ResourceIdentifierInput
recurringOrderState: RecurringOrderState
}
input RecurringOrderExpiredInput {
dummy: String
}
type RecurringOrderKeySet implements MessagePayload {
key: String
oldKey: String
type: String!
}
input RecurringOrderPausedInput {
dummy: String
}
type RecurringOrderQueryResult {
offset: Int!
count: Int!
total: Long!
exists: Boolean!
results: [RecurringOrder!]!
}
type RecurringOrderScheduleSet implements MessagePayload {
recurrencePolicySchedule: RecurrencePolicySchedule!
oldRecurrencePolicySchedule: RecurrencePolicySchedule!
type: String!
}
type RecurringOrderStartsAtSet implements MessagePayload {
startsAt: DateTime!
oldStartsAt: DateTime!
type: String!
}
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
enum RecurringOrderState {
Active
Canceled
Expired
Failed
Paused
}
type RecurringOrderStateChanged implements MessagePayload {
recurringOrderState: RecurringOrderState!
oldRecurringOrderState: RecurringOrderState!
type: String!
}
input RecurringOrderStateDraft {
active: RecurringOrderActiveInput
paused: RecurringOrderPausedInput
canceled: RecurringOrderCanceledInput
expired: RecurringOrderExpiredInput
}
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
type RecurringOrderStateTransition implements MessagePayload {
force: Boolean!
state: State
oldState: State
stateRef: Reference!
oldStateRef: Reference
type: String!
}
input RecurringOrderUpdateAction {
setKey: SetRecurringOrderKey
setOrderSkipConfiguration: SetRecurringOrderOrderSkipConfiguration
setCustomField: SetRecurringOrderCustomField
setCustomType: SetRecurringOrderCustomType
setRecurringOrderState: SetRecurringOrderState
setSchedule: SetRecurringOrderSchedule
setStartsAt: SetRecurringOrderStartsAt
transitionState: TransitionRecurringOrderState
}
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
input SetCustomLineItemRecurrenceInfo {
customLineItemId: String!
customLineItemKey: String
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
recurrenceInfo: CustomLineItemRecurrenceInfoInputDraft
}
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
input SetLineItemRecurrenceInfo {
lineItemId: String!
"BETA: This feature can be subject to change and should be used carefully in production. https://docs.commercetools.com/api/contract#public-beta"
recurrenceInfo: LineItemRecurrenceInfoInputDraft
}
input SetRecurrencePolicyDescription {
description: [LocalizedStringItemInputType!]
}
input SetRecurrencePolicyKey {
key: String!
}
input SetRecurrencePolicyName {
name: [LocalizedStringItemInputType!]
}
input SetRecurrencePolicySchedule {
schedule: RecurrencePolicyScheduleInput!
}
input SetRecurringOrderCustomField {
name: String!
value: String
}
input SetRecurringOrderCustomType {
fields: [CustomFieldInput!]
type: ResourceIdentifierInput
typeKey: String
typeId: String
}
input SetRecurringOrderKey {
key: String
}
input SetRecurringOrderOrderSkipConfiguration {
skipConfigurationInputDraft: SkipConfigurationInputDraft
updatedExpiresAt: DateTime
}
input SetRecurringOrderSchedule {
recurrencePolicy: ResourceIdentifierInput!
}
input SetRecurringOrderStartsAt {
startsAt: DateTime!
}
input SetRecurringOrderState {
recurringOrderState: RecurringOrderStateDraft!
}
interface SkipConfiguration {
type: String!
}
input SkipConfigurationInputDraft {
Counter: CounterInputDraft
}
type StandardSchedule implements RecurrencePolicySchedule {
value: Int!
intervalUnit: IntervalUnit!
type: String!
}
input StandardScheduleInput {
value: Int!
intervalUnit: IntervalUnit!
}
input TransitionRecurringOrderState {
state: ResourceIdentifierInput!
force: Boolean = false
}