:::note Generated reference Generated from honeyframeapi 0.1.8 — do not edit by hand. :::
honeyframeapi.publishing
Published asset handle — publish assets and mint data-API keys.
Honeyframe publishes dashboards/agents/data-APIs/etc. as assets; a published
data_api asset can mint dk_… keys for the public GET /api/data/{key}
endpoint. Reached via the client:
asset = client.create_asset("data_api", "orders", "Orders API",
config={...})
asset.publish()
key = asset.create_api_key(name="readonly", rate_limit=120)
print(key["key"]) # full dk_… key — shown ONCE, store it now
class ApiKey
ApiKey(data: dict)
A minted data-API key. .key is populated only at creation time.
ApiKey.id
property
id: int
ApiKey.key
property
key: Optional[str]
The full dk_… secret — present only on the create response.
ApiKey.prefix
property
prefix: Optional[str]
class PublishedAsset
PublishedAsset.asset_key
property
asset_key: str
PublishedAsset.status
property
status: str
PublishedAsset.embed_token
property
embed_token: Optional[str]
PublishedAsset.reload()
reload() -> _Self
PublishedAsset.get_settings()
get_settings() -> dict
PublishedAsset.update()
update(*, change_note: str = '', **fields) -> dict
PublishedAsset.publish()
publish() -> dict
PublishedAsset.unpublish()
unpublish() -> dict
PublishedAsset.create_api_key()
create_api_key(*, name: str = '', rate_limit: int = 100, expires_days: Optional[int] = API_KEY_DEFAULT_DAYS, masking_level: str = 'masked', allowed_columns: Optional[list] = None, sensitivity_max: str = DEFAULT_SENSITIVITY_MAX, allowed_endpoints: Optional[list] = None) -> ApiKey
Mint a data-API key. The full dk_… secret is on the returned
object's .key — it is never retrievable again.
Least-privilege defaults: the key expires after expires_days=90
(0 = never; None still means never but is deprecated), returns
masked values (masking_level="masked"), and
sensitivity_max="medium": columns classified above that tier
(high — e-mail, phone, address, date of birth — and critical
— national ID, record numbers) come back as [BLOCKED], while a
medium column such as a person's name comes back masked. Tiers:
low < medium < high < critical; pass a higher one
when the consumer really needs those columns.
allowed_endpoints (api_service keys only; None = all) limits
the key to a subset of a service's endpoints.
PublishedAsset.list_api_keys()
list_api_keys() -> list[dict]
PublishedAsset.revoke_api_key()
revoke_api_key(key_id: int) -> dict
PublishedAsset.versions()
versions() -> list
This asset's version history, newest first. Each entry is {id, version, published_by, change_note, created_at}.
PublishedAsset.rollback()
rollback(version: int) -> _Self
Restore a previous version — non-destructive (re-applied as a NEW
version, so you can move back and forth). Returns self reloaded.
Requires org-admin.
PublishedAsset.diff_versions()
diff_versions(a: int, b: int) -> dict
Diff two versions — {left, right, diff, theme_diff} where diff
is a flat [{path, kind, left, right}] list (kind ∈ added /
removed / changed).
Constants
| Name | Value |
|---|---|
SENSITIVITY_TIERS | ('low', 'medium', 'high', 'critical') |
DEFAULT_SENSITIVITY_MAX | 'medium' |
Verified against honeyframeapi 0.1.8.