kubo/client/rpc
Andrew Gillis 4009ad3e5a
Some checks failed
CodeQL / codeql (push) Has been cancelled
Docker Build / docker-build (push) Has been cancelled
Gateway Conformance / gateway-conformance (push) Has been cancelled
Gateway Conformance / gateway-conformance-libp2p-experiment (push) Has been cancelled
Go Build / go-build (push) Has been cancelled
Go Check / go-check (push) Has been cancelled
Go Lint / go-lint (push) Has been cancelled
Go Test / go-test (push) Has been cancelled
Interop / interop-prep (push) Has been cancelled
Sharness / sharness-test (push) Has been cancelled
Interop / helia-interop (push) Has been cancelled
Interop / ipfs-webui (push) Has been cancelled
chore: stop using go-homedir (#10568)
* chore: stop using go-homedir

The `github.com/mitchellh/go-homedir` repo is archived, no longer needed, and no longer maintained.

- `homedir.Dir` is replaced by the stdlib `os.UserHomeDir`
- `homedir.Expand` is replaced by fsutil.ExpandHome` in the `github.com/ipfs/kubo/misc/fsutil` package.

Additional functionality, such as `DirWritable` and `FileExists` was moved into or included in the `github.com/ipfs/kubo/misc/fsutil` package.
2024-11-05 07:45:11 -08:00
..
auth feat(rpc): Opt-in HTTP RPC API Authorization (#10218) 2023-11-17 01:29:29 +01:00
api_test.go chore: upgrade go-libp2p-kad-dht (#10378) 2024-04-04 12:56:19 +00:00
api.go chore: stop using go-homedir (#10568) 2024-11-05 07:45:11 -08:00
apifile.go feat: Support storing UnixFS 1.5 Mode and ModTime (#10478) 2024-08-21 02:02:46 +02:00
block.go chore: clean migration 2023-11-29 12:29:59 +01:00
dag.go chore: clean migration 2023-11-29 12:29:59 +01:00
errors_test.go client/rpc: rename package name to match rpc and edit migration story 2023-05-31 15:40:00 +02:00
errors.go chore: fix some typos (#10396) 2024-06-03 17:17:58 +02:00
key.go feat: ipfs key sign|verify (#10235) 2023-12-04 09:51:26 +01:00
name.go chore: clean migration 2023-11-29 12:29:59 +01:00
object.go core/commands!: remove deprecated object APIs (#10375) 2024-03-22 09:32:30 +01:00
path.go chore: update boxo for structification of ImmutablePath 2023-10-09 09:44:39 +02:00
pin.go refactor: stop using github.com/pkg/errors (#10431) 2024-05-26 11:04:40 +00:00
pubsub.go chore: clean migration 2023-11-29 12:29:59 +01:00
README.md docs: replace outdated package paths described in rpc README (#10505) 2024-09-05 23:20:08 +02:00
request.go client/rpc: rename package name to match rpc and edit migration story 2023-05-31 15:40:00 +02:00
requestbuilder.go fix: use %-encoded headers in most compatible way 2023-08-22 15:43:01 +02:00
response.go style: gofumpt and godot [skip changelog] (#10081) 2023-08-17 14:02:08 +02:00
routing.go core: deprecate CoreAPI.Dht, introduce CoreAPI.Routing 2024-02-07 10:47:30 +01:00
swarm.go chore: clean migration 2023-11-29 12:29:59 +01:00
unixfs.go feat: Support storing UnixFS 1.5 Mode and ModTime (#10478) 2024-08-21 02:02:46 +02:00

coreiface.CoreAPI over http rpc

IPFS CoreAPI implementation using HTTP API

This package implements coreiface.CoreAPI over the HTTP API.

Documentation

https://pkg.go.dev/github.com/ipfs/kubo/client/rpc

Example

Pin file on your local IPFS node based on its CID:

package main

import (
	"context"
	"fmt"

	"github.com/ipfs/boxo/path"
	"github.com/ipfs/go-cid"
	"github.com/ipfs/kubo/client/rpc"
)

func main() {
	// "Connect" to local node
	node, err := rpc.NewLocalApi()
	if err != nil {
		fmt.Println(err)
		return
	}
	// Pin a given file by its CID
	ctx := context.Background()
	c, err := cid.Decode("bafkreidtuosuw37f5xmn65b3ksdiikajy7pwjjslzj2lxxz2vc4wdy3zku")
	if err != nil {
		fmt.Println(err)
		return
	}
	p := path.FromCid(c)
	err = node.Pin().Add(ctx, p)
	if err != nil {
		fmt.Println(err)
		return
	}
}