NAV Navbar

Dispatcher JSON Specification

Request

coordinateBase (abstract)

This object represents a coordinate

Field Type Required Description
coordSys string Yes Defines the type of coordinate, can either be "wgs"

wgsCoordinate

This object represents a wgsCoordinate

Extends
{
  "coordSys": "wgs",
  "lat": 35.006605,
  "lon": 138.978468
}
Field Type Required Description
lat number Yes Latitide
lon number Yes Longitude

coordinate

{
  "coordSys": "wgs",
  "lat": 35.006605,
  "lon": 138.978468
}

This object represents a coordinate

This object can either be

boundingBox

{
  "downLeft": {
    "coordSys": "wgs",
    "lat": 35.006605,
    "lon": 138.978468
  },
  "upRight": {
    "coordSys": "wgs",
    "lat": 36.355587,
    "lon": 140.639232
  }
}

This object represents a bounding-box

Field Type Required Description
downLeft coordinate Yes Down left coordinate of the bounding box
upRight coordinate Yes Up right coordinate of the bounding box



size

{
  "value": 0.5,
  "unit": "millimeter"
}

This object represents the definition of a real-life size ( not based on scale )

Field Type Required Description
value number Yes Value for the size.
unit string Yes Type of size, can be either “centimeter”, “millimeter”, “yard”, "foot", "inch" or "point"

fromPois

{
  "margin": {
    "value": 0.5,
    "unit": "centimeter"
  }
}

This object represents the definition of a bounding box that is based on the locations of the POI's

Field Type Required Description
margin Size Yes Margin that makes the bounding box grow at the top, bottom, left and right

scale

{
  "scale": 116700,
  "coord": {
    "coordSys": "wgs",
    "lat": 14.473630137293394,
    "lon": 120.89016269892454
  }
}

This object represents the definition of a bounding box that is based on a scale and center coordinate.

Field Type Required Description
scale integer Yes The scale of the map. min: 1
coord coordinate Yes Center of the map

dimension

{
  "width": {
    "unit": "millimeter",
    "value": 75
  },
  "height": {
    "unit": "millimeter",
    "value": 50
  }
}

This object represents the definition of a dimension ( not based on scale )

Field Type Required Description
width size Yes Width size for dimension
height size yes Height size for dimension


color

{
  "R": 135,
  "G": 206,
  "B": 250
}

This object represents the definition of a RGB color

Field Type Required Description
R integer Yes Red color value
G integer Yes Green color value
B integer Yes Blue color value

line

{
  "color": {
    "R": 135,
    "G": 206,
    "B": 250
  },
  "thickness": {
    "unit": "millimeter",
    "size": 0.1
  },
  "style": "beaded"
}

This object represents the definition of a line

Field Type Required Description
color color Yes Color of the line
thickness size Yes Thickness of the line based on a real-life size
style string Yes Style of the line, can either be: "solid", "dotted", "dash5_5", "dash3_7", "dashDot", "dashDot1", "dashDotDot", "ticked", "doubleDash", "dotDash", "beaded"

textbox

{
  "background": {
    "R": 135,
    "G": 206,
    "B": 250
  },
  "border": {
    "color": {
      "R": 100,
      "G": 200,
      "B": 125
    },
    "thickness": {
      "unit": "millimeter",
      "size": 0.01
    },
    "style": "solid"
  }
}

This object represents a textbox

Field Type Required Description
background color No Background color of the textbox
border line No Border line of the textbox









font

{
  "size": {
    "unit": "millimeter",
    "value": 1
  },
  "name": "Helvetica",
  "color": {
    "R": 0,
    "G": 0,
    "B": 0
  }
}

This object represents a font

Field Type Required Description
size size Yes Size of the font in real-life size
name string Yes Fontname, possible values can be found in the font section of the documentation
color color Yes Color of the font
outline line No Outline style of the font

position

{
  "X": {
    "unit": "millimeter",
    "value": 0.1
  },
  "Y": {
    "unit": "millimeter",
    "value": 0.15
  }
}

This object represents a position based on an X and Y offset from the top left of the map

Field Type Required Description
X size Yes X offset in a real-life size
Y size Yes Y offset in a real-life size


alignment

{
  "type": "centertop"
}

This object represents an alignment on the map or on an icon

