Pagination and Filters¶
The Integration API uses query-string parameters for list pagination, sorting, and filtering.
Common pagination pattern¶
skip: zero-based offsetlimit: maximum number of records to return
Projects¶
GET /api/v1/projects
Supported query parameters:
skiplimitsort_by
Example:
curl -sS "https://app.vulnetic.ai/api/v1/projects?skip=0&limit=20&sort_by=created_at" \
-H "<AUTH_HEADER_NAME>: YOUR_API_CREDENTIAL"
Sessions¶
GET /api/v1/sessions
Supported query parameters:
skiplimitstatusproject_idsinceinclude_total
Example:
curl -sS "https://app.vulnetic.ai/api/v1/sessions?status=active_auto&status=queued&include_total=false" \
-H "<AUTH_HEADER_NAME>: YOUR_API_CREDENTIAL"
Notes:
statusmay be provided multiple timessinceis adate-timefilter onupdated_atinclude_total=falselets clients skip the count query when they want faster responses
Documents¶
GET /api/v1/documents
Supported query parameters:
skiplimitsort_bysort_orderdocument_type
Example:
curl -sS "https://app.vulnetic.ai/api/v1/documents?document_type=note&sort_by=updated_at&sort_order=desc" \
-H "<AUTH_HEADER_NAME>: YOUR_API_CREDENTIAL"
Paginated response shape¶
Project, session list, and document list endpoints all use the same top-level structure:
{
"items": [],
"total": 0,
"skip": 0,
"limit": 20
}
Implementation guidance¶
- Treat
limitas caller-controlled, but stay within documented server bounds - Use
skip + limitpagination until the API publishes cursor-based semantics - When polling frequently, prefer filters such as
sinceandinclude_total=false