IPFS RPC API

Filebase now supports a limited set of IPFS RPC-compatible API endpoints. These endpoints allow developers and tools that integrate with Kuboarrow-up-right to communicate directly with Filebase using familiar IPFS HTTP API routes.

This API is complementary to our S3-compatible API and simplifies integration with the IPFS CLI, IPFS-compatible libraries, and other standard HTTP clients.

Base URL

https://rpc.filebase.io

All API requests require a Bearer API key via the Authorization header.


πŸ” Authentication

API keys can be found at the bottom of the Access Keysarrow-up-right page. Keys are bucket-specific. All requests must include an API key in the Authorization header:

Authorization: Bearer <api-key>

πŸ§ͺ IPFS CLI Integration

You can use the IPFS CLI directly with Filebase by passing the --api flag:

ipfs --api="/dns4/rpc.filebase.io/tcp/443/https" \
  --api-auth="<api-key>" add file1

πŸ“Œ /api/v0/pin/ls

List all pinned objects.

Method: POST


πŸ”’ /api/v0/version

Get the version of the IPFS daemon.

Method: POST


πŸ“‚ /api/v0/cat

Fetch and return the contents of a file by CID.

Method: POST

Query Parameter:

  • arg (string) – CID of the file.


πŸ“¦ /api/v0/block/get

Retrieve a raw block by CID.

Method: POST

Query Parameter:

  • arg (string) – CID of the block.


βž• /api/v0/add

Add a file to IPFS.

Method: POSTForm Field:

  • file (multipart/form-data) – The file to upload.

Supported Query Parameters:

Parameter
Type
Description

wrap-with-directory

Boolean

Wrap the uploaded file in a directory. Default: false.

cid-version

Integer

CID version to use (0 or 1). Default: 0.

Basic Example:

Example with wrap-with-directory and cid-version:

πŸ’‘ When using wrap-with-directory=true, the returned CID will represent a directory containing the file rather than the file directly.


πŸ“Œ /api/v0/pin/add

Pin a CID to ensure it remains stored.

Method: POST

Query Parameter:

  • arg (string) – CID to pin.


🧹 /api/v0/pin/rm

Unpin a CID to remove it from persistent storage.

Method: POST

Query Parameter:

  • arg (string) – CID to unpin.


πŸ”‘ /api/v0/key/gen

Create a new keypair.

Method: POST

Query Parameter:

  • arg (string) – Name of the key to create.


πŸ—οΈ /api/v0/key/import

Import a private key into the keychain.

Method: POST

Query Parameter:

  • arg (string) – Name to associate with the key.

Form Field:

  • file (multipart/form-data) – Private key file to import.


πŸ—‚οΈ /api/v0/key/list

List all keys in the keychain.

Method: POST


✏️ /api/v0/key/rename

Rename an existing key.

Method: POST

Query Parameters:

  • arg (string) – Current key name.

  • arg (string) – New key name.

Optional Query Parameters:

  • force (boolean) – Overwrite an existing key name.


πŸ—‘οΈ /api/v0/key/rm

Remove a key from the keychain.

Method: POST

Query Parameter:

  • arg (string) – Name of the key to remove.


πŸ“£ /api/v0/name/publish

Publish a CID to IPNS.

Method: POST

Query Parameter:

  • arg (string) – IPFS path or CID to publish.

Optional Query Parameters:

  • key (string) – Key name to publish with.

  • validity (string) – Record validity duration (e.g. 24h).

  • ttl (string) – Cache TTL for resolvers (e.g. 5m).


πŸ” /api/v0/name/resolve

Resolve an IPNS name to an IPFS path.

Method: POST

Query Parameter:

  • arg (string) – IPNS name or /ipns/ path.

Optional Query Parameters:

  • recursive (boolean) – Resolve until the result is not an IPNS name.

  • nocache (boolean) - Do not use cached entries.

Last updated