code: func (s *Swarm) APIs() []rpc.API {
  
  	apis := []rpc.API{
  		// public APIs
  		{
  			Namespace: "bzz",
  			Version:   "3.0",
  			Service:   &Info{s.config, chequebook.ContractParams},
  			Public:    true,
  		},
  		// admin APIs
  		{
  			Namespace: "bzz",
  			Version:   "3.0",
  			Service:   api.NewInspector(s.api, s.bzz.Hive, s.netStore),
  			Public:    false,
  		},
  		{
  			Namespace: "chequebook",
  			Version:   chequebook.Version,
  			Service:   chequebook.NewAPI(s.config.Swap.Chequebook),
  			Public:    false,
  		},
  		{
  			Namespace: "swarmfs",
  			Version:   fuse.SwarmFSVersion,
  			Service:   s.sfs,
  			Public:    false,
  		},
  		{
  			Namespace: "accounting",
  			Version:   protocols.AccountingVersion,
  			Service:   protocols.NewAccountingApi(s.accountingMetrics),
  			Public:    false,
  		},
  	}
  
  	apis = append(apis, s.bzz.APIs()...)
  
  	apis = append(apis, s.streamer.APIs()...)
  
  	if s.ps != nil {
  		apis = append(apis, s.ps.APIs()...)
  	}
  
  	return apis
  }
docs: // implements node.Service
  // APIs returns the RPC API descriptors the Swarm implementation offers