code: func (c *Client) UpsertProxy(s services.Server) error {
  	data, err := services.GetServerMarshaler().MarshalServer(s)
  	if err != nil {
  		return trace.Wrap(err)
  	}
  	args := &upsertServerRawReq{
  		Server: data,
  	}
  	_, err = c.PostJSON(c.Endpoint("proxies"), args)
  	return trace.Wrap(err)
  }
docs: // UpsertProxy is used by proxies to report their presence
  // to other auth servers in form of hearbeat expiring after ttl period.