Validate Trays
Validate Tray components by comparing expected vs actual state.
If no filter is specified, validates all trays in the Site. Use rackId/rackName to scope to a specific rack, and name/manufacturer/type to filter by tray attributes.
Compares the expected component configuration against the actual state. Returns a detailed diff report showing missing, extra, and drifted components.
Org must have an Infrastructure Provider entity. User must have `FORGE_PROVIDER_ADMIN` authorization role.
Authentication
AuthorizationBearer
```
export JWT_BEARER_TOKEN="<jwt-bearer-token>"
# Example org name: "acme-inc
export ORG_NAME=<org-name>
# Use the JWT bearer token in your API request auth header:
curl -v -X GET -H "Content-Type: application/json" -H "Authorization: Bearer $JWT_BEARER_TOKEN" https://carbide-rest-api.carbide.svc.cluster.local/v2/org/$ORG_NAME/carbide/user/current
```
Path parameters
org
Query parameters
siteId
ID of the Site
rackId
Scope to a specific Rack by ID (mutually exclusive with rackName)
rackName
Scope to a specific Rack by name (mutually exclusive with rackId)
name
Filter trays by name
manufacturer
Filter trays by manufacturer
type
Filter trays by type
Allowed values:
componentId
Filter by external component ID (requires type; mutually exclusive with rackId/rackName; use repeated params for multiple values)
Response
OK
diffs
List of component differences found during validation
totalDiffs
Total number of component differences found
missingCount
Number of components expected but missing from the source system
unexpectedCount
Number of components found in the source system but not expected
driftCount
Number of components present in both but with field differences
matchCount
Number of components that match between expected and actual
Errors
400
Bad Request Error
403
Forbidden Error