openapi: 3.2.0 info: title: Abuse API version: 2.0.0 description: 'GoDaddy Abuse API Terms of Use: GoDaddy’s Abuse API is provided to simplify and standardize the abuse reporting experience.' servers: - url: https://api.ote-godaddy.com tags: - name: Abuse paths: /v1/abuse/tickets: get: tags: - Abuse parameters: - description: The type of abuse. in: query name: type required: false schema: type: string enum: - A_RECORD - CHILD_ABUSE - CONTENT - FRAUD_WIRE - IP_BLOCK - MALWARE - NETWORK_ABUSE - PHISHING - SPAM - description: Is this abuse ticket closed? in: query name: closed required: false schema: type: boolean default: false - description: The domain name or ip address the abuse originated from in: query name: sourceDomainOrIp required: false schema: type: string format: host-name-or-ip-address - description: 'The brand/company the abuse is targeting. ie: brand name/bank name' in: query name: target required: false schema: type: string - description: The earliest abuse ticket creation date to pull abuse tickets for in: query name: createdStart required: false schema: type: string format: iso-datetime - description: The latest abuse ticket creation date to pull abuse tickets for in: query name: createdEnd required: false schema: type: string format: iso-datetime - description: Number of abuse ticket numbers to return. in: query name: limit required: false schema: type: integer format: integer-positive default: 100 maximum: 100 - description: The earliest result set record number to pull abuse tickets for in: query name: offset required: false schema: type: integer format: integer-positive default: 0 responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/AbuseTicketList' '401': description: Authentication info not sent or invalid content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Authenticated user is not allowed access content: application/json: schema: $ref: '#/components/schemas/Error' '422': description: Error content: application/json: schema: $ref: '#/components/schemas/Error' operationId: getTickets summary: List all abuse tickets ids that match user provided filters post: tags: - Abuse responses: '201': description: Success content: application/json: schema: $ref: '#/components/schemas/AbuseTicketId' '401': description: Authentication info not sent or invalid content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Authenticated user is not allowed access content: application/json: schema: $ref: '#/components/schemas/Error' '422': description: Error content: application/json: schema: $ref: '#/components/schemas/Error' operationId: createTicket summary: Create a new abuse ticket requestBody: content: application/json: schema: $ref: '#/components/schemas/AbuseTicketCreateLegacy' description: The endpoint which allows the Reporter to create a new abuse ticket required: true /v1/abuse/tickets/{ticketId}: get: tags: - Abuse parameters: - description: A unique abuse ticket identifier in: path name: ticketId required: true schema: type: string responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/AbuseTicketLegacy' '401': description: Authentication info not sent or invalid content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Authenticated user is not allowed access content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Invalid ticket id provided content: application/json: schema: $ref: '#/components/schemas/Error' operationId: getTicketInfo summary: Return the abuse ticket data for a given ticket id /v2/abuse/tickets: get: tags: - Abuse parameters: - description: The type of abuse. in: query name: type required: false schema: type: string enum: - A_RECORD - CHILD_ABUSE - CONTENT - FRAUD_WIRE - IP_BLOCK - MALWARE - NETWORK_ABUSE - PHISHING - SPAM - description: Is this abuse ticket closed? in: query name: closed required: false schema: type: boolean default: false - description: The domain name or ip address the abuse originated from in: query name: sourceDomainOrIp required: false schema: type: string format: host-name-or-ip-address - description: 'The brand/company the abuse is targeting. ie: brand name/bank name' in: query name: target required: false schema: type: string - description: The earliest abuse ticket creation date to pull abuse tickets for in: query name: createdStart required: false schema: type: string format: iso-datetime - description: The latest abuse ticket creation date to pull abuse tickets for in: query name: createdEnd required: false schema: type: string format: iso-datetime - description: Number of abuse ticket numbers to return. in: query name: limit required: false schema: type: integer format: integer-positive default: 100 maximum: 100 - description: The earliest result set record number to pull abuse tickets for in: query name: offset required: false schema: type: integer format: integer-positive default: 0 responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/AbuseTicketList' '401': description: Authentication info not sent or invalid content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Authenticated user is not allowed access content: application/json: schema: $ref: '#/components/schemas/Error' '422': description: Error content: application/json: schema: $ref: '#/components/schemas/Error' operationId: getTicketsV2 summary: List all abuse tickets ids that match user provided filters post: tags: - Abuse responses: '201': description: Success content: application/json: schema: $ref: '#/components/schemas/AbuseTicketId' '401': description: Authentication info not sent or invalid content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Authenticated user is not allowed access content: application/json: schema: $ref: '#/components/schemas/Error' '422': description: Error content: application/json: schema: $ref: '#/components/schemas/Error' operationId: createTicketV2 summary: Create a new abuse ticket requestBody: content: application/json: schema: $ref: '#/components/schemas/AbuseTicketCreate' description: The endpoint which allows the Reporter to create a new abuse ticket required: true /v2/abuse/tickets/{ticketId}: get: tags: - Abuse parameters: - description: A unique abuse ticket identifier in: path name: ticketId required: true schema: type: string responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/AbuseTicket' '401': description: Authentication info not sent or invalid content: application/json: schema: $ref: '#/components/schemas/Error' '403': description: Authenticated user is not allowed access content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: Invalid ticket id provided content: application/json: schema: $ref: '#/components/schemas/Error' operationId: getTicketInfoV2 summary: Return the abuse ticket data for a given ticket id components: schemas: AbuseTicketCreateBase: required: - source properties: info: description: 'Additional information that may assist the abuse investigator. ie: server logs or email headers/body for SPAM' type: string infoUrl: description: Reporter URL if housing additional information that may assist the abuse investigator format: url type: string source: description: 'The URL or IP where live abuse content is located at. ie: https://www.example.com/bad_stuff/bad.php' type: string target: description: 'The brand/company the abuse is targeting. ie: brand name/bank name' type: string AbuseTicketLegacy: description: The associated fields returned, given a unique abuse ticket id properties: closed: default: false description: Is this abuse ticket closed? type: boolean closedAt: description: The date the abuse ticket was closed format: iso-datetime type: string createdAt: description: The date the abuse ticket was created format: iso-datetime type: string domainIp: description: The domain or IP the suspected abuse was reported against type: string reporter: description: The shopper id of the person who reported the suspected abuse type: string source: description: The single URL or IP the suspected abuse was reported against type: string target: description: The company the suspected abuse is targeting type: string ticketId: description: Abuse ticket ID type: string type: description: The type of abuse being reported enum: - A_RECORD - CHILD_ABUSE - CONTENT - FRAUD_WIRE - IP_BLOCK - MALWARE - NETWORK_ABUSE - PHISHING - SPAM type: string required: - ticketId - reporter - domainIp - closed - type - target - source - createdAt - closedAt AbuseTicket: allOf: - $ref: '#/components/schemas/AbuseTicketLegacy' - type: object properties: closeReason: description: 'The reason that the ticket was closed.

