Mint & Transfer Objects
Mint objects from templates and transfer them between wallets using the Event Bus.
Prerequisites
- Completed the Create Your First Template tutorial
- A template ID from the previous tutorial
What You'll Build
In this tutorial you'll mint a tokenized object from the template you created, inspect it, and then transfer it to another wallet via the Event Bus action system.
Step 1 — Mint an Object
Objects are instances of templates. Minting creates a new object owned by your wallet with the default properties defined in the template.
curl -X POST https://blockv-labs.io/objects \
-H "Authorization: Bearer $DUAL_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"template_id": "your-template-id",
"num": 1,
"properties": {
"holder_name": "Alice Smith",
"points": 100
}
}'The response returns an array of newly minted objects, each with a unique id and the properties you specified.
Step 2 — Inspect the Object
Retrieve the full object details including its current state, ownership, and properties:
curl https://blockv-labs.io/objects/{objectId} \
-H "Authorization: Bearer $DUAL_TOKEN"Key fields in the response:
| Field | Description |
|---|---|
id | Unique object identifier |
template_id | Template this object was minted from |
owner | Current owner's wallet address |
properties | Object data (points, tier, etc.) |
Step 3 — Transfer via the Event Bus
The Event Bus processes actions on objects. A transfer action changes the object's owner from your wallet to another.
curl -X POST https://blockv-labs.io/ebus/events \
-H "Authorization: Bearer $DUAL_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"action_name": "Transfer",
"object_id": "your-object-id",
"new_owner": "recipient-wallet-address"
}'The Event Bus validates the action against the template's rules, updates the object's owner, and emits an event that can trigger webhooks.
Step 4 — Verify the Transfer
Fetch the object again to confirm the owner field has changed:
curl https://blockv-labs.io/objects/{objectId} \
-H "Authorization: Bearer $DUAL_TOKEN"Understanding the Action Pipeline
When an action is submitted to the Event Bus, it goes through several stages:
- Validation — The action is checked against template rules and permissions
- Execution — The state change is applied off-chain
- Sequencing — The Sequencer orders and batches the action
- Anchoring — The batch fingerprint is written on-chain
What's Next?
Now that you can mint and transfer, try Building a Web Face to give your objects a custom interactive display.