code: public int startScan(Target target, User user, Object[] customConfigurations) {
  		return startScan(createDisplayName(target, customConfigurations), target, user, customConfigurations);
  	}
docs: Starts a new spider scan using the given target and, optionally, spidering from the perspective of a user and with custom
  configurations.
  <p>
  The spider scan will use the most appropriate display name created from the given target, user and custom configurations.
  
  @param target the target that will be spidered
  @param user the user that will be used to spider, might be {@code null}
  @param customConfigurations other custom configurations for the spider, might be {@code null}
  @return the ID of the spider scan
  @since 2.5.0
  @see #startScan(String, Target, User, Object[])
  @throws IllegalStateException if the target or custom configurations are not allowed in the current
  {@link org.parosproxy.paros.control.Control.Mode mode}.