Skip to main content
Use these endpoints to retrieve your organization’s HackGATE projects — the top-level containers that group sites, schedule engagements, and track vendors and owners for a security program. The list endpoint returns all projects visible to your organization; the by-ID endpoint returns a single project when you already know its identifier.

List all projects

GET https://api-admin.hackgate.io/api/projects
Returns an array of all projects belonging to your organization.

Request

No query parameters or request body required.
Authorization
string
required
Bearer token. See Authentication.

Response

Returns a JSON array of project objects.
id
string
Unique identifier for the project.
orgId
string
The organization that owns the project.
name
string
Human-readable project name.
description
string
Optional description of the project’s scope or purpose.
note
string
Free-text internal notes associated with the project.
launchDate
string
ISO 8601 date-time when the engagement is scheduled to start.
endDate
string
ISO 8601 date-time when the engagement is scheduled to end.
creationDate
string
ISO 8601 date-time when the project record was created.
createdBy
string
Identifier of the user who created the project.
accessType
string
Access model for the engagement (for example, authenticated or unauthenticated).
location
string
Geographic or network location context for the project.
owner
string
Person or team responsible for the project.
reportDeadline
string
ISO 8601 date-time by which the final report is due.
retestingEnd
string
ISO 8601 date-time when the retesting window closes.
retestingLaunch
string
ISO 8601 date-time when retesting begins.
type
string
Engagement type, such as pentest or bug-bounty.
vendor
string
Security vendor or testing firm assigned to the project.
isRetestNeeded
boolean
Whether a retesting cycle is required after the initial engagement.

Example

curl https://api-admin.hackgate.io/api/projects \
  -H "Authorization: Bearer <token>"
[
  {
    "id": "proj_abc123",
    "orgId": "org_xyz",
    "name": "Q3 Web Application Pentest",
    "description": "Full-scope penetration test of the customer portal.",
    "note": "Review scope document before launch.",
    "launchDate": "2025-07-01T09:00:00Z",
    "endDate": "2025-07-14T17:00:00Z",
    "creationDate": "2025-06-15T12:00:00Z",
    "createdBy": "user_123",
    "accessType": "authenticated",
    "location": "US-East",
    "owner": "security@example.com",
    "reportDeadline": "2025-07-21T17:00:00Z",
    "retestingEnd": "2025-08-04T17:00:00Z",
    "retestingLaunch": "2025-07-28T09:00:00Z",
    "type": "pentest",
    "vendor": "AcmeSec",
    "isRetestNeeded": true
  }
]

Get a project by ID

GET https://api-admin.hackgate.io/api/projects/{id}
Returns a single project object matching the provided id. Returns 404 if the project does not exist or belongs to a different organization.

Path parameters

id
string
required
The unique identifier of the project to retrieve.
Authorization
string
required
Bearer token. See Authentication.

Response

Returns a single project object with the same fields as the list response above.

Example

curl https://api-admin.hackgate.io/api/projects/proj_abc123 \
  -H "Authorization: Bearer <token>"
{
  "id": "proj_abc123",
  "orgId": "org_xyz",
  "name": "Q3 Web Application Pentest",
  "description": "Full-scope penetration test of the customer portal.",
  "note": "Review scope document before launch.",
  "launchDate": "2025-07-01T09:00:00Z",
  "endDate": "2025-07-14T17:00:00Z",
  "creationDate": "2025-06-15T12:00:00Z",
  "createdBy": "user_123",
  "accessType": "authenticated",
  "location": "US-East",
  "owner": "security@example.com",
  "reportDeadline": "2025-07-21T17:00:00Z",
  "retestingEnd": "2025-08-04T17:00:00Z",
  "retestingLaunch": "2025-07-28T09:00:00Z",
  "type": "pentest",
  "vendor": "AcmeSec",
  "isRetestNeeded": true
}

List project items

GET https://api-admin.hackgate.io/api/projects/getProjectItems
Returns all items (individual sites or targets) associated with any project in your organization.

Response

id
string
Unique identifier for the project item.
orgId
string
The organization that owns the item.
projectId
string
The project this item belongs to.
name
string
Name of the item (typically a site name or URL).
creationDate
string
ISO 8601 date-time when the item was created.
createdBy
string
Identifier of the user who created the item.
accessType
string
Access model for this item.
location
string
Geographic or network location for the item.
type
string
Item type (for example, web, api, mobile).

Example

curl https://api-admin.hackgate.io/api/projects/getProjectItems \
  -H "Authorization: Bearer <token>"

Get a project item by ID

GET https://api-admin.hackgate.io/api/projects/getProjectItem/{id}
Returns a single project item matching the provided id.

Path parameters

id
string
required
The unique identifier of the project item to retrieve.

Example

curl https://api-admin.hackgate.io/api/projects/getProjectItem/item_456 \
  -H "Authorization: Bearer <token>"