RECLASSIFIED: False Positive - Reclassified to different abuse type.
NOT_REGISTERED_HOSTED_HERE: Not Registered or Hosted with GoDaddy brand(s).
FORWARDED_COMPLAINT: Forwarded Complaint to proper channel.
FALSE_POSITIVE: Not Actionable by DCU.
ACTIONED: Domain or Content Actioned' enum: - ACTIONED - FALSE_POSITIVE - FORWARDED_COMPLAINT - RECLASSIFIED - NOT_REGISTERED_HOSTED_HERE type: string AbuseTicketCreate: required: - type allOf: - $ref: '#/components/schemas/AbuseTicketCreateBase' - type: object properties: type: description: The type of abuse being reported. enum: - CHILD_ABUSE - MALWARE - PHISHING type: string proxy: description: The regional location that the content needs to be viewed from.
Here is a mapping of the regional codes to common countries.
ARE - Pakistan, Israel, Turkey, Azerbaijan
SGP - Japan, Tokyo, AU, Australia, Sydney, Singapore, India, Mumbai, New Zealand, Philippines, Korea, Indonesia, China, Malaysia, Taiwan, India
ZAF - South Africa
USA - Canada, United States
BRA - Brazil, Argentina, Ecuador, Mexico, Peru, South America, Colombia, Chile, Guatemala, Panama
DEU - Germany, France, United Kingdom, London, Italy, Belgium, Netherlands, Spain, Ukraine, Austria, Switzerland, Frankfurt, Denmark, Norway, Sweden, Finland, Iceland, Slovakia, Romania, Luxembourg, Poland, Ireland, Portugal, Moldova, Bulgaria, Slovenia, Serbia, Hungary, Lithuania, Malta, Morocco, Latvia, Estonia, Russian Federation, Sweden enum: - ARE - SGP - ZAF - USA - BRA - DEU - OTHER - NOT_APPLICABLE type: string useragent: description: The user-agent required to view the content. enum: - DESKTOP - MOBILE - OTHER - NOT_APPLICABLE type: string 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 stack: description: 'Stack trace indicating where the error occurred.
NOTE: This attribute MAY be included for Development and Test environments. However, it MUST NOT be exposed from OTE nor Production systems.' items: type: string type: array 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: 1) JSONPath referring to the field within the data containing an error
or
2) JSONPath referring to an object containing an error format: json-path type: string pathRelated: description: JSONPath referring to the field on the object referenced by `path` containing an error format: json-path type: string required: - path - code AbuseTicketCreateLegacy: required: - type allOf: - $ref: '#/components/schemas/AbuseTicketCreateBase' - type: object properties: intentional: default: false description: Do you believe this is intentional abuse by the domain holder? type: boolean proxy: description: 'The Proxy information required to view the abuse being reported. ie: Specific IP used, or country of IP viewing from' type: string type: description: The type of abuse being reported. enum: - A_RECORD - CHILD_ABUSE - CONTENT - FRAUD_WIRE - IP_BLOCK - MALWARE - NETWORK_ABUSE - PHISHING - SPAM type: string AbuseTicketList: properties: pagination: $ref: '#/components/schemas/Pagination' ticketIds: description: A list of abuse ticket ids originated by this reporter. items: type: string type: array required: - ticketIds Pagination: properties: first: description: Optional link to first list of results type: string last: description: Optional link to last list of results type: string next: description: Optional link to next list of results type: string previous: description: Optional link to previous list of results type: string total: description: Number of records available type: integer AbuseTicketId: description: The primary key of a newly created abuse ticket properties: u_number: description: Abuse ticket ID type: string required: - u_number