swagger: '2.0'
info:
title: Abuse Actions API
version: 2.0.0
description: <strong>GoDaddy Abuse API Terms of Use:</strong><p>GoDaddy’s Abuse API is provided to simplify and standardize the abuse reporting experience. To help us streamline the review of abuse reports, you acknowledge and agree that your use of GoDaddy’s Abuse API is subject to the following quality metrics and terms of use.</p><p>GoDaddy may, in its sole and absolute discretion, change or modify these terms, and such changes or modifications shall be effective immediately upon notice to you. Your use of GoDaddy’s Abuse API after such changes or modifications shall constitute your acceptance of these terms as last revised. If you do not agree to be bound by these terms as last revised, do not use (or continue to use) our Abuse API.</p><p>As an Abuse API user, you must only submit abuse reports via the API portal and cease all email submissions, including but not limited, to phishing@godaddy.com, netabuse@godaddy.com, malware@godaddy.com, or spam@godaddy.com, etc. Any additional or duplicate submission outside of the API portal will be deprioritized for review. Submissions related to trademark, copyright or content issues may still be sent to trademarkclaims@godaddy.com, coyprightclaims@godaddy.com, and contentcomplaints@godaddy.com, respectively. Our [Front of Site](https://supportcenter.godaddy.com/AbuseReport) also describes other scenarios not covered by the API.</p><p>When you submit abuse reports via GoDaddy’s Abuse API, you must ensure that you accurately categorize the abuse type of each report to match our definitions in the API documentations provided to you. Any submission that fails to match our definitions or is miscategorized will be marked as a false positive. Examples include, but are not limited to, submissions of trademark complaints marked as phishing or malware, or submissions of copyright complaints marked as phishing or malware, etc.</p><p>If, at any time, the false positive rate of submissions exceeds 40% of your total submissions, as determined by GoDaddy, GoDaddy may in its sole discretion deprioritize any subsequent reports submitted by you and/or your organization.</p><p>You acknowledge and agree that submitting every URL for a single domain is not necessary and will not expedite the review process. If your submissions exceed five (5) URLs for a single domain, your report will be marked as a duplicate submission taking into account that the final outcome of such submissions would yield the same result as the original report. GoDaddy may in its sole discretion deprioritize reports submitted by you and/or your organization in the event more than 20% of your submissions are classified as duplicate submissions.</p><p>You further acknowledge and agree that our Customer Support lines are not intended to address abuse reporting matters or your use of GoDaddy’s Abuse API. Contacting Customer Support will not expedite the review process and may result in abuse reports being deprioritized, to be determined in our sole discretion.</p><p>Should you have any questions about GoDaddy’s Abuse API or any of the terms and conditions set forth above, please contact abuseapisupport@godaddy.com.</p>
host: api.ote-godaddy.com
tags:
- name: Actions
description: ''
paths:
/v2/customers/{customerId}/domains/{domain}/actions:
get:
tags:
- Actions
produces:
- application/json
summary: Retrieves a list of the most recent actions for the specified domain
parameters:
- name: X-Request-Id
required: false
in: header
type: string
description: A client provided identifier for tracking this request.
- description: 'The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you''re operating on behalf of; otherwise use your shopper id.'
in: path
name: customerId
required: true
type: string
- description: Domain whose actions are to be retrieved
name: domain
in: path
required: true
type: string
responses:
'200':
description: Request was successful
schema:
items:
$ref: '#/definitions/Action'
type: array
'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: The domain does not exist
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'
/v2/customers/{customerId}/domains/{domain}/actions/{type}:
delete:
tags:
- Actions
consumes:
- application/json
produces:
- application/json
summary: Cancel the most recent user action for the specified domain
parameters:
- name: X-Request-Id
required: false
in: header
type: string
description: A client provided identifier for tracking this request.
- description: 'The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you''re operating on behalf of; otherwise use your shopper id.'
in: path
name: customerId
required: true
type: string
- description: Domain whose action is to be cancelled
name: domain
in: path
required: true
type: string
- name: type
description: The type of action to cancel
in: path
required: true
type: string
enum:
- AUTH_CODE_PURCHASE
- AUTH_CODE_REGENERATE
- BACKORDER_PURCHASE
- BACKORDER_DELETE
- BACKORDER_UPDATE
- CHANGE_OF_REGISTRANT_DELETE
- DNSSEC_CREATE
- DNSSEC_DELETE
- DOMAIN_DELETE
- DOMAIN_UPDATE
- DOMAIN_UPDATE_CONTACTS
- DOMAIN_UPDATE_NAME_SERVERS
- MIGRATE
- PRIVACY_FORWARDING_UPDATE
- PRIVACY_PURCHASE
- PRIVACY_DELETE
- REDEEM
- REGISTER
- RENEW
- RENEW_UNDO
- TRADE
- TRADE_CANCEL
- TRADE_PURCHASE
- TRADE_PURCHASE_AUTH_TEXT_MESSAGE
- TRADE_RESEND_AUTH_EMAIL
- TRANSFER
- TRANSFER_IN_ACCEPT
- TRANSFER_IN_CANCEL
- TRANSFER_IN_RESTART
- TRANSFER_IN_RETRY
- TRANSFER_OUT_ACCEPT
- TRANSFER_OUT_REJECT
- TRANSFER_OUT_REQUESTED
- TRANSIT
responses:
'204':
description: Request was successful
'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: The domain does not exist
schema:
$ref: '#/definitions/Error'
'409':
description: The action status does not allow performing the operation
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'
get:
tags:
- Actions
produces:
- application/json
summary: Retrieves the most recent action for the specified domain
parameters:
- name: X-Request-Id
required: false
in: header
type: string
description: A client provided identifier for tracking this request.
- description: 'The Customer identifier<br/> Note: For API Resellers, performing actions on behalf of your customers, you need to specify the Subaccount you''re operating on behalf of; otherwise use your shopper id.'
in: path
name: customerId
required: true
type: string
- description: Domain whose action is to be retrieved
name: domain
in: path
required: true
type: string
- name: type
description: The type of action to retrieve
in: path
required: true
type: string
enum:
- AUTH_CODE_PURCHASE
- AUTH_CODE_REGENERATE
- AUTO_RENEWAL
- BACKORDER_PURCHASE
- BACKORDER_DELETE
- BACKORDER_UPDATE
- CHANGE_OF_REGISTRANT_DELETE
- DNS_VERIFICATION
- DNSSEC_CREATE
- DNSSEC_DELETE
- DOMAIN_DELETE
- DOMAIN_UPDATE
- DOMAIN_UPDATE_CONTACTS
- DOMAIN_UPDATE_NAME_SERVERS
- EXPIRY
- ICANN_VERIFICATION
- MIGRATE
- MIGRATE_IN
- PREMIUM
- PRIVACY_FORWARDING_UPDATE
- PRIVACY_PURCHASE
- PRIVACY_DELETE
- REDEEM
- REGISTER
- RENEW
- RENEW_UNDO
- TRADE
- TRADE_CANCEL
- TRADE_PURCHASE
- TRADE_PURCHASE_AUTH_TEXT_MESSAGE
- TRADE_RESEND_AUTH_EMAIL
- TRANSFER
- TRANSFER_IN
- TRANSFER_IN_ACCEPT
- TRANSFER_IN_CANCEL
- TRANSFER_IN_RESTART
- TRANSFER_IN_RETRY
- TRANSFER_OUT
- TRANSFER_OUT_ACCEPT
- TRANSFER_OUT_REJECT
- TRANSFER_OUT_REQUESTED
- TRANSIT
responses:
'200':
description: Request was successful
schema:
$ref: '#/definitions/Action'
'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: The domain does not exist
schema:
$ref: '#/definitions/Error'
'409':
description: The domain status does not allow performing the operation
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'
definitions:
ActionReason:
additionalProperties: false
properties:
code:
type: string
format: constant
pattern: ^[A-Z_][A-Z0-9_]*$
description: Short identifier, suitable for indicating the reason for the current status and how to handle within client code
message:
type: string
description: Human-readable, English description of the code
fields:
type: array
items:
$ref: '#/definitions/ErrorField'
description: List of the specific fields, and the errors found with their contents
required:
- code
Action:
properties:
type:
type: string
description: 'The type of action being performed<br/><ul><li><strong style=''margin-left: 12px;''>AUTH_CODE_PURCHASE</strong> - Request for an auth code for a .de domain via POST /v2/customers/{customerId}/domains/{domain}/purchaseAuthCode.</li><li><strong style=''margin-left: 12px;''>AUTH_CODE_REGENERATE</strong> - Request to regenerate the authCode for a domain via POST /v2/customers/{customerId}/domains/{domain}/regenerateAuthCode</li><li><strong style=''margin-left: 12px;''>AUTO_RENEWAL</strong> - A Domain Auto Renew is in progress.</li><li><strong style=''margin-left: 12px;''>BACKORDER_PURCHASE</strong> - Request to purchase a domain backorder via POST /v2/customers/{customerId}/domains/backorders/purchase.</li><li><strong style=''margin-left: 12px;''>BACKORDER_DELETE</strong> - Request to cancel the current domain backorder via DELETE /v2/customers/{customerId}/domains/backorders/{domain}.</li><li><strong style=''margin-left: 12px;''>BACKORDER_UPDATE</strong> - Request update the current domain backorder via PATCH /v2/customers/{customerId}/domains/backorders/{domain}.</li><li><strong style=''margin-left: 12px;''>CHANGE_OF_REGISTRANT_DELETE</strong> - Request to delete a change of registrant request via DELETE /v2/customers/{customerId}/domains/{domain}/changeOfRegistrant.</li><li><strong style=''margin-left: 12px;''>CONTACT_CREATE</strong> - Request to create a contact via POST /v2/customers/{customerId}/domains/contacts.</li><li><strong style=''margin-left: 12px;''>CONTACT_DELETE</strong> - Request to delete a contact via DELETE /v2/customers/{customerId}/domains/contacts/{contactId}</li><li><strong style=''margin-left: 12px;''>CONTACT_UPDATE</strong> - Request to update a contact via PATCH /v2/customers/{customerId}/domains/contacts/{contactId}</li><li><strong style=''margin-left: 12px;''>DNS_VERIFICATION</strong> - Domain requires zone file setup.</li><li><strong style=''margin-left: 12px;''>DNSSEC_CREATE</strong> - Request to create DNSSEC record for the domain via PATCH /v2/customers/{customerId}/domains/{domain}/dnssecRecords.</li><li><strong style=''margin-left: 12px;''>DNSSEC_DELETE</strong> - Request to delete DNSSEC record for the domain via DELETE /v2/customers/{customerId}/domains/{domain}/dnssecRecords.</li><li><strong style=''margin-left: 12px;''>DOMAIN_DELETE</strong> - Request to delete the domain via DELETE /v2/customers/{customerId}/domains/{domain}</li><li><strong style=''margin-left: 12px;''>DOMAIN_UPDATE</strong> - Request to update the domain via PATCH /v2/customers/{customerId}/domains/{domain}</li><li><strong style=''margin-left: 12px;''>DOMAIN_UPDATE_CONTACTS</strong> -Request to update the domain contacts via PATCH /v2/customers/{customerId}/domains/{domain}/contacts</li><li><strong style=''margin-left: 12px;''>DOMAIN_UPDATE_NAME_SERVERS</strong> - Request to update the domain name servers via PUT /v2/customers/{customerId}/domains/{domain}/nameServers</li><li><strong style=''margin-left: 12px;''>EXPIRY</strong> - A Domain Expiration is in progress.</li><li><strong style=''margin-left: 12px;''>HOST_CREATE</strong> - Request to create a hostname via PUT /v2/customers/{customerId}/domains/{domain}/hosts/{hostname}</li><li><strong style=''margin-left: 12px;''>HOST_DELETE</strong> - Request to delete a hostname via DELETE /v2/customers/{customerId}/domains/{domain}/hosts/{hostname}</li><li><strong style=''margin-left: 12px;''>ICANN_VERIFICATION</strong> - Domain requires registrant verification for Icann.</li><li><strong style=''margin-left: 12px;''>PREMIUM</strong> - Premium Domain domain sale is in progress.</li><li><strong style=''margin-left: 12px;''>PRIVACY_FORWARDING_UPDATE</strong> - Request to update privacy forwarding information via PATCH /v2/customers/{customerId}/domains/{domain}/privacy/forwarding.</li><li><strong style=''margin-left: 12px;’>PRIVACY_PURCHASE</strong> - Request to purchase privacy for a domain via POST /v2/customers/{customerId}/domains/{domain}/privacy/purchase</li><li><strong style=''margin-left: 12px;''>PRIVACY_DELETE</strong> - Request to remove privacy from a domain via DELETE /v2/customers/{customerId}/domains/{domain}/privacy</li><li><strong style=''margin-left: 12px;''>REDEEM</strong> - Request to redeem a domain via POST /v2/customers/{customerId}/domains/{domain}/redeem</li><li><strong style=''margin-left: 12px;''>REGISTER</strong> - Request to register a domain via POST /v2/customers/{customerId}/domains/{domain}/register</li><li><strong style=''margin-left: 12px;''>RENEW</strong> - Request to renew a domain via POST /v2/customers/{customerId}/domains/{domain}/renew</li><li><strong style=''margin-left: 12px;''>RENEW_UNDO</strong> - Request to undo a renewal for a uk domain via POST /v2/customers/{customerId}/domains/{domain}/undoRenew</li><li><strong style=''margin-left: 12px;''>TRADE</strong> - A domain trade request is in progress</li><li><strong style=''margin-left: 12px;''>TRADE_CANCEL</strong> - Request to cancel a trade for a domain via POST /v2/customers/{customerId}/domains/{domain}/tradeCancel</li><li><strong style=''margin-left: 12px;''>TRADE_PURCHASE</strong> - Request to purchase a trade for a domain via POST /v2/customers/{customerId}/domains/{domain}/tradePurchase</li><li><strong style=''margin-left: 12px;''>TRADE_PURCHASE_AUTH_TEXT_MESSAGE</strong> - Request for a trade purchase text message for a domain via POST /v2/customers/{customerId}/domains/{domain}/tradePurchaseAuthorizationTextMessage</li><li><strong style=''margin-left: 12px;''>TRADE_RESEND_AUTH_EMAIL</strong> - Request to resend the trade auth email message for a domain via POST /v2/customers/{customerId}/domains/{domain}/tradeResendAuthorizationEmail</li><li><strong style=''margin-left: 12px;''>TRANSFER</strong> - Request to transfer a domain via POST /v2/customers/{customerId}/domains/{domain}/transfer</li><li><strong style=''margin-left: 12px;''>TRANSFER_IN</strong> - A domain transfer in request is in progress.</li><li><strong style=''margin-left: 12px;''>TRANSFER_IN_ACCEPT</strong> - Request to accept a domain transfer in via POST /v2/customers/{customerId}/domains/{domain}/transferInAccept</li><li><strong style=''margin-left: 12px;''>TRANSFER_IN_CANCEL</strong> - Request to cancel a domain transfer via POST /v2/customers/{customerId}/domains/{domain}/transferInCancel</li><li><strong style=''margin-left: 12px;''>TRANSFER_IN_RESTART</strong> - Request to restart a domain transfer in via POST /v2/customers/{customerId}/domains/{domain}/transferInRestart</li><li><strong style=''margin-left: 12px;''>TRANSFER_IN_RETRY</strong> - Request to retry a domain transfer in via POST /v2/customers/{customerId}/domains/{domain}/transferInRetry</li><li><strong style=''margin-left: 12px;''>TRANSFER_OUT</strong> - A domain transfer out request is in progress.</li><li><strong style=''margin-left: 12px;''>TRANSFER_OUT_ACCEPT</strong> - Request to accept a transfer out request for a domain via POST /v2/customers/{customerId}/domains/{domain}/transferOutAccept</li><li><strong style=''margin-left: 12px;''>TRANSFER_OUT_REJECT</strong> - Request to reject a transfer out request for a domain via POST /v2/customers/{customerId}/domains/{domain}/transferOutReject</li><li><strong style=''margin-left: 12px;''>TRANSFER_OUT_REQUESTED</strong> - Request to transfer out for a domain (.de) via POST /v2/customers/{customerId}/domains/{domain}/transferOut</li><li><strong style=''margin-left: 12px;''>TRANSIT</strong> - Request to transit a de or at domain at the registry via POST /v2/customers/{customerId}/domains/{domain}/transit</li></ul>'
enum:
- AUTH_CODE_PURCHASE
- AUTH_CODE_REGENERATE
- AUTO_RENEWAL
- BACKORDER_PURCHASE
- BACKORDER_DELETE
- BACKORDER_UPDATE
- CHANGE_OF_REGISTRANT_DELETE
- CONTACT_CREATE
- CONTACT_DELETE
- CONTACT_UPDATE
- DNS_VERIFICATION
- DNSSEC_CREATE
- DNSSEC_DELETE
- DOMAIN_DELETE
- DOMAIN_UPDATE
- DOMAIN_UPDATE_CONTACTS
- DOMAIN_UPDATE_NAME_SERVERS
- EXPIRY
- HOST_CREATE
- HOST_DELETE
- ICANN_VERIFICATION
- MIGRATE
- MIGRATE_IN
- PREMIUM
- PRIVACY_FORWARDING_UPDATE
- PRIVACY_PURCHASE
- PRIVACY_DELETE
- REDEEM
- REGISTER
- RENEW
- RENEW_UNDO
- TRADE
- TRADE_CANCEL
- TRADE_PURCHASE
- TRADE_PURCHASE_AUTH_TEXT_MESSAGE
- TRADE_RESEND_AUTH_EMAIL
- TRANSFER
- TRANSFER_IN
- TRANSFER_IN_ACCEPT
- TRANSFER_IN_CANCEL
- TRANSFER_IN_RESTART
- TRANSFER_IN_RETRY
- TRANSFER_OUT
- TRANSFER_OUT_ACCEPT
- TRANSFER_OUT_REJECT
- TRANSFER_OUT_REQUESTED
- TRANSIT
origination:
type: string
enum:
- USER
- SYSTEM
description: 'The origination of the action<br/><ul><li><strong style=''margin-left: 12px;''>USER</strong> - These are user requests.</li><li><strong style=''margin-left: 12px;''>SYSTEM</strong> - These are system processing actions.</li></ul>'
createdAt:
type: string
format: iso-datetime
description: Timestamp indicating when the action was created
startedAt:
type: string
format: iso-datetime
description: Timestamp indicating when the action was started
completedAt:
type: string
format: iso-datetime
description: Timestamp indicating when the action was completed
modifiedAt:
type: string
format: iso-datetime
description: Timestamp indicating when the action was last modified
status:
type: string
default: ACCEPTED
enum:
- ACCEPTED
- AWAITING
- CANCELLED
- FAILED
- PENDING
- SUCCESS
description: 'The current status of the action<br/><ul><li><strong style=''margin-left: 12px;''>ACCEPTED</strong> - The action has been queued, processing has not started.</li><li><strong style=''margin-left: 12px;''>AWAITING</strong> - The action is waiting on a user input.</li><li><strong style=''margin-left: 12px;''>CANCELLED</strong> - The action has been cancelled by the user.</li><li><strong style=''margin-left: 12px;''>FAILED</strong> - An error occurred while the action was processing, no more processing will be performed.</li><li><strong style=''margin-left: 12px;''>PENDING</strong> - The action is being processed.</li><li><strong style=''margin-left: 12px;''>SUCCESS</strong> - The action has completed, no additional processing is required.</li></ul>'
reason:
$ref: '#/definitions/ActionReason'
description: The detailed reason for the status
requestId:
type: string
description: A client provided identifier (via X-Request-Id header) used for tracking individual requests
required:
- type
- origination
- createdAt
- status
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: '<ul>
<li style=''margin-left: 12px;''>JSONPath referring to a field containing an error</li>
<strong style=''margin-left: 12px;''>OR</strong>
<li style=''margin-left: 12px;''>JSONPath referring to a field that refers to an object containing an error, with more detail in `pathRelated`</li>
</ul>'
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
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: '#/definitions/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