Skip to content

Recon tool to enumerate all API endpoints available in swagger.json (openAPI)

Notifications You must be signed in to change notification settings

hitem/apiendpointlister

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 

Repository files navigation

APIendpointlister

API Endpoint Lister is a Python script designed to fetch and list all API endpoints available in Swagger/OpenAPI JSON files. This tool is useful in conjunction with my other tool endpointchecker, once you got a proper list of swagger/openapi endpoints this tool can help you enumerate all the apiendpoints.

Features

  • Fetches Swagger/OpenAPI JSON from provided URLs.
  • Extracts and lists all API endpoints.
  • Outputs the results to a specified file.

Example:

Input URL file: http://example.com/swagger/v1/swagger.json
~ Script runs, magic 🧙 happens ~
Output:
http://example.com/api/v1/{userid}/Service/PostUpdate
http://example.com/api/v1/{userid}/Service/PostUpdate/{id}
http://example.com/api/v1/{memberid}/Service/Change/Post

image

Installation

  1. Clone the repository:
    git clone https://github.com/hitem/apiendpointlister.git
    cd apiendpointlister
  2. Install the required packages:
    pip install requests colorama

Usage

Run the script with the required options:

python3 apiendpointlister.py -h [--help]
python3 apiendpointlister.py -u <path_to_url_list_file> -o <output_file>

Options

  • -u, --urls: Path to the URL list file (required)
  • -o, --output: Output file for results (required)

Example

python3 apiendpointlister.py -u urllist.txt -o output.txt

Author

Disclaimer

Use this script with caution. Making numerous requests to external servers may have unintended consequences. Always have permission to test the endpoints you are checking.


Feel free to contribute or raise issues on GitHub.

Happy Recon!

About

Recon tool to enumerate all API endpoints available in swagger.json (openAPI)

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages