{
"swagger": "2.0",
"info": {
"title": "Aftermarket API",
"version": "1.0.0",
"description": ""
},
"tags": [
{
"name": "Expiry Auctions: Registrar Partners",
"description": "API for auction-related actions exclusive to whitelisted partners."
}
],
"paths": {
"/v1/customers/{customerId}/auctions/listings": {
"get": {
"tags": ["Expiry Auctions: Registrar Partners"],
"consumes": ["application/json"],
"produces": ["application/json"],
"parameters": [
{
"name": "customerId",
"required": true,
"in": "path",
"description": "An identifier for a customer.",
"type": "string"
},
{
"name": "domains",
"required": false,
"in": "query",
"description": "Only include results for the specified domains. Use comma-separated string to include more than one domain. For example, `one.com,two.info,three.biz`",
"type": "string"
},
{
"name": "listingStatus",
"required": false,
"in": "query",
"description": "Only include results for the specified listing status.",
"type": "string",
"enum": ["FULFILLED"]
},
{
"name": "transferBefore",
"required": false,
"in": "query",
"description": "Domain transfer time before this time, ISO 8601, in UTC. Defaults to last day of the previous month if not provided. Applicable only for listings in `FULFILLED` listingStatus.",
"type": "string",
"format": "iso-datetime"
},
{
"name": "transferAfter",
"required": false,
"in": "query",
"description": "Domain transfer time after this time, ISO 8601, in UTC. Defaults to first day of the previous month if not provided. Applicable only for listings in `FULFILLED` listingStatus.",
"type": "string",
"format": "iso-datetime"
},
{
"name": "limit",
"required": false,
"in": "query",
"description": "Maximum number of items to return.",
"type": "integer",
"format": "integer-positive"
},
{
"name": "offset",
"required": false,
"in": "query",
"description": "Number of results to skip for pagination.",
"type": "integer",
"format": "integer-positive"
}
],
"responses": {
"200": {
"description": "Request was successful",
"schema": {
"$ref": "#/definitions/Listings"
}
},
"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": "Required parameters must be specified in correct format",
"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": "getListings",
"summary": "Get listings from GoDaddy Auctions"
}
},
"/v1/aftermarket/listings": {
"delete": {
"tags": ["Expiry Auctions: Registrar Partners"],
"consumes": ["application/json", "application/xml", "text/xml"],
"produces": [
"application/json",
"application/javascript",
"application/xml",
"text/javascript",
"text/xml"
],
"parameters": [
{
"description": "A comma separated list of domain names",
"in": "query",
"items": {
"type": "string"
},
"name": "domains",
"required": true,
"type": "array"
}
],
"responses": {
"200": {
"description": "Request was successful",
"schema": {
"$ref": "#/definitions/AftermarketListingAction"
}
},
"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": "\tRequired parameters must be specified in correct format",
"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": "deleteListings",
"summary": "Remove listings from GoDaddy Auction"
}
},
"/v1/aftermarket/listings/expiry": {
"post": {
"tags": ["Expiry Auctions: Registrar Partners"],
"consumes": ["application/json", "application/xml", "text/xml"],
"produces": [
"application/json",
"application/javascript",
"application/xml",
"text/javascript",
"text/xml"
],
"parameters": [
{
"description": "An array of expiry listings to be loaded",
"in": "body",
"name": "expiryListings",
"required": true,
"schema": {
"items": {
"$ref": "#/definitions/AftermarketListingExpiryCreate"
},
"type": "array"
}
}
],
"responses": {
"200": {
"description": "Request was successful",
"schema": {
"$ref": "#/definitions/AftermarketListingAction"
}
},
"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": "Required parameters must be specified in correct format
Too many Listings provided
Invalid Losing Registrar 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"
}
}
},
"operationId": "addExpiryListings",
"summary": "Add expiry listings into GoDaddy Auction"
}
}
},
"definitions": {
"Listings": {
"type": "object",
"properties": {
"listings": {
"description": "Array of listings",
"type": "array",
"items": {
"$ref": "#/definitions/Listing"
}
},
"pagination": {
"$ref": "#/definitions/Pagination"
}
}
},
"Listing": {
"type": "object",
"required": ["domainName"],
"properties": {
"listingId": {
"description": "An identifier for the listing.",
"type": "integer",
"format": "integer-positive"
},
"domainName": {
"description": "The domain name for the listing.",
"type": "string",
"format": "domain-name"
},
"domainCreatedAt": {
"description": "Date when the domain was first registered in ISO-8601 format",
"format": "iso-datetime",
"type": "string"
},
"domainExpiresAt": {
"description": "Date when the domain expires in ISO-8601 format",
"format": "iso-datetime",
"type": "string"
},
"domainRegistrarIanaId": {
"description": "Source registrar IANA id for the domain name. Reference - https://www.iana.org/assignments/registrar-ids/registrar-ids.xhtml",
"type": "integer",
"format": "integer-positive"
},
"pageViewsMonthly": {
"description": "Monthly traffic page view for the domain",
"type": "integer",
"format": "integer-positive"
},
"revenueMonthly": {
"description": "Monthly parking revenue (in USD micro unit) for the domain",
"type": "integer",
"format": "currency-micro-unit-positive"
},
"auctionStartAt": {
"description": "The UTC date and time, in RFC 3339 format, that the auction starts.",
"format": "iso-datetime",
"type": "string",
"example": "2022-04-01T02:07:14Z"
},
"auctionEndAt": {
"description": "The UTC date and time, in RFC 3339 format, that the auction ends.",
"format": "iso-datetime",
"type": "string",
"example": "2022-04-10T02:07:14Z"
},
"auctionTransferAt": {
"description": "The UTC date and time, in RFC 3339 format, that the auction domain is transferred. Applicable only for listings in `FULFILLED` status.",
"format": "iso-datetime",
"type": "string",
"example": "2022-04-15T02:07:14Z"
},
"auctionSoldAt": {
"description": "The UTC date and time, in RFC 3339 format, that the auction domain is sold. Applicable only for listings in `FULFILLED` status.",
"format": "iso-datetime",
"type": "string",
"example": "2022-04-20T02:07:14Z"
},
"auctionBookingAmountUsd": {
"description": "The booking amount (in USD micro units) for the auction domain. Applicable only for listings in `FULFILLED` status.",
"type": "integer",
"format": "currency-micro-unit-positive"
},
"createdAt":{
"type": "string",
"format": "iso-datetime"
},
"updatedAt": {
"type": "string",
"format": "iso-datetime"
}
}
},
"listingStatus": {
"description": "Listing status",
"type": "string",
"enum": ["FULFILLED"]
},
"AftermarketListingAction": {
"properties": {
"listingActionId": {
"description": "Action Id",
"type": "integer"
}
},
"required": ["listingActionId"]
},
"AftermarketListingExpiryCreate": {
"properties": {
"domain": {
"description": "Domain name",
"type": "string"
},
"expiresAt": {
"description": "Date when the domain expires",
"format": "iso-datetime",
"type": "string"
},
"losingRegistrarId": {
"default": 1,
"description": "Losing registrar id for the domain",
"minimum": 1,
"type": "integer"
},
"pageViewsMonthly": {
"description": "Monthly traffic page view for the domain",
"type": "integer"
},
"revenueMonthly": {
"description": "Monthly parking revenue (in USD micro unit) for the domain",
"type": "integer"
}
},
"required": ["domain", "expiresAt", "losingRegistrarId"]
},
"Pagination": {
"type": "object",
"properties": {
"first": {
"type": "string",
"description": "URI to access the first page"
},
"previous": {
"type": "string",
"description": "URI to access the previous page"
},
"next": {
"type": "string",
"description": "URI to access the next page"
},
"last": {
"type": "string",
"description": "URI to access the last page"
},
"total": {
"type": "integer",
"description": "Number of records available"
}
}
},
"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": "