The Akash Marketplace is an auction for compute resources. It is the mechanism by which users acquire resources on the Akash Platform.
The Akash Marketplace revolves around Deployments, which fully describe the resources that a tenant is requesting from the network. Deployments contain Groups, which is a grouping of resources that are meant to be leased together from a single provider.
The general workflow is:
- A tenant creates orders.
- Providers bid on orders.
- Tenants choose winning bids and create leases.
Leases are paid from deployment owner (tenant) to the provider through a deposit & withdraw mechanism.
Tenants are required to submit a deposit when creating a deployment. Leases will be paid passively from the balance of this deposit. At any time, a lease provider may withdraw the balance owed to them from this deposit.
If the available funds in the deposit ever reaches zero, a provider may close the lease.
A tenant can add funds to their deposit at any time.
When a deployment is closed, the unspent portion of the balance will be returned to the tenant.
Payments are implemented with an escrow account module. See here for more information.
Bidding on an order requires a deposit to be made. The deposit will be returned to the provider account when the bid transitions to state CLOSED
.
Bid deposits are implemented with an escrow account module. See here for more information.
Name | Initial Value | Description |
---|---|---|
deployment_min_deposit |
10akt |
Minimum deposit to make deployments. Target: ~$10 |
bid_min_deposit |
100akt |
Deposit amount required to bid. Target: ~$100 |
Creates a deployment, and open groups and orders for it.
Name | Description |
---|---|
DeploymentID |
ID of Deployment. |
DepositAmount |
Deposit amount. Must be greater than deployment_min_deposit . |
Version |
Hash of the manifest that is sent to the providers. |
Groups |
A list of group descriptons. |
Add funds to a deployment's balance.
Name | Description |
---|---|
DeploymentID |
ID of Deployment. |
DepositAmount |
Deposit amount. Must be greater than deployment_min_deposit |
Closes a group and any orders for it. Sent by the tenant.
Name | Description |
---|---|
ID |
ID of Group. |
Puts a PAUSED
state, and closes any and orders for it. Sent by the tenant.
Name | Description |
---|---|
ID |
ID of Group. |
Transitions a group from state PAUSED
to state OPEN
. Sent by the tenant.
Name | Description |
---|---|
ID |
ID of Group. |
Sent by a provider to bid on an open order. The required deposit will be returned when the bid transitions to state CLOSED
.
name | description |
---|---|
OrderID |
ID of Order |
TTL |
Number of blocks this bid is valid for |
Deposit |
Deposit amount. bid_min_deposit if empty. |
Sent by provider to close a bid or a lease from an existing bid.
When closing a lease, the bid's group will be put in state PAUSED
.
name | description |
---|---|
BidID |
ID of Bid |
Object | Previous State | New State |
---|---|---|
Bid | ACTIVE |
CLOSED |
Lease | ACTIVE |
CLOSED |
Order | ACTIVE |
CLOSED |
Group | OPEN |
PAUSED |
Sent by tenant to create a lease.
name | description |
---|---|
BidID |
Bid to create a lease from |
This withdraws balances earned by providing for leases and deposits of bids that have expired.
name | description |
---|---|
Owner |
Provider ID to withdraw funds for. |
Name | Description |
---|---|
ID.Owner |
account addres of tenant |
ID.DSeq |
Arbitrary sequence number that identifies the deployment. Defaults to block height. |
State |
State of the deployment. |
Version |
Hash of the manifest that is sent to the providers. |
Name | Description |
---|---|
OPEN |
Orders may be created. |
CLOSED |
All groups are closed. Terminal. |
Name | Description |
---|---|
ID.DeploymentID |
Deployment ID of group. |
ID.GSeq |
Arbitrary sequence number. Internally incremented, starting at 1 . |
State |
State of the group. |
Name | Description |
---|---|
OPEN |
Has an open or active order. |
PAUSED |
Bid closed by provider. May be restarted. |
CLOSED |
No open or active orders. Terminal. |
Name | Description |
---|---|
ID.GroupID |
Group ID of group. |
ID.OSeq |
Arbitrary sequence number. Internally incremented, starting at 1 . |
State |
State of the order. |
Name | Description |
---|---|
OPEN |
Accepting bids. |
ACTIVE |
Open lease has been created. |
CLOSED |
No active leases and not accepting bids. Terminal. |
Name | Description |
---|---|
ID.OrderID |
Group ID of group. |
ID.Provider |
Account address of provider. |
State |
State of the bid. |
EndsOn |
Height at which the bid ends if it is not already matched. |
Price |
Bid price - amount to be paid on every block. |
Name | Description |
---|---|
OPEN |
Awaiting matching. |
ACTIVE |
Bid for an active lease (winner). |
CLOSED |
No active leases for this bid. Terminal. |
Name | Description |
---|---|
ID |
The same as the bid ID for the lease. |
State |
State of the bid. |
Name | Description |
---|---|
ACTIVE |
Active lease - tenant is paying provider on every block. |
CLOSED |
No payments being made. Terminal. |