code: func (s *Session) Get(args *structs.SessionSpecificRequest,
  	reply *structs.IndexedSessions) error {
  	if done, err := s.srv.forward("Session.Get", args, args, reply); done {
  		return err
  	}
  
  	return s.srv.blockingQuery(
  		&args.QueryOptions,
  		&reply.QueryMeta,
  		func(ws memdb.WatchSet, state *state.Store) error {
  			index, session, err := state.SessionGet(ws, args.Session)
  			if err != nil {
  				return err
  			}
  
  			reply.Index = index
  			if session != nil {
  				reply.Sessions = structs.Sessions{session}
  			} else {
  				reply.Sessions = nil
  			}
  			if err := s.srv.filterACL(args.Token, reply); err != nil {
  				return err
  			}
  			return nil
  		})
  }
docs: // Get is used to retrieve a single session