public void handleListingAction(Run run, Result result, String key, Object value) {
		List<Address> addrs = getListingAddresses(run, result);
		for (Address addr : addrs) {
			switch (key) {
				case "comment":
					/*
					 * {@link program.model.listing.CodeUnit}
					 */
					String comment = (String) value;
					getProgram().getListing().setComment(addr, CommentType.PLATE, comment);
					break;
				case "highlight":
					Color color = Color.decode((String) value);
					coloringService.setBackgroundColor(addr, addr, color);
					break;
				case "bookmark":
					String bookmark = (String) value;
					getProgram().getBookmarkManager()
							.setBookmark(addr, "Sarif", result.getRuleId(), bookmark);
					break;
			}
		}
	}
If a results has "listing/<something>" in a SARIF result, this handles
defining our custom API for those
Ghidra/Features/Sarif/src/main/java/sarif/SarifController.java