View Source ExIpfsIpld (ex_ipfs_ipld v1.0.2)

ExIpfsIpld handles linked data in IPFS.

Summary

Types

A struct that represents the import of a DAG.

Functions

Streams the selected DAG as a .car stream on stdout.

Get a DAG node.

Import the contents of a DAG.

Put an object to be encoded as a DAG object. There seems to be a bug in the IPFS API where the data is not being parsed correctly. Simple export can not be reimported at the moment.

Types

@type import() :: %ExIpfsIpld.Import{
  root: %{/: binary()},
  stats: %{block_bytes_count: integer() | nil, block_count: integer() | nil}
}

A struct that represents the import of a DAG.

Functions

@spec export(binary()) :: {:ok, any()} | ExIpfs.Api.error_response()

Streams the selected DAG as a .car stream on stdout.

Options

https://docs.ipfs.tech/reference/kubo/rpc/#api-v0-dag-export

No options are relevant for this command.

@spec get(Path.t(), list()) :: {:ok, any()} | ExIpfs.Api.error_response()

Get a DAG node.

Options

https://docs.ipfs.tech/reference/kubo/rpc/#api-v0-dag-get

Link to this function

import(data, opts \\ [])

View Source
@spec import(binary(), list()) :: {:ok, import()} | ExIpfs.Api.error_response()

Import the contents of a DAG.

The IPFS API does not currently support posting data directly to the endpoint. So we have to write the data to a temporary file and then post that file.

Options

https://docs.ipfs.tech/reference/kubo/rpc/#api-v0-dag-import

@spec put(binary(), list()) :: {:ok, ExIpfs.link()} | ExIpfs.Api.error_response()

Put an object to be encoded as a DAG object. There seems to be a bug in the IPFS API where the data is not being parsed correctly. Simple export can not be reimported at the moment.

Options

https://docs.ipfs.tech/reference/kubo/rpc/#api-v0-dag-put

[
  store-codec: "<string>", # Default: "dag-cbor"
  input-codec: "<string>", # Default: "dag-json"
  pin: "<bool>", # Whether to pin object when adding. Default: false
  hash: "<string>", # Hash function to use. Default: "sha2-256"
  allow-big-block: <bool>, # Allow blocks larger than 1MB. Default: false
]