[STAGING] API Endpoint Documentation

Your organization's API Endpoint will be accessible at https://[YOUR-TENANT-NAME].staging.violetlabs.com/api/ or https://[YOUR-TENANT-NAME].staging.violetgov.com/api/ for Violet Gov customers.

post
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
keywordstringOptional

Search keyword to filter entities

Example: part number
groupKeysarrayOptional

Array of group keys (strings or objects)

sortobjectOptional

Elasticsearch sort configuration

pagenumber · min: 1Optional

Page number (1-indexed)

Example: 1
limitnumber · min: 1Optional

Number of items per page

Example: 50
includeParametersbooleanOptional

Whether to include parameters in the response

Default: false
includeSubEntitiesbooleanOptional

Whether to include sub-entities in the response

Default: false
includeSchemasbooleanOptional

Whether to include entity schemas in the response

Default: false
Responses
chevron-right
200

Search for entities

application/json
post
/api/explore
200

Search for entities

get

Get all Violet Relationships, or relationship graph from a source entity. When sourceId is provided, returns a graph (entityNodes, requirementNodes, links) for traversal: Assembly → BOM → Parts, Part/BOM line → PO line → PO, PO ↔ Invoice ↔ Bill, PO/line → receipts/delivery. Use recursiveRelationshipTypes / nonRecursiveRelationshipTypes to restrict traversal; see GET /model for types.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Query parameters
sourceIdstring · uuidOptional

Violet entity ID to start graph traversal from. If omitted, returns all relationships.

recursiveRelationshipTypesstringOptional

Comma-separated relationship types to follow recursively (e.g. assemblyContains,contains for BOM; containsPOLine,receipts,linkedTo for PO/delivery/3-way match). See GET /model for all types.

Example: assemblyContains,contains
nonRecursiveRelationshipTypesstringOptional

Comma-separated relationship types to include only one level.

Example: contains
afterIdstring · uuidOptional

When sourceId is omitted, cursor for keyset pagination: relationship id from the last item of the previous response. Omit for the first page. Ignored when sourceId is provided.

limitinteger · min: 1 · max: 500Optional

When sourceId is omitted, max readable relationships per page (default 100, max 500). Ignored when sourceId is provided.

Default: 100
Responses
chevron-right
200

Without sourceId: array of relationships (paginated). With sourceId: graph of nodes and links.

application/json
or
get
/api/violet-relationships
200

Without sourceId: array of relationships (paginated). With sourceId: graph of nodes and links.

Last updated

Was this helpful?