Field Type Required Description
type string Yes Type of size, can be either "topleft", "centerleft", "bottomleft", "centertop", "centerbottom", "topright", "centerright", "bottomright", "middle"

label

{
  "text": "Church",
  "font": {
    "name": "Helvetica",
    "size": {
      "unit": "millimeter",
      "value": 0.1
    },
    "location": {
      "X": {
        "unit": "millimeter",
        "value": 0.2
      },
      "Y": {
        "unit": "millimeter",
        "value": 0.3
      }
    },
    "anchor": "middle"
  }
}

This object represents a label

Field Type Required Description
text string Yes Text that the label will contain
font font Yes The font definition of the label
textbox textbox No The textbox that the label will be in
location position Yes Position on the map
anchor alignment Yes Where does the position need to start





scaleBar

{
  "size": {
    "unit": "millimeter",
    "value": 0.1
  },
  "fontName": "Helvetica",
  "type": "metric",
  "margin": {
    "width": {
      "unit": "millimeter",
      "value": 0.1
    },
    "height": {
      "unit": "millimeter",
      "value": 0.1
    }
  },
  "anchor": "centertop"
}

This object represents a scaleBar

Field Type Required Description
size size Yes Size of the scaleBar
fontName string Yes Name of the font that the scaleBar will use
type string Yes Type of scaleBar, can either be "metric" or "imperial"
margin dimension No Offset/Margin of the scaleBar
anchor alignment Yes Anchor on the map




northIndicator

{
  "size": {
    "unit": "millimeter",
    "value": 0.3
  },
  "arrow": {
    "R": 0,
    "G": 0,
    "B": 0
  },
  "northSign": {
    "R": 255,
    "G": 255,
    "B": 255
  },
  "margin": {
    "width": {
      "unit": "millimeter",
      "value": 0.1
    },
    "height": {
      "unit": "millimeter",
      "value": 0.1
    }
  },
  "anchor": "centertop"
}

This object represents a north indicator

Field Type Required Description
size size Yes Size of the north indicator
arrow color No Color of the arrow
northSign color No Color of the font
margin dimension No Offset/Margin of the north indicator
anchor alignment Yes Anchor on the map










grid

{
  "line": {
    "color": {
      "R": 0,
      "G": 0,
      "B": 0
    },
    "thickness": {
      "unit": "millimeter",
      "value": 0.01
    },
    "style": "solid"
  },
  "font": {
    "size": {
      "unit": "millimeter",
      "value": 0.1
    },
    "name": "Helvetica",
    "color": {
      "R": 0,
      "G": 0,
      "B": 0
    }
  },
  "lineDist": {
    "unit": "millimeter",
    "value": 0.1
  },
  "alphaHori": "oneChar",
  "charsPerBlock": 1
}

This object represents a grid that will be put on top of the map

Field Type Required Description
line line Yes Defines the line that the grid will use
font font Yes Defines the font for the characters of the grid
lineDist size Yes Defines the distance between each line
alphaHori string Yes Type of grid, can either be "oneChar", "twoChar", "doubleChar"
charsPerBlock integer Yes Defines the chars per block














polygon

{
  "fill": {
    "R": 255,
    "G": 255,
    "B": 255
  },
  "polystring": "_p~iF~ps|U_ulLnnqC_mqNvxq`@",
  "solid": false
}

This objects represents a polygon

Field Type Required Description
outline line No Outline definition of the polygon
fill color No Fill color of the polygon
polystring string Yes Encoded string of the coordinates.
solid boolean Yes Defines if the polygon needs to be cleared of labels

polyline

{
  "line": {
    "color": {
      "R": 255,
      "G": 255,
      "B": 255
    },
    "thickness": {
      "unit": "millimeter",
      "value": 0.1
    },
    "polystring": "_p~iF~ps|U_ulLnnqC_mqNvxq`@"
  }
}

This objects represents a polyline

Field Type Required Description
line line Yes Line definition of the polystring
polystring string Yes Encoded string of the coordinates





mapstyle

{
  "name": "Here10K.xml",
  "scale": 16249
}

This objects represents a mapstyle

Field Type Required Description
name string Yes Filename of the mapstyle
scale integer Yes Maximum scale of the mapstyle
{
  "font": {
    "name": "Helvetica",
    "size": {
      "unit": "millimeter",
      "value": 0.1
    },
    "color": {
      "R": 0,
      "G": 0,
      "B": 0
    }
  },
  "anchor": "centertop",
  "margin": {
    "width": {
      "unit": "millimeter",
      "value": 0.1
    },
    "height": {
      "unit": "millimeter",
      "value": 0.1
    }
  }
}

