Skip to content

Latest commit

 

History

12 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

domain-search

A small Spring Boot service that generates domain names (A-Z) and checks availability using the GoDaddy Domains API.

Summary

This project generates combinations of letters, appends .com, and bulk-checks availability with GoDaddy. It was created as a quick tool to discover available domain names programmatically.

Prerequisites

  • Java 11+ or compatible JDK
  • Maven (or use the included Maven wrapper: ./mvnw)
  • A GoDaddy API authorization value (see Configuration)

Configuration

Edit src/main/resources/application.properties and set your GoDaddy authorization header value. The service expects the property prodauth to be set. Example (do NOT commit credentials):

prodauth=sso-key <API_KEY>:<API_SECRET>

There is also an auth property in the file but the code uses prodauth for outgoing API requests.

Build and run

Using the Maven wrapper from the repository root:

./mvnw clean package
./mvnw spring-boot:run

Or with your local Maven installation:

mvn clean package
mvn spring-boot:run

The application runs as a Spring Boot app and listens on the default port (8080) unless you override it in configuration.

Endpoints

  • GET /generate?domainLength=<N>

    • Generates domain names of length N (using uppercase letters A-Z), appends .com, batches them (500 per batch) and queries GoDaddy.
    • Returns a JSON array of available domain strings if any are found, otherwise returns more detailed DomainStatusResponse objects.
    • Example: /generate?domainLength=3
  • POST /direct/post/domains/test

    • Proxy endpoint used by the service to call GoDaddy's bulk availability endpoint. Accepts a JSON array (string) of domains.
  • GET /direct/single/domain?domain=<domain>

    • Checks a single domain's availability via the GoDaddy API.

Examples

Check 3-letter .com domains (may take time and trigger rate limits):

curl "http://localhost:8080/generate?domainLength=3"

Call the test bulk endpoint (example payload):

curl -X POST -H "Content-Type: application/json" \
	-d '["ABC.com","DEF.com"]' \
	http://localhost:8080/direct/post/domains/test

Notes and limitations

  • The generator uses uppercase letters A-Z and appends .com.
  • The code batches requests in groups of 500 domains and will sleep/retry when GoDaddy returns a rate-limit response (the code parses RetryResponse and uses retryAfterSec).
  • Make sure you set prodauth in src/main/resources/application.properties before running; otherwise API calls will fail.
  • This is a utility / research tool — be careful with large domainLength values: the search space grows exponentially.

Where to look in the code


Small utility — use responsibly. Larger domain lengths take more time to respond.

About

consumes godaddy api

Resources

Stars

2 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages