code: func (c *Client) UpsertRole(role services.Role) error {
  	data, err := services.GetRoleMarshaler().MarshalRole(role)
  	if err != nil {
  		return trace.Wrap(err)
  	}
  	_, err = c.PostJSON(c.Endpoint("roles"), &upsertRoleRawReq{Role: data})
  	return trace.Wrap(err)
  }
docs: // UpsertRole creates or updates role