Manage APIs - COS301-SE-2025/API-Threat-Assessment-Tool GitHub Wiki
Manage APIs Page
Overview
The Manage APIs page is a core component of the API Threat Assessment Tool (AT-AT), a COS301 Capstone Project developed in 2025. This page allows users to manage their APIs by viewing, adding, editing, and deleting API entries. It also supports importing API specifications via file upload, ensuring users can efficiently manage their API inventory for threat assessment.
The page is accessible at the route /manage-apis
and is part of the authenticated user dashboard. It integrates with the application's theme context (light/dark mode) and authentication system.
Features
1. API List
Displays a table of all APIs with the following columns:
- Name: The name of the API
- Base URL: The base URL of the API
- Description: A brief description of the API
- Last Scanned: The date of the last threat assessment scan (or "Never" if not scanned)
- Status: The API's status (Active/Inactive)
- Actions: Buttons to edit or delete the API
If no APIs are present, a message "No APIs found. Add your first API to get started." is displayed.
2. Add/Edit API
Users can add a new API or edit an existing one using a modal form.
Fields:
- API Name (required): The name of the API
- Base URL (required): The base URL of the API
- Description (optional): A description of the API
- Status (dropdown): Active or Inactive (defaults to Active)
The modal includes "Cancel" and "Save" buttons to discard or save changes.
3. File Upload for API Specification
Introduced on May 27, 2025: Users can upload a JSON file containing an API specification to automatically add an API.
Supported Format: JSON file with at least name
and baseUrl
fields. Optional fields: description
, status
.
Example File:
{
"name": "Test API",
"baseUrl": "https://api.test.com",
"description": "A test API for demonstration",
"status": "Active"
}