Skip to main content
Create a new project to define a security engagement — a pentest, bug bounty, or similar program. Projects act as containers that group HackGATE sites, set timelines, assign ownership, and track vendor relationships. Once created, you can attach project items and configure retesting schedules.

Endpoint

Request

string
required
Bearer token. See Authentication.
string
required
Must be application/json.

Body parameters

string
required
A human-readable name for the project. This appears in the Admin Center and in reports.
string
A description of the project’s scope or purpose.
string
Free-text internal notes. Not included in reports.
string
ISO 8601 date-time when the engagement is scheduled to start (for example, 2025-07-01T09:00:00Z).
string
ISO 8601 date-time when the engagement is scheduled to end.

Response

Returns the newly created project object with all fields populated, including server-assigned values.
string
Unique identifier assigned to the project.
string
The organization that owns the project.
string
The project name you provided.
string
The description you provided.
string
The internal notes you provided.
string
ISO 8601 launch date.
string
ISO 8601 end date.
string
ISO 8601 date-time when the project was created on the server.
string
Identifier of the authenticated user who made the request.
string
Access model. Defaults to null until updated.
string
Location context. Defaults to null until updated.
string
Project owner. Defaults to null until updated.
string
Report deadline. Defaults to null until updated.
string
Retesting window end. Defaults to null until updated.
string
Retesting window start. Defaults to null until updated.
string
Engagement type. Defaults to null until updated.
string
Assigned vendor. Defaults to null until updated.
boolean
Whether retesting is required. Defaults to false until updated.

Example

To set fields such as owner, vendor, type, and retesting dates, use PUT /api/projects after creation.