Documentation Index
Fetch the complete documentation index at: https://docs.hackgate.io/llms.txt
Use this file to discover all available pages before exploring further.
Create a project to track a security testing engagement in HackGATE. Projects store the context around a pentest or bug bounty — including dates, ownership, and whether retesting is required.
Create a project
The only required field when creating a project is name. All other fields are optional and can be added later via a PUT request.
curl -X POST https://admin.hackgate.io/api/projects \
-H "Authorization: Bearer <your-token>" \
-H "Content-Type: application/json" \
-d '{
"name": "Q4 Web App Pentest",
"description": "Annual penetration test of the customer portal",
"note": "Focus on authentication and payment flows",
"launchDate": "2024-01-15T09:00:00Z",
"endDate": "2024-01-29T17:00:00Z"
}'
Response:
{
"id": "proj-abc123",
"orgId": "org-xyz",
"name": "Q4 Web App Pentest",
"description": "Annual penetration test of the customer portal",
"note": "Focus on authentication and payment flows",
"launchDate": "2024-01-15T09:00:00Z",
"endDate": "2024-01-29T17:00:00Z",
"creationDate": "2024-01-10T08:00:00Z",
"isRetestNeeded": false
}
Update a project
Use PUT to update an existing project. Include all fields in the body — partial updates are not supported.
curl -X PUT https://admin.hackgate.io/api/projects \
-H "Authorization: Bearer <your-token>" \
-H "Content-Type: application/json" \
-d '{
"id": "proj-abc123",
"orgId": "org-xyz",
"name": "Q4 Web App Pentest",
"description": "Annual penetration test of the customer portal",
"type": "web",
"owner": "Jane Smith",
"vendor": "Hackrate",
"reportDeadline": "2024-02-05T17:00:00Z",
"isRetestNeeded": true,
"retestingLaunch": "2024-02-10T09:00:00Z",
"retestingEnd": "2024-02-14T17:00:00Z",
"accessType": "authenticated",
"location": "https://customerportal.example.com",
"launchDate": "2024-01-15T09:00:00Z",
"endDate": "2024-01-29T17:00:00Z"
}'
PUT replaces the entire project record. Include all fields you want to retain, even if you’re only changing one field.
Project fields reference
| Field | Type | Description |
|---|
name | string | Project name (required). |
description | string | Brief description of the engagement. |
note | string | Internal notes for your team. |
type | string | Project type (e.g. "web", "api", "mobile"). |
owner | string | Person responsible for this engagement. |
vendor | string | Testing vendor or partner name. |
launchDate | datetime | When testing begins (ISO 8601 UTC). |
endDate | datetime | When testing ends (ISO 8601 UTC). |
reportDeadline | string | Deadline for receiving the test report. |
isRetestNeeded | boolean | Whether a retest is planned after remediation. |
retestingLaunch | datetime | Retest start date. |
retestingEnd | datetime | Retest end date. |
accessType | string | Type of access granted (e.g. "authenticated", "unauthenticated"). |
location | string | URL or IP range of the target. |
List projects
curl https://admin.hackgate.io/api/projects \
-H "Authorization: Bearer <your-token>"
Returns an array of all projects for your organization.