code: func (a *Client) AddVM(params *AddVMParams) (*AddVMOK, error) {
  	// TODO: Validate the params before sending
  	if params == nil {
  		params = NewAddVMParams()
  	}
  
  	result, err := a.transport.Submit(&runtime.ClientOperation{
  		ID:                 "addVm",
  		Method:             "POST",
  		PathPattern:        "/vms",
  		ProducesMediaTypes: []string{"application/json"},
  		ConsumesMediaTypes: []string{"application/json"},
  		Schemes:            []string{"http"},
  		Params:             params,
  		Reader:             &AddVMReader{formats: a.formats},
  		Context:            params.Context,
  	})
  	if err != nil {
  		return nil, err
  	}
  	return result.(*AddVMOK), nil
  
  }
docs: /*
  AddVM adds a new vm to the pool
  */