This object represents a copyright box

Field Type Required Description
textbox textbox No Defines the textbox where the copyright string will be in
font font Yes Defines the font that will be used for the copyright
anchor alignment Yes Defines where on the map the copyright should be aligned
margin dimension No Margin/Offset of the copyright based on the anchor











metadata

{
  "id": 1,
  "mapstyle": [
    {
      "name": "Here10k.xml",
      "scale": 16249
    },
    {
      "name": "Here20k.xml",
      "scale": 27499
    }
  ],
  "rotation": 0,
  "copyright": {
    "font": {
      "name": "Helvetica",
      "size": {
        "unit": "millimeter",
        "value": 0.1
      },
      "color": {
        "R": 0,
        "G": 0,
        "B": 0
      }
    },
    "anchor": "centertop",
    "margin": {
      "width": {
        "unit": "millimeter",
        "value": 0.1
      },
      "height": {
        "unit": "millimeter",
        "value": 0.1
      }
    }
  },
  "preview": true
}

This object represents metadata

Field Type Required Description
id unsigned integer No Unique identifier of the map
mapstyleSet array of mapStyle Yes Mapstyle set that will be used
rotation integer Yes Rotation of the map
copyright copyright Yes This element should always be visible on your map. Copyright of the map, the right text will be automatically generated.
preview boolean Yes Defines if the map needs to generate a png preview

metadata-basis

{
  "id": 1,
  "mapstyle": [
    {
      "name": "Here10k.xml",
      "scale": 16249
    },
    {
      "name": "Here20k.xml",
      "scale": 27499
    }
  ],
  "rotation": 0,
  "copyright": {
    "font": {
      "name": "Helvetica",
      "size": {
        "unit": "millimeter",
        "value": 0.1
      },
      "color": {
        "R": 0,
        "G": 0,
        "B": 0
      }
    },
    "anchor": "centertop",
    "margin": {
      "width": {
        "unit": "millimeter",
        "value": 0.1
      },
      "height": {
        "unit": "millimeter",
        "value": 0.1
      }
    }
  },
  "preview": true,
  "interactive": false,
  "language": "eng"
}

This objects represents a metadata-basis

Extends
Field Type Required Description
language string Yes Language of the map
interactive boolean Yes Defines if the map is interactive

metadata-multilang

This object represents a metadata-multilang

Extends
{
  "id": 1,
  "mapstyle": [
    {
      "name": "Here10k.xml",
      "scale": 16249
    },
    {
      "name": "Here20k.xml",
      "scale": 27499
    }
  ],
  "rotation": 0,
  "copyright": {
    "font": {
      "name": "Helvetica",
      "size": {
        "unit": "millimeter",
        "value": 0.1
      },
      "color": {
        "R": 0,
        "G": 0,
        "B": 0
      }
    },
    "anchor": "centertop",
    "margin": {
      "width": {
        "unit": "millimeter",
        "value": 0.1
      },
      "height": {
        "unit": "millimeter",
        "value": 0.1
      }
    }
  },
  "preview": true,
  "languages": [
    "eng",
    "dut",
    "fre",
    "fin"
  ]
}
Field Type Required Description
languages array of string Yes Languages of the maps







































































icon-label

{
  "text": "Church",
  "font": {
    "name": "Helvetica",
    "size": {
      "unit": "millimeter",
      "value": 0.1
    },
    "color": {
      "R": 0,
      "G": 0,
      "B": 0
    }
  },
  "anchor": "topleft",
  "margin": {
    "width": {
      "unit": "millimeter",
      "size": 0.1
    },
    "height": {
      "unit": "millimeter",
      "size": 0.1
    }
  }
}

This object represents an icon-label

Field Type Required Description
text string Yes Text that the label will contain
font font Yes Font that the label will use
textbox textbox No Textbox that the text will be in
anchor alignment Yes Defines the place where the label needs to align, keep in mind this is the place where the label will bind on the icon!
margin dimension No Offset/Margin from the icon. Negative is on the label









icon

