openapi: 3.2.0 info: title: Godaddy Orders API servers: - url: https://api.ote-godaddy.com tags: - name: Orders paths: /v1/orders: get: tags: - Orders parameters: - description: Start of range indicating what time-frame should be returned. Inclusive in: query name: periodStart required: false schema: type: string - description: End of range indicating what time-frame should be returned. Inclusive in: query name: periodEnd required: false schema: type: string - description: Domain name to use as the filter of results in: query name: domain required: false schema: type: string - description: Product group id to use as the filter of results in: query name: productGroupId required: false schema: type: integer - description: Payment profile id to use as the filter of results in: query name: paymentProfileId required: false schema: type: integer - description: Parent order id to use as the filter of results in: query name: parentOrderId required: false schema: type: string - description: Number of results to skip for pagination in: query name: offset required: false schema: type: integer default: 0 - description: Maximum number of items to return in: query name: limit required: false schema: type: integer default: 25 maximum: 250 minimum: 1 - description: Property name that will be used to sort results. '-' indicates descending in: query name: sort required: false schema: type: string enum: - createdAt - -createdAt - orderId - -orderId - pricing.total - -pricing.total default: -createdAt - description: Shopper ID to be operated on, if different from JWT
Reseller subaccounts are not supported in: header name: X-Shopper-Id required: false schema: type: string - description: A unique application key identifying the source of the request. This is required for request tracking in: header name: X-App-Key required: true schema: type: string responses: '200': description: Request was successful content: application/json: schema: $ref: '#/components/schemas/OrderList' application/javascript: schema: $ref: '#/components/schemas/OrderList' application/xml: schema: $ref: '#/components/schemas/OrderList' text/javascript: schema: $ref: '#/components/schemas/OrderList' text/xml: schema: $ref: '#/components/schemas/OrderList' '400': description: Request was malformed content: application/json: schema: $ref: '#/components/schemas/Error' application/javascript: schema: $ref: '#/components/schemas/Error' application/xml: schema: $ref: '#/components/schemas/Error' text/javascript: schema: $ref: '#/components/schemas/Error' text/xml: schema: $ref: '#/components/schemas/Error' '401': description: Authentication info not sent or invalid content: application/json: schema: $ref: '#/components/schemas/Error' application/javascript: schema: $ref: '#/components/schemas/Error' application/xml: schema: $ref: '#/components/schemas/Error' text/javascript: schema: $ref: '#/components/schemas/Error' text/xml: schema: $ref: '#/components/schemas/Error' '403': description: Authenticated user is not allowed access content: application/json: schema: $ref: '#/components/schemas/Error' application/javascript: schema: $ref: '#/components/schemas/Error' application/xml: schema: $ref: '#/components/schemas/Error' text/javascript: schema: $ref: '#/components/schemas/Error' text/xml: schema: $ref: '#/components/schemas/Error' '429': description: Too many requests received within interval content: application/json: schema: $ref: '#/components/schemas/ErrorLimit' application/javascript: schema: $ref: '#/components/schemas/ErrorLimit' application/xml: schema: $ref: '#/components/schemas/ErrorLimit' text/javascript: schema: $ref: '#/components/schemas/ErrorLimit' text/xml: schema: $ref: '#/components/schemas/ErrorLimit' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/Error' application/javascript: schema: $ref: '#/components/schemas/Error' application/xml: schema: $ref: '#/components/schemas/Error' text/javascript: schema: $ref: '#/components/schemas/Error' text/xml: schema: $ref: '#/components/schemas/Error' '504': description: Gateway timeout content: application/json: schema: $ref: '#/components/schemas/Error' application/javascript: schema: $ref: '#/components/schemas/Error' application/xml: schema: $ref: '#/components/schemas/Error' text/javascript: schema: $ref: '#/components/schemas/Error' text/xml: schema: $ref: '#/components/schemas/Error' description: 'API Resellers This endpoint does not support subaccounts and therefore API Resellers should not supply an X-Shopper-Id header' operationId: list summary: Retrieve a list of orders for the authenticated shopper. /v1/orders/{orderId}: get: tags: - Orders parameters: - description: Order id whose details are to be retrieved in: path name: orderId required: true schema: type: string - description: Shopper ID to be operated on, if different from JWT
Reseller subaccounts are not supported in: header name: X-Shopper-Id required: false schema: type: string - description: Unique identifier of the Market in which the request is happening in: header name: X-Market-Id required: false schema: type: string default: en-US - description: A unique application key identifying the source of the request. This is required for request tracking in: header name: X-App-Key required: true schema: type: string responses: '200': description: Request was successful content: application/json: schema: $ref: '#/components/schemas/Order' application/javascript: schema: $ref: '#/components/schemas/Order' application/xml: schema: $ref: '#/components/schemas/Order' text/javascript: schema: $ref: '#/components/schemas/Order' text/xml: schema: $ref: '#/components/schemas/Order' '400': description: Request was malformed content: application/json: schema: $ref: '#/components/schemas/Error' application/javascript: schema: $ref: '#/components/schemas/Error' application/xml: schema: $ref: '#/components/schemas/Error' text/javascript: schema: $ref: '#/components/schemas/Error' text/xml: schema: $ref: '#/components/schemas/Error' '401': description: Authentication info not sent or invalid content: application/json: schema: $ref: '#/components/schemas/Error' application/javascript: schema: $ref: '#/components/schemas/Error' application/xml: schema: $ref: '#/components/schemas/Error' text/javascript: schema: $ref: '#/components/schemas/Error' text/xml: schema: $ref: '#/components/schemas/Error' '403': description: Authenticated user is not allowed access content: application/json: schema: $ref: '#/components/schemas/Error' application/javascript: schema: $ref: '#/components/schemas/Error' application/xml: schema: $ref: '#/components/schemas/Error' text/javascript: schema: $ref: '#/components/schemas/Error' text/xml: schema: $ref: '#/components/schemas/Error' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/Error' application/javascript: schema: $ref: '#/components/schemas/Error' application/xml: schema: $ref: '#/components/schemas/Error' text/javascript: schema: $ref: '#/components/schemas/Error' text/xml: schema: $ref: '#/components/schemas/Error' '429': description: Too many requests received within interval content: application/json: schema: $ref: '#/components/schemas/ErrorLimit' application/javascript: schema: $ref: '#/components/schemas/ErrorLimit' application/xml: schema: $ref: '#/components/schemas/ErrorLimit' text/javascript: schema: $ref: '#/components/schemas/ErrorLimit' text/xml: schema: $ref: '#/components/schemas/ErrorLimit' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/Error' application/javascript: schema: $ref: '#/components/schemas/Error' application/xml: schema: $ref: '#/components/schemas/Error' text/javascript: schema: $ref: '#/components/schemas/Error' text/xml: schema: $ref: '#/components/schemas/Error' '504': description: Gateway timeout content: application/json: schema: $ref: '#/components/schemas/Error' application/javascript: schema: $ref: '#/components/schemas/Error' application/xml: schema: $ref: '#/components/schemas/Error' text/javascript: schema: $ref: '#/components/schemas/Error' text/xml: schema: $ref: '#/components/schemas/Error' description: 'API Resellers This endpoint does not support subaccounts and therefore API Resellers should not supply an X-Shopper-Id header' operationId: get summary: Retrieve details for specified order components: schemas: LineItemSummary: properties: label: description: Product label of the current line item type: string required: - label Contact: properties: addressMailing: $ref: '#/components/schemas/Address' email: format: email type: string fax: format: phone type: string jobTitle: type: string nameFirst: format: person-name type: string nameLast: format: person-name type: string nameMiddle: type: string organization: format: organization-name type: string phone: format: phone type: string required: - nameFirst - nameLast - email - phone - addressMailing ErrorLimit: properties: code: description: Short identifier for the error, suitable for indicating the specific error within client code format: constant type: string fields: description: List of the specific fields, and the errors found with their contents items: $ref: '#/components/schemas/ErrorField' type: array message: description: Human-readable, English description of the error type: string retryAfterSec: description: Number of seconds to wait before attempting a similar request format: integer-positive type: integer required: - retryAfterSec - code Payment: properties: amount: description: Amount paid by the current payment format: currency-micro-unit type: integer category: description: 'The category of payment method used at the time of purchase. Most common values are listed in the enum.' enum: - CREDIT_CARD - PAYPAL - ACH - GIFT_CARD - IN_STORE_CREDIT - PREPAID type: string paymentProfileId: description: Unique identifier of the payment profile used by current payment type: string subcategory: description: "The subcategory of payment method used at the time of purchase.\n This field is only set for certain payment categories, such as ACH and CREDIT_CARD.\nMost common values are listed in the enum." enum: - CHECKING_PERSONAL - CHECKING_BUSINESS - VISA - MASTER_CARD - AMEX - JCB - UNIONPAY type: string required: - paymentProfileId - amount - category LineItem: properties: domains: description: A collection of domain names purchased if the current product is domain items: type: string type: array label: description: Human readable description of the current product type: string period: default: 1 format: double type: number periodUnit: default: MONTH description: The unit of time that periodCount is measured in enum: - MONTH - QUARTER - SEMI_ANNUAL - YEAR - ONE_TIME type: string pfid: description: Unique identifier of the current product type: integer pricing: $ref: '#/components/schemas/LineItemPricing' description: Pricing information of the current line item quantity: description: Number of the current product included in the specified order format: integer-positive type: integer taxCollector: $ref: '#/components/schemas/LineItemTaxCollector' description: Company that collects taxes on the sale of the product required: - label - quantity - pricing LineItemPricing: properties: discount: description: Discount off of sale price for given `quantity` and `period`
`discount` = `sale` - `subtotal`
format: currency-micro-unit type: integer fees: $ref: '#/components/schemas/OrderFee' description: Fees for given `quantity` and `period` list: description: List price for given `quantity` and `period` format: currency-micro-unit type: integer sale: description: Actual price for the current product format: currency-micro-unit type: integer savings: description: Savings off of list price for given `quantity` and `period`
`savings` = `list` - `subtotal`
format: currency-micro-unit type: integer subtotal: description: Price with any discounts and without taxes or fees for given `quantity` and `period` format: currency-micro-unit type: integer taxes: description: Taxes for given `quantity` and `period` format: currency-micro-unit type: integer unit: description: Pricing for a single unit of the given item type: object required: - subtotal - list - savings - sale - discount - taxes - fees - unit OrderSummaryPricing: properties: total: description: Total amount charged for the current order. Negative for Refund and Chargeback format: currency-micro-unit type: string required: - total Order: properties: billTo: $ref: '#/components/schemas/BillTo' description: The billing contact information that was used at the time of purchase createdAt: description: Date and time when the current order is created on format: iso-datetime type: string currency: description: Currency in which the order has been placed format: iso-currency-code type: string items: items: $ref: '#/components/schemas/LineItem' type: array orderId: description: Unique identifier of current order type: string parentOrderId: description: 'Unique identifier of the parent order. All refund/chargeback orders are tied to the original order. The orginal order''s `orderId` is the `parentOrderId` of refund/chargeback orders' type: string payments: items: $ref: '#/components/schemas/Payment' type: array pricing: $ref: '#/components/schemas/OrderPricing' description: Pricing information for current order required: - orderId - currency - createdAt - pricing - billTo - payments - items LineItemPricingTaxDetail: properties: amount: description: Tax amount format: currency-micro-unit type: integer rate: format: double type: number required: - '' OrderPricing: properties: discount: description: Discount from promotional pricing format: currency-micro-unit type: integer fees: $ref: '#/components/schemas/OrderFee' description: Fees for the entire cart id: format: double type: number list: description: Sum of list prices for the entire cart format: currency-micro-unit type: integer savings: description: Savings off of list price
`savings` = `list` - `subtotal`
format: currency-micro-unit type: integer subtotal: description: Price with `discount` and without taxes or fees format: currency-micro-unit type: integer taxes: description: Taxes for the entire cart format: currency-micro-unit type: integer taxDetails: description: A collection of line item tax details items: $ref: '#/components/schemas/LineItemPricingTaxDetail' type: array total: description: Price the customer pays
`total` = `subtotal` + `taxes` + `fees.total`
format: currency-micro-unit type: integer required: - total - subtotal - list - savings - discount - taxes - fees Address: properties: address1: format: street-address type: string address2: format: street-address2 type: string city: format: city-name type: string country: default: US description: 'Two-letter ISO country code to be used as a hint for target region

