Skip to content

IPFS Metadata Uploader

The IPFS metadata uploader is required for "write" SDK instances.

Built-in Pinata Support

The SDK provides out-of-the-box support for Pinata:

import { createPinataIpfsMetadataUploader } from '@drips-network/sdk';
 
const ipfsUploader = createPinataIpfsMetadataUploader({
  pinataJwt: 'your-pinata-jwt-token',
  pinataGateway: 'your-pinata-gateway-url',
});

Custom IPFS Uploader

You can implement your own IPFS uploader for different services:

import { IpfsMetadataUploaderFn, Metadata } from '@drips-network/sdk';
 
const customIpfsUploader: IpfsMetadataUploaderFn<Metadata> = async (
  metadata
) => {
  // Upload metadata to your preferred IPFS service
  const result = await yourIpfsService.upload(metadata);
  return result.cid; // Return the IPFS CID as Hash
};
 
const sdk = createDripsSdk(walletClient, customIpfsUploader);