{
  "source": "<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" id=\"numbered_circle\" viewBox=\"-0.8399999618530274 -0.8399999618530274 5.879999732971191 5.879999732971191\" xml:space=\"preserve\" mol_dragallenabled=\"true\" mol_embed=\"true\" mol_svganchor=\"2.15 2.1\" mol_anchor=\"2.15 2.1\" mol_resizeenabled=\"true\" mol_edit_text=\"true\" mol_edit_style=\"true\" class=\"noselect\" width=\"5.879999732971191\" height=\"5.879999732971191\" visibility=\"visible\"><g id=\"scale\" transform=\"scale(1)\"><path id=\"Circle\" fill=\"#000000\" d=\"M 2.1 4.2 L 2.1 4.2 C 0.9 4.2 0 3.3 0 2.1 l 0 0 C 0 0.9 0.9 0 2.1 0 l 0 0 c 1.1 0 2.1 0.9 2.1 2.1 l 0 0 C 4.2 3.3 3.3 4.2 2.1 4.2 Z\" mol_edit_style=\"true\"\/><text mol_edit_style=\"true\" mol_edit_text=\"true\" font-family=\"Helvetica\" font-size=\"2.1\" font-style=\"normal\" font-weight=\"700\" fill=\"#ffffff\" text-anchor=\"middle\" x=\"2.15\" y=\"3\" mol_font=\"Helvetica-Bold\">2<\/text><\/g><\/svg>",
  "name": "2",
  "id": 0,
  "coord": {
    "coordSys": "wgs",
    "lat": 36.84167,
    "lon": -2.46479
  }
}

This object represents an icon based on SVG text

Field Type Required Description
source string Yes Source string of the icon, Keep in mind this needs to be the source of an SVG
name string Yes Name of the label, will be used in the POI-index
category string No Category of the icon, will be used in the POI-index
id integer Yes ID of the icon, needs to be unique, will be used in the POI-index
coord coordinate Yes Coordinate where the icon will be placed
label icon-label No Label that will be placed alongside the icon

paper

{
  "size": {
    "width": {
      "unit": "millimeter",
      "value": 75
    },
    "height": "millimeter",
    "value": 50
  }
}

This object represents a paper

Field Type Required Description
size dimension Yes Defines the size of the paper
frame line No Defines a frame that will be put around the map


map

{
  "id": 46369,
  "command": "generate",
  "maps": [
    {
      "meta": {
        "id": 46369,
        "mapstyle": [
          {
            "name": "Here10k.xml",
            "scale": 16249
          },
          {
            "name": "Here20k.xml",
            "scale": 27499
          },
          {
            "name": "Here40k.xml",
            "scale": 47499
          },
          {
            "name": "Here75k.xml",
            "scale": 92499
          },
          {
            "name": "Here150k.xml",
            "scale": 177499
          },
          {
            "name": "Here300k.xml",
            "scale": 412499
          },
          {
            "name": "Here600k.xml",
            "scale": 749999
          },
          {
            "name": "Here1m.xml",
            "scale": 1499999
          },
          {
            "name": "Here2m.xml",
            "scale": 3749999
          },
          {
            "name": "Here5m.xml",
            "scale": 7499999
          },
          {
            "name": "Here10m.xml",
            "scale": 14999999
          },
          {
            "name": "Here20m.xml",
            "scale": 30999999
          },
          {
            "name": "Here40m.xml",
            "scale": 57499999
          },
          {
            "name": "Here75m.xml",
            "scale": 87499999
          },
          {
            "name": "Here100m.xml",
            "scale": 149999999
          },
          {
            "name": "Here200m.xml",
            "scale": 249999999
          },
          {
            "name": "Here300m.xml",
            "scale": 900000000
          }
        ],
        "interactive": false,
        "preview": true,
        "language": "fin",
        "rotation": 0,
        "copyright": {
          "font": {
            "size": {
              "value": 1.5,
              "unit": "millimeter"
            },
            "name": "ArialMT",
            "color": {
              "R": 0,
              "G": 0,
              "B": 0
            }
          },
          "textbox": {
            "background": {
              "R": 255,
              "G": 255,
              "B": 255
            }
          },
          "anchor": "bottomleft",
          "margin": {
            "width": {
              "value": 0.5,
              "unit": "millimeter"
            },
            "height": {
              "value": 0.5,
              "unit": "millimeter"
            }
          }
        }
      },
      "paper": {
        "size": {
          "width": {
            "value": 306,
            "unit": "millimeter"
          },
          "height": {
            "value": 240,
            "unit": "millimeter"
          }
        }
      },
      "output": [
        "eps"
      ],
      "scaleDefinition": {
        "downLeft": {
          "coordSys": "wgs",
          "lat": 36.831291,
          "lon": -2.469019
        },
        "upRight": {
          "coordSys": "wgs",
          "lat": 36.842179,
          "lon": -2.451618
        }
      }
    }
  ]
}

