anchor.diff:  		}
   	}
   
  -	@app.Route("/set/:username/:elevation/:key")
  -	Future<bool> set(String username, String elevation, String key) async {
  -		if (key != mapFillerReportsToken) {
  -			return false;
  +	/// Used by Slack
  +	/*
  +	token=9rZYYzfD4qAcpT1SWzL7mDvb
  +	team_id=T0001
  +	team_domain=example
  +	channel_id=C2147483705
  +	channel_name=test
  +	user_id=U2147483697
  +	user_name=Steve
  +	command=/weather
  +	text=94070
  +	response_url=https://hooks.slack.com/commands/1234/5678
  +	 */
  +	@app.Route("/set")
  +	Future<String> set(
  +		@app.QueryParam("token") String token,
  +		@app.QueryParam("channel_name") String channelName,
  +		@app.QueryParam("text") String text
  +	) async {
  +		if (token != slackPromoteToken) {
  +			return "Invalid token";
  +		}
  +
  +		if (channelName != "administration") {
  +			return "Run this command from the administration group";
  +		}
  +
  +		String elevation;
  +		String username;
  +		try {
  +			List<String> parts = text.split(" ");
  +			elevation = parts.first.trim();
  +			username = parts.sublist(1).join(" ");
  +		} catch(_) {
  +			return "Invalid parameters";
  +		}
  +
  +		if (elevation == "none") {
  +			elevation = "";
   		}
   
   		int rows = await dbConn.execute(
  
positive.code: 	static Map<String, String> _cache = new Map();
  	static Elevation INSTANCE = new Elevation();
  
  	@app.Route("/get/:username")
  	Future<String> get(String username) async {
  		if (_cache[username] != null) {
  
negative.code: 			{"elevation": elevation, "username": username}
  		);
  
  		if (rows == 1) {
  			_cache[username] = elevation;
  			return "$username is now a $elevation";
  		} else {
  			return "An unknown error occurred. Try again?";
  		}
  	}
  }