schema.graphqls 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375
  1. # Copyright © Magento, Inc. All rights reserved.
  2. # See COPYING.txt for license details.
  3. type Query {
  4. customer: Customer @resolver(class: "Magento\\CustomerGraphQl\\Model\\Resolver\\Customer") @doc(description: "The customer query returns information about a customer account")
  5. }
  6. type Mutation {
  7. generateCustomerToken(email: String!, password: String!): CustomerToken @resolver(class: "\\Magento\\CustomerGraphQl\\Model\\Resolver\\GenerateCustomerToken") @doc(description:"Retrieve the customer token")
  8. changeCustomerPassword(currentPassword: String!, newPassword: String!): Customer @resolver(class: "\\Magento\\CustomerGraphQl\\Model\\Resolver\\ChangePassword") @doc(description:"Changes the password for the logged-in customer")
  9. createCustomer (input: CustomerInput!): CustomerOutput @resolver(class: "\\Magento\\CustomerGraphQl\\Model\\Resolver\\CreateCustomer") @doc(description:"Create customer account")
  10. updateCustomer (input: CustomerInput!): CustomerOutput @resolver(class: "\\Magento\\CustomerGraphQl\\Model\\Resolver\\UpdateCustomer") @doc(description:"Update the customer's personal information")
  11. revokeCustomerToken: RevokeCustomerTokenOutput @resolver(class: "\\Magento\\CustomerGraphQl\\Model\\Resolver\\RevokeCustomerToken") @doc(description:"Revoke the customer token")
  12. createCustomerAddress(input: CustomerAddressInput!): CustomerAddress @resolver(class: "Magento\\CustomerGraphQl\\Model\\Resolver\\CreateCustomerAddress") @doc(description: "Create customer address")
  13. updateCustomerAddress(id: Int!, input: CustomerAddressInput): CustomerAddress @resolver(class: "Magento\\CustomerGraphQl\\Model\\Resolver\\UpdateCustomerAddress") @doc(description: "Update customer address")
  14. deleteCustomerAddress(id: Int!): Boolean @resolver(class: "Magento\\CustomerGraphQl\\Model\\Resolver\\DeleteCustomerAddress") @doc(description: "Delete customer address")
  15. }
  16. input CustomerAddressInput {
  17. firstname: String @doc(description: "The first name of the person associated with the shipping/billing address")
  18. lastname: String @doc(description: "The family name of the person associated with the shipping/billing address")
  19. company: String @doc(description: "The customer's company")
  20. telephone: String @doc(description: "The telephone number")
  21. street: [String] @doc(description: "An array of strings that define the street number and name")
  22. city: String @doc(description: "The city or town")
  23. region: CustomerAddressRegionInput @doc(description: "An object containing the region name, region code, and region ID")
  24. postcode: String @doc(description: "The customer's ZIP or postal code")
  25. country_id: CountryCodeEnum @doc(description: "The customer's country")
  26. default_shipping: Boolean @doc(description: "Indicates whether the address is the default shipping address")
  27. default_billing: Boolean @doc(description: "Indicates whether the address is the default billing address")
  28. fax: String @doc(description: "The fax number")
  29. middlename: String @doc(description: "The middle name of the person associated with the shipping/billing address")
  30. prefix: String @doc(description: "An honorific, such as Dr., Mr., or Mrs.")
  31. suffix: String @doc(description: "A value such as Sr., Jr., or III")
  32. vat_id: String @doc(description: "The customer's Tax/VAT number (for corporate customers)")
  33. custom_attributes: [CustomerAddressAttributeInput] @doc(description: "Address custom attributes")
  34. }
  35. input CustomerAddressRegionInput @doc(description: "CustomerAddressRegionInput defines the customer's state or province") {
  36. region_code: String @doc(description: "The address region code")
  37. region: String @doc(description: "The state or province name")
  38. region_id: Int @doc(description: "Uniquely identifies the region")
  39. }
  40. input CustomerAddressAttributeInput {
  41. attribute_code: String! @doc(description: "Attribute code")
  42. value: String! @doc(description: "Attribute value")
  43. }
  44. type CustomerToken {
  45. token: String @doc(description: "The customer token")
  46. }
  47. input CustomerInput {
  48. prefix: String @doc(description: "An honorific, such as Dr., Mr., or Mrs.")
  49. firstname: String @doc(description: "The customer's first name")
  50. middlename: String @doc(description: "The customer's middle name")
  51. lastname: String @doc(description: "The customer's family name")
  52. suffix: String @doc(description: "A value such as Sr., Jr., or III")
  53. email: String @doc(description: "The customer's email address. Required")
  54. dob: String @doc(description: "The customer's date of birth")
  55. taxvat: String @doc(description: "The customer's Tax/VAT number (for corporate customers)")
  56. gender: Int @doc(description: "The customer's gender(Male - 1, Female - 2)")
  57. password: String @doc(description: "The customer's password")
  58. is_subscribed: Boolean @doc(description: "Indicates whether the customer is subscribed to the company's newsletter")
  59. }
  60. type CustomerOutput {
  61. customer: Customer!
  62. }
  63. type RevokeCustomerTokenOutput {
  64. result: Boolean!
  65. }
  66. type Customer @doc(description: "Customer defines the customer name and address and other details") {
  67. created_at: String @doc(description: "Timestamp indicating when the account was created")
  68. group_id: Int @doc(description: "The group assigned to the user. Default values are 0 (Not logged in), 1 (General), 2 (Wholesale), and 3 (Retailer)")
  69. prefix: String @doc(description: "An honorific, such as Dr., Mr., or Mrs.")
  70. firstname: String @doc(description: "The customer's first name")
  71. middlename: String @doc(description: "The customer's middle name")
  72. lastname: String @doc(description: "The customer's family name")
  73. suffix: String @doc(description: "A value such as Sr., Jr., or III")
  74. email: String @doc(description: "The customer's email address. Required")
  75. default_billing: String @doc(description: "The ID assigned to the billing address")
  76. default_shipping: String @doc(description: "The ID assigned to the shipping address")
  77. dob: String @doc(description: "The customer's date of birth")
  78. taxvat: String @doc(description: "The customer's Tax/VAT number (for corporate customers)")
  79. id: Int @doc(description: "The ID assigned to the customer")
  80. is_subscribed: Boolean @doc(description: "Indicates whether the customer is subscribed to the company's newsletter") @resolver(class: "\\Magento\\CustomerGraphQl\\Model\\Resolver\\IsSubscribed")
  81. addresses: [CustomerAddress] @doc(description: "An array containing the customer's shipping and billing addresses")
  82. }
  83. type CustomerAddress @doc(description: "CustomerAddress contains detailed information about a customer's billing and shipping addresses"){
  84. id: Int @doc(description: "The ID assigned to the address object")
  85. customer_id: Int @doc(description: "The customer ID")
  86. region: CustomerAddressRegion @doc(description: "An object containing the region name, region code, and region ID")
  87. region_id: Int @doc(description: "A number that uniquely identifies the state, province, or other area")
  88. country_id: String @doc(description: "The customer's country")
  89. street: [String] @doc(description: "An array of strings that define the street number and name")
  90. company: String @doc(description: "The customer's company")
  91. telephone: String @doc(description: "The telephone number")
  92. fax: String @doc(description: "The fax number")
  93. postcode: String @doc(description: "The customer's ZIP or postal code")
  94. city: String @doc(description: "The city or town")
  95. firstname: String @doc(description: "The first name of the person associated with the shipping/billing address")
  96. lastname: String @doc(description: "The family name of the person associated with the shipping/billing address")
  97. middlename: String @doc(description: "The middle name of the person associated with the shipping/billing address")
  98. prefix: String @doc(description: "An honorific, such as Dr., Mr., or Mrs.")
  99. suffix: String @doc(description: "A value such as Sr., Jr., or III")
  100. vat_id: String @doc(description: "The customer's Tax/VAT number (for corporate customers)")
  101. default_shipping: Boolean @doc(description: "Indicates whether the address is the default shipping address")
  102. default_billing: Boolean @doc(description: "Indicates whether the address is the default billing address")
  103. custom_attributes: [CustomerAddressAttribute] @doc(description: "Address custom attributes")
  104. extension_attributes: [CustomerAddressAttribute] @doc(description: "Address extension attributes")
  105. }
  106. type CustomerAddressRegion @doc(description: "CustomerAddressRegion defines the customer's state or province") {
  107. region_code: String @doc(description: "The address region code")
  108. region: String @doc(description: "The state or province name")
  109. region_id: Int @doc(description: "Uniquely identifies the region")
  110. }
  111. type CustomerAddressAttribute {
  112. attribute_code: String @doc(description: "Attribute code")
  113. value: String @doc(description: "Attribute value")
  114. }
  115. enum CountryCodeEnum @doc(description: "The list of countries codes") {
  116. AF @doc(description: "Afghanistan")
  117. AX @doc(description: "Åland Islands")
  118. AL @doc(description: "Albania")
  119. DZ @doc(description: "Algeria")
  120. AS @doc(description: "American Samoa")
  121. AD @doc(description: "Andorra")
  122. AO @doc(description: "Angola")
  123. AI @doc(description: "Anguilla")
  124. AQ @doc(description: "Antarctica")
  125. AG @doc(description: "Antigua & Barbuda")
  126. AR @doc(description: "Argentina")
  127. AM @doc(description: "Armenia")
  128. AW @doc(description: "Aruba")
  129. AU @doc(description: "Australia")
  130. AT @doc(description: "Austria")
  131. AZ @doc(description: "Azerbaijan")
  132. BS @doc(description: "Bahamas")
  133. BH @doc(description: "Bahrain")
  134. BD @doc(description: "Bangladesh")
  135. BB @doc(description: "Barbados")
  136. BY @doc(description: "Belarus")
  137. BE @doc(description: "Belgium")
  138. BZ @doc(description: "Belize")
  139. BJ @doc(description: "Benin")
  140. BM @doc(description: "Bermuda")
  141. BT @doc(description: "Bhutan")
  142. BO @doc(description: "Bolivia")
  143. BA @doc(description: "Bosnia & Herzegovina")
  144. BW @doc(description: "Botswana")
  145. BV @doc(description: "Bouvet Island")
  146. BR @doc(description: "Brazil")
  147. IO @doc(description: "British Indian Ocean Territory")
  148. VG @doc(description: "British Virgin Islands")
  149. BN @doc(description: "Brunei")
  150. BG @doc(description: "Bulgaria")
  151. BF @doc(description: "Burkina Faso")
  152. BI @doc(description: "Burundi")
  153. KH @doc(description: "Cambodia")
  154. CM @doc(description: "Cameroon")
  155. CA @doc(description: "Canada")
  156. CV @doc(description: "Cape Verde")
  157. KY @doc(description: "Cayman Islands")
  158. CF @doc(description: "Central African Republic")
  159. TD @doc(description: "Chad")
  160. CL @doc(description: "Chile")
  161. CN @doc(description: "China")
  162. CX @doc(description: "Christmas Island")
  163. CC @doc(description: "Cocos (Keeling) Islands")
  164. CO @doc(description: "Colombia")
  165. KM @doc(description: "Comoros")
  166. CG @doc(description: "Congo -Brazzaville")
  167. CD @doc(description: "Congo - Kinshasa")
  168. CK @doc(description: "Cook Islands")
  169. CR @doc(description: "Costa Rica")
  170. CI @doc(description: "Côte d’Ivoire")
  171. HR @doc(description: "Croatia")
  172. CU @doc(description: "Cuba")
  173. CY @doc(description: "Cyprus")
  174. CZ @doc(description: "Czech Republic")
  175. DK @doc(description: "Denmark")
  176. DJ @doc(description: "Djibouti")
  177. DM @doc(description: "Dominica")
  178. DO @doc(description: "Dominican Republic")
  179. EC @doc(description: "Ecuador")
  180. EG @doc(description: "Egypt")
  181. SV @doc(description: "El Salvador")
  182. GQ @doc(description: "Equatorial Guinea")
  183. ER @doc(description: "Eritrea")
  184. EE @doc(description: "Estonia")
  185. ET @doc(description: "Ethiopia")
  186. FK @doc(description: "Falkland Islands")
  187. FO @doc(description: "Faroe Islands")
  188. FJ @doc(description: "Fiji")
  189. FI @doc(description: "Finland")
  190. FR @doc(description: "France")
  191. GF @doc(description: "French Guiana")
  192. PF @doc(description: "French Polynesia")
  193. TF @doc(description: "French Southern Territories")
  194. GA @doc(description: "Gabon")
  195. GM @doc(description: "Gambia")
  196. GE @doc(description: "Georgia")
  197. DE @doc(description: "Germany")
  198. GH @doc(description: "Ghana")
  199. GI @doc(description: "Gibraltar")
  200. GR @doc(description: "Greece")
  201. GL @doc(description: "Greenland")
  202. GD @doc(description: "Grenada")
  203. GP @doc(description: "Guadeloupe")
  204. GU @doc(description: "Guam")
  205. GT @doc(description: "Guatemala")
  206. GG @doc(description: "Guernsey")
  207. GN @doc(description: "Guinea")
  208. GW @doc(description: "Guinea-Bissau")
  209. GY @doc(description: "Guyana")
  210. HT @doc(description: "Haiti")
  211. HM @doc(description: "Heard & McDonald Islands")
  212. HN @doc(description: "Honduras")
  213. HK @doc(description: "Hong Kong SAR China")
  214. HU @doc(description: "Hungary")
  215. IS @doc(description: "Iceland")
  216. IN @doc(description: "India")
  217. ID @doc(description: "Indonesia")
  218. IR @doc(description: "Iran")
  219. IQ @doc(description: "Iraq")
  220. IE @doc(description: "Ireland")
  221. IM @doc(description: "Isle of Man")
  222. IL @doc(description: "Israel")
  223. IT @doc(description: "Italy")
  224. JM @doc(description: "Jamaica")
  225. JP @doc(description: "Japan")
  226. JE @doc(description: "Jersey")
  227. JO @doc(description: "Jordan")
  228. KZ @doc(description: "Kazakhstan")
  229. KE @doc(description: "Kenya")
  230. KI @doc(description: "Kiribati")
  231. KW @doc(description: "Kuwait")
  232. KG @doc(description: "Kyrgyzstan")
  233. LA @doc(description: "Laos")
  234. LV @doc(description: "Latvia")
  235. LB @doc(description: "Lebanon")
  236. LS @doc(description: "Lesotho")
  237. LR @doc(description: "Liberia")
  238. LY @doc(description: "Libya")
  239. LI @doc(description: "Liechtenstein")
  240. LT @doc(description: "Lithuania")
  241. LU @doc(description: "Luxembourg")
  242. MO @doc(description: "Macau SAR China")
  243. MK @doc(description: "Macedonia")
  244. MG @doc(description: "Madagascar")
  245. MW @doc(description: "Malawi")
  246. MY @doc(description: "Malaysia")
  247. MV @doc(description: "Maldives")
  248. ML @doc(description: "Mali")
  249. MT @doc(description: "Malta")
  250. MH @doc(description: "Marshall Islands")
  251. MQ @doc(description: "Martinique")
  252. MR @doc(description: "Mauritania")
  253. MU @doc(description: "Mauritius")
  254. YT @doc(description: "Mayotte")
  255. MX @doc(description: "Mexico")
  256. FM @doc(description: "Micronesia")
  257. MD @doc(description: "Moldova")
  258. MC @doc(description: "Monaco")
  259. MN @doc(description: "Mongolia")
  260. ME @doc(description: "Montenegro")
  261. MS @doc(description: "Montserrat")
  262. MA @doc(description: "Morocco")
  263. MZ @doc(description: "Mozambique")
  264. MM @doc(description: "Myanmar (Burma)")
  265. NA @doc(description: "Namibia")
  266. NR @doc(description: "Nauru")
  267. NP @doc(description: "Nepal")
  268. NL @doc(description: "Netherlands")
  269. AN @doc(description: "Netherlands Antilles")
  270. NC @doc(description: "New Caledonia")
  271. NZ @doc(description: "New Zealand")
  272. NI @doc(description: "Nicaragua")
  273. NE @doc(description: "Niger")
  274. NG @doc(description: "Nigeria")
  275. NU @doc(description: "Niue")
  276. NF @doc(description: "Norfolk Island")
  277. MP @doc(description: "Northern Mariana Islands")
  278. KP @doc(description: "North Korea")
  279. NO @doc(description: "Norway")
  280. OM @doc(description: "Oman")
  281. PK @doc(description: "Pakistan")
  282. PW @doc(description: "Palau")
  283. PS @doc(description: "Palestinian Territories")
  284. PA @doc(description: "Panama")
  285. PG @doc(description: "Papua New Guinea")
  286. PY @doc(description: "Paraguay")
  287. PE @doc(description: "Peru")
  288. PH @doc(description: "Philippines")
  289. PN @doc(description: "Pitcairn Islands")
  290. PL @doc(description: "Poland")
  291. PT @doc(description: "Portugal")
  292. QA @doc(description: "Qatar")
  293. RE @doc(description: "Réunion")
  294. RO @doc(description: "Romania")
  295. RU @doc(description: "Russia")
  296. RW @doc(description: "Rwanda")
  297. WS @doc(description: "Samoa")
  298. SM @doc(description: "San Marino")
  299. ST @doc(description: "São Tomé & Príncipe")
  300. SA @doc(description: "Saudi Arabia")
  301. SN @doc(description: "Senegal")
  302. RS @doc(description: "Serbia")
  303. SC @doc(description: "Seychelles")
  304. SL @doc(description: "Sierra Leone")
  305. SG @doc(description: "Singapore")
  306. SK @doc(description: "Slovakia")
  307. SI @doc(description: "Slovenia")
  308. SB @doc(description: "Solomon Islands")
  309. SO @doc(description: "Somalia")
  310. ZA @doc(description: "South Africa")
  311. GS @doc(description: "South Georgia & South Sandwich Islands")
  312. KR @doc(description: "South Korea")
  313. ES @doc(description: "Spain")
  314. LK @doc(description: "Sri Lanka")
  315. BL @doc(description: "St. Barthélemy")
  316. SH @doc(description: "St. Helena")
  317. KN @doc(description: "St. Kitts & Nevis")
  318. LC @doc(description: "St. Lucia")
  319. MF @doc(description: "St. Martin")
  320. PM @doc(description: "St. Pierre & Miquelon")
  321. VC @doc(description: "St. Vincent & Grenadines")
  322. SD @doc(description: "Sudan")
  323. SR @doc(description: "Suriname")
  324. SJ @doc(description: "Svalbard & Jan Mayen")
  325. SZ @doc(description: "Swaziland")
  326. SE @doc(description: "Sweden")
  327. CH @doc(description: "Switzerland")
  328. SY @doc(description: "Syria")
  329. TW @doc(description: "Taiwan")
  330. TJ @doc(description: "Tajikistan")
  331. TZ @doc(description: "Tanzania")
  332. TH @doc(description: "Thailand")
  333. TL @doc(description: "Timor-Leste")
  334. TG @doc(description: "Togo")
  335. TK @doc(description: "Tokelau")
  336. TO @doc(description: "Tonga")
  337. TT @doc(description: "Trinidad & Tobago")
  338. TN @doc(description: "Tunisia")
  339. TR @doc(description: "Turkey")
  340. TM @doc(description: "Turkmenistan")
  341. TC @doc(description: "Turks & Caicos Islands")
  342. TV @doc(description: "Tuvalu")
  343. UG @doc(description: "Uganda")
  344. UA @doc(description: "Ukraine")
  345. AE @doc(description: "United Arab Emirates")
  346. GB @doc(description: "United Kingdom")
  347. US @doc(description: "United States")
  348. UY @doc(description: "Uruguay")
  349. UM @doc(description: "U.S. Outlying Islands")
  350. VI @doc(description: "U.S. Virgin Islands")
  351. UZ @doc(description: "Uzbekistan")
  352. VU @doc(description: "Vanuatu")
  353. VA @doc(description: "Vatican City")
  354. VE @doc(description: "Venezuela")
  355. VN @doc(description: "Vietnam")
  356. WF @doc(description: "Wallis & Futuna")
  357. EH @doc(description: "Western Sahara")
  358. YE @doc(description: "Yemen")
  359. ZM @doc(description: "Zambia")
  360. ZW @doc(description: "Zimbabwe")
  361. }