product.graphql 57 KB

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