SaaS App and Device Management APIs

APIs to monitor and manager integrations

Fetch Github repositories

get

Returns a list of repositories Nightfall has access to.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Query parameters
limitinteger · min: 1 · max: 100Optional

The maximum number of records to be returned in the response

Default: 100
pageTokenstringOptional

Cursor for getting the next page of results

Responses
get
/github/repositories

List endpoint devices

get

Returns a list of endpoint devices where the Nightfall agent is installed across the organization.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Query parameters
limitinteger · min: 1 · max: 500Optional

The maximum number of agents to be returned in the response

Default: 500
pageTokenstringOptional

Cursor for getting the next page of results

querystringOptional

Prefix search across device name, device ID, and user email

agentVersionstring · enumOptional

Filter agents by version status

Possible values:
stealthModestring · enumOptional

Filter agents by stealth mode status

Possible values:
profileStatusstring · enumOptional

Filter agents by profile status

Possible values:
browserExtensionsstringOptional

Comma-delimited list of BROWSER:VALUE pairs to filter by browser extension status. VALUE may be either:

  • a boolean (true/false) — true matches any installed/connected state, false matches not-installed; or
  • a pipe-delimited list of installation states (e.g. EXTENSION_CONNECTED|EXTENSION_DISCONNECTED) to match agents whose extension is in any of the listed states. States may be passed in short form (EXTENSION_CONNECTED) or full form (BROWSER_EXTENSION_INSTALLATION_STATUS_EXTENSION_CONNECTED). Valid filter states: BROWSER_NOT_INSTALLED, BROWSER_INSTALLED, EXTENSION_INSTALLED, INSTALLATION_PENDING, EXTENSION_CONNECTED, EXTENSION_DISCONNECTED. Any other value (UNKNOWN, ERROR, or the unprefixed CONNECTED/DISCONNECTED forms) is silently dropped. Note: the response status field still echoes the bare proto enum names (e.g. BROWSER_EXTENSION_INSTALLATION_STATUS_CONNECTED) — only filter input uses the EXTENSION_ aliases. Supported browsers: BROWSER_CHROME, BROWSER_EDGE, BROWSER_FIREFOX, BROWSER_SAFARI, BROWSER_ARC, BROWSER_ATLAS, BROWSER_BRAVE, BROWSER_CHROME_BETA, BROWSER_COMET, BROWSER_VIVALDI.
Example: BROWSER_CHROME:EXTENSION_CONNECTED|EXTENSION_DISCONNECTED,BROWSER_EDGE:true
Responses
get
/endpoint/devices

List endpoint domain collections

get

Returns a paginated list of domain collections configured for the company.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Query parameters
limitinteger · min: 1 · max: 100Optional

The maximum number of collections to be returned in the response

Default: 50
pageTokenstringOptional

Cursor for getting the next page of results

sortOrderstring · enumOptional

Sort order for the collection name

Default: ascPossible values:
Responses
get
/endpoint/collections

Create an endpoint domain collection

post

Creates a new manual domain collection. Collection names are case-insensitive unique per company and cannot be the reserved value CORPORATE DOMAINS.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
namestring · min: 1 · max: 255Required

Human-readable name for the collection. Case-insensitive unique per company. The value CORPORATE DOMAINS is reserved.

Responses
post
/endpoint/collections

Update an endpoint domain collection

put

Renames an existing manual domain collection. System collections cannot be renamed.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
collectionUUIDstring · uuidRequired

UUID of the collection

Body
namestring · min: 1 · max: 255Required

Human-readable name for the collection. Case-insensitive unique per company. The value CORPORATE DOMAINS is reserved.

Responses
put
/endpoint/collections/{collectionUUID}

Delete an endpoint domain collection

delete

Soft-deletes a manual domain collection.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
collectionUUIDstring · uuidRequired

UUID of the collection

Responses
204

Collection deleted

No content

delete
/endpoint/collections/{collectionUUID}

No content

List domains in a collection

get

Returns every active domain attached to the collection.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
collectionUUIDstring · uuidRequired

UUID of the parent collection

Responses
get
/endpoint/collections/{collectionUUID}/domains

Add domains to a collection

post

Bulk-adds domains to a collection. Domains added via the workflow API are always recorded with source MANUAL. When the target collection is the reserved CORPORATE DOMAINS collection, personal-email domains are rejected and returned in failedDomains.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
collectionUUIDstring · uuidRequired

UUID of the parent collection

Body
Responses
post
/endpoint/collections/{collectionUUID}/domains

Remove a domain from a collection

delete

Soft-deletes a single domain from a collection.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
collectionUUIDstring · uuidRequired

UUID of the parent collection

domainUUIDstring · uuidRequired

UUID of the domain to remove

Responses
204

Domain deleted

No content

delete
/endpoint/collections/{collectionUUID}/domains/{domainUUID}

No content

List endpoint MCP server collections

get

Returns a paginated list of MCP server collections configured for the company.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Query parameters
limitinteger · min: 1 · max: 100OptionalDefault: 50
pageTokenstringOptional
namePrefixstring · max: 255Optional
Responses
get
/endpoint/mcp-collections

Create an MCP server collection

post

Creates a new manual MCP server collection. Collection names are case-insensitive unique per company.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
namestring · min: 1 · max: 255Required
Responses
post
/endpoint/mcp-collections

Update an MCP server collection

put

Renames an existing manual MCP server collection. System collections cannot be renamed.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
collectionUUIDstring · uuidRequired
Body
namestring · min: 1 · max: 255Required
Responses
put
/endpoint/mcp-collections/{collectionUUID}

Delete an MCP server collection

delete

Soft-deletes a manual MCP server collection.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
collectionUUIDstring · uuidRequired
Responses
204

Collection deleted

No content

delete
/endpoint/mcp-collections/{collectionUUID}

No content

List items (server scopes) in an MCP server collection

get
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
collectionUUIDstring · uuidRequired
Query parameters
limitinteger · min: 1 · max: 100OptionalDefault: 50
pageTokenstringOptional
Responses
get
/endpoint/mcp-collections/{collectionUUID}/items

Add items (server scopes) to an MCP server collection

post

Bulk-adds MCP server scopes to a collection. Each scope identifies an MCP server by serverName and optionally restricts the inventoried tools to a list of toolNames. Omitting toolNames means "all tools on this server".

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
collectionUUIDstring · uuidRequired
Body
Responses
post
/endpoint/mcp-collections/{collectionUUID}/items

Remove an item from an MCP server collection

delete
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
collectionUUIDstring · uuidRequired
itemUUIDstring · uuidRequired
Responses
204

Item deleted

No content

delete
/endpoint/mcp-collections/{collectionUUID}/items/{itemUUID}

No content

Last updated

Was this helpful?