This object represents a map

Field Type Required Description
meta object Yes Defines the metadata, can either be "metadata-basis", "metadata-multilang"
paper paper Yes Defines the paper the map will be on
scaleDefinition object Yes Defines the scale, can either be "boundingBox", "scale", "fromPois"
scaleBar scaleBar No Define the scaleBar that will be put on the map
northIndicator northIndicator No Define the north indicator that will be put on the map
grid grid No Define a grid that will be put on the map
vectorLayers array of string No Define Vectorlayer(s) that will be put on the map
polylines array of polyline No Define polyline(s) that will be put on the map
polygons array of polygon No Define polygon(s) that will be put on the map
icons array of icon No Define icon(s) that will be put on the map
labels array of label No Define label(s) that will be put on the map
output array of string Yes Set outputs that need to be generated, can either be "png", "pdf", "jpg", "svg", "eps", "bmp", "tif"
index array of string No Which indexes should be generated, can either be "city", "street", "poi". Keep in mind the array should contain unique items

job

{
  "id": 912,
  "command": "generate",
  "maps": [
    {
      "meta": {
        "id": 912,
        "mapstyle": [
          {
            "name": "here5k.xml",
            "scale": 7499
          },
          {
            "name": "here10k.xml",
            "scale": 16249
          },
          {
            "name": "here20k.xml",
            "scale": 27499
          },
          {
            "name": "here40k.xml",
            "scale": 47499
          },
          {
            "name": "here75k.xml",
            "scale": 92499
          },
          {
            "name": "here150k.xml",
            "scale": 177499
          },
          {
            "name": "here300k.xml",
            "scale": 412499
          },
          {
            "name": "here600k.xml",
            "scale": 749999
          },
          {
            "name": "here1m.xml",
            "scale": 1499999
          },
          {
            "name": "here2m.xml",
            "scale": 3749999
          },
          {
            "name": "here5m.xml",
            "scale": 7499999
          },
          {
            "name": "here10m.xml",
            "scale": 14999999
          },
          {
            "name": "here20m.xml",
            "scale": 30999999
          },
          {
            "name": "here40m.xml",
            "scale": 57499999
          },
          {
            "name": "here75m.xml",
            "scale": 87499999
          },
          {
            "name": "here100m.xml",
            "scale": 149999999
          },
          {
            "name": "here200m.xml",
            "scale": 249999999
          },
          {
            "name": "here300m.xml",
            "scale": 900000000
          }
        ],
        "interactive": false,
        "preview": true,
        "language": "eng",
        "rotation": 0,
        "copyright": {
          "font": {
            "size": {
              "value": 1.5,
              "unit": "millimeter"
            },
            "name": "ArialMT",
            "color": {
              "R": 0,
              "G": 0,
              "B": 0
            }
          },
          "textbox": {
          },
          "margin": {
            "width": {
              "value": 0.5,
              "unit": "millimeter"
            },
            "height": {
              "value": 0.5,
              "unit": "millimeter"
            }
          },
          "anchor": "bottomleft"
        }
      },
      "paper": {
        "size": {
          "width": {
            "value": 425,
            "unit": "point"
          },
          "height": {
            "value": 283,
            "unit": "point"
          }
        }
      },
      "output": [
        "eps"
      ],
      "scaleDefinition": {
        "downLeft": {
          "coordsys": "wgs",
          "lat": 48.699558,
          "lon": 1.9777
        },
        "upRight": {
          "coordsys": "wgs",
          "lat": 49.048068,
          "lon": 2.771146
        }
      },
      "icons": [
      ],
      "polylines": [
      ]
    }
  ]
}

This object represents a job. A job can contain multiple maps, as long as they have the unique IDs

Field Type Required Description
id integer Yes Unique Job ID.
maps array of map Yes Maps connected to this Job. *Minimum of 1