NOTE: These are sample values, there are many more' enum: - AC - AD - AE - AF - AG - AI - AL - AM - AO - AQ - AR - AS - AT - AU - AW - AX - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BM - BN - BO - BQ - BR - BS - BT - BV - BW - BY - BZ - CA - CC - CD - CF - CG - CH - CI - CK - CL - CM - CN - CO - CR - CV - CW - CX - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - EH - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GS - GT - GU - GW - GY - HK - HM - HN - HR - HT - HU - ID - IE - IL - IM - IN - IO - IQ - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KR - KV - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - LY - MA - MC - MD - ME - MG - MH - MK - ML - MM - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NI - NL - 'NO' - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PN - PR - PS - PT - PW - PY - QA - RE - RO - RS - RU - RW - SA - SB - SC - SE - SG - SH - SI - SJ - SK - SL - SM - SN - SO - SR - ST - SV - SX - SZ - TC - TD - TF - TG - TH - TJ - TK - TL - TM - TN - TO - TP - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VA - VC - VE - VG - VI - VN - VU - WF - WS - YE - YT - ZA - ZM - ZW format: iso-country-code type: string postalCode: description: Postal or zip code format: postal-code type: string state: description: State or province or territory format: state-province-territory type: string required: - address1 - city - state - postalCode - country Pagination: properties: first: description: URI to access the first page type: string last: description: URI to access the last page type: string next: description: URI to access the next page type: string previous: description: URI to access the previous page type: string total: description: Number of records available type: integer LineItemTaxCollector: properties: taxCollectorId: description: Unique identifier for the company format: integer-positive type: integer required: - taxCollectorId OrderFee: properties: icann: description: Domain registration transaction fee charged by ICANN format: currency-micro-unit type: integer total: description: Sum of all fees format: currency-micro-unit type: integer required: - total BillTo: properties: contact: $ref: '#/components/schemas/Contact' description: Billing contact taxId: description: Tax id used for calculating the tax the customer is required to pay type: string required: - contact Error: properties: code: description: Short identifier for the error, suitable for indicating the specific error within client code format: constant type: string fields: description: List of the specific fields, and the errors found with their contents items: $ref: '#/components/schemas/ErrorField' type: array message: description: Human-readable, English description of the error type: string required: - code OrderList: properties: orders: description: A collection of orders items: $ref: '#/components/schemas/OrderSummary' type: array pagination: $ref: '#/components/schemas/Pagination' description: Pagination information required: - orders - pagination OrderSummary: properties: createdAt: description: Date and time when the current order was created format: iso-datetime type: string currency: description: Currency in which the order was placed format: iso-currency-code type: string items: description: Sets of two or more line items in current order items: $ref: '#/components/schemas/LineItemSummary' type: array orderId: description: Unique identifier of the current order type: string parentOrderId: description: 'Unique identifier of the parent order. All refund/chargeback orders are tied to the original order. The orginal order''s `orderId` is the `parentOrderId` of refund/chargeback orders' type: string pricing: $ref: '#/components/schemas/OrderSummaryPricing' description: Pricing information of the current order required: - orderId - currency - createdAt - pricing - items ErrorField: properties: code: description: Short identifier for the error, suitable for indicating the specific error within client code format: constant type: string message: description: Human-readable, English description of the problem with the contents of the field type: string path: description: '' format: json-path type: string pathRelated: description: JSONPath referring to a field containing an error, which is referenced by `path` format: json-path type: string required: - path - code