Merge pull request #858 from oceanprotocol/issue-#849-setup-marketplace

Issue-#849: Update marketplace content
This commit is contained in:
Akshay 2022-03-30 16:52:51 +02:00 committed by GitHub
commit a534d5b1dd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 107 additions and 34 deletions

View File

@ -0,0 +1,94 @@
---
title: Fees
description: The Ocean Protocol defines various fees for creating a sustainability loop.
---
## Path to sustainability
Ocean Protocol achieves sustainability via the [Web3 sustainability loop](https://blog.oceanprotocol.com/the-web3-sustainability-loop-b2a4097a36e).
- The project grows and improves through the efforts of OceanDAO grant recipients.
- The OceanDAO votes to decide which proposals receive grants.
- Grant funds are sourced from the Ocean Protocol community treasury.
- The Ocean Protocol community collects fees when users interact with the protocol, thus completing the sustainability loop.
## Fee types
### Swap fee
Swap fees are collected whenever someone swaps a datatoken for base token (e.g., OCEAN) or base token for a datatoken. The swap could be inside a pool (using an automated market maker) or in a fixed-rate exchange.
These are the fees that are applied whenever a user swaps base token or datatoken:
- Publisher Marketplace swap fee
- Consumer Marketplace swap fee
- Provider Consumption Fees
- [Ocean Community Fee](#ocean-community-fee)
### Publish fee
Publish fees can be charged to a publisher when they publish an asset.
Currently, the Ocean marketplace does not charge a publishing fee. Custom marketplaces can charge a publishing fee by adding an extra transaction in the publish flow.
Based on the use case of the marketplace, the marketplace owner can decide if this fee should be charged or not.
### Consume fee
Consume fees (aka. Order fees) are charged when a user holding a datatoken exchanges it for the right to download an asset or to start a compute job that uses the asset.
These are the fees that are applied whenever a user consumes an asset:
- Consume Market Consumption Fee
- Publisher Market Consumption Fee
- Provider Consumption Fees
- [Ocean Community Fee](#ocean-community-fee)
### Ocean Community fee
Ocean's smart contracts collect **Ocean Community fees** during swap and order operations. These fees are reinvested in community projects via OceanDAO and other initiatives.
For swaps involving approved base tokens like OCEAN and H2O, the Ocean Community swap fee is 0.1%. For swaps involving other base tokens, the Ocean Community swap fee is 0.2%. The Ocean Community order fee is 0.3 DT per order operation.
These fees can be updated by the Ocean Protocol Foundation.
### Provider fee
Provider is a component of Ocean Protocol's ecosystem that facilitates data consumption, starts compute jobs, encrypts DDOs, and decrypts DDOs. Provider also validates if the user can access a particular data asset or service. To learn more about Provider, click [here](https://github.com/oceanprotocol/provider).
Provider fees are paid to the individual or organization running their Provider instance when the user orders an asset. These fees can be set to an absolute amount, not as a percentage. The provider can also specify which token the fees must be paid in - they don't have to be the same token used in the consuming market.
Provider fees can also be used to charge for computing resources. Based on the compute resources needed to run an algorithm in the Compute-to-Data environment, a consumer can choose the amount to pay according to their needs.
These fees incentivize individuals and organizations to run their provider instances and charge consumers according to resource usage.
## Fee values
The table is periodically updated. Users are advised to confirm new values through the [contracts](https://github.com/oceanprotocol/contracts) and the [market](https://github.com/oceanprotocol/market).
| Swap Fees | Value in Ocean Market, using any Provider | Value in Other Markets |
| :------------------------------------------------------------ | :----------------------------------------:| :----------------------------------------------------------------------------------------------------------------------------------------------- |
| publishMarket: Pools | 0% | Set in the market config, by the publishing market.<br>Min = 0.001%<br>Max = 10% |
| publishMarket: FixedRate | 0% | Set in the market config, by the publishing market.<br>Min = 0.001%<br>Max = 50% |
| consumeMarket: Pools | 0% | Set in market config, by the consuming market.<br>Min = 0.001%<br>Max = 10% |
| consumeMarket: FixedRate<br>ERC20Template | 0% | 0% |
| consumeMarket: FixedRate<br>EnterpriseTemplate | 0% | Set in market config, by the consuming market. |
| Ocean Community: Pools & FixedRate<br>OCEAN, H2O as base token| 0.1% | 0.1% |
| Ocean Community: Pools & FixedRate<br>other base token | 0.2% | 0.2% |
| Pool Liquidity Provider (LP) | 1% | Set by the pool creator on contract deployment.<br><b>Contracts</b> <br> Min = 0.001% <br>Max = 10%<br><b>Market</b> <br>Min = 0.1% <br>Max = 10%|
| <b>Publish Fees</b> | 0% | 0% |
| <b>Order Fees <br>1 datatoken available to get dataset acces | | |
| publishMarket<br>Absolute value, in any token. E.g. 5 USDT | 0 | Set in market config, by the publishing market. |
| consumeMarket<br>Absolute value, in any token. E.g. 2 DAI | 0 | Set in market config, by the consuming market. |
| Ocean Community<br>Fixed price in DT | 0.03 DT | 0.03 DT |
| Ocean Provider Fees | OPF Provider | 3rd party Provider |
| :------------------------------------------------------------ | :----------------------------------------:| :----------------------------------------------------------------------------------------------------------------------------------------------- |
| Token in which fee is charged: `PROVIDER_FEE_TOKEN` | OCEAN | E.g. USDC |
| Download: `COST_PER_MB` | 0 | Set in Provider envvars. |
| Compute: `COST_PER_MIN`<br> Environment: 1 CPU, 60 secs max | 0 | Set in OperatorEngine envvars. |
| Compute: `COST_PER_MIN`<br> Environment: 1 CPU, 1 hour max | 1.0 OCEAN/min | Set in OperatorEngine envvars. |
| Ocean Community | 0% of the Provider fee | 0% of the Provider fee |
## Further reading
- [The Web3 Sustainability Loop](https://blog.oceanprotocol.com/the-web3-sustainability-loop-b2a4097a36e)

View File

@ -3,43 +3,19 @@ title: Set Up a Marketplace
description:
---
In Ocean, marketplaces and publishers are different roles. A common setup is for one organization to do both. We focus on that here.
## About marketplace
## The Steps
Ocean Protocol's [marketplace](https://market.oceanprotocol.com/) provides a web interface for accessing assets published on the chain. By default, assets metadata is pulled from Aquarius, component hosted by Ocean Protocol. To extend the existing features of the marketplace, developers can fork the marketplace.
1. Develop the first cut of the app.
1. Prepare some initial data assets.
1. Deploy to production.
By doing so, developers can:
## Develop a First Cut of the App
- Change the name of the marketplace.
- Implement their own branding and style.
- Change the source of the asset information.
- Customise the fees
Here are some approaches:
## Forking marketplace
- Fork [Ocean Market](https://github.com/oceanprotocol/market) code.
- Build from [Ocean React hooks](https://github.com/oceanprotocol/react).
- Build up from [ocean.js](https://github.com/oceanprotocol/ocean.js) or [ocean.py](https://github.com/oceanprotocol/ocean.py) drivers.
To setup a marketplace follow the steps here:
## Prepare Some Initial Data Assets
When you deploy, you'll want some initial data assets for your market to offer.
Ocean supports several types, such as Azure and S3 storage. The [tutorials](/tutorials/) section provides more info.
## Deploy to Production
When developing your app, you'll likely use Barge to run all the Ocean Protocol components on your local machine.
When it comes time to go to production, you will have to run these components:
- Your marketplace/publisher app
- Aquarius (with Elasticsearch)
- Provider-py
Of course, there are many other things that must be handled in production:
- Security of the infrastructure where the software is running
- Monitoring
- Log aggregation, storage, and search
- Handling crashes or other faults
Each of those is beyond the scope of these docs.
[Launch a blockchain-based data marketplace in under 1 hour](https://blog.oceanprotocol.com/launch-a-blockchain-based-data-marketplace-in-under-1-hour-9baa85a65ece)

View File

@ -34,6 +34,8 @@
items:
- title: Set Up a Marketplace
link: /tutorials/marketplace/
- title: Fees
link: /tutorials/marketplace-fees/
- group: Compute-to-Data
items:

View File

@ -30,6 +30,7 @@ export default function RestApiDoc({ location, pageContext }) {
<Content>
<main className={stylesDoc.wrapper}>
<aside className={stylesDoc.sidebar}>
{/* Add sidebar */}
<Sidebar location={location} sidebar="references" collapsed />
</aside>
<article className={stylesDoc.main}>