code: function fixRequestParamForServer(key, value) {
    function isEmptyValue(key, value) {
      return value === parametersMap[key].emptyValue;
    }
  
    const parametersMap = {
      'pageUrl': {
        emptyValue: '[PAGE_URL]',
        defaultValue: getUrl()
      },
      'displayWithinIframe': {
        emptyValue: '',
        defaultValue: ''
      },
      'dataParams': {
        emptyValue: '[KEY_VALUES]',
        defaultValue: ''
      },
      'paidClicks': {
        emptyValue: '[PAID_TRACKING_PIXEL]',
        defaultValue: ''
      },
      'organicClicks': {
        emptyValue: '[ORGANIC_TRACKING_PIXEL]',
        defaultValue: ''
      },
      'dataView': {
        emptyValue: '[VIEW_TRACKING_PIXEL]',
        defaultValue: ''
      },
      // ZONE is not part of this object, handled on server side
    };
  
    // if param is not in list we do not change it (return it as is)
    if (!parametersMap.hasOwnProperty(key)) {
      return {
        value: value,
        fromUser: true
      };
    }
  
    // if no value given by user set it to default
    if (!value || isEmptyValue(key, value)) {
      return {
        value: parametersMap[key].defaultValue,
        fromUser: false
      };
    }
  
    return {
      value: value,
      fromUser: true
    };
  }
docs: this function is used to fix param value before sending them to server, if user did not set it,
  default value for parameter will be returned
  example1: paidClicks: '[PAID_TRACKING_PIXEL]', will return {value: '', fromUser: false}
  example2: pageURL: 'www.my6sense.com', will return {value: 'www.my6sense.com', fromUser: true}
  @param key
  @param value
  @returns {{value: *, fromUser: boolean}}