schema.graphql 55 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901
  1. directive @goTag(
  2. key: String!
  3. value: String
  4. ) on INPUT_FIELD_DEFINITION | FIELD_DEFINITION
  5. directive @goField(
  6. forceResolver: Boolean,
  7. name: String
  8. ) on INPUT_FIELD_DEFINITION | FIELD_DEFINITION
  9. scalar DateTime
  10. scalar UnsignedInt64
  11. scalar HTML
  12. # A JSON object.
  13. scalar JSON
  14. # A signed decimal number, which supports arbitrary precision and is serialized as a string.
  15. scalar Decimal
  16. # Represents an RFC 3986 and
  17. # RFC 3987-compliant URI string.
  18. #
  19. # For example, 'https://johns-apparel.myshopify.com' is a valid URL. It includes a scheme (https) and a host
  20. # (johns-apparel.myshopify.com).
  21. scalar URL
  22. union MetafieldParentResource = Collection | Product | ProductVariant
  23. union MetafieldReference = Collection | Product | ProductVariant
  24. union SellingPlanCheckoutChargeValue = MoneyV2 | SellingPlanCheckoutChargePercentageValue
  25. # Represents by how much the price of a variant associated with a selling plan is adjusted. Each variant can have up to two price adjustments.
  26. union SellingPlanPriceAdjustmentValue = SellingPlanFixedAmountPriceAdjustment | SellingPlanFixedPriceAdjustment | SellingPlanPercentagePriceAdjustment
  27. type Query {
  28. collections(
  29. after: String,
  30. before: String,
  31. first: Int,
  32. last: Int,
  33. query: String,
  34. reverse: Boolean = false,
  35. sortKey: CollectionSortKeys = ID
  36. ): CollectionConnection!
  37. product(handle: String id: ID): Product
  38. }
  39. # An auto-generated type for paginating through multiple Collections.
  40. type CollectionConnection {
  41. # A list of edges.
  42. edges: [CollectionEdge!]!
  43. # A list of the nodes contained in CollectionEdge.
  44. nodes: [Collection!]!
  45. # Information to aid in pagination.
  46. pageInfo: PageInfo!
  47. }
  48. type CollectionEdge {
  49. # A cursor for use in pagination.
  50. cursor: String!
  51. # The item at the end of CollectionEdge.
  52. node: Collection!
  53. }
  54. # A collection represents a grouping of products that a shop owner can create to organize them or make their shops easier to browse.
  55. type Collection implements HasMetafields&Node&OnlineStorePublishable {
  56. # Stripped description of the collection, single line with HTML tags removed.
  57. description(truncateAt: Int): String! @goField(forceResolver: true)
  58. # The description of the collection, complete with HTML formatting.
  59. descriptionHtml: HTML!
  60. # A human-friendly unique string for the collection automatically generated from its title. Limit of 255 characters.
  61. handle: String!
  62. # A globally-unique identifier.
  63. id: ID!
  64. # Image associated with the collection.
  65. image: Image
  66. # Returns a metafield found by namespace and key.
  67. metafield(key: String! namespace: String!): Metafield
  68. # The metafields associated with the resource matching the supplied list of namespaces and keys.
  69. metafields(identifiers: [HasMetafieldsIdentifier!]!): [Metafield]!
  70. # The URL used for viewing the resource on the shop's Online Store. Returns null if the resource is currently not published to the Online Store sales channel.
  71. onlineStoreUrl: URL
  72. # List of products in the collection.
  73. products(
  74. after: String
  75. before: String
  76. filters: [ProductFilter!]
  77. first: Int
  78. last: Int
  79. reverse: Boolean = false
  80. sortKey: ProductCollectionSortKeys = COLLECTION_DEFAULT
  81. ): ProductConnection! @goField(forceResolver: true)
  82. # The collection's SEO information.
  83. seo: SEO!
  84. # The collection’s name. Limit of 255 characters.
  85. title: String!
  86. # The date and time when the collection was last modified.
  87. updatedAt: DateTime!
  88. }
  89. # An object with an ID field to support global identification, in accordance with the
  90. # Relay specification.
  91. # This interface is used by the node
  92. # and nodes queries.
  93. interface Node {
  94. # A globally-unique identifier.
  95. id: ID!
  96. }
  97. # Represents information about the metafields associated to the specified resource.
  98. interface HasMetafields {
  99. # Returns a metafield found by namespace and key.
  100. metafield(namespace: String!key: String!): Metafield
  101. # The metafields associated with the resource matching the supplied list of namespaces and keys.
  102. metafields(identifiers: [HasMetafieldsIdentifier!]!): [Metafield]!
  103. }
  104. # Represents a resource that can be published to the Online Store sales channel.
  105. interface OnlineStorePublishable {
  106. # The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel.
  107. onlineStoreUrl: URL
  108. }
  109. # Represents a media interface.
  110. interface Media {
  111. # A word or phrase to share the nature or contents of a media.
  112. alt: String
  113. # The media content type.
  114. mediaContentType: MediaContentType!
  115. # The preview image for the media.
  116. previewImage: Image
  117. }
  118. type ProductConnection {
  119. # A list of edges.
  120. edges: [ProductEdge!]!
  121. # A list of available filters.
  122. filters: [Filter!]!
  123. # A list of the nodes contained in ProductEdge.
  124. nodes: [Product!]!
  125. # Information to aid in pagination.
  126. pageInfo: PageInfo!
  127. }
  128. type ProductEdge {
  129. # A cursor for use in pagination.
  130. cursor: String!
  131. # The item at the end of ProductEdge.
  132. node: Product!
  133. }
  134. # A product represents an individual item for sale in a Shopify store. Products are often physical, but they don't have to be.
  135. # For example, a digital download (such as a movie, music or ebook file) also qualifies as a product, as do services (such as equipment rental, work for hire, customization of another product or an extended warranty).
  136. type Product implements HasMetafields&Node&OnlineStorePublishable {
  137. # Indicates if at least one product variant is available for sale.
  138. availableForSale: Boolean!
  139. # List of collections a product belongs to.
  140. collections(
  141. after: String
  142. before: String
  143. first: Int
  144. last: Int
  145. reverse: Boolean = false
  146. ): CollectionConnection! @goField(forceResolver: true)
  147. # The compare at price of the product across all variants.
  148. compareAtPriceRange: ProductPriceRange!
  149. # The date and time when the product was created.
  150. createdAt: DateTime!
  151. # Stripped description of the product, single line with HTML tags removed.
  152. description(truncateAt: Int): String! @goField(forceResolver: true)
  153. # The description of the product, complete with HTML formatting.
  154. descriptionHtml: HTML!
  155. # The featured image for the product. This field is functionally equivalent to images(first: 1).
  156. featuredImage: Image
  157. # A human-friendly unique string for the Product automatically generated from its title. They are used by the Liquid templating language to refer to objects.
  158. handle: String!
  159. # A globally-unique identifier.
  160. id: ID!
  161. # List of images associated with the product.
  162. images(
  163. after: String
  164. before: String
  165. first: Int
  166. last: Int
  167. reverse: Boolean = false
  168. sortKey: ProductImageSortKeys = POSITION
  169. ): ImageConnection!
  170. # Whether the product is a gift card.
  171. isGiftCard: Boolean!
  172. # The media associated with the product.
  173. media(
  174. after: String
  175. before: String
  176. first: Int
  177. last: Int
  178. reverse: Boolean = false
  179. sortKey: ProductMediaSortKeys = POSITION
  180. ): MediaConnection!
  181. # Returns a metafield found by namespace and key.
  182. metafield(key: String!namespace: String!): Metafield
  183. # The metafields associated with the resource matching the supplied list of namespaces and keys.
  184. metafields(identifiers: [HasMetafieldsIdentifier!]!): [Metafield]!
  185. # The URL used for viewing the resource on the shop's Online Store. Returns `null` if the resource is currently not published to the Online Store sales channel.
  186. onlineStoreUrl: URL
  187. # List of product options.
  188. options(first: Int): [ProductOption!]! @goField(forceResolver: true)
  189. # The price range.
  190. priceRange: ProductPriceRange!
  191. # A categorization that a product can be tagged with, commonly used for filtering and searching.
  192. productType: String!
  193. # The date and time when the product was published to the channel.
  194. publishedAt: DateTime!
  195. # Whether the product can only be purchased with a selling plan.
  196. requiresSellingPlan: Boolean!
  197. # A list of a product's available selling plan groups. A selling plan group represents a selling method. For example, 'Subscribe and save' is a selling method where customers pay for goods or services per delivery. A selling plan group contains individual selling plans.
  198. sellingPlanGroups(
  199. first: Int
  200. after: String
  201. last: Int
  202. before: String
  203. reverse: Boolean = false
  204. ): SellingPlanGroupConnection!
  205. # The product's SEO information.
  206. seo: SEO!
  207. # A comma separated list of tags that have been added to the product. Additional access scope required for private apps: unauthenticated_read_product_tags.
  208. tags: [String!]!
  209. # The product’s title.
  210. title: String!
  211. # The total quantity of inventory in stock for this Product.
  212. totalInventory: Int
  213. # The date and time when the product was last modified.
  214. # A product's `updatedAt` value can change for different reasons. For example, if an order
  215. # is placed for a product that has inventory tracking set up, then the inventory adjustment
  216. # is counted as an update.
  217. updatedAt: DateTime!
  218. # Find a product’s variant based on its selected options.
  219. # This is useful for converting a user’s selection of product options into a single matching variant.
  220. # If there is not a variant for the selected options, `null` will be returned.
  221. variantBySelectedOptions(selectedOptions: [SelectedOptionInput!]!): ProductVariant @goField(forceResolver: true)
  222. # List of the product’s variants.
  223. variants(
  224. first: Int
  225. after: String
  226. last: Int
  227. before: String
  228. reverse: Boolean = false
  229. sortKey: ProductVariantSortKeys = POSITION
  230. ): ProductVariantConnection! @goField(forceResolver: true)
  231. # The product’s vendor name.
  232. vendor: String!
  233. }
  234. # The price range of the product.
  235. type ProductPriceRange {
  236. # The highest variant's price.
  237. maxVariantPrice: MoneyV2!
  238. # The lowest variant's price.
  239. minVariantPrice: MoneyV2!
  240. }
  241. # Product property names like 'Size', 'Color', and 'Material' that the customers can select.
  242. # Variants are selected based on permutations of these options.
  243. # 255 characters limit each.
  244. type ProductOption implements Node {
  245. # A globally-unique identifier.
  246. id: ID!
  247. # The product option’s name.
  248. name: String!
  249. # The corresponding value to the product option name.
  250. values: [String!]!
  251. }
  252. # A monetary value with currency.
  253. type MoneyV2 {
  254. # Decimal money amount.
  255. amount: Decimal!
  256. # Currency of the money.
  257. currencyCode: CurrencyCode!
  258. }
  259. # A filter that is supported on the parent field.
  260. type Filter {
  261. # A unique identifier.
  262. id: String!
  263. # A human-friendly string for this filter.
  264. label: String!
  265. # An enumeration that denotes the type of data this filter represents.
  266. type: FilterType!
  267. }
  268. # SEO information.
  269. type SEO {
  270. # The meta description.
  271. description: String
  272. # The SEO title.
  273. title: String
  274. }
  275. # An auto-generated type for paginating through multiple Media.
  276. type MediaConnection {
  277. # A list of edges.
  278. edges: [MediaEdge!]!
  279. # A list of the nodes contained in MediaEdge.
  280. nodes: [Media!]!
  281. # Information to aid in pagination.
  282. pageInfo: PageInfo!
  283. }
  284. # An auto-generated type which holds one Media and a cursor during pagination.
  285. type MediaEdge {
  286. # A cursor for use in pagination.
  287. cursor: String!
  288. # The item at the end of MediaEdge.
  289. node: Media!
  290. }
  291. # Represents an image resource.
  292. type Image {
  293. # A word or phrase to share the nature or contents of an image.
  294. altText: String
  295. # The original height of the image in pixels. Returns `null` if the image is not hosted by Shopify.
  296. height: Int
  297. # A unique identifier for the image.
  298. id: ID
  299. # The location of the image as a URL.
  300. # If no transform options are specified, then the original image will be preserved including any pre-applied transforms.
  301. # All transformation options are considered 'best-effort'. Any transformation that the original image type doesn't support will be ignored.
  302. # If you need multiple variations of the same image, then you can use GraphQL aliases.
  303. url(transform: ImageTransformInput): URL!
  304. # The original width of the image in pixels. Returns null if the image is not hosted by Shopify.
  305. width: Int
  306. # The location of the original image as a URL.
  307. #
  308. # If there are any existing transformations in the original source URL, they will remain and not be stripped. Use url instead.
  309. originalSrc: URL! @deprecated
  310. # The location of the image as a URL. Use url instead.
  311. src: URL! @deprecated
  312. # The location of the transformed image as a URL.
  313. # All transformation arguments are considered 'best-effort'. If they can be applied to an image, they will be. Otherwise any transformations which an image type does not support will be ignored. Use `url(transform:)` instead
  314. transformedSrc: URL! @deprecated
  315. }
  316. # An auto-generated type for paginating through multiple Images.
  317. type ImageConnection {
  318. # A list of edges.
  319. edges: [ImageEdge!]!
  320. # A list of the nodes contained in ImageEdge.
  321. nodes: [Image!]!
  322. # Information to aid in pagination.
  323. pageInfo: PageInfo!
  324. }
  325. # An auto-generated type which holds one Image and a cursor during pagination.
  326. type ImageEdge {
  327. # A cursor for use in pagination.
  328. cursor: String!
  329. # The item at the end of ImageEdge.
  330. node: Image!
  331. }
  332. # An auto-generated type for paginating through multiple SellingPlanGroups.
  333. type SellingPlanGroupConnection {
  334. # A list of edges.
  335. edges: [SellingPlanGroupEdge!]!
  336. # A list of the nodes contained in SellingPlanGroupEdge.
  337. nodes: [SellingPlanGroup!]!
  338. # Information to aid in pagination.
  339. pageInfo: PageInfo!
  340. }
  341. # An auto-generated type which holds one SellingPlanGroup and a cursor during pagination.
  342. type SellingPlanGroupEdge {
  343. # A cursor for use in pagination.
  344. cursor: String!
  345. # The item at the end of SellingPlanGroupEdge.
  346. node: SellingPlanGroup!
  347. }
  348. # Represents a selling method. For example, 'Subscribe and save' is a selling method where customers pay for goods or services per delivery. A selling plan group contains individual selling plans.
  349. type SellingPlanGroup {
  350. # A display friendly name for the app that created the selling plan group.
  351. appName: String
  352. # The name of the selling plan group.
  353. name: String!
  354. # Represents the selling plan options available in the drop-down list in the storefront. For example, 'Delivery every week' or 'Delivery every 2 weeks' specifies the delivery frequency options for the product.
  355. options: [SellingPlanGroupOption!]!
  356. # A list of selling plans in a selling plan group. A selling plan is a representation of how products and variants can be sold and purchased. For example, an individual selling plan could be '6 weeks of prepaid granola, delivered weekly'.
  357. sellingPlans(
  358. first: Int
  359. after: String
  360. last: Int
  361. before: String
  362. reverse: Boolean = false
  363. ): SellingPlanConnection!
  364. }
  365. # Represents an option on a selling plan group that's available in the drop-down list in the storefront.
  366. #
  367. # Individual selling plans contribute their options to the associated selling plan group. For example, a selling plan group might have an option called option1: Delivery every. One selling plan in that group could contribute option1: 2 weeks with the pricing for that option, and another selling plan could contribute option1: 4 weeks, with different pricing.
  368. type SellingPlanGroupOption {
  369. # The name of the option. For example, 'Delivery every'.
  370. name: String!
  371. # The values for the options specified by the selling plans in the selling plan group. For example, '1 week', '2 weeks', '3 weeks'.
  372. values: [String!]!
  373. }
  374. # An auto-generated type for paginating through multiple SellingPlans.
  375. type SellingPlanConnection {
  376. # A list of edges.
  377. edges: [SellingPlanEdge!]!
  378. # A list of the nodes contained in SellingPlanEdge.
  379. nodes: [SellingPlan!]!
  380. # Information to aid in pagination.
  381. pageInfo: PageInfo!
  382. }
  383. # An auto-generated type which holds one SellingPlan and a cursor during pagination.
  384. type SellingPlanEdge {
  385. # A cursor for use in pagination.
  386. cursor: String!
  387. # The item at the end of SellingPlanEdge.
  388. node: SellingPlan!
  389. }
  390. # Represents how products and variants can be sold and purchased.
  391. type SellingPlan implements Node {
  392. # The initial payment due for the purchase.
  393. checkoutCharge: SellingPlanCheckoutCharge!
  394. # The description of the selling plan.
  395. description: String
  396. # A globally-unique identifier.
  397. id: ID!
  398. # The name of the selling plan. For example, '6 weeks of prepaid granola, delivered weekly'.
  399. name: String!
  400. # The selling plan options available in the drop-down list in the storefront. For example, 'Delivery every week' or 'Delivery every 2 weeks' specifies the delivery frequency options for the product. Individual selling plans contribute their options to the associated selling plan group. For example, a selling plan group might have an option called option1: Delivery every. One selling plan in that group could contribute option1: 2 weeks with the pricing for that option, and another selling plan could contribute option1: 4 weeks, with different pricing.
  401. options: [SellingPlanOption!]!
  402. # The price adjustments that a selling plan makes when a variant is purchased with a selling plan.
  403. priceAdjustments: [SellingPlanPriceAdjustment!]!
  404. # Whether purchasing the selling plan will result in multiple deliveries.
  405. recurringDeliveries: Boolean!
  406. }
  407. # The initial payment due for the purchase.
  408. type SellingPlanCheckoutCharge {
  409. # The charge type for the checkout charge.
  410. type: SellingPlanCheckoutChargeType!
  411. # The charge value for the checkout charge.
  412. value: SellingPlanCheckoutChargeValue!
  413. }
  414. # The percentage value of the price used for checkout charge.
  415. type SellingPlanCheckoutChargePercentageValue {
  416. # The percentage value of the price used for checkout charge.
  417. percentage: Float!
  418. }
  419. # An option provided by a Selling Plan.
  420. type SellingPlanOption {
  421. # The name of the option (ie 'Delivery every').
  422. name: String
  423. # The value of the option (ie 'Month').
  424. value: String
  425. }
  426. # Represents by how much the price of a variant associated with a selling plan is adjusted. Each variant can have up to two price adjustments. If a variant has multiple price adjustments, then the first price adjustment applies when the variant is initially purchased. The second price adjustment applies after a certain number of orders (specified by the `orderCount` field) are made. If a selling plan doesn't have any price adjustments, then the unadjusted price of the variant is the effective price.
  427. type SellingPlanPriceAdjustment {
  428. # The type of price adjustment. An adjustment value can have one of three types: percentage, amount off, or a new price.
  429. adjustmentValue: SellingPlanPriceAdjustmentValue!
  430. # The number of orders that the price adjustment applies to. If the price adjustment always applies, then this field is `null`.
  431. orderCount: Int
  432. }
  433. # A fixed amount that's deducted from the original variant price. For example, $10.00 off.
  434. type SellingPlanFixedAmountPriceAdjustment {
  435. # The money value of the price adjustment.
  436. adjustmentAmount: MoneyV2!
  437. }
  438. # A fixed price adjustment for a variant that's purchased with a selling plan.
  439. type SellingPlanFixedPriceAdjustment {
  440. # A new price of the variant when it's purchased with the selling plan.
  441. price: MoneyV2!
  442. }
  443. # A percentage amount that's deducted from the original variant price. For example, 10% off.
  444. type SellingPlanPercentagePriceAdjustment {
  445. # The percentage value of the price adjustment.
  446. adjustmentPercentage: Int!
  447. }
  448. # A product variant represents a different version of a product, such as differing sizes or differing colors.
  449. type ProductVariant implements Node&HasMetafields {
  450. # Indicates if the product variant is available for sale.
  451. availableForSale: Boolean!
  452. # The barcode (for example, ISBN, UPC, or GTIN) associated with the variant.
  453. barcode: String
  454. # The compare at price of the variant. This can be used to mark a variant as on sale, when `compareAtPrice` is higher than `price`.
  455. compareAtPrice: MoneyV2
  456. # Whether a product is out of stock but still available for purchase (used for backorders).
  457. currentlyNotInStock: Boolean!
  458. # A globally-unique identifier.
  459. id: ID!
  460. # Image associated with the product variant. This field falls back to the product image if no image is available.
  461. image: Image
  462. # Returns a metafield found by namespace and key.
  463. metafield(namespace: String!key: String!): Metafield
  464. # The metafields associated with the resource matching the supplied list of namespaces and keys.
  465. metafields(identifiers: [HasMetafieldsIdentifier!]!): [Metafield]!
  466. # The product variant’s price.
  467. price: MoneyV2!
  468. # The product object that the product variant belongs to.
  469. product: Product! @goField(forceResolver: true)
  470. # The total sellable quantity of the variant for online sales channels.
  471. quantityAvailable: Int
  472. # Whether a customer needs to provide a shipping address when placing an order for the product variant.
  473. requiresShipping: Boolean!
  474. # List of product options applied to the variant.
  475. selectedOptions: [SelectedOption!]! @goField(forceResolver: true)
  476. # Represents an association between a variant and a selling plan. Selling plan allocations describe which selling plans are available for each variant, and what their impact is on pricing.
  477. sellingPlanAllocations(
  478. first: Int
  479. after: String
  480. last: Int
  481. before: String
  482. reverse: Boolean = false
  483. ): SellingPlanAllocationConnection!
  484. # The SKU (stock keeping unit) associated with the variant.
  485. sku: String
  486. # The in-store pickup availability of this variant by location.
  487. storeAvailability(
  488. first: Int
  489. after: String
  490. last: Int
  491. before: String
  492. reverse: Boolean = false
  493. ): StoreAvailabilityConnection! @goField(forceResolver: true)
  494. # The product variant’s title.
  495. title: String! @goField(forceResolver: true)
  496. # The unit price value for the variant based on the variant's measurement.
  497. unitPrice: MoneyV2
  498. # The unit price measurement for the variant.
  499. unitPriceMeasurement: UnitPriceMeasurement
  500. # The weight of the product variant in the unit system specified with `weight_unit`.
  501. weight: Float
  502. # Unit of measurement for weight.
  503. weightUnit: WeightUnit!
  504. }
  505. # Properties used by customers to select a product variant.
  506. # Products can have multiple options, like different sizes or colors.
  507. type SelectedOption {
  508. # The product option’s name.
  509. name: String!
  510. # The product option’s value.
  511. value: String!
  512. }
  513. # An auto-generated type for paginating through multiple SellingPlanAllocations.
  514. type SellingPlanAllocationConnection {
  515. # A list of edges.
  516. edges: [SellingPlanAllocationEdge!]!
  517. # A list of the nodes contained in SellingPlanAllocationEdge.
  518. nodes: [SellingPlanAllocation!]!
  519. # Information to aid in pagination.
  520. pageInfo: PageInfo!
  521. }
  522. # An auto-generated type which holds one SellingPlanAllocation and a cursor during pagination.
  523. type SellingPlanAllocationEdge {
  524. # A cursor for use in pagination.
  525. cursor: String!
  526. # The item at the end of SellingPlanAllocationEdge.
  527. node: SellingPlanAllocation!
  528. }
  529. # Represents an association between a variant and a selling plan. Selling plan allocations describe the options offered for each variant, and the price of the variant when purchased with a selling plan.
  530. type SellingPlanAllocation {
  531. # The checkout charge amount due for the purchase.
  532. checkoutChargeAmount: MoneyV2!
  533. # A list of price adjustments, with a maximum of two. When there are two, the first price adjustment goes into effect at the time of purchase, while the second one starts after a certain number of orders. A price adjustment represents how a selling plan affects pricing when a variant is purchased with a selling plan. Prices display in the customer's currency if the shop is configured for it.
  534. priceAdjustments: [SellingPlanAllocationPriceAdjustment!]!
  535. # The remaining balance charge amount due for the purchase.
  536. remainingBalanceChargeAmount: MoneyV2!
  537. # A representation of how products and variants can be sold and purchased. For example, an individual selling plan could be '6 weeks of prepaid granola, delivered weekly'.
  538. sellingPlan: SellingPlan!
  539. }
  540. # The resulting prices for variants when they're purchased with a specific selling plan.
  541. type SellingPlanAllocationPriceAdjustment {
  542. # The price of the variant when it's purchased without a selling plan for the same number of deliveries. For example, if a customer purchases 6 deliveries of $10.00 granola separately, then the price is 6 x $10.00 = $60.00.
  543. compareAtPrice: MoneyV2!
  544. # The effective price for a single delivery. For example, for a prepaid subscription plan that includes 6 deliveries at the price of $48.00, the per delivery price is $8.00.
  545. perDeliveryPrice: MoneyV2!
  546. # The price of the variant when it's purchased with a selling plan For example, for a prepaid subscription plan that includes 6 deliveries of $10.00 granola, where the customer gets 20% off, the price is 6 x $10.00 x 0.80 = $48.00.
  547. price: MoneyV2!
  548. # The resulting price per unit for the variant associated with the selling plan. If the variant isn't sold by quantity or measurement, then this field returns `null`.
  549. unitPrice: MoneyV2
  550. }
  551. # An auto-generated type for paginating through multiple StoreAvailabilities.
  552. type StoreAvailabilityConnection {
  553. # A list of edges.
  554. edges: [StoreAvailabilityEdge!]!
  555. # A list of the nodes contained in StoreAvailabilityEdge.
  556. nodes: [StoreAvailability!]!
  557. # Information to aid in pagination.
  558. pageInfo: PageInfo!
  559. }
  560. # An auto-generated type which holds one StoreAvailability and a cursor during pagination.
  561. type StoreAvailabilityEdge {
  562. # A cursor for use in pagination.
  563. cursor: String!
  564. # The item at the end of StoreAvailabilityEdge.
  565. node: StoreAvailability!
  566. }
  567. # The availability of a product variant at a particular location.
  568. # Local pick-up must be enabled in the store's shipping settings, otherwise this will return an empty result.
  569. type StoreAvailability {
  570. # Whether the product variant is in-stock at this location.
  571. available: Boolean!
  572. # The location where this product variant is stocked at.
  573. location: Location! @provides(fields: "id")
  574. # Returns the estimated amount of time it takes for pickup to be ready (Example: Usually ready in 24 hours).
  575. pickUpTime: String!
  576. }
  577. # Represents a location where product inventory is held.
  578. extend type Location implements Node {
  579. # The address of the location.
  580. address: LocationAddress! @external
  581. # A globally-unique identifier.
  582. id: ID! @external
  583. # The name of the location.
  584. name: String! @external
  585. }
  586. # Represents the address of a location.
  587. extend type LocationAddress {
  588. # The first line of the address for the location.
  589. address1: String
  590. # The second line of the address for the location.
  591. address2: String
  592. # The city of the location.
  593. city: String
  594. # The country of the location.
  595. country: String
  596. # The country code of the location.
  597. countryCode: String
  598. # A formatted version of the address for the location.
  599. formatted: [String!]!
  600. # The latitude coordinates of the location.
  601. latitude: Float
  602. # The longitude coordinates of the location.
  603. longitude: Float
  604. # The phone number of the location.
  605. phone: String
  606. # The province of the location.
  607. province: String
  608. # The code for the province, state, or district of the address of the location.
  609. provinceCode: String
  610. # The ZIP code of the location.
  611. zip: String
  612. }
  613. # The measurement used to calculate a unit price for a product variant (e.g. $9.99 / 100ml).
  614. type UnitPriceMeasurement {
  615. # The type of unit of measurement for the unit price measurement.
  616. measuredType: UnitPriceMeasurementMeasuredType
  617. # The quantity unit for the unit price measurement.
  618. quantityUnit: UnitPriceMeasurementMeasuredUnit
  619. # The quantity value for the unit price measurement.
  620. quantityValue: Float!
  621. # The reference unit for the unit price measurement.
  622. referenceUnit: UnitPriceMeasurementMeasuredUnit
  623. # The reference value for the unit price measurement.
  624. referenceValue: Int!
  625. }
  626. # The available options for transforming an image.
  627. # All transformation options are considered best effort. Any transformation that the original image type doesn't support will be ignored.
  628. input ImageTransformInput {
  629. # The region of the image to remain after cropping.
  630. # Must be used in conjunction with the maxWidth and/or maxHeight fields, where the maxWidth and maxHeight aren't equal.
  631. # The crop argument should coincide with the smaller value. A smaller maxWidth indicates a LEFT or RIGHT crop, while
  632. # a smaller maxHeight indicates a TOP or BOTTOM crop. For example, { maxWidth: 5, maxHeight: 10, crop: LEFT } will result
  633. # in an image with a width of 5 and height of 10, where the right side of the image is removed.
  634. crop: CropRegion
  635. # Image width in pixels between 1 and 5760.
  636. maxWidth: Int
  637. # Image height in pixels between 1 and 5760.
  638. maxHeight: Int
  639. # Image size multiplier for high-resolution retina displays. Must be within 1..3.
  640. scale: Int = 1
  641. # Convert the source image into the preferred content type.
  642. # Supported conversions: .svg to .png, any file type to .jpg, and any file type to .webp.
  643. preferredContentType: ImageContentType
  644. }
  645. # Identifies a metafield on an owner resource by namespace and key.
  646. input HasMetafieldsIdentifier {
  647. # A container for a set of metafields.
  648. namespace: String!
  649. # The identifier for the metafield.
  650. key: String!
  651. }
  652. input ProductFilter {
  653. # Filter on if the product is available for sale.
  654. available: Boolean
  655. # A variant option to filter on.
  656. variantOption: VariantOptionFilter
  657. # The product type to filter on.
  658. productType: String
  659. # The product vendor to filter on.
  660. productVendor: String
  661. # A range of prices to filter with-in.
  662. price: PriceRangeFilter
  663. # A product metafield to filter on.
  664. productMetafield: MetafieldFilter
  665. # A variant metafield to filter on.
  666. variantMetafield: MetafieldFilter
  667. }
  668. # A filter used to view a subset of products in a collection matching a specific price range.
  669. input PriceRangeFilter {
  670. # The minimum price in the range. Defaults to zero.
  671. min: Float = 0
  672. # The maximum price in the range. Empty indicates no max price.
  673. max: Float
  674. }
  675. input VariantOptionFilter {
  676. # The name of the variant option to filter on.
  677. name: String!
  678. # The value of the variant option to filter on.
  679. value: String!
  680. }
  681. # Specifies the input fields required for a selected option.
  682. input SelectedOptionInput {
  683. # The product option’s name.
  684. name: String!
  685. # The product option’s value.
  686. value: String!
  687. }
  688. # Metafields represent custom metadata attached to a resource.
  689. # Metafields can be sorted into namespaces and are comprised of keys, values, and value types.
  690. type Metafield implements Node {
  691. # The date and time when the storefront metafield was created.
  692. createdAt: DateTime!
  693. # The description of a metafield.
  694. description: String
  695. # A globally-unique identifier.
  696. id: ID!
  697. # The key name for a metafield.
  698. key: String!
  699. # The namespace for a metafield.
  700. namespace: String!
  701. # The parent object that the metafield belongs to.
  702. parentResource: MetafieldParentResource!
  703. # Returns a reference object if the metafield definition's type is a resource reference.
  704. reference: MetafieldReference
  705. # A list of reference objects if the metafield's type is a resource reference list.
  706. references(
  707. first: Int
  708. after: String
  709. last: Int
  710. before: String
  711. ): MetafieldReferenceConnection
  712. # The type name of the metafield. See the list of supported types.
  713. type: String!
  714. # The date and time when the storefront metafield was updated.
  715. updatedAt: DateTime!
  716. # The value of a metafield.
  717. value: String!
  718. }
  719. # An auto-generated type for paginating through multiple MetafieldReferences.
  720. type MetafieldReferenceConnection {
  721. # A list of edges.
  722. edges: [MetafieldReferenceEdge!]!
  723. # A list of the nodes contained in MetafieldReferenceEdge.
  724. nodes: [MetafieldReference!]!
  725. # Information to aid in pagination.
  726. pageInfo: PageInfo!
  727. }
  728. # Returns information about pagination in a connection, in accordance with the Relay specification.
  729. type PageInfo {
  730. # The cursor corresponding to the last node in edges.
  731. endCursor: String
  732. # Whether there are more pages to fetch following the current page.
  733. hasNextPage: Boolean!
  734. # Whether there are any pages prior to the current page.
  735. hasPreviousPage: Boolean!
  736. # The cursor corresponding to the first node in edges.
  737. startCursor: String
  738. }
  739. type MetafieldReferenceEdge {
  740. # A cursor for use in pagination.
  741. cursor: String!
  742. # The item at the end of MetafieldReferenceEdge.
  743. node: MetafieldReference!
  744. }
  745. # A filter used to view a subset of products in a collection matching a specific metafield value.
  746. #
  747. # Only the following metafield types are currently supported:
  748. #
  749. # number_integer
  750. # number_decimal
  751. # single_line_text_field
  752. # boolean as of 2022-04.
  753. input MetafieldFilter {
  754. # The namespace of the metafield to filter on.
  755. namespace: String!
  756. # The key of the metafield to filter on.
  757. key: String!
  758. # The value of the metafield.
  759. value: String!
  760. }
  761. enum CollectionSortKeys {
  762. # Sort by the `id` value.
  763. ID,
  764. # Sort by relevance to the search terms when the `query` parameter is specified on the connection. Don't use this sort key when no search query is specified.
  765. RELEVANCE,
  766. # Sort by the `title` value.
  767. TITLE,
  768. # Sort by the `updated_at` value.
  769. UPDATED_AT
  770. }
  771. enum CollectionSortOrder {
  772. # Alphabetically, in ascending order (A - Z).
  773. ALPHA_ASC,
  774. # Alphabetically, in descending order (Z - A).
  775. ALPHA_DESC,
  776. # By best-selling products.
  777. BEST_SELLING,
  778. # By date created, in ascending order (oldest - newest).
  779. CREATED,
  780. # By date created, in descending order (newest - oldest).
  781. CREATED_DESC,
  782. # In the order set manually by the merchant.
  783. MANUAL,
  784. # By price, in ascending order (lowest - highest).
  785. PRICE_ASC,
  786. # By price, in descending order (highest - lowest).
  787. PRICE_DESC
  788. }
  789. enum ProductCollectionSortKeys {
  790. # Sort by the `best-selling` value.
  791. BEST_SELLING,
  792. # Sort by the `collection-default` value.
  793. COLLECTION_DEFAULT,
  794. # Sort by the `created` value.
  795. CREATED,
  796. # Sort by the `id` value.
  797. ID,
  798. # Sort by the `manual` value.
  799. MANUAL,
  800. # Sort by the `price` value.
  801. PRICE,
  802. # Sort by relevance to the search terms when the `query` parameter is specified on the connection. Don't use this sort key when no search query is specified.
  803. RELEVANCE,
  804. # Sort by the `title` value.
  805. TITLE
  806. }
  807. # List of supported image content types.
  808. enum ImageContentType {
  809. # A PNG image.
  810. PNG
  811. # A JPG image.
  812. JPG
  813. # A WEBP image.
  814. WEBP
  815. }
  816. # The part of the image that should remain after cropping.
  817. enum CropRegion {
  818. # Keep the center of the image.
  819. CENTER
  820. # Keep the top of the image.
  821. TOP
  822. # Keep the bottom of the image.
  823. BOTTOM
  824. # Keep the left of the image.
  825. LEFT
  826. # Keep the right of the image.
  827. RIGHT
  828. }
  829. # The type of data that the filter group represents.
  830. #
  831. # For more information, refer to [Filter products in a collection with the Storefront API]
  832. # (https://shopify.dev/custom-storefronts/products-collections/filter-products).
  833. enum FilterType {
  834. # A list of selectable values.
  835. LIST
  836. # A range of prices.
  837. PRICE_RANGE
  838. # A boolean value.
  839. BOOLEAN
  840. }
  841. # The three-letter currency codes that represent the world currencies used in stores. These include standard ISO 4217 codes, legacy codes, and non-standard codes.
  842. enum CurrencyCode {
  843. # United Arab Emirates Dirham (AED).
  844. AED
  845. # Afghan Afghani (AFN).
  846. AFN
  847. # Albanian Lek (ALL).
  848. ALL
  849. # Armenian Dram (AMD).
  850. AMD
  851. # Netherlands Antillean Guilder.
  852. ANG
  853. # Angolan Kwanza (AOA).
  854. AOA
  855. # Argentine Pesos (ARS).
  856. ARS
  857. # Australian Dollars (AUD).
  858. AUD
  859. # Aruban Florin (AWG).
  860. AWG
  861. # Azerbaijani Manat (AZN).
  862. AZN
  863. # Bosnia and Herzegovina Convertible Mark (BAM).
  864. BAM
  865. # Barbadian Dollar (BBD).
  866. BBD
  867. # Bangladesh Taka (BDT).
  868. BDT
  869. # Bulgarian Lev (BGN).
  870. BGN
  871. # Bahraini Dinar (BHD).
  872. BHD
  873. # Burundian Franc (BIF).
  874. BIF
  875. # Bermudian Dollar (BMD).
  876. BMD
  877. # Brunei Dollar (BND).
  878. BND
  879. # Bolivian Boliviano (BOB).
  880. BOB
  881. # Brazilian Real (BRL).
  882. BRL
  883. # Bahamian Dollar (BSD).
  884. BSD
  885. # Bhutanese Ngultrum (BTN).
  886. BTN
  887. # Botswana Pula (BWP).
  888. BWP
  889. # Belarusian Ruble (BYN).
  890. BYN
  891. # Belize Dollar (BZD).
  892. BZD
  893. # Canadian Dollars (CAD).
  894. CAD
  895. # Congolese franc (CDF).
  896. CDF
  897. # Swiss Francs (CHF).
  898. CHF
  899. # Chilean Peso (CLP).
  900. CLP
  901. # Chinese Yuan Renminbi (CNY).
  902. CNY
  903. # Colombian Peso (COP).
  904. COP
  905. # Costa Rican Colones (CRC).
  906. CRC
  907. # Cape Verdean escudo (CVE).
  908. CVE
  909. # Czech Koruny (CZK).
  910. CZK
  911. # Djiboutian Franc (DJF).
  912. DJF
  913. # Danish Kroner (DKK).
  914. DKK
  915. # Dominican Peso (DOP).
  916. DOP
  917. # Algerian Dinar (DZD).
  918. DZD
  919. # Egyptian Pound (EGP).
  920. EGP
  921. # Eritrean Nakfa (ERN).
  922. ERN
  923. # Ethiopian Birr (ETB).
  924. ETB
  925. # Euro (EUR).
  926. EUR
  927. # Fijian Dollars (FJD).
  928. FJD
  929. # Falkland Islands Pounds (FKP).
  930. FKP
  931. # United Kingdom Pounds (GBP).
  932. GBP
  933. # Georgian Lari (GEL).
  934. GEL
  935. # Ghanaian Cedi (GHS).
  936. GHS
  937. # Gibraltar Pounds (GIP).
  938. GIP
  939. # Gambian Dalasi (GMD).
  940. GMD
  941. # Guinean Franc (GNF).
  942. GNF
  943. # Guatemalan Quetzal (GTQ).
  944. GTQ
  945. # Guyanese Dollar (GYD).
  946. GYD
  947. # Hong Kong Dollars (HKD).
  948. HKD
  949. # Honduran Lempira (HNL).
  950. HNL
  951. # Croatian Kuna (HRK).
  952. HRK
  953. # Haitian Gourde (HTG).
  954. HTG
  955. # Hungarian Forint (HUF).
  956. HUF
  957. # Indonesian Rupiah (IDR).
  958. IDR
  959. # Israeli New Shekel (NIS).
  960. ILS
  961. # Indian Rupees (INR).
  962. INR
  963. # Iraqi Dinar (IQD).
  964. IQD
  965. # Iranian Rial (IRR).
  966. IRR
  967. # Icelandic Kronur (ISK).
  968. ISK
  969. # Jersey Pound.
  970. JEP
  971. # Jamaican Dollars (JMD).
  972. JMD
  973. # Jordanian Dinar (JOD).
  974. JOD
  975. # Japanese Yen (JPY).
  976. JPY
  977. # Kenyan Shilling (KES).
  978. KES
  979. # Kyrgyzstani Som (KGS).
  980. KGS
  981. # Cambodian Riel.
  982. KHR
  983. # Kiribati Dollar (KID).
  984. KID
  985. # Comorian Franc (KMF).
  986. KMF
  987. # South Korean Won (KRW).
  988. KRW
  989. # Kuwaiti Dinar (KWD).
  990. KWD
  991. # Cayman Dollars (KYD).
  992. KYD
  993. # Kazakhstani Tenge (KZT).
  994. KZT
  995. # Laotian Kip (LAK).
  996. LAK
  997. # Lebanese Pounds (LBP).
  998. LBP
  999. # Sri Lankan Rupees (LKR).
  1000. LKR
  1001. # Liberian Dollar (LRD).
  1002. LRD
  1003. # Lesotho Loti (LSL).
  1004. LSL
  1005. # Lithuanian Litai (LTL).
  1006. LTL
  1007. # Latvian Lati (LVL).
  1008. LVL
  1009. # Libyan Dinar (LYD).
  1010. LYD
  1011. # Moroccan Dirham.
  1012. MAD
  1013. # Moldovan Leu (MDL).
  1014. MDL
  1015. # Malagasy Ariary (MGA).
  1016. MGA
  1017. # Macedonia Denar (MKD).
  1018. MKD
  1019. # Burmese Kyat (MMK).
  1020. MMK
  1021. # Mongolian Tugrik.
  1022. MNT
  1023. # Macanese Pataca (MOP).
  1024. MOP
  1025. # Mauritanian Ouguiya (MRU).
  1026. MRU
  1027. # Mauritian Rupee (MUR).
  1028. MUR
  1029. # Maldivian Rufiyaa (MVR).
  1030. MVR
  1031. # Malawian Kwacha (MWK).
  1032. MWK
  1033. # Mexican Pesos (MXN).
  1034. MXN
  1035. # Malaysian Ringgits (MYR).
  1036. MYR
  1037. # Mozambican Metical.
  1038. MZN
  1039. # Namibian Dollar.
  1040. NAD
  1041. # Nigerian Naira (NGN).
  1042. NGN
  1043. # Nicaraguan Córdoba (NIO).
  1044. NIO
  1045. # Norwegian Kroner (NOK).
  1046. NOK
  1047. # Nepalese Rupee (NPR).
  1048. NPR
  1049. # New Zealand Dollars (NZD).
  1050. NZD
  1051. # Omani Rial (OMR).
  1052. OMR
  1053. # Panamian Balboa (PAB).
  1054. PAB
  1055. # Peruvian Nuevo Sol (PEN).
  1056. PEN
  1057. # Papua New Guinean Kina (PGK).
  1058. PGK
  1059. # Philippine Peso (PHP).
  1060. PHP
  1061. # Pakistani Rupee (PKR).
  1062. PKR
  1063. # Polish Zlotych (PLN).
  1064. PLN
  1065. # Paraguayan Guarani (PYG).
  1066. PYG
  1067. # Qatari Rial (QAR).
  1068. QAR
  1069. # Romanian Lei (RON).
  1070. RON
  1071. # Serbian dinar (RSD).
  1072. RSD
  1073. # Russian Rubles (RUB).
  1074. RUB
  1075. # Rwandan Franc (RWF).
  1076. RWF
  1077. # Saudi Riyal (SAR).
  1078. SAR
  1079. # Solomon Islands Dollar (SBD).
  1080. SBD
  1081. # Seychellois Rupee (SCR).
  1082. SCR
  1083. # Sudanese Pound (SDG).
  1084. SDG
  1085. # Swedish Kronor (SEK).
  1086. SEK
  1087. # Singapore Dollars (SGD).
  1088. SGD
  1089. # Saint Helena Pounds (SHP).
  1090. SHP
  1091. # Sierra Leonean Leone (SLL).
  1092. SLL
  1093. # Somali Shilling (SOS).
  1094. SOS
  1095. # Surinamese Dollar (SRD).
  1096. SRD
  1097. # South Sudanese Pound (SSP).
  1098. SSP
  1099. # Sao Tome And Principe Dobra (STN).
  1100. STN
  1101. # Syrian Pound (SYP).
  1102. SYP
  1103. # Swazi Lilangeni (SZL).
  1104. SZL
  1105. # Thai baht (THB).
  1106. THB
  1107. # Tajikistani Somoni (TJS).
  1108. TJS
  1109. # Turkmenistani Manat (TMT).
  1110. TMT
  1111. # Tunisian Dinar (TND).
  1112. TND
  1113. # Tongan Pa'anga (TOP).
  1114. TOP
  1115. # Turkish Lira (TRY).
  1116. TRY
  1117. # Trinidad and Tobago Dollars (TTD).
  1118. TTD
  1119. # Taiwan Dollars (TWD).
  1120. TWD
  1121. # Tanzanian Shilling (TZS).
  1122. TZS
  1123. # Ukrainian Hryvnia (UAH).
  1124. UAH
  1125. # Ugandan Shilling (UGX).
  1126. UGX
  1127. # United States Dollars (USD).
  1128. USD
  1129. # Uruguayan Pesos (UYU).
  1130. UYU
  1131. # Uzbekistan som (UZS).
  1132. UZS
  1133. # Venezuelan Bolivares (VED).
  1134. VED
  1135. # Venezuelan Bolivares (VES).
  1136. VES
  1137. # Vietnamese đồng (VND).
  1138. VND
  1139. # Vanuatu Vatu (VUV).
  1140. VUV
  1141. # Samoan Tala (WST).
  1142. WST
  1143. # Central African CFA Franc (XAF).
  1144. XAF
  1145. # East Caribbean Dollar (XCD).
  1146. XCD
  1147. # West African CFA franc (XOF).
  1148. XOF
  1149. # CFP Franc (XPF).
  1150. XPF
  1151. # Unrecognized currency.
  1152. XXX
  1153. # Yemeni Rial (YER).
  1154. YER
  1155. # South African Rand (ZAR).
  1156. ZAR
  1157. # Zambian Kwacha (ZMW).
  1158. ZMW
  1159. # Belarusian Ruble (BYR).
  1160. BYR @deprecated
  1161. }
  1162. type ProductVariantConnection {
  1163. # A list of edges.
  1164. edges: [ProductVariantEdge!]!
  1165. # A list of the nodes contained in ProductVariantEdge.
  1166. nodes: [ProductVariant!]!
  1167. # Information to aid in pagination.
  1168. pageInfo: PageInfo!
  1169. }
  1170. type ProductVariantEdge {
  1171. # A cursor for use in pagination.
  1172. cursor: String!
  1173. # The item at the end of ProductVariantEdge.
  1174. node: ProductVariant!
  1175. }
  1176. # The set of valid sort keys for the ProductVariant query.
  1177. enum ProductVariantSortKeys {
  1178. # Sort by the `title` value.
  1179. TITLE
  1180. # Sort by the `sku` value.
  1181. SKU
  1182. # Sort by the `position` value.
  1183. POSITION
  1184. # Sort by the `id` value.
  1185. ID
  1186. # Sort by relevance to the search terms when the `query` parameter is specified on the connection.
  1187. # Don't use this sort key when no search query is specified.
  1188. RELEVANCE
  1189. }
  1190. # The set of valid sort keys for the ProductImage query.
  1191. enum ProductImageSortKeys {
  1192. # Sort by the `created_at` value.
  1193. CREATED_AT
  1194. # Sort by the `id` value.
  1195. ID
  1196. # Sort by the `position` value.
  1197. POSITION
  1198. # Sort by relevance to the search terms when the `query` parameter is specified on the connection. Don't use this sort key when no search query is specified.
  1199. RELEVANCE
  1200. }
  1201. # The set of valid sort keys for the ProductMedia query.
  1202. enum ProductMediaSortKeys {
  1203. # Sort by the `id` value.
  1204. ID
  1205. # Sort by the `position` value.
  1206. POSITION
  1207. # Sort by relevance to the search terms when the `query` parameter is specified on the connection. Don't use this sort key when no search query is specified.
  1208. RELEVANCE
  1209. }
  1210. # The possible content types for a media object.
  1211. enum MediaContentType {
  1212. # An externally hosted video.
  1213. EXTERNAL_VIDEO
  1214. # A Shopify hosted image.
  1215. IMAGE
  1216. # A 3d model.
  1217. MODEL_3D
  1218. # A Shopify hosted video.
  1219. VIDEO
  1220. }
  1221. # The checkout charge when the full amount isn't charged at checkout.
  1222. enum SellingPlanCheckoutChargeType {
  1223. # The checkout charge is a percentage of the product or variant price.
  1224. PERCENTAGE
  1225. # The checkout charge is a fixed price amount.
  1226. PRICE
  1227. }
  1228. # Units of measurement for weight.
  1229. enum WeightUnit {
  1230. # 1 kilogram equals 1000 grams.
  1231. KILOGRAMS
  1232. # Metric system unit of mass.
  1233. GRAMS
  1234. # 1 pound equals 16 ounces.
  1235. POUNDS
  1236. # Imperial system unit of mass.
  1237. OUNCES
  1238. }
  1239. # The accepted types of unit of measurement.
  1240. enum UnitPriceMeasurementMeasuredType {
  1241. # Unit of measurements representing areas.
  1242. AREA
  1243. # Unit of measurements representing lengths.
  1244. LENGTH
  1245. # Unit of measurements representing volumes.
  1246. VOLUME
  1247. # Unit of measurements representing weights.
  1248. WEIGHT
  1249. }
  1250. # The valid units of measurement for a unit price measurement.
  1251. enum UnitPriceMeasurementMeasuredUnit {
  1252. # 100 centiliters equals 1 liter.
  1253. CL
  1254. # 100 centimeters equals 1 meter.
  1255. CM
  1256. # Metric system unit of weight.
  1257. G
  1258. # 1 kilogram equals 1000 grams.
  1259. KG
  1260. # Metric system unit of volume.
  1261. L
  1262. # Metric system unit of length.
  1263. M
  1264. # Metric system unit of area.
  1265. M2
  1266. # 1 cubic meter equals 1000 liters.
  1267. M3
  1268. # 1000 milligrams equals 1 gram.
  1269. MG
  1270. # 1000 milliliters equals 1 liter.
  1271. ML
  1272. # 1000 millimeters equals 1 meter.
  1273. MM
  1274. }
  1275. # ISO 639-1 language codes supported by Shopify.
  1276. enum LanguageCode {
  1277. # Afrikaans
  1278. AF
  1279. # Akan
  1280. AK
  1281. # Amharic
  1282. AM
  1283. # Arabic
  1284. AR
  1285. # Assamese
  1286. AS
  1287. # Azerbaijani
  1288. AZ
  1289. # Belarusian
  1290. BE
  1291. # Bulgarian
  1292. BG
  1293. # Bambara
  1294. BM
  1295. # Bangla
  1296. BN
  1297. # Tibetan
  1298. BO
  1299. # Breton
  1300. BR
  1301. # Bosnian
  1302. BS
  1303. # Catalan
  1304. CA
  1305. # Chechen
  1306. CE
  1307. # Czech
  1308. CS
  1309. # Church Slavic
  1310. CU
  1311. # Welsh
  1312. CY
  1313. # Danish
  1314. DA
  1315. # German
  1316. DE
  1317. # Dzongkha
  1318. DZ
  1319. # Ewe
  1320. EE
  1321. # Greek
  1322. EL
  1323. # English
  1324. EN
  1325. # Esperanto
  1326. EO
  1327. # Spanish
  1328. ES
  1329. # Estonian
  1330. ET
  1331. # Basque
  1332. EU
  1333. # Persian
  1334. FA
  1335. # Fulah
  1336. FF
  1337. # Finnish
  1338. FI
  1339. # Faroese
  1340. FO
  1341. # French
  1342. FR
  1343. # Western Frisian
  1344. FY
  1345. # Irish
  1346. GA
  1347. # Scottish Gaelic
  1348. GD
  1349. # Galician
  1350. GL
  1351. # Gujarati
  1352. GU
  1353. # Manx
  1354. GV
  1355. # Hausa
  1356. HA
  1357. # Hebrew
  1358. HE
  1359. # Hindi
  1360. HI
  1361. # Croatian
  1362. HR
  1363. # Hungarian
  1364. HU
  1365. # Armenian
  1366. HY
  1367. # Interlingua
  1368. IA
  1369. # Indonesian
  1370. ID
  1371. # Igbo
  1372. IG
  1373. # Sichuan Yi
  1374. II
  1375. # Icelandic
  1376. IS
  1377. # Italian
  1378. IT
  1379. # Japanese
  1380. JA
  1381. # Javanese
  1382. JV
  1383. # Georgian.
  1384. KA
  1385. # Kikuyu.
  1386. KI
  1387. # Kazakh.
  1388. KK
  1389. # Kalaallisut.
  1390. KL
  1391. # Khmer.
  1392. KM
  1393. # Kannada.
  1394. KN
  1395. # Korean.
  1396. KO
  1397. # Kashmiri.
  1398. KS
  1399. # Kurdish.
  1400. KU
  1401. # Cornish.
  1402. KW
  1403. # Kyrgyz.
  1404. KY
  1405. # Luxembourgish.
  1406. LB
  1407. # Ganda.
  1408. LG
  1409. # Lingala.
  1410. LN
  1411. # Lao.
  1412. LO
  1413. # Lithuanian.
  1414. LT
  1415. # Luba-Katanga.
  1416. LU
  1417. # Latvian.
  1418. LV
  1419. # Malagasy.
  1420. MG
  1421. # Māori.
  1422. MI
  1423. # Macedonian.
  1424. MK
  1425. # Malayalam.
  1426. ML
  1427. # Mongolian.
  1428. MN
  1429. # Marathi.
  1430. MR
  1431. # Malay.
  1432. MS
  1433. # Maltese.
  1434. MT
  1435. # Burmese.
  1436. MY
  1437. # Norwegian (Bokmål).
  1438. NB
  1439. # North Ndebele.
  1440. ND
  1441. # Nepali.
  1442. NE
  1443. # Dutch.
  1444. NL
  1445. # Norwegian Nynorsk.
  1446. NN
  1447. # Norwegian.
  1448. NO
  1449. # Oromo.
  1450. OM
  1451. # Odia.
  1452. OR
  1453. # Ossetic.
  1454. OS
  1455. # Punjabi.
  1456. PA
  1457. # Polish.
  1458. PL
  1459. # Pashto.
  1460. PS
  1461. # Portuguese (Brazil).
  1462. PT_BR
  1463. # Portuguese (Portugal).
  1464. PT_PT
  1465. QU
  1466. # Quechua.
  1467. # Romansh.
  1468. RM
  1469. # Rundi.
  1470. RN
  1471. # Romanian.
  1472. RO
  1473. # Russian.
  1474. RU
  1475. # Kinyarwanda.
  1476. RW
  1477. # Sindhi.
  1478. SD
  1479. # Northern Sami.
  1480. SE
  1481. # Sango.
  1482. SG
  1483. # Sinhala.
  1484. SI
  1485. # Slovak.
  1486. SK
  1487. # Slovenian.
  1488. SL
  1489. # Shona.
  1490. SN
  1491. # Somali.
  1492. SO
  1493. # Albanian.
  1494. SQ
  1495. # Serbian.
  1496. SR
  1497. # Sundanese.
  1498. SU
  1499. # Swedish.
  1500. SV
  1501. # Swahili.
  1502. SW
  1503. # Tamil.
  1504. TA
  1505. # Telugu.
  1506. TE
  1507. # Tajik.
  1508. TG
  1509. # Thai.
  1510. TH
  1511. # Tigrinya.
  1512. TI
  1513. # Turkmen.
  1514. TK
  1515. # Tongan.
  1516. TO
  1517. # Turkish.
  1518. TR
  1519. # Tatar.
  1520. TT
  1521. # Uyghur.
  1522. UG
  1523. # Ukrainian.
  1524. UK
  1525. # Urdu.
  1526. UR
  1527. # Uzbek.
  1528. UZ
  1529. # Vietnamese.
  1530. VI
  1531. # Wolof.
  1532. WO
  1533. # Xhosa.
  1534. XH
  1535. # Yiddish.
  1536. YI
  1537. # Yoruba.
  1538. YO
  1539. # Chinese (Simplified).
  1540. ZH_CN
  1541. # Chinese (Traditional).
  1542. ZH_TW
  1543. # Zulu.
  1544. ZU
  1545. # Chinese.
  1546. ZH
  1547. # Portuguese.
  1548. PT
  1549. # Volapük.
  1550. VO
  1551. }
  1552. # The code designating a country/region, which generally follows ISO 3166-1 alpha-2 guidelines.
  1553. # If a territory doesn't have a country code value in the CountryCode enum, then it might be considered a subdivision
  1554. # of another country. For example, the territories associated with Spain are represented by the country code ES,
  1555. # and the territories associated with the United States of America are represented by the country code US.
  1556. enum CountryCode {
  1557. # Afghanistan.
  1558. AF
  1559. # Åland Islands.
  1560. AX
  1561. # Albania.
  1562. AL
  1563. # Algeria.
  1564. DZ
  1565. # Andorra.
  1566. AD
  1567. # Angola.
  1568. AO
  1569. # Anguilla.
  1570. AI
  1571. # Antigua & Barbuda.
  1572. AG
  1573. # Argentina.
  1574. AR
  1575. # Armenia.
  1576. AM
  1577. # Aruba.
  1578. AW
  1579. # Ascension Island.
  1580. AC
  1581. # Australia.
  1582. AU
  1583. # Austria.
  1584. AT
  1585. # Azerbaijan.
  1586. AZ
  1587. # Bahamas.
  1588. BS
  1589. # Bahrain.
  1590. BH
  1591. # Bangladesh.
  1592. BD
  1593. # Barbados.
  1594. BB
  1595. # Belarus.
  1596. BY
  1597. # Belgium.
  1598. BE
  1599. # Belize.
  1600. BZ
  1601. # Benin.
  1602. BJ
  1603. # Bermuda.
  1604. BM
  1605. # Bhutan.
  1606. BT
  1607. # Bolivia.
  1608. BO
  1609. # Bosnia & Herzegovina.
  1610. BA
  1611. # Botswana.
  1612. BW
  1613. # Bouvet Island.
  1614. BV
  1615. # Brazil.
  1616. BR
  1617. # British Indian Ocean Territory.
  1618. IO
  1619. # Brunei.
  1620. BN
  1621. # Bulgaria.
  1622. BG
  1623. # Burkina Faso.
  1624. BF
  1625. # Burundi.
  1626. BI
  1627. # Cambodia.
  1628. KH
  1629. # Canada.
  1630. CA
  1631. # Cape Verde.
  1632. CV
  1633. # Caribbean Netherlands.
  1634. BQ
  1635. # Cayman Islands.
  1636. KY
  1637. # Central African Republic.
  1638. CF
  1639. # Chad.
  1640. TD
  1641. # Chile.
  1642. CL
  1643. # China.
  1644. CN
  1645. # Christmas Island.
  1646. CX
  1647. # Cocos (Keeling) Islands.
  1648. CC
  1649. # Colombia.
  1650. CO
  1651. # Comoros.
  1652. KM
  1653. # Congo - Brazzaville.
  1654. CG
  1655. # Congo - Kinshasa.
  1656. CD
  1657. # Cook Islands.
  1658. CK
  1659. # Costa Rica.
  1660. CR
  1661. # Croatia.
  1662. HR
  1663. # Cuba.
  1664. CU
  1665. # Curaçao.
  1666. CW
  1667. # Cyprus.
  1668. CY
  1669. # Czechia.
  1670. CZ
  1671. # Côte d’Ivoire.
  1672. CI
  1673. # Denmark.
  1674. DK
  1675. # Djibouti.
  1676. DJ
  1677. # Dominica.
  1678. DM
  1679. # Dominican Republic.
  1680. DO
  1681. # Ecuador.
  1682. EC
  1683. # Egypt.
  1684. EG
  1685. # El Salvador.
  1686. SV
  1687. # Equatorial Guinea.
  1688. GQ
  1689. # Eritrea.
  1690. ER
  1691. # Estonia.
  1692. EE
  1693. # Eswatini.
  1694. SZ
  1695. # Ethiopia.
  1696. ET
  1697. # Falkland Islands.
  1698. FK
  1699. # Faroe Islands.
  1700. FO
  1701. # Fiji.
  1702. FJ
  1703. # Finland.
  1704. FI
  1705. # France.
  1706. FR
  1707. # French Guiana.
  1708. GF
  1709. # French Polynesia.
  1710. PF
  1711. # French Southern Territories.
  1712. TF
  1713. # Gabon.
  1714. GA
  1715. # Gambia.
  1716. GM
  1717. # Georgia.
  1718. GE
  1719. # Germany.
  1720. DE
  1721. # Ghana.
  1722. GH
  1723. # Gibraltar.
  1724. GI
  1725. # Greece.
  1726. GR
  1727. # Greenland.
  1728. GL
  1729. # Grenada.
  1730. GD
  1731. # Guadeloupe.
  1732. GP
  1733. # Guatemala.
  1734. GT
  1735. # Guernsey.
  1736. GG
  1737. # Guinea.
  1738. GN
  1739. # Guinea-Bissau.
  1740. GW
  1741. # Guyana.
  1742. GY
  1743. # Haiti.
  1744. HT
  1745. # Heard & McDonald Islands.
  1746. HM
  1747. # Vatican City.
  1748. VA
  1749. # Honduras.
  1750. HN
  1751. # Hong Kong SAR.
  1752. HK
  1753. # Hungary.
  1754. HU
  1755. # Iceland.
  1756. IS
  1757. # India.
  1758. IN
  1759. # Indonesia.
  1760. ID
  1761. # Iran.
  1762. IR
  1763. # Iraq.
  1764. IQ
  1765. # Ireland.
  1766. IE
  1767. # Isle of Man.
  1768. IM
  1769. # Israel.
  1770. IL
  1771. # Italy.
  1772. IT
  1773. # Jamaica.
  1774. JM
  1775. # Japan.
  1776. JP
  1777. # Jersey.
  1778. JE
  1779. # Jordan.
  1780. JO
  1781. # Kazakhstan.
  1782. KZ
  1783. # Kenya.
  1784. KE
  1785. # Kiribati.
  1786. KI
  1787. # North Korea.
  1788. KP
  1789. # Kosovo.
  1790. XK
  1791. # Kuwait.
  1792. KW
  1793. # Kyrgyzstan.
  1794. KG
  1795. # Laos.
  1796. LA
  1797. # Latvia.
  1798. LV
  1799. # Lebanon.
  1800. LB
  1801. # Lesotho.
  1802. LS
  1803. # Liberia.
  1804. LR
  1805. # Libya.
  1806. LY
  1807. # Liechtenstein.
  1808. LI
  1809. # Lithuania.
  1810. LT
  1811. # Luxembourg.
  1812. LU
  1813. # Macao SAR.
  1814. MO
  1815. # Madagascar.
  1816. MG
  1817. # Malawi.
  1818. MW
  1819. # Malaysia.
  1820. MY
  1821. # Maldives.
  1822. MV
  1823. # Mali.
  1824. ML
  1825. # Malta.
  1826. MT
  1827. # Martinique.
  1828. MQ
  1829. # Mauritania.
  1830. MR
  1831. # Mauritius.
  1832. MU
  1833. # Mayotte.
  1834. YT
  1835. # Mexico.
  1836. MX
  1837. # Moldova.
  1838. MD
  1839. # Monaco.
  1840. MC
  1841. # Mongolia.
  1842. MN
  1843. # Montenegro.
  1844. ME
  1845. # Montserrat.
  1846. MS
  1847. # Morocco.
  1848. MA
  1849. # Mozambique.
  1850. MZ
  1851. # Myanmar (Burma).
  1852. MM
  1853. # Namibia.
  1854. NA
  1855. # Nauru.
  1856. NR
  1857. # Nepal.
  1858. NP
  1859. # Netherlands.
  1860. NL
  1861. # Netherlands Antilles.
  1862. AN
  1863. # New Caledonia.
  1864. NC
  1865. # New Zealand.
  1866. NZ
  1867. # Nicaragua.
  1868. NI
  1869. # Niger.
  1870. NE
  1871. # Nigeria.
  1872. NG
  1873. # Niue.
  1874. NU
  1875. # Norfolk Island.
  1876. NF
  1877. # North Macedonia.
  1878. MK
  1879. # Norway.
  1880. NO
  1881. # Oman.
  1882. OM
  1883. # Pakistan.
  1884. PK
  1885. # Palestinian Territories.
  1886. PS
  1887. # Panama.
  1888. PA
  1889. # Papua New Guinea.
  1890. PG
  1891. # Paraguay.
  1892. PY
  1893. # Peru.
  1894. PE
  1895. # Philippines.
  1896. PH
  1897. # Pitcairn Islands.
  1898. PN
  1899. # Poland.
  1900. PL
  1901. # Portugal.
  1902. PT
  1903. # Qatar.
  1904. QA
  1905. # Cameroon.
  1906. CM
  1907. # Réunion.
  1908. RE
  1909. # Romania.
  1910. RO
  1911. # Russia.
  1912. RU
  1913. # Rwanda.
  1914. RW
  1915. # St. Barthélemy.
  1916. BL
  1917. # St. Helena.
  1918. SH
  1919. # St. Kitts & Nevis.
  1920. KN
  1921. # St. Lucia.
  1922. LC
  1923. # St. Martin.
  1924. MF
  1925. # St. Pierre & Miquelon.
  1926. PM
  1927. # Samoa.
  1928. WS
  1929. # San Marino.
  1930. SM
  1931. # São Tomé & Príncipe.
  1932. ST
  1933. # Saudi Arabia.
  1934. SA
  1935. # Senegal.
  1936. SN
  1937. # Serbia.
  1938. RS
  1939. # Seychelles.
  1940. SC
  1941. # Sierra Leone.
  1942. SL
  1943. # Singapore.
  1944. SG
  1945. # Sint Maarten.
  1946. SX
  1947. # Slovakia.
  1948. SK
  1949. # Slovenia.
  1950. SI
  1951. # Solomon Islands.
  1952. SB
  1953. # Somalia.
  1954. SO
  1955. # South Africa.
  1956. ZA
  1957. # South Georgia & South Sandwich Islands.
  1958. GS
  1959. # South Korea.
  1960. KR
  1961. # South Sudan.
  1962. SS
  1963. # Spain.
  1964. ES
  1965. # Sri Lanka.
  1966. LK
  1967. # St. Vincent & Grenadines.
  1968. VC
  1969. # Sudan.
  1970. SD
  1971. # Suriname.
  1972. SR
  1973. # Svalbard & Jan Mayen.
  1974. SJ
  1975. # Sweden.
  1976. SE
  1977. # Switzerland.
  1978. CH
  1979. # Syria.
  1980. SY
  1981. # Taiwan.
  1982. TW
  1983. # Tajikistan.
  1984. TJ
  1985. # Tanzania.
  1986. TZ
  1987. # Thailand.
  1988. TH
  1989. # Timor-Leste.
  1990. TL
  1991. # Togo.
  1992. TG
  1993. # Tokelau.
  1994. TK
  1995. # Tonga.
  1996. TO
  1997. # Trinidad & Tobago.
  1998. TT
  1999. # Tristan da Cunha.
  2000. TA
  2001. # Tunisia.
  2002. TN
  2003. # Turkey.
  2004. TR
  2005. # Turkmenistan.
  2006. TM
  2007. # Turks & Caicos Islands.
  2008. TC
  2009. # Tuvalu.
  2010. TV
  2011. # Uganda.
  2012. UG
  2013. # Ukraine.
  2014. UA
  2015. # United Arab Emirates.
  2016. AE
  2017. # United Kingdom.
  2018. GB
  2019. # United States.
  2020. US
  2021. # U.S. Outlying Islands.
  2022. UM
  2023. # Uruguay.
  2024. UY
  2025. # Uzbekistan.
  2026. UZ
  2027. # Vanuatu.
  2028. VU
  2029. # Venezuela.
  2030. VE
  2031. # Vietnam.
  2032. VN
  2033. # British Virgin Islands.
  2034. VG
  2035. # Wallis & Futuna.
  2036. WF
  2037. # Western Sahara.
  2038. EH
  2039. # Yemen.
  2040. YE
  2041. # Zambia.
  2042. ZM
  2043. # Zimbabwe.
  2044. ZW
  2045. # Unknown Region.
  2046. ZZ
  2047. }