How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

SpecterOps Clients API

The Clients API from SpecterOps — 11 operation(s) for clients.

SpecterOps Clients API is one of 43 APIs that SpecterOps publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Clients. The published artifact set on APIs.io includes an OpenAPI specification, an API reference, and API documentation.

This API exposes 14 operations across 11 paths, and defines 39 schemas. It is described by OpenAPI 3.2.0, at version v2.

Requests are made against a single base URL, /.

14 operations 11 paths 39 schemas 1 DELETE4 GET6 POST3 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.2.0
API Version
v2
Base URL
https://bloodhoundenterprise.io/api/v2
Authentication
HTTP Bearer, API Key, API Key, API Key
License
Resource Areas
1

Authentication & Security 4

SpecterOps Clients API declares 4 security schemes for authenticating requests. It accepts HTTP bearer tokens (JWT) (JWTBearerToken). An API key is passed in the header as Authorization (SignedRequest). An API key is passed in the header as RequestDate (RequestDate). An API key is passed in the header as Signature (HMACSignature). By default, every request must be authenticated.

  • JWTBearerToken — Authorization: Bearer $JWTTOKEN
  • SignedRequest — Authorization: bhesignature $TOKENID
  • RequestDate — RequestDate: $RFC3339DATETIME
  • HMACSignature — Signature: $BASE64ENCODEDHMACSIGNATURE

Paths & Operations 14

Across 11 paths, the API surfaces 14 operations — 1 DELETE, 4 GET, 6 POST, 3 PUT. Each is listed below with its method, path, parameters, and response codes.

Clients 14
GET
/api/v2/clients
List Clients
ListClients 20 params → 200400401403429500
POST
/api/v2/clients
Create Client
CreateClient 1 param body → 200400401403429500
POST
/api/v2/clients/error
Client Error
LogClientError 1 param body → 202400401403404500
PUT
/api/v2/clients/update
Update Client Values
UpdateClientInfo 1 param body → 200400401403404500
GET
/api/v2/clients/{client_id}
Get Client
GetClient 2 params → 200400401403404429500
PUT
/api/v2/clients/{client_id}
Update Client
UpdateClient 2 params body → 200400401403404429500
DELETE
/api/v2/clients/{client_id}
Delete Client
DeleteClient 2 params → 200401403404429500
PUT
/api/v2/clients/{client_id}/token
Regenerate the authentication token for a client
ReplaceClientToken 2 params → 200401403404429500
GET
/api/v2/clients/{client_id}/completed-tasksdeprecated
List all completed tasks for a client
ListClientCompletedTasks 27 params → 200400401403404429500
GET
/api/v2/clients/{client_id}/completed-jobs
List all completed jobs for a client
ListClientCompletedJobs 27 params → 200400401403404429500
POST
/api/v2/clients/{client_id}/tasksdeprecated
Creates a scheduled task
CreateClientScheduledTask 3 params body → 200400401403404429500
POST
/api/v2/clients/{client_id}/jobs
Creates a scheduled job
CreateClientScheduledJob 3 params body → 200400401403404429500
POST
/api/v2/clients/management/start
Notifies the API of a management operation start
StartClientManagementOperation 1 param body → 200400401403404409429500
POST
/api/v2/clients/management/end
Notifies the API of a management operation ending
EndClientManagementOperation 1 param body → 200400401403404409429500

Schemas 39

The contract defines 39 schemas that model the data the API accepts and returns. The most detailed are api.error-wrapper (4 properties), api.response.pagination (3 properties), model.components.timestamps (3 properties), model.components.base-ad-entity (3 properties). Each schema is shown below with its type and property counts.

model.client
model.client-schedule
enum.client-management-operation-status
string
api.error-detail
object
2 properties
null.time
object
2 properties
model.client-management-operation
enum.job-status
integer
This enum describes the current status of a Job. Values are: - -1 Invalid - 0 Ready - 1 Running - 2 Complete - 3 Canceled - 4 Timed Out - 5 Failed - 6 Ingestin…
null.time.response
stringnull
An RFC-3339 formatted string
model.ou-details
api.params.predicate.filter.time
string
Filter results by column timestamp value formatted as an RFC-3339 string. Valid filter predicates are eq, neq, gt, gte, lt, lte.
api.params.predicate.filter.uuid
string
Filter results by column string-formatted uuid value. Valid filter predicates are eq, neq.
api.params.predicate.filter.string
string
Filter results by column string value. Valid filter predicates are eq, ~eq, neq.
model.client-management-operation-end-request
object
2 properties 2 required
model.client-schedule-display
model.client-scheduled-job-display
model.auth-token
api.params.query.sort-by
string
Sort by column. Can be used multiple times; prepend a hyphen for descending order. See parameter description for details about which columns are sortable.
model.client-management-operation-start-request
object
1 property 1 required
null.int32
object
2 properties
model.domain-collection-result
model.components.int64.id
object
1 property
api.params.query.skip
integer
The number of items to skip in a paginated response.
model.components.uuid
object
1 property
null.string
object
2 properties
api.params.predicate.filter.integer
string
Filter results by column integer value. Valid filter predicates are eq, neq, gt, gte, lt, lte.
api.params.predicate.filter.boolean
string
Filter results by column boolean value. Valid filter predicates are eq, neq.
model.components.int32.id
object
1 property
enum.client-type
string
This enum describes the collector client type.
model.client-scheduled-job
api.response.pagination
object
3 properties
null.uuid
object
2 properties
null.int64
object
2 properties
model.client-display
api.error-wrapper
object
4 properties
api.params.query.limit
integer
The limit of results requested by the client.
enum.client-management-operation-type
string
model.components.timestamps
object
3 properties
model.components.base-ad-entity
object
3 properties
model.domain-details

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

specterops-clients-api-openapi.yml Raw ↑

Other APIs SpecterOps publishes across the network.

SpecterOps AD Base Entities API
SpecterOps AD Users API
SpecterOps AIA CAs API
SpecterOps Analysis API
SpecterOps API Info API
SpecterOps API Tokens API
SpecterOps Asset Isolation API
SpecterOps Attack Paths API
SpecterOps Audit API
SpecterOps Auth API
SpecterOps Azure Entities API
SpecterOps BloodHound Users API
Where this information came from

This is an independent, third-party profile of SpecterOps Clients API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.