code: func (s *HTTPServer) IntentionSpecificUpdate(id string, resp http.ResponseWriter, req *http.Request) (interface{}, error) {
  	// Method is tested in IntentionEndpoint
  
  	args := structs.IntentionRequest{
  		Op: structs.IntentionOpUpdate,
  	}
  	s.parseDC(req, &args.Datacenter)
  	s.parseToken(req, &args.Token)
  	if err := decodeBody(req, &args.Intention, nil); err != nil {
  		resp.WriteHeader(http.StatusBadRequest)
  		fmt.Fprintf(resp, "Request decode failed: %v", err)
  		return nil, nil
  	}
  
  	// Use the ID from the URL
  	args.Intention.ID = id
  
  	var reply string
  	if err := s.agent.RPC("Intention.Apply", &args, &reply); err != nil {
  		return nil, err
  	}
  
  	// Update uses the same create response
  	return intentionCreateResponse{reply}, nil
  
  }
docs: // PUT /v1/connect/intentions/:id