Documentation ¶
Overview ¶
**NOTE: this package is experimental.**
Package coreapi provides direct access to the core commands in IPFS. If you are embedding IPFS directly in your Go program, this package is the public interface you should use to read and write files or otherwise control IPFS.
If you are running IPFS as a separate process, you should use `client/rpc` to work with it via HTTP.
Index ¶
- func NewCoreAPI(n *core.IpfsNode, opts ...options.ApiOption) (coreiface.CoreAPI, error)
- type BlockAPI
- func (api *BlockAPI) Get(ctx context.Context, p path.Path) (io.Reader, error)
- func (api *BlockAPI) Put(ctx context.Context, src io.Reader, opts ...caopts.BlockPutOption) (coreiface.BlockStat, error)
- func (api *BlockAPI) Rm(ctx context.Context, p path.Path, opts ...caopts.BlockRmOption) error
- func (api *BlockAPI) Stat(ctx context.Context, p path.Path) (coreiface.BlockStat, error)
- type BlockStat
- type CoreAPI
- func (api *CoreAPI) Block() coreiface.BlockAPI
- func (api *CoreAPI) Dag() coreiface.APIDagService
- func (api *CoreAPI) Key() coreiface.KeyAPI
- func (api *CoreAPI) Name() coreiface.NameAPI
- func (api *CoreAPI) Object() coreiface.ObjectAPI
- func (api *CoreAPI) Pin() coreiface.PinAPI
- func (api *CoreAPI) PubSub() coreiface.PubSubAPI
- func (api *CoreAPI) ResolveNode(ctx context.Context, p path.Path) (ipld.Node, error)
- func (api *CoreAPI) ResolvePath(ctx context.Context, p path.Path) (path.ImmutablePath, []string, error)
- func (api *CoreAPI) Routing() coreiface.RoutingAPI
- func (api *CoreAPI) Swarm() coreiface.SwarmAPI
- func (api *CoreAPI) Unixfs() coreiface.UnixfsAPI
- func (api *CoreAPI) WithOptions(opts ...options.ApiOption) (coreiface.CoreAPI, error)
- type KeyAPI
- func (api *KeyAPI) Generate(ctx context.Context, name string, opts ...caopts.KeyGenerateOption) (coreiface.Key, error)
- func (api *KeyAPI) List(ctx context.Context) ([]coreiface.Key, error)
- func (api *KeyAPI) Remove(ctx context.Context, name string) (coreiface.Key, error)
- func (api *KeyAPI) Rename(ctx context.Context, oldName string, newName string, ...) (coreiface.Key, bool, error)
- func (api *KeyAPI) Self(ctx context.Context) (coreiface.Key, error)
- func (api *KeyAPI) Sign(ctx context.Context, name string, data []byte) (coreiface.Key, []byte, error)
- func (api *KeyAPI) Verify(ctx context.Context, keyOrName string, signature, data []byte) (coreiface.Key, bool, error)
- type Link
- type NameAPI
- func (api *NameAPI) Publish(ctx context.Context, p path.Path, opts ...caopts.NamePublishOption) (ipns.Name, error)
- func (api *NameAPI) Resolve(ctx context.Context, name string, opts ...caopts.NameResolveOption) (path.Path, error)
- func (api *NameAPI) Search(ctx context.Context, name string, opts ...caopts.NameResolveOption) (<-chan coreiface.IpnsResult, error)
- type Node
- type ObjectAPI
- func (api *ObjectAPI) AddLink(ctx context.Context, base path.Path, name string, child path.Path, ...) (path.ImmutablePath, error)
- func (api *ObjectAPI) Diff(ctx context.Context, before path.Path, after path.Path) ([]coreiface.ObjectChange, error)
- func (api *ObjectAPI) RmLink(ctx context.Context, base path.Path, link string) (path.ImmutablePath, error)
- type PinAPI
- func (api *PinAPI) Add(ctx context.Context, p path.Path, opts ...caopts.PinAddOption) error
- func (api *PinAPI) IsPinned(ctx context.Context, p path.Path, opts ...caopts.PinIsPinnedOption) (string, bool, error)
- func (api *PinAPI) Ls(ctx context.Context, opts ...caopts.PinLsOption) (<-chan coreiface.Pin, error)
- func (api *PinAPI) Rm(ctx context.Context, p path.Path, opts ...caopts.PinRmOption) error
- func (api *PinAPI) Update(ctx context.Context, from path.Path, to path.Path, ...) error
- func (api *PinAPI) Verify(ctx context.Context) (<-chan coreiface.PinStatus, error)
- type PubSubAPI
- func (api *PubSubAPI) Ls(ctx context.Context) ([]string, error)
- func (api *PubSubAPI) Peers(ctx context.Context, opts ...caopts.PubSubPeersOption) ([]peer.ID, error)
- func (api *PubSubAPI) Publish(ctx context.Context, topic string, data []byte) error
- func (api *PubSubAPI) Subscribe(ctx context.Context, topic string, opts ...caopts.PubSubSubscribeOption) (coreiface.PubSubSubscription, error)
- type RoutingAPI
- func (api *RoutingAPI) FindPeer(ctx context.Context, p peer.ID) (peer.AddrInfo, error)
- func (api *RoutingAPI) FindProviders(ctx context.Context, p path.Path, opts ...caopts.RoutingFindProvidersOption) (<-chan peer.AddrInfo, error)
- func (api *RoutingAPI) Get(ctx context.Context, key string) ([]byte, error)
- func (api *RoutingAPI) Provide(ctx context.Context, path path.Path, opts ...caopts.RoutingProvideOption) error
- func (api *RoutingAPI) Put(ctx context.Context, key string, value []byte, opts ...caopts.RoutingPutOption) error
- type SwarmAPI
- func (api *SwarmAPI) Connect(ctx context.Context, pi peer.AddrInfo) error
- func (api *SwarmAPI) Disconnect(ctx context.Context, addr ma.Multiaddr) error
- func (api *SwarmAPI) KnownAddrs(ctx context.Context) (map[peer.ID][]ma.Multiaddr, error)
- func (api *SwarmAPI) ListenAddrs(ctx context.Context) ([]ma.Multiaddr, error)
- func (api *SwarmAPI) LocalAddrs(ctx context.Context) ([]ma.Multiaddr, error)
- func (api *SwarmAPI) Peers(ctx context.Context) ([]coreiface.ConnectionInfo, error)
- type UnixfsAPI
- func (api *UnixfsAPI) Add(ctx context.Context, files files.Node, opts ...options.UnixfsAddOption) (path.ImmutablePath, error)
- func (api *UnixfsAPI) Get(ctx context.Context, p path.Path) (files.Node, error)
- func (api *UnixfsAPI) Ls(ctx context.Context, p path.Path, opts ...options.UnixfsLsOption) (<-chan coreiface.DirEntry, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type BlockAPI ¶ added in v0.4.14
type BlockAPI CoreAPI
type BlockStat ¶ added in v0.4.14
type BlockStat struct {
// contains filtered or unexported fields
}
func (*BlockStat) Path ¶ added in v0.4.14
func (bs *BlockStat) Path() path.ImmutablePath
type CoreAPI ¶ added in v0.4.8
type CoreAPI struct {
// contains filtered or unexported fields
}
func (*CoreAPI) Block ¶ added in v0.4.14
Block returns the BlockAPI interface implementation backed by the go-ipfs node
func (*CoreAPI) Dag ¶ added in v0.4.14
func (api *CoreAPI) Dag() coreiface.APIDagService
Dag returns the DagAPI interface implementation backed by the go-ipfs node
func (*CoreAPI) Key ¶ added in v0.4.14
Key returns the KeyAPI interface implementation backed by the go-ipfs node
func (*CoreAPI) Name ¶ added in v0.4.14
Name returns the NameAPI interface implementation backed by the go-ipfs node
func (*CoreAPI) Object ¶ added in v0.4.14
Object returns the ObjectAPI interface implementation backed by the go-ipfs node
func (*CoreAPI) Pin ¶ added in v0.4.14
Pin returns the PinAPI interface implementation backed by the go-ipfs node
func (*CoreAPI) PubSub ¶ added in v0.4.18
PubSub returns the PubSubAPI interface implementation backed by the go-ipfs node
func (*CoreAPI) ResolveNode ¶ added in v0.4.8
ResolveNode resolves the path `p` using Unixfs resolver, gets and returns the resolved Node.
func (*CoreAPI) ResolvePath ¶ added in v0.4.8
func (api *CoreAPI) ResolvePath(ctx context.Context, p path.Path) (path.ImmutablePath, []string, error)
ResolvePath resolves the path `p` using Unixfs resolver, returns the resolved path.
func (*CoreAPI) Routing ¶ added in v0.19.0
func (api *CoreAPI) Routing() coreiface.RoutingAPI
Routing returns the RoutingAPI interface implementation backed by the kubo node
func (*CoreAPI) Swarm ¶ added in v0.4.18
Swarm returns the SwarmAPI interface implementation backed by the go-ipfs node
type KeyAPI ¶ added in v0.4.14
type KeyAPI CoreAPI
func (*KeyAPI) Generate ¶ added in v0.4.14
func (api *KeyAPI) Generate(ctx context.Context, name string, opts ...caopts.KeyGenerateOption) (coreiface.Key, error)
Generate generates new key, stores it in the keystore under the specified name and returns a base58 encoded multihash of its public key.
func (*KeyAPI) Remove ¶ added in v0.4.14
Remove removes keys from keystore. Returns ipns path of the removed key.
func (*KeyAPI) Rename ¶ added in v0.4.14
func (api *KeyAPI) Rename(ctx context.Context, oldName string, newName string, opts ...caopts.KeyRenameOption) (coreiface.Key, bool, error)
Rename renames `oldName` to `newName`. Returns the key and whether another key was overwritten, or an error.
type NameAPI ¶ added in v0.4.14
type NameAPI CoreAPI
func (*NameAPI) Publish ¶ added in v0.4.14
func (api *NameAPI) Publish(ctx context.Context, p path.Path, opts ...caopts.NamePublishOption) (ipns.Name, error)
Publish announces new IPNS name and returns the new IPNS entry.
type ObjectAPI ¶ added in v0.4.14
type ObjectAPI CoreAPI
type PinAPI ¶ added in v0.4.14
type PinAPI CoreAPI
type PubSubAPI ¶ added in v0.4.18
type PubSubAPI CoreAPI
type RoutingAPI ¶ added in v0.19.0
type RoutingAPI CoreAPI
func (*RoutingAPI) FindProviders ¶ added in v0.27.0
func (api *RoutingAPI) FindProviders(ctx context.Context, p path.Path, opts ...caopts.RoutingFindProvidersOption) (<-chan peer.AddrInfo, error)
func (*RoutingAPI) Provide ¶ added in v0.27.0
func (api *RoutingAPI) Provide(ctx context.Context, path path.Path, opts ...caopts.RoutingProvideOption) error
func (*RoutingAPI) Put ¶ added in v0.19.0
func (api *RoutingAPI) Put(ctx context.Context, key string, value []byte, opts ...caopts.RoutingPutOption) error
type SwarmAPI ¶ added in v0.4.18
type SwarmAPI CoreAPI
func (*SwarmAPI) Disconnect ¶ added in v0.4.18
func (*SwarmAPI) KnownAddrs ¶ added in v0.4.18
func (*SwarmAPI) ListenAddrs ¶ added in v0.4.18
func (*SwarmAPI) LocalAddrs ¶ added in v0.4.18
type UnixfsAPI ¶
type UnixfsAPI CoreAPI
func (*UnixfsAPI) Add ¶
func (api *UnixfsAPI) Add(ctx context.Context, files files.Node, opts ...options.UnixfsAddOption) (path.ImmutablePath, error)
Add builds a merkledag node from a reader, adds it to the blockstore, and returns the key representing that node.