{
"swagger": "2.0",
"tags": [
{
"name": "v1",
"description": ""
}
],
"host": "api.ote-godaddy.com",
"paths": {
"/v1/subscriptions": {
"get": {
"tags": [
"v1"
],
"consumes": [
"application/json",
"application/xml",
"text/xml"
],
"produces": [
"application/json",
"application/javascript",
"application/xml",
"text/javascript",
"text/xml"
],
"parameters": [
{
"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,
"type": "string"
},
{
"description": "Shopper ID to return subscriptions for when not using JWT",
"in": "header",
"name": "X-Shopper-Id",
"required": false,
"type": "string"
},
{
"default": "en-US",
"description": "The market that the response should be formatted for",
"in": "header",
"name": "X-Market-Id",
"required": false,
"type": "string"
},
{
"description": "Only return Subscriptions with the specified product groups",
"in": "query",
"items": {
"type": "string"
},
"name": "productGroupKeys",
"required": false,
"type": "array"
},
{
"description": "Optional details to be included in the response",
"enum": [
"addons",
"relations",
"renewOptions"
],
"in": "query",
"items": {
"type": "string"
},
"name": "includes",
"required": false,
"type": "array"
},
{
"default": 0,
"description": "Number of Subscriptions to skip before starting to return paged results (must be a multiple of the limit)",
"in": "query",
"name": "offset",
"required": false,
"type": "integer"
},
{
"default": 25,
"description": "Number of Subscriptions to retrieve in this page, starting after offset",
"in": "query",
"maximum": 250,
"minimum": 1,
"name": "limit",
"required": false,
"type": "integer"
},
{
"default": "-expiresAt",
"description": "Property name that will be used to sort results. \"-\" indicates descending",
"enum": [
"expiresAt",
"-expiresAt"
],
"in": "query",
"name": "sort",
"required": false,
"type": "string"
}
],
"responses": {
"200": {
"description": "Request was successful",
"schema": {
"$ref": "#/definitions/SubscriptionList"
}
},
"400": {
"description": "Request was malformed",
"schema": {
"$ref": "#/definitions/Error"
}
},
"401": {
"description": "Authentication info not sent or invalid",
"schema": {
"$ref": "#/definitions/Error"
}
},
"403": {
"description": "Authenticated user is not allowed access",
"schema": {
"$ref": "#/definitions/Error"
}
},
"422": {
"description": "Invalid query parameter (custom message returned for each parameter)",
"schema": {
"$ref": "#/definitions/Error"
}
},
"429": {
"description": "Too many requests received within interval",
"schema": {
"$ref": "#/definitions/ErrorLimit"
}
},
"500": {
"description": "Internal server error",
"schema": {
"$ref": "#/definitions/Error"
}
}
},
"operationId": "list",
"summary": "Retrieve a list of Subscriptions for the specified Shopper"
}
},
"/v1/subscriptions/productGroups": {
"get": {
"tags": [
"v1"
],
"consumes": [
"application/json",
"application/xml",
"text/xml"
],
"produces": [
"application/json",
"application/javascript",
"application/xml",
"text/javascript",
"text/xml"
],
"parameters": [
{
"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,
"type": "string"
},
{
"description": "Shopper ID to return data for when not using JWT",
"in": "header",
"name": "X-Shopper-Id",
"required": false,
"type": "string"
}
],
"responses": {
"200": {
"description": "Request was successful",
"schema": {
"items": {
"$ref": "#/definitions/ProductGroup"
},
"type": "array"
}
},
"400": {
"description": "Request was malformed",
"schema": {
"$ref": "#/definitions/Error"
}
},
"401": {
"description": "Authentication info not sent or invalid",
"schema": {
"$ref": "#/definitions/Error"
}
},
"403": {
"description": "Authenticated user is not allowed access",
"schema": {
"$ref": "#/definitions/Error"
}
},
"429": {
"description": "Too many requests received within interval",
"schema": {
"$ref": "#/definitions/ErrorLimit"
}
},
"500": {
"description": "Internal server error",
"schema": {
"$ref": "#/definitions/Error"
}
}
},
"operationId": "productGroups",
"summary": "Retrieve a list of ProductGroups for the specified Shopper"
}
},
"/v1/subscriptions/{subscriptionId}": {
"delete": {
"tags": [
"v1"
],
"consumes": [
"application/json",
"application/xml",
"text/xml"
],
"produces": [
"application/json",
"application/javascript",
"application/xml",
"text/javascript",
"text/xml"
],
"parameters": [
{
"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,
"type": "string"
},
{
"description": "Shopper ID to return data for when not using JWT",
"in": "header",
"name": "X-Shopper-Id",
"required": false,
"type": "string"
},
{
"description": "Unique identifier of the Subscription to cancel",
"in": "path",
"name": "subscriptionId",
"required": true,
"type": "string"
}
],
"responses": {
"204": {
"description": "Request was successful"
},
"400": {
"description": "Request was malformed",
"schema": {
"$ref": "#/definitions/Error"
}
},
"401": {
"description": "Authentication info not sent or invalid",
"schema": {
"$ref": "#/definitions/Error"
}
},
"403": {
"description": "Authenticated user is not allowed access",
"schema": {
"$ref": "#/definitions/Error"
}
},
"404": {
"description": "Resource not found",
"schema": {
"$ref": "#/definitions/Error"
}
},
"422": {
"description": "Failed to determine if the domain is protected (invalid domain ID)
Invalid Subscription Id
The Office 365 Subscription cannot be cancelled (shopper is migrating)
The Subscription cannot be cancelled
The Subscription cannot be cancelled (PFID is disabled for cancellation)
The Subscription cannot be cancelled (domain is protected)
The domain alert Subscription cannot be cancelled",
"schema": {
"$ref": "#/definitions/Error"
}
},
"429": {
"description": "Too many requests received within interval",
"schema": {
"$ref": "#/definitions/ErrorLimit"
}
},
"500": {
"description": "Failed to determine if the Office 365 account is migrating
Failed to determine if the domain alert is cancellable
Failed to determine if the domain is protected
Internal server error",
"schema": {
"$ref": "#/definitions/Error"
}
},
"504": {
"description": "Gateway timeout",
"schema": {
"$ref": "#/definitions/Error"
}
}
},
"operationId": "cancel",
"summary": "Cancel the specified Subscription"
},
"get": {
"tags": [
"v1"
],
"consumes": [
"application/json",
"application/xml",
"text/xml"
],
"produces": [
"application/json",
"application/javascript",
"application/xml",
"text/javascript",
"text/xml"
],
"parameters": [
{
"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,
"type": "string"
},
{
"description": "Shopper ID to be operated on, if different from JWT",
"in": "header",
"name": "X-Shopper-Id",
"required": false,
"type": "string"
},
{
"description": "Unique identifier of the Subscription to retrieve",
"in": "path",
"name": "subscriptionId",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "Request was successful",
"schema": {
"$ref": "#/definitions/Subscription"
}
},
"400": {
"description": "Request was malformed",
"schema": {
"$ref": "#/definitions/Error"
}
},
"401": {
"description": "Authentication info not sent or invalid",
"schema": {
"$ref": "#/definitions/Error"
}
},
"403": {
"description": "Authenticated user is not allowed access",
"schema": {
"$ref": "#/definitions/Error"
}
},
"404": {
"description": "Resource not found",
"schema": {
"$ref": "#/definitions/Error"
}
},
"422": {
"description": "Invalid Subscription Id",
"schema": {
"$ref": "#/definitions/Error"
}
},
"429": {
"description": "Too many requests received within interval",
"schema": {
"$ref": "#/definitions/ErrorLimit"
}
},
"500": {
"description": "Internal server error",
"schema": {
"$ref": "#/definitions/Error"
}
},
"504": {
"description": "Gateway timeout",
"schema": {
"$ref": "#/definitions/Error"
}
}
},
"operationId": "get",
"summary": "Retrieve details for the specified Subscription"
},
"patch": {
"tags": [
"v1"
],
"consumes": [
"application/json",
"application/x-www-form-urlencoded",
"application/xml",
"text/xml"
],
"produces": [
"application/json",
"application/xml"
],
"parameters": [
{
"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,
"type": "string"
},
{
"description": "Shopper ID to be operated on, if different from JWT",
"in": "header",
"name": "X-Shopper-Id",
"required": false,
"type": "string"
},
{
"description": "Unique identifier of the Subscription to update",
"in": "path",
"name": "subscriptionId",
"required": true,
"type": "string"
},
{
"description": "Details of the Subscription to change",
"in": "body",
"name": "subscription",
"required": true,
"schema": {
"$ref": "#/definitions/SubscriptionUpdate"
}
}
],
"responses": {
"204": {
"description": "Request was successful"
},
"400": {
"description": "Request was malformed",
"schema": {
"$ref": "#/definitions/Error"
}
},
"401": {
"description": "Authentication info not sent or invalid",
"schema": {
"$ref": "#/definitions/Error"
}
},
"403": {
"description": "Authenticated user is not allowed access
This method only supports JWT authentication",
"schema": {
"$ref": "#/definitions/Error"
}
},
"404": {
"description": "Subscription not found
Payment profile not found",
"schema": {
"$ref": "#/definitions/Error"
}
},
"500": {
"description": "Internal server error",
"schema": {
"$ref": "#/definitions/Error"
}
}
},
"description": "Only Subscription properties that can be changed without immediate financial impact can be modified via PATCH, whereas some properties can be changed by purchasing a renewal
This endpoint only supports JWT authentication",
"operationId": "update",
"summary": "Update details for the specified Subscription"
}
}
},
"definitions": {
"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": "#/definitions/ErrorField"
},
"type": "array"
},
"message": {
"description": "Human-readable, English description of the error",
"type": "string"
}
},
"required": [
"code"
]
},
"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": "