Skip to main content

Storages

NFT usually contains some images or animation and metadata as well. Storages provide the option to store this data on different services both centralized and decentralized. You can have your own storages by providing your own credentials to us or using our predefined storages

tip

NFT best practice - prefer decentralized storages versus centralized. But please note that on decentralized storage you can’t update files. Decentralized storages is immutable

Creating Storage

To create the storage you should select the necessary driver first and fill required fields after.

Each storage has its own set of fields but all of them have general fields as well. General fields are a name, description, slug, enables, and default switchers.

Name and description used for dev panel only and provides notes for developers about the purpose to create given storage.

Slug is a unique option per project. This is how developer address uploading path

The default storage used on API when the storage slug is not provided (empty)

Storage Options

Path inside the storage

Some storages support the options ‘path inside storage’ that make a system put files in a special folder(s) inside your storage. By default, the system put files at the root of the storage

Driver Type

System support different type of driver

Attarius https storage

Attarius HTTPS storage is cost effective storage controlled by Attarius. You only can select a folder for storing files.

Attarius HTTPS storage provides CDN for better speed

Attarius IPFS storage

Atarius IPFS storage it’s IPFS storage by platform. No options are required from the end user.

info

IPFS storage is immutable. You can't update file after

Amazon S3 storage

AWS S3 storage is controlled by the end game. Developer should provide all credentials for his own S3 storage AWS S3 cost effective, secure, reliable, and scalable solution that is widely used on the web.

How to set up your own S3 bucket

The setup process is fast and easy

Registration

Register on https://aws.amazon.com. This simple but long process as it requires validation from the AWS site

Create an S3 bucket.

On https://s3.console.aws.amazon.com/s3/home press the "Create Bucket" button. Enter the bucket name and select the region. Remember the values you should enter on the dev panel. Leave all other options as it

Create CDN

On https://console.aws.amazon.com/cloudfront/v3/home press the "Create distribution" button. On the "Origin domain" select that you create a bucket on the previous step. On the section "Origina access" select "Legacy access identities (Use a CloudFront origin access identity (OAI) to access the S3 bucket)" and press the "Create new OAI" button. Agree with the default name. Next "Bucket policy" - select "Yes, update the bucket policy"

You can adjust other settings as well including custom domain or protocols.

After you are done press the "Create distribution" button

Select the created distribution and copy "Distribution domain name" it should be something "xxxxxx.cloudfront.net". If you added your own domain then copy "Alternate domain names".

This value goes to the "External URL" field on the dev panel, but don't miss to add protocol "https://" to this url

Creating credentials

This is the most important and hard part for you. We will create limited credentials that cover only access to one bucket and no more

Go to the policies page https://console.aws.amazon.com/iamv2/home#/policies and select - "Create Policy" and go to JSON tab

Paste provided policy. But replace "YOUR_BUCKET" with your own bucket name that you created before

{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": ["s3:PutObject", "s3:GetObject", "s3:DeleteObject"],
"Resource": ["arn:aws:s3:::YOUR_BUCKET/*"]
},
{
"Sid": "VisualEditor1",
"Effect": "Allow",
"Action": ["s3:ListAllMyBuckets", "s3:ListBucket"],
"Resource": "*"
}
]
}

Press the next few times and on the last page provide the name "AttariusService". Save policy.

Now create a user with this policy. Go to the "https://console.aws.amazon.com/iamv2/home#/users" and "Add users" Add username "AttariusService" and select "Access key - Programmatic access" On the next page select "Attach existing policies directly" and find policy "AttariusService” Press the "next" button multiple times and on the last page copy AccessKey and SecretKey. You should add it to the Attarius dev panel

All done!

Pinata IPSF storage

Pinata amount service to “pin” files inside IPFS.

Pinata credentials can be obtained here https://app.pinata.cloud/keys

Infura IPFS storage

Infura core of current web3 and it included IPFS services as well

To obtain Infura IPFS credentials go to the dashboard https://infura.io/dashboard and create a new project. As a product select IPFS as name any name

Go inside the created project and select "project settings". Project ID and project secret will be here

NTF.storage

NTF.stogare service special storage to store data inside ipfs and filecoin. It is free and unlimited. You can obtain API key on https://nft.storage/manage/

WEB3.storage

warning

DEPRECATED. Not available anymore on dev panel. Old uploads will continue work.

WEB3.storage service to provide storage across different decentralized providers. You can use up to 1TB of data here for free You can obtain API key on https://web3.storage/tokens/