Comment on page
BWS.IPFS.Upload
Easily upload Images and JSON to IPFS!
The BWS.IPFS.Upload service provides a straightforward and efficient method for users to upload images and JSON files to the InterPlanetary File System (IPFS).
You can now use
ipfs.bws.ninja
as the gateway to use for the files you uploaded to IPFS using BWS. For example, check our lovely unicorn on IPFS using BWS Gateway:
https://ipfs.bws.ninja/ipfs/QmU7avmnTb4iVbNGCHMJmdEbsx9nRtUx7dWGpKeE7zjo8T

post
https://api.bws.ninja/v1
/call
Uploads a file or JSON to IPFS.
Parameter | Type | Desciption |
---|---|---|
description | string | |
content | JSON /
base64 | Content to save on the IPFS network.
We currently support:
|
BWS IPFS service is expected to be used for web browsing content.
- You must optimize your content to be less than 1 MB in size.
- There is a hard limit of 5MB when uploading files to IPFS using our API.
- We currently support JSON, images, and PDF files.
If your use case requires higher file sizes or other file types, please contact us.
When the API call is successfully executed, it returns the IPFS Content Identifier (CID) along with the corresponding IPFS URI and URL. These details facilitate easy access and reference to the uploaded content on the IPFS network.
{
"statusCode": 200,
"info": {
"cid": "QmXmCX9S6ANVjYJh3rJmXjqgYtYv7WZLUDL2XCwdPrvUwN",
"uris": {
"ipfs": "ipfs://QmXmCX9S6ANVjYJh3rJmXjqgYtYv7WZLUDL2XCwdPrvUwN",
"url": "https://ipfs.bws.ninja/ipfs/QmXmCX9S6ANVjYJh3rJmXjqgYtYv7WZLUDL2XCwdPrvUwN"
}
}
}
The following examples show how to upload a file or JSON to the InterPlanetary File System (IPFS) using the BWS.IPFS.Upload API.
Upload an Image using nodejs
Upload JSON using cURL
const fs = require('fs');
const axios = require('axios');
/* get the file you want to upload to IPFS */
const fileData = fs.readFileSync('./files/image.png');
/* encode file content to base64 */
const encodedData = fileData.toString('base64');
/* build request to use BWS IPFS solution */
const request = {
"solution": "BWS.IPFS.Upload",
"operation": "new",
"parameters": {
description: "My first IPFS file using BWS API!",
parameters: {
content: encodedData
}
}
};
/* call BWS API using Axios */
let config = {
method: 'post',
maxBodyLength: Infinity,
url: 'https://api.bws.ninja/v1/call',
headers: {
'X-Api-Key': 'XqaLg...... A5k2V729v', /* use your API key here! */
'Content-Type': 'application/json'
},
data : JSON.stringify(request)
};
axios.request(config)
.then((response) => {
console.log(JSON.stringify(response.data));
})
.catch((error) => {
console.log(error);
});
curl --location 'https://api.bws.ninja/v1/call' \
--header 'X-Api-Key: XqaLg...729v' \
--header 'Content-Type: application/json' \
--data '{
"solution": "BWS.IPFS.Upload",
"operation": "new",
"parameters": {
"description": "Just a simple JSON for testing BWS API",
"content": {
"text": "Hello World!"
}
}
}'
post
https://api.bws.ninja/v1
/call
Lists your IPFS files.
Parameter | Type | Desciption |
---|---|---|
from | long | Number of milliseconds representing a timestamp to select IPFS files from. |
to | long | Number of milliseconds representing a timestamp to select IPFS files to. |
Once executed correctly, you will get a list of the IPFS uploaded files using BWS API.
That list will contain the timestamp of creation (in milliseconds), the CID, the file type, and URIs to easily access the file (IPFS URI and the web URL - using BWS IPFS Gateway to fetch the file.
{
"statusCode": 200,
"info": [
{
"timestamp": "1700416540067",
"cid": "QmXmCX9S6ANVjYJh3rJmXjqgYtYv7WZLUDL2XCwdPrvUwN",
"description": "Just a simple JSON for testing BWS API",
"fileType": "json",
"uris": {
"ipfs": "ipfs://QmXmCX9S6ANVjYJh3rJmXjqgYtYv7WZLUDL2XCwdPrvUwN",
"url": "https://ipfs.bws.ninja/ipfs/QmXmCX9S6ANVjYJh3rJmXjqgYtYv7WZLUDL2XCwdPrvUwN"
}
},
{
"timestamp": "1700121600009",
"cid": "QmcduEBAppXxnyn37deHHf33Ep7cPbYxn1mH36Nvvowkiu",
"description": "image for token 1325",
"fileType": "image",
"uris": {
"ipfs": "ipfs://QmcduEBAppXxnyn37deHHf33Ep7cPbYxn1mH36Nvvowkiu",
"url": "https://ipfs.bws.ninja/ipfs/QmcduEBAppXxnyn37deHHf33Ep7cPbYxn1mH36Nvvowkiu"
}
}
]
}
cURL
curl --location 'https://api.staging.bws.ninja/v1/call' \
--header 'X-Api-Key: XqaLg...729v' \
--header 'Content-Type: application/json' \
--data '{
"solution": "BWS.IPFS.Upload",
"operation": "list"
"parameters": {
"from": 1700404140000
"to": 1700411940000
}
}'
Last modified 17d ago