schema.graphql 56 KB

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