Skip to main content

Vaults

A vault is a token-backed container that holds digital-twin data and carries its own access control list. Its on-chain form depends on the ledger chosen at creation: an XLS-20 NFToken on XRPL (the default), or an ERC-1155 token on the EVM ledgers.

Creating a vault

curl -X POST "https://api.filedgr.network/vaults" \
-H "x-api-key: $FILEDGR_API_KEY" -H "x-api-secret: $FILEDGR_API_SECRET" \
-H "Content-Type: application/json" \
-d '{
"template_id": "3f6c2b1e-9a4d-4f1b-8c77-1d2e3f4a5b6c",
"name": "Delivery 2026-08-26",
"description": "Batch shipment record",
"ledger": "XRPL"
}'

Field names are snake_case, and template_id is a UUID, not a slug. Creation is asynchronous and costs credits — poll GET /vaults/{vault_id} until status reaches FILEDGR_VAULT_COMPLETED.

The vault routes

EndpointPurpose
GET /vaultsList — page, page_size, archived, search_term, sort_by, sort_type, vault_permission_type, template_id
POST /vaultsCreate
GET /vaults/{vault_id}Detail
PUT /vaults/{vault_id}Update name, description, archived
PUT /vaults/{vault_id}/imagesSkip or confirm the image-upload step
POST /vaults/{vault_id}/streamsCreate a stream inside the vault
GET /vaults/{vault_id}/attachmentsList data attachments
POST / GET / DELETE /vaults/{vault_id}/permissionsManage access
note

Ownership transfer, batch upload, search, stats and analytics are not part of the vault API yet. Today, vaults are retired by setting archived: true via PUT /vaults/{vault_id}, and data is attached with POST /attachments rather than posted to the vault.

Full reference