Assets API¶
Manage data assets in Tessera.
List Assets¶
Query Parameters¶
| Parameter | Type | Description |
|---|---|---|
fqn |
string | Filter by FQN (exact or prefix match) |
owner_team_id |
uuid | Filter by owner team |
environment |
string | Filter by environment |
page |
int | Page number (default: 1) |
page_size |
int | Results per page (default: 20, max: 100) |
Response¶
{
"results": [
{
"id": "asset-uuid",
"fqn": "warehouse.analytics.users",
"owner_team_id": "team-uuid",
"owner_team_name": "Data Platform",
"environment": "production",
"created_at": "2025-01-15T10:00:00Z",
"active_contract_id": "contract-uuid",
"active_contract_version": "1.2.0"
}
],
"total": 50,
"page": 1,
"page_size": 20
}
Get Asset¶
Response¶
{
"id": "asset-uuid",
"fqn": "warehouse.analytics.users",
"owner_team_id": "team-uuid",
"owner_team_name": "Data Platform",
"owner_user_id": "user-uuid",
"owner_user_name": "John Doe",
"environment": "production",
"metadata": {
"resource_type": "model",
"description": "Core users table",
"tags": ["pii", "core"]
},
"created_at": "2025-01-15T10:00:00Z",
"updated_at": "2025-01-20T15:30:00Z"
}
Create Asset¶
Request Body¶
{
"fqn": "warehouse.analytics.users",
"owner_team_id": "team-uuid",
"environment": "production",
"metadata": {
"description": "Core users table",
"tags": ["pii"]
}
}
Response¶
{
"id": "new-asset-uuid",
"fqn": "warehouse.analytics.users",
"owner_team_id": "team-uuid",
"environment": "production",
"created_at": "2025-01-15T10:00:00Z"
}
Update Asset¶
Request Body¶
Delete Asset¶
Returns 204 No Content on success.
Get Asset Contracts¶
Returns all contracts (active, deprecated, archived) for the asset.
Publish Contract¶
Request Body¶
{
"schema": {
"type": "object",
"properties": {
"id": {"type": "integer"},
"name": {"type": "string"}
},
"required": ["id"]
},
"compatibility_mode": "backward",
"guarantees": {
"freshness": {
"max_staleness_minutes": 60
}
}
}
Response (Non-breaking)¶
{
"action": "published",
"contract": {
"id": "contract-uuid",
"version": "1.1.0",
"status": "active"
},
"changes": [
{
"type": "property_added",
"path": "$.properties.email"
}
]
}
Response (Breaking)¶
{
"action": "proposal_created",
"proposal": {
"id": "proposal-uuid",
"status": "pending",
"breaking_changes": [...]
}
}
Impact Analysis¶
Preview what would happen if you published a schema change.
Request Body¶
Response¶
{
"is_breaking": true,
"breaking_changes": [
{
"type": "property_removed",
"path": "$.properties.email",
"description": "Property 'email' was removed"
}
],
"affected_consumers": [
{
"team_id": "team-uuid",
"team_name": "Analytics"
}
]
}
Get Dependencies¶
Returns upstream dependencies for the asset.
Get Audit History¶
Returns data quality audit runs for the asset.
Query Parameters¶
| Parameter | Type | Description |
|---|---|---|
status |
string | Filter by status (passed, failed) |
triggered_by |
string | Filter by source (dbt_test, etc.) |
limit |
int | Number of results (